# Packages
Package archiver zips lots of little blobs into bigger zip files and stores them somewhere.
Package azure registers the "azure" blobserver storage type, storing
blobs in a Microsoft Azure Blob Storage container.
No description provided by the author
Package blobpacked registers the "blobpacked" blobserver storage type,
storing blobs initially as one physical blob per logical blob, but then
rearranging little physical blobs into large contiguous blobs organized by
how they'll likely be accessed.
Package cond registers the "cond" conditional blobserver storage type
to select routing of get/put operations on blobs to other storage
targets as a function of their content.
Package dir implements the blobserver Storage interface for a directory, detecting whether the directory is file-per-blob (localdisk) or diskpacked.
Package diskpacked registers the "diskpacked" blobserver storage type,
storing blobs packed together into monolithic data files
with an index listing the sizes and offsets of the little blobs
within the large files.
Package encrypt registers the "encrypt" blobserver storage type which stores all blobs and metadata with NaCl encryption into other wrapped storage targets (e.g.
Package gethandler implements the HTTP handler for fetching blobs.
No description provided by the author
Package handlers implements the HTTP interface to the Camlistore blob server.
Package local implements functionality common to both the "localdisk" and
"diskpacked" storage mechanisms.
Package localdisk registers the "filesystem" blobserver storage type,
storing blobs in a forest of sharded directories at the specified root.
Package memory registers the "memory" blobserver storage type, storing blobs in an in-memory map.
Package mongo registers the "mongo" blobserver storage type, storing
blobs using MongoDB.
Package namespace implements the "namespace" blobserver storage type.
Package protocol contains types for Camlistore protocol types.
Package proxycache registers the "proxycache" blobserver storage type,
which uses a provided blobserver as a cache for a second origin
blobserver.
Package remote registers the "remote" blobserver storage type, storing
and fetching blobs from a remote Camlistore server over HTTPS.
Package replica registers the "replica" blobserver storage type,
providing synchronous replication to one more backends.
Package s3 registers the "s3" blobserver storage type, storing
blobs in an Amazon Web Services' S3 storage bucket.
Package shard registers the "shard" blobserver storage type,
predictably spraying out blobs out over the provided backends
based on their blobref.
Package stats contains an in-memory StatReceiver that only stores sizes of received blobs but not their contents.
Package storagetest tests blobserver.Storage implementations.
# Functions
CreateHandler instantiates an http Handler of type 'typ' from the provided JSON configuration, and finding peer handlers and configuration from the environment in 'loader'.
No description provided by the author
EnumerateAll runs fn for each blob in src.
EnumerateAllFrom is like EnumerateAll, but takes an after parameter.
GetHub return a BlobHub for the given storage implementation.
ListMissingDestinationBlobs reads from 'srcch' and 'dstch' (sorted enumerations of blobs from two blob servers) and sends to 'destMissing' any blobs which appear on the source but not at the destination.
MergedEnumerate implements the BlobEnumerator interface by merge-joining 0 or more sources.
MergedEnumerateStorage implements the BlobEnumerator interface by merge-joining 0 or more sources.
NewMultiBlobStreamer concatenates multiple BlobStreamers into one.
Receive wraps calling a BlobReceiver's ReceiveBlob method, additionally providing verification of the src digest, and also notifying the blob hub on success.
No description provided by the author
ReceiveString uploads the blob given by the string s to dst and returns its blobref and size.
RefTypes returns a list of blobref types appearing on the provided enumerator.
RegisterHandlerConstructor registers an http Handler constructor function for a given handler type.
No description provided by the author
No description provided by the author
WaitForBlob waits until deadline for blobs to arrive.
# Constants
MaxBlobSize is the size of a single blob in Camlistore.
# Variables
No description provided by the author
No description provided by the author
ErrNotImplemented should be returned in methods where the function is not implemented.
# Structs
BlobAndToken is the value used by the BlobStreamer interface, containing both a Blob and a continuation token.
No description provided by the author
NoImplStorage is an implementation of Storage that returns a not implemented error for all operations.
# Interfaces
No description provided by the author
No description provided by the author
No description provided by the author
BlobReceiver is the interface for receiving.
No description provided by the author
No description provided by the author
No description provided by the author
Cache is the minimal interface expected of a blob cache.
No description provided by the author
No description provided by the author
No description provided by the author
The optional Generationer interface is an optimization and paranoia
facility for clients which can be implemented by Storage
implementations.
HandlerIniter is an optional interface which can be implemented by Storage or http.Handlers (from StorageConstructor or HandlerConstructor) to be called once all the handlers have been created.
No description provided by the author
MaxEnumerateConfig is an optional interface implemented by Storage interfaces to advertise their max value for how many items can be enumerated at once.
Optional interface for storage implementations which can be asked to shut down cleanly.
No description provided by the author
Storage is the interface that must be implemented by a blobserver storage type.
No description provided by the author
StorageHandler is a storage implementation that also exports an HTTP status page.
WholeRefFetcher is an optional fast-path interface exposed by the 'blobpacked' blob storage implementation, which packs pieces of files together and can efficiently serve them contigously.
# Type aliases
A GenerationNotSupportedError explains why a Storage value implemented the Generationer interface but failed due to a wrapped Storage value not implementing the interface.
A HandlerConstructor returns an http.Handler from a Loader environment and a configuration.
A StorageConstructor returns a Storage implementation from a Loader environment and a configuration.