Documentation ¶
Overview ¶
Package backend proides the backends used by fake-gcs-server.
Index ¶
Constants ¶
View Source
const ( BucketNotFound = Error("bucket not found") BucketNotEmpty = Error("bucket must be empty prior to deletion") PreConditionFailed = Error("Precondition failed") )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Bucket ¶ added in v1.16.0
type Bucket struct { Name string VersioningEnabled bool TimeCreated time.Time DefaultEventBasedHold bool }
Bucket represents the bucket that is stored within the fake server.
type BucketAttrs ¶ added in v1.46.0
type Conditions ¶ added in v1.41.0
type NoConditions ¶ added in v1.41.0
type NoConditions struct{}
func (NoConditions) ConditionsMet ¶ added in v1.41.0
func (NoConditions) ConditionsMet(int64) bool
type Object ¶
type Object struct { ObjectAttrs Content []byte }
Object represents the object that is stored within the fake server.
func (Object) StreamingObject ¶ added in v1.40.0
func (o Object) StreamingObject() StreamingObject
type ObjectAttrs ¶ added in v1.30.0
type ObjectAttrs struct { BucketName string `json:"-"` Name string `json:"-"` Size int64 `json:"-"` ContentType string ContentEncoding string Crc32c string Md5Hash string Etag string ACL []storage.ACLRule Metadata map[string]string Created string Deleted string Updated string CustomTime string Generation int64 }
ObjectAttrs represents the meta-data without its contents.
func (*ObjectAttrs) ID ¶ added in v1.30.0
func (o *ObjectAttrs) ID() string
ID is used for comparing objects.
func (*ObjectAttrs) IDNoGen ¶ added in v1.30.0
func (o *ObjectAttrs) IDNoGen() string
IDNoGen does not consider the generation field.
type Storage ¶
type Storage interface { CreateBucket(name string, bucketAttrs BucketAttrs) error ListBuckets() ([]Bucket, error) GetBucket(name string) (Bucket, error) UpdateBucket(name string, attrsToUpdate BucketAttrs) error DeleteBucket(name string) error CreateObject(obj StreamingObject, conditions Conditions) (StreamingObject, error) ListObjects(bucketName string, prefix string, versions bool) ([]ObjectAttrs, error) GetObject(bucketName, objectName string) (StreamingObject, error) GetObjectWithGeneration(bucketName, objectName string, generation int64) (StreamingObject, error) DeleteObject(bucketName, objectName string) error PatchObject(bucketName, objectName string, attrsToUpdate ObjectAttrs) (StreamingObject, error) UpdateObject(bucketName, objectName string, attrsToUpdate ObjectAttrs) (StreamingObject, error) ComposeObject(bucketName string, objectNames []string, destinationName string, metadata map[string]string, contentType string) (StreamingObject, error) }
Storage is the generic interface for implementing the backend storage of the server.
func NewStorageFS ¶
func NewStorageFS(objects []StreamingObject, rootDir string) (Storage, error)
NewStorageFS creates an instance of the filesystem-backed storage backend.
func NewStorageMemory ¶
func NewStorageMemory(objects []StreamingObject) (Storage, error)
NewStorageMemory creates an instance of StorageMemory.
type StreamingObject ¶ added in v1.40.0
type StreamingObject struct { ObjectAttrs Content io.ReadSeekCloser }
func (*StreamingObject) BufferedObject ¶ added in v1.40.0
func (o *StreamingObject) BufferedObject() (Object, error)
Convert this StreamingObject to a (buffered) Object.
func (*StreamingObject) Close ¶ added in v1.40.0
func (o *StreamingObject) Close() error
Click to show internal directories.
Click to hide internal directories.