Documentation
¶
Overview ¶
Code generated by go generate via cmd/definitions; DO NOT EDIT.
Index ¶
- Constants
- func NewServicer(pairs ...typ.Pair) (typ.Servicer, error)
- func NewStorager(pairs ...typ.Pair) (typ.Storager, error)
- func WithDefaultContentType(v string) Pair
- func WithDefaultServicePairs(v DefaultServicePairs) Pair
- func WithDefaultStorageClass(v string) Pair
- func WithDefaultStoragePairs(v DefaultStoragePairs) Pair
- func WithDisableURICleaning() Pair
- func WithEnableLoosePair() Pair
- func WithEnableVirtualDir() Pair
- func WithServiceFeatures(v ServiceFeatures) Pair
- func WithStorageClass(v string) Pair
- func WithStorageFeatures(v StorageFeatures) Pair
- func WithStringPair(v string) Pair
- type DefaultServicePairs
- type DefaultStoragePairs
- type ObjectSystemMetadata
- type Service
- func (s *Service) Create(name string, pairs ...Pair) (store Storager, err error)
- func (s *Service) CreateWithContext(ctx context.Context, name string, pairs ...Pair) (store Storager, err error)
- func (s *Service) Delete(name string, pairs ...Pair) (err error)
- func (s *Service) DeleteWithContext(ctx context.Context, name string, pairs ...Pair) (err error)
- func (s *Service) Get(name string, pairs ...Pair) (store Storager, err error)
- func (s *Service) GetWithContext(ctx context.Context, name string, pairs ...Pair) (store Storager, err error)
- func (s *Service) List(pairs ...Pair) (sti *StoragerIterator, err error)
- func (s *Service) ListWithContext(ctx context.Context, pairs ...Pair) (sti *StoragerIterator, err error)
- func (s *Service) String() string
- type ServiceFeatures
- type Storage
- func (s *Storage) CommitAppend(o *Object, pairs ...Pair) (err error)
- func (s *Storage) CommitAppendWithContext(ctx context.Context, o *Object, pairs ...Pair) (err error)
- func (s *Storage) CompleteMultipart(o *Object, parts []*Part, pairs ...Pair) (err error)
- func (s *Storage) CompleteMultipartWithContext(ctx context.Context, o *Object, parts []*Part, pairs ...Pair) (err error)
- func (s *Storage) Copy(src string, dst string, pairs ...Pair) (err error)
- func (s *Storage) CopyWithContext(ctx context.Context, src string, dst string, pairs ...Pair) (err error)
- func (s *Storage) Create(path string, pairs ...Pair) (o *Object)
- func (s *Storage) CreateAppend(path string, pairs ...Pair) (o *Object, err error)
- func (s *Storage) CreateAppendWithContext(ctx context.Context, path string, pairs ...Pair) (o *Object, err error)
- func (s *Storage) CreateMultipart(path string, pairs ...Pair) (o *Object, err error)
- func (s *Storage) CreateMultipartWithContext(ctx context.Context, path string, pairs ...Pair) (o *Object, err error)
- func (s *Storage) Delete(path string, pairs ...Pair) (err error)
- func (s *Storage) DeleteWithContext(ctx context.Context, path string, pairs ...Pair) (err error)
- func (s *Storage) Fetch(path string, url string, pairs ...Pair) (err error)
- func (s *Storage) FetchWithContext(ctx context.Context, path string, url string, pairs ...Pair) (err error)
- func (s *Storage) List(path string, pairs ...Pair) (oi *ObjectIterator, err error)
- func (s *Storage) ListMultipart(o *Object, pairs ...Pair) (pi *PartIterator, err error)
- func (s *Storage) ListMultipartWithContext(ctx context.Context, o *Object, pairs ...Pair) (pi *PartIterator, err error)
- func (s *Storage) ListWithContext(ctx context.Context, path string, pairs ...Pair) (oi *ObjectIterator, err error)
- func (s *Storage) Metadata(pairs ...Pair) (meta *StorageMeta)
- func (s *Storage) Move(src string, dst string, pairs ...Pair) (err error)
- func (s *Storage) MoveWithContext(ctx context.Context, src string, dst string, pairs ...Pair) (err error)
- func (s *Storage) Reach(path string, pairs ...Pair) (url string, err error)
- func (s *Storage) ReachWithContext(ctx context.Context, path string, pairs ...Pair) (url string, err error)
- func (s *Storage) Read(path string, w io.Writer, pairs ...Pair) (n int64, err error)
- func (s *Storage) ReadWithContext(ctx context.Context, path string, w io.Writer, pairs ...Pair) (n int64, err error)
- func (s *Storage) Stat(path string, pairs ...Pair) (o *Object, err error)
- func (s *Storage) StatWithContext(ctx context.Context, path string, pairs ...Pair) (o *Object, err error)
- func (s *Storage) String() string
- func (s *Storage) Write(path string, r io.Reader, size int64, pairs ...Pair) (n int64, err error)
- func (s *Storage) WriteAppend(o *Object, r io.Reader, size int64, pairs ...Pair) (n int64, err error)
- func (s *Storage) WriteAppendWithContext(ctx context.Context, o *Object, r io.Reader, size int64, pairs ...Pair) (n int64, err error)
- func (s *Storage) WriteMultipart(o *Object, r io.Reader, size int64, index int, pairs ...Pair) (n int64, part *Part, err error)
- func (s *Storage) WriteMultipartWithContext(ctx context.Context, o *Object, r io.Reader, size int64, index int, ...) (n int64, part *Part, err error)
- func (s *Storage) WriteWithContext(ctx context.Context, path string, r io.Reader, size int64, pairs ...Pair) (n int64, err error)
- type StorageFeatures
- type StorageSystemMetadata
Constants ¶
const Type = "tests"
Type is the type for tests
Variables ¶
This section is empty.
Functions ¶
func WithDefaultContentType ¶ added in v4.5.0
func WithDefaultContentType(v string) Pair
WithDefaultContentType will apply default_content_type value to Options.
ContentType
func WithDefaultServicePairs ¶
func WithDefaultServicePairs(v DefaultServicePairs) Pair
WithDefaultServicePairs will apply default_service_pairs value to Options.
DefaultServicePairs set default pairs for service actions
func WithDefaultStorageClass ¶ added in v4.5.0
func WithDefaultStorageClass(v string) Pair
WithDefaultStorageClass will apply default_storage_class value to Options.
StorageClass
func WithDefaultStoragePairs ¶
func WithDefaultStoragePairs(v DefaultStoragePairs) Pair
WithDefaultStoragePairs will apply default_storage_pairs value to Options.
DefaultStoragePairs set default pairs for storager actions
func WithDisableURICleaning ¶
func WithDisableURICleaning() Pair
WithDisableURICleaning will apply disable_uri_cleaning value to Options.
DisableURICleaning
func WithEnableLoosePair ¶ added in v4.5.0
func WithEnableLoosePair() Pair
WithEnableLoosePair will apply enable_loose_pair value to Options.
LoosePair loose_pair feature is designed for users who don't want strict pair checks.
If this feature is enabled, the service will not return an error for not support pairs.
This feature was introduced in GSP-109.
func WithEnableVirtualDir ¶ added in v4.5.0
func WithEnableVirtualDir() Pair
WithEnableVirtualDir will apply enable_virtual_dir value to Options.
VirtualDir virtual_dir feature is designed for a service that doesn't have native dir support but wants to provide simulated operations.
- If this feature is disabled (the default behavior), the service will behave like it doesn't have any dir support. - If this feature is enabled, the service will support simulated dir behavior in create_dir, create, list, delete, and so on.
This feature was introduced in GSP-109.
func WithServiceFeatures ¶
func WithServiceFeatures(v ServiceFeatures) Pair
WithServiceFeatures will apply service_features value to Options.
ServiceFeatures set service features
func WithStorageClass ¶
func WithStorageClass(v string) Pair
WithStorageClass will apply storage_class value to Options.
StorageClass
func WithStorageFeatures ¶
func WithStorageFeatures(v StorageFeatures) Pair
WithStorageFeatures will apply storage_features value to Options.
StorageFeatures set storage features
func WithStringPair ¶
func WithStringPair(v string) Pair
WithStringPair will apply string_pair value to Options.
StringPair tests connection string
Types ¶
type DefaultServicePairs ¶
type DefaultServicePairs struct {
Create []Pair
Delete []Pair
Get []Pair
List []Pair
}
DefaultServicePairs is default pairs for specific action
type DefaultStoragePairs ¶
type DefaultStoragePairs struct {
CommitAppend []Pair
CompleteMultipart []Pair
Copy []Pair
Create []Pair
CreateAppend []Pair
CreateMultipart []Pair
Delete []Pair
Fetch []Pair
List []Pair
ListMultipart []Pair
Metadata []Pair
Move []Pair
Reach []Pair
Read []Pair
Stat []Pair
Write []Pair
WriteAppend []Pair
WriteMultipart []Pair
}
DefaultStoragePairs is default pairs for specific action
type ObjectSystemMetadata ¶
type ObjectSystemMetadata struct {
// StorageClass is the storage class for this object
StorageClass string
}
ObjectSystemMetadata stores system metadata for object.
func GetObjectSystemMetadata ¶
func GetObjectSystemMetadata(o *Object) ObjectSystemMetadata
GetObjectSystemMetadata will get ObjectSystemMetadata from Object.
- This function should not be called by service implementer. - The returning ObjectServiceMetadata is read only and should not be modified.
type Service ¶
type Service struct {
Pairs []Pair
UnimplementedServicer
// contains filtered or unexported fields
}
func (*Service) Create ¶
Create will create a new storager instance.
This function will create a context by default.
func (*Service) CreateWithContext ¶
func (s *Service) CreateWithContext(ctx context.Context, name string, pairs ...Pair) (store Storager, err error)
CreateWithContext will create a new storager instance.
func (*Service) Delete ¶
Delete will delete a storager instance.
This function will create a context by default.
func (*Service) DeleteWithContext ¶
DeleteWithContext will delete a storager instance.
func (*Service) Get ¶
Get will get a valid storager instance for service.
This function will create a context by default.
func (*Service) GetWithContext ¶
func (s *Service) GetWithContext(ctx context.Context, name string, pairs ...Pair) (store Storager, err error)
GetWithContext will get a valid storager instance for service.
func (*Service) List ¶
List will list all storager instances under this service.
This function will create a context by default.
type ServiceFeatures ¶
type ServiceFeatures struct {
}
type Storage ¶
type Storage struct {
UnimplementedCopier
UnimplementedFetcher
UnimplementedMover
UnimplementedMultiparter
UnimplementedReacher
UnimplementedAppender
UnimplementedStorager
// contains filtered or unexported fields
}
func (*Storage) CommitAppend ¶
CommitAppend will commit and finish an append process.
This function will create a context by default.
func (*Storage) CommitAppendWithContext ¶
func (s *Storage) CommitAppendWithContext(ctx context.Context, o *Object, pairs ...Pair) (err error)
CommitAppendWithContext will commit and finish an append process.
func (*Storage) CompleteMultipart ¶
CompleteMultipart will complete a multipart upload and construct an Object.
This function will create a context by default.
func (*Storage) CompleteMultipartWithContext ¶
func (s *Storage) CompleteMultipartWithContext(ctx context.Context, o *Object, parts []*Part, pairs ...Pair) (err error)
CompleteMultipartWithContext will complete a multipart upload and construct an Object.
func (*Storage) Copy ¶
Copy will copy an Object or multiple object in the service.
## Behavior
- Copy only copy one and only one object.
- Service DON'T NEED to support copy a non-empty directory or copy files recursively.
- User NEED to implement copy a non-empty directory and copy recursively by themself.
- Copy a file to a directory SHOULD return `ErrObjectModeInvalid`.
- Copy SHOULD NOT return an error as dst object exists.
- Service that has native support for `overwrite` doesn't NEED to check the dst object exists or not.
- Service that doesn't have native support for `overwrite` SHOULD check and delete the dst object if exists.
- A successful copy opration should be complete, which means the dst object's content and metadata should be the same as src object.
This function will create a context by default.
func (*Storage) CopyWithContext ¶
func (s *Storage) CopyWithContext(ctx context.Context, src string, dst string, pairs ...Pair) (err error)
CopyWithContext will copy an Object or multiple object in the service.
## Behavior
- Copy only copy one and only one object.
- Service DON'T NEED to support copy a non-empty directory or copy files recursively.
- User NEED to implement copy a non-empty directory and copy recursively by themself.
- Copy a file to a directory SHOULD return `ErrObjectModeInvalid`.
- Copy SHOULD NOT return an error as dst object exists.
- Service that has native support for `overwrite` doesn't NEED to check the dst object exists or not.
- Service that doesn't have native support for `overwrite` SHOULD check and delete the dst object if exists.
- A successful copy opration should be complete, which means the dst object's content and metadata should be the same as src object.
func (*Storage) Create ¶
Create will create a new object without any api call.
## Behavior
- Create SHOULD NOT send any API call. - Create SHOULD accept ObjectMode pair as object mode.
This function will create a context by default.
func (*Storage) CreateAppend ¶
CreateAppend will create an append object.
## Behavior
- CreateAppend SHOULD create an appendable object with position 0 and size 0. - CreateAppend SHOULD NOT return an error as the object exist.
- Service SHOULD check and delete the object if exists.
This function will create a context by default.
func (*Storage) CreateAppendWithContext ¶
func (s *Storage) CreateAppendWithContext(ctx context.Context, path string, pairs ...Pair) (o *Object, err error)
CreateAppendWithContext will create an append object.
## Behavior
- CreateAppend SHOULD create an appendable object with position 0 and size 0. - CreateAppend SHOULD NOT return an error as the object exist.
- Service SHOULD check and delete the object if exists.
func (*Storage) CreateMultipart ¶
CreateMultipart will create a new multipart.
## Behavior
- CreateMultipart SHOULD NOT return an error as the object exists.
This function will create a context by default.
func (*Storage) CreateMultipartWithContext ¶
func (s *Storage) CreateMultipartWithContext(ctx context.Context, path string, pairs ...Pair) (o *Object, err error)
CreateMultipartWithContext will create a new multipart.
## Behavior
- CreateMultipart SHOULD NOT return an error as the object exists.
func (*Storage) Delete ¶
Delete will delete an object from service.
## Behavior
- Delete only delete one and only one object.
- Service DON'T NEED to support remove all.
- User NEED to implement remove_all by themself.
- Delete is idempotent.
- Successful delete always return nil error.
- Delete SHOULD never return `ObjectNotExist`
- Delete DON'T NEED to check the object exist or not.
This function will create a context by default.
func (*Storage) DeleteWithContext ¶
DeleteWithContext will delete an object from service.
## Behavior
- Delete only delete one and only one object.
- Service DON'T NEED to support remove all.
- User NEED to implement remove_all by themself.
- Delete is idempotent.
- Successful delete always return nil error.
- Delete SHOULD never return `ObjectNotExist`
- Delete DON'T NEED to check the object exist or not.
func (*Storage) Fetch ¶
Fetch will fetch from a given url to path.
## Behavior
- Fetch SHOULD NOT return an error as the object exists. - A successful fetch operation should be complete, which means the object's content and metadata should be the same as requiring from the url.
This function will create a context by default.
func (*Storage) FetchWithContext ¶
func (s *Storage) FetchWithContext(ctx context.Context, path string, url string, pairs ...Pair) (err error)
FetchWithContext will fetch from a given url to path.
## Behavior
- Fetch SHOULD NOT return an error as the object exists. - A successful fetch operation should be complete, which means the object's content and metadata should be the same as requiring from the url.
func (*Storage) List ¶
List will return list a specific path.
## Behavior
- Service SHOULD support default `ListMode`. - Service SHOULD implement `ListModeDir` without the check for `VirtualDir`. - Service DON'T NEED to `Stat` while in `List`.
This function will create a context by default.
func (*Storage) ListMultipart ¶
ListMultipart will list parts belong to this multipart.
This function will create a context by default.
func (*Storage) ListMultipartWithContext ¶
func (s *Storage) ListMultipartWithContext(ctx context.Context, o *Object, pairs ...Pair) (pi *PartIterator, err error)
ListMultipartWithContext will list parts belong to this multipart.
func (*Storage) ListWithContext ¶
func (s *Storage) ListWithContext(ctx context.Context, path string, pairs ...Pair) (oi *ObjectIterator, err error)
ListWithContext will return list a specific path.
## Behavior
- Service SHOULD support default `ListMode`. - Service SHOULD implement `ListModeDir` without the check for `VirtualDir`. - Service DON'T NEED to `Stat` while in `List`.
func (*Storage) Metadata ¶
func (s *Storage) Metadata(pairs ...Pair) (meta *StorageMeta)
Metadata will return current storager metadata.
This function will create a context by default.
func (*Storage) Move ¶
Move will move an object in the service.
## Behavior
- Move only move one and only one object.
- Service DON'T NEED to support move a non-empty directory.
- User NEED to implement move a non-empty directory by themself.
- Move a file to a directory SHOULD return `ErrObjectModeInvalid`.
- Move SHOULD NOT return an error as dst object exists.
- Service that has native support for `overwrite` doesn't NEED to check the dst object exists or not.
- Service that doesn't have native support for `overwrite` SHOULD check and delete the dst object if exists.
- A successful move operation SHOULD be complete, which means the dst object's content and metadata should be the same as src object.
This function will create a context by default.
func (*Storage) MoveWithContext ¶
func (s *Storage) MoveWithContext(ctx context.Context, src string, dst string, pairs ...Pair) (err error)
MoveWithContext will move an object in the service.
## Behavior
- Move only move one and only one object.
- Service DON'T NEED to support move a non-empty directory.
- User NEED to implement move a non-empty directory by themself.
- Move a file to a directory SHOULD return `ErrObjectModeInvalid`.
- Move SHOULD NOT return an error as dst object exists.
- Service that has native support for `overwrite` doesn't NEED to check the dst object exists or not.
- Service that doesn't have native support for `overwrite` SHOULD check and delete the dst object if exists.
- A successful move operation SHOULD be complete, which means the dst object's content and metadata should be the same as src object.
func (*Storage) Reach ¶
Reach will provide a way, which can reach the object.
This function will create a context by default.
func (*Storage) ReachWithContext ¶
func (s *Storage) ReachWithContext(ctx context.Context, path string, pairs ...Pair) (url string, err error)
ReachWithContext will provide a way, which can reach the object.
func (*Storage) Read ¶
Read will read the file's data.
This function will create a context by default.
func (*Storage) ReadWithContext ¶
func (s *Storage) ReadWithContext(ctx context.Context, path string, w io.Writer, pairs ...Pair) (n int64, err error)
ReadWithContext will read the file's data.
func (*Storage) Stat ¶
Stat will stat a path to get info of an object.
## Behavior
- Stat SHOULD accept ObjectMode pair as hints.
- Service COULD have different implementations for different object mode.
- Service SHOULD check if returning ObjectMode is match
This function will create a context by default.
func (*Storage) StatWithContext ¶
func (s *Storage) StatWithContext(ctx context.Context, path string, pairs ...Pair) (o *Object, err error)
StatWithContext will stat a path to get info of an object.
## Behavior
- Stat SHOULD accept ObjectMode pair as hints.
- Service COULD have different implementations for different object mode.
- Service SHOULD check if returning ObjectMode is match
func (*Storage) Write ¶
Write will write data into a file.
## Behavior
- Write SHOULD NOT return an error as the object exist.
- Service that has native support for `overwrite` doesn't NEED to check the object exists or not.
- Service that doesn't have native support for `overwrite` SHOULD check and delete the object if exists.
- A successful write operation SHOULD be complete, which means the object's content and metadata should be the same as specified in write request.
This function will create a context by default.
func (*Storage) WriteAppend ¶
func (s *Storage) WriteAppend(o *Object, r io.Reader, size int64, pairs ...Pair) (n int64, err error)
WriteAppend will append content to an append object.
This function will create a context by default.
func (*Storage) WriteAppendWithContext ¶
func (s *Storage) WriteAppendWithContext(ctx context.Context, o *Object, r io.Reader, size int64, pairs ...Pair) (n int64, err error)
WriteAppendWithContext will append content to an append object.
func (*Storage) WriteMultipart ¶
func (s *Storage) WriteMultipart(o *Object, r io.Reader, size int64, index int, pairs ...Pair) (n int64, part *Part, err error)
WriteMultipart will write content to a multipart.
This function will create a context by default.
func (*Storage) WriteMultipartWithContext ¶
func (s *Storage) WriteMultipartWithContext(ctx context.Context, o *Object, r io.Reader, size int64, index int, pairs ...Pair) (n int64, part *Part, err error)
WriteMultipartWithContext will write content to a multipart.
func (*Storage) WriteWithContext ¶
func (s *Storage) WriteWithContext(ctx context.Context, path string, r io.Reader, size int64, pairs ...Pair) (n int64, err error)
WriteWithContext will write data into a file.
## Behavior
- Write SHOULD NOT return an error as the object exist.
- Service that has native support for `overwrite` doesn't NEED to check the object exists or not.
- Service that doesn't have native support for `overwrite` SHOULD check and delete the object if exists.
- A successful write operation SHOULD be complete, which means the object's content and metadata should be the same as specified in write request.
type StorageFeatures ¶
type StorageFeatures struct {
// LoosePair loose_pair feature is designed for users who don't want strict pair checks.
//
// If this feature is enabled, the service will not return an error for not support pairs.
//
// This feature was introduced in GSP-109.
LoosePair bool
// VirtualDir virtual_dir feature is designed for a service that doesn't have native dir support but wants to provide simulated operations.
//
// - If this feature is disabled (the default behavior), the service will behave like it doesn't have any dir support.
// - If this feature is enabled, the service will support simulated dir behavior in create_dir, create, list, delete, and so on.
//
// This feature was introduced in GSP-109.
VirtualDir bool
}
type StorageSystemMetadata ¶
type StorageSystemMetadata struct {
// QueriesPerSecond tests storage system metadata
QueriesPerSecond int64
}
StorageSystemMetadata stores system metadata for storage meta.
func GetStorageSystemMetadata ¶
func GetStorageSystemMetadata(s *StorageMeta) StorageSystemMetadata
GetStorageSystemMetadata will get SystemMetadata from StorageMeta.
- The returning StorageSystemMetadata is read only and should not be modified.