Package localdisk registers the "filesystem" blobserver storage type, storing blobs in a forest of sharded directories at the specified root.

    Example low-level config:

    "/storage/": {
        "handler": "storage-filesystem",
        "handlerArgs": {
           "path": "/var/camlistore/blobs"



    This section is empty.


    This section is empty.


    func IsDir

    func IsDir(root string) (bool, error)

      IsDir reports whether root is a localdisk (file-per-blob) storage directory.


      type DiskStorage

      type DiskStorage struct {
      	// contains filtered or unexported fields

        DiskStorage implements the blobserver.Storage interface using the local filesystem.

        func New

        func New(root string) (*DiskStorage, error)

          New returns a new local disk storage implementation at the provided root directory, which must already exist.

          func (*DiskStorage) EnumerateBlobs

          func (ds *DiskStorage) EnumerateBlobs(ctx context.Context, dest chan<- blob.SizedRef, after string, limit int) error

          func (*DiskStorage) Fetch

          func (ds *DiskStorage) Fetch(br blob.Ref) (io.ReadCloser, uint32, error)

          func (*DiskStorage) ReceiveBlob

          func (ds *DiskStorage) ReceiveBlob(blobRef blob.Ref, source io.Reader) (ref blob.SizedRef, err error)

          func (*DiskStorage) RemoveBlobs

          func (ds *DiskStorage) RemoveBlobs(blobs []blob.Ref) error

          func (*DiskStorage) ResetStorageGeneration

          func (ds *DiskStorage) ResetStorageGeneration() error

            ResetStorageGeneration reinitializes the generation by recreating the GENERATION.dat file with a new random string

            func (*DiskStorage) StatBlobs

            func (ds *DiskStorage) StatBlobs(dest chan<- blob.SizedRef, blobs []blob.Ref) error

            func (*DiskStorage) StorageGeneration

            func (ds *DiskStorage) StorageGeneration() (initTime time.Time, random string, err error)

              StorageGeneration returns the generation's initialization time, and the random string.

              func (*DiskStorage) String

              func (ds *DiskStorage) String() string

              func (*DiskStorage) SubFetch

              func (ds *DiskStorage) SubFetch(br blob.Ref, offset, length int64) (io.ReadCloser, error)