Implementations of all the functions here are expected to be concurrency-safe, except for Init() is called exactly once before any other functions are called. Capabilities()/Bucket() are expected to be const
| 222 | /// |
| 223 | /// Capabilities()/Bucket() are expected to be const |
| 224 | type StorageBackend interface { |
| 225 | Init(key string) error |
| 226 | Capabilities() *Capabilities |
| 227 | // typically this would return bucket/prefix |
| 228 | Bucket() string |
| 229 | HeadBlob(param *HeadBlobInput) (*HeadBlobOutput, error) |
| 230 | ListBlobs(param *ListBlobsInput) (*ListBlobsOutput, error) |
| 231 | DeleteBlob(param *DeleteBlobInput) (*DeleteBlobOutput, error) |
| 232 | DeleteBlobs(param *DeleteBlobsInput) (*DeleteBlobsOutput, error) |
| 233 | RenameBlob(param *RenameBlobInput) (*RenameBlobOutput, error) |
| 234 | CopyBlob(param *CopyBlobInput) (*CopyBlobOutput, error) |
| 235 | GetBlob(param *GetBlobInput) (*GetBlobOutput, error) |
| 236 | PutBlob(param *PutBlobInput) (*PutBlobOutput, error) |
| 237 | MultipartBlobBegin(param *MultipartBlobBeginInput) (*MultipartBlobCommitInput, error) |
| 238 | MultipartBlobAdd(param *MultipartBlobAddInput) (*MultipartBlobAddOutput, error) |
| 239 | MultipartBlobAbort(param *MultipartBlobCommitInput) (*MultipartBlobAbortOutput, error) |
| 240 | MultipartBlobCommit(param *MultipartBlobCommitInput) (*MultipartBlobCommitOutput, error) |
| 241 | MultipartExpire(param *MultipartExpireInput) (*MultipartExpireOutput, error) |
| 242 | RemoveBucket(param *RemoveBucketInput) (*RemoveBucketOutput, error) |
| 243 | MakeBucket(param *MakeBucketInput) (*MakeBucketOutput, error) |
| 244 | Delegate() interface{} |
| 245 | } |
| 246 | |
| 247 | type Delegator interface { |
| 248 | Delegate() interface{} |
no outgoing calls
no test coverage detected