Documentation ¶
Overview ¶
Package s3 provided support for AWS s3 (https://docs.aws.amazon.com/AmazonS3/latest/dev/Welcome.html)
Code generated by go generate via cmd/definitions; DO NOT EDIT.
Index ¶
- Constants
- Variables
- func New(pairs ...typ.Pair) (typ.Servicer, typ.Storager, error)
- func NewServicer(pairs ...typ.Pair) (typ.Servicer, error)
- func NewStorager(pairs ...typ.Pair) (typ.Storager, error)
- func WithDefaultServicePairs(v DefaultServicePairs) Pair
- func WithDefaultStoragePairs(v DefaultStoragePairs) Pair
- func WithDisable100Continue(v bool) Pair
- func WithExceptedBucketOwner(v string) Pair
- func WithForcePathStyle(v bool) Pair
- func WithServerSideEncryption(v string) Pair
- func WithServerSideEncryptionAwsKmsKeyID(v string) Pair
- func WithServerSideEncryptionBucketKeyEnabled(v bool) Pair
- func WithServerSideEncryptionContext(v string) Pair
- func WithServerSideEncryptionCustomerAlgorithm(v string) Pair
- func WithServerSideEncryptionCustomerKey(v []byte) Pair
- func WithServiceFeatures(v ServiceFeatures) Pair
- func WithStorageClass(v string) Pair
- func WithStorageFeatures(v StorageFeatures) Pair
- func WithUseAccelerate(v bool) Pair
- func WithUseArnRegion(v bool) Pair
- type DefaultServicePairs
- type DefaultStoragePairs
- type ObjectMetadatadeprecated
- 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) 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) Create(path string, pairs ...Pair) (o *Object)
- func (s *Storage) CreateDir(path string, pairs ...Pair) (o *Object, err error)
- func (s *Storage) CreateDirWithContext(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) 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) 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) 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 ( StorageClassStandard = s3.ObjectStorageClassStandard StorageClassReducedRedundancy = s3.ObjectStorageClassReducedRedundancy StorageClassGlacier = s3.ObjectStorageClassGlacier StorageClassStandardIa = s3.ObjectStorageClassStandardIa StorageClassOnezoneIa = s3.ObjectStorageClassOnezoneIa StorageClassIntelligentTiering = s3.ObjectStorageClassIntelligentTiering StorageClassDeepArchive = s3.ObjectStorageClassDeepArchive )
All available storage classes are listed here.
const ( ServerSideEncryptionAes256 = s3.ServerSideEncryptionAes256 ServerSideEncryptionAwsKms = s3.ServerSideEncryptionAwsKms )
All available server side algorithm are listed here.
const Type = "s3"
Type is the type for s3
Variables ¶
var ( // ErrServerSideEncryptionCustomerKeyInvalid will be returned while server-side encryption customer key is invalid. ErrServerSideEncryptionCustomerKeyInvalid = services.NewErrorCode("invalid server-side encryption customer key") )
Functions ¶
func NewServicer ¶
NewServicer will create Servicer only.
func NewStorager ¶
NewStorager will create Storager only.
func WithDefaultServicePairs ¶
func WithDefaultServicePairs(v DefaultServicePairs) Pair
WithDefaultServicePairs will apply default_service_pairs value to Options.
DefaultServicePairs set default pairs for service actions
func WithDefaultStoragePairs ¶
func WithDefaultStoragePairs(v DefaultStoragePairs) Pair
WithDefaultStoragePairs will apply default_storage_pairs value to Options.
DefaultStoragePairs set default pairs for storager actions
func WithDisable100Continue ¶
func WithDisable100Continue(v bool) Pair
WithDisable100Continue will apply disable_100_continue value to Options.
Disable100Continue set this to `true` to disable the SDK adding the `Expect: 100-Continue` header to PUT requests over 2MB of content
func WithExceptedBucketOwner ¶
func WithExceptedBucketOwner(v string) Pair
WithExceptedBucketOwner will apply excepted_bucket_owner value to Options.
ExceptedBucketOwner the account ID of the excepted bucket owner
func WithForcePathStyle ¶
func WithForcePathStyle(v bool) Pair
WithForcePathStyle will apply force_path_style value to Options.
ForcePathStyle see http://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html for Amazon S3: Virtual Hosting of Buckets
func WithServerSideEncryption ¶
func WithServerSideEncryption(v string) Pair
WithServerSideEncryption will apply server_side_encryption value to Options.
ServerSideEncryption the server-side encryption algorithm used when storing this object in Amazon
func WithServerSideEncryptionAwsKmsKeyID ¶
func WithServerSideEncryptionAwsKmsKeyID(v string) Pair
WithServerSideEncryptionAwsKmsKeyID will apply server_side_encryption_aws_kms_key_id value to Options.
ServerSideEncryptionAwsKmsKeyID specifies the AWS KMS key ID to use for object encryption
func WithServerSideEncryptionBucketKeyEnabled ¶
func WithServerSideEncryptionBucketKeyEnabled(v bool) Pair
WithServerSideEncryptionBucketKeyEnabled will apply server_side_encryption_bucket_key_enabled value to Options.
ServerSideEncryptionBucketKeyEnabled specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using AWS KMS (SSE-KMS)
func WithServerSideEncryptionContext ¶
func WithServerSideEncryptionContext(v string) Pair
WithServerSideEncryptionContext will apply server_side_encryption_context value to Options.
ServerSideEncryptionContext specifies the AWS KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs.
func WithServerSideEncryptionCustomerAlgorithm ¶
func WithServerSideEncryptionCustomerAlgorithm(v string) Pair
WithServerSideEncryptionCustomerAlgorithm will apply server_side_encryption_customer_algorithm value to Options.
ServerSideEncryptionCustomerAlgorithm specifies the algorithm to use to when encrypting the object. The header value must be `AES256`.
func WithServerSideEncryptionCustomerKey ¶
func WithServerSideEncryptionCustomerKey(v []byte) Pair
WithServerSideEncryptionCustomerKey will apply server_side_encryption_customer_key value to Options.
ServerSideEncryptionCustomerKey specifies the customer-provided encryption key for Amazon S3 to use to encrypt/decrypt the source object. It must be 32-byte AES-256 key.
func WithServiceFeatures ¶ added in v2.1.0
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 ¶ added in v2.1.0
func WithStorageFeatures(v StorageFeatures) Pair
WithStorageFeatures will apply storage_features value to Options.
StorageFeatures set storage features
func WithUseAccelerate ¶
func WithUseAccelerate(v bool) Pair
WithUseAccelerate will apply use_accelerate value to Options.
UseAccelerate set this to `true` to enable S3 Accelerate feature
func WithUseArnRegion ¶
func WithUseArnRegion(v bool) Pair
WithUseArnRegion will apply use_arn_region value to Options.
UseArnRegion set this to `true` to have the S3 service client to use the region specified in the ARN, when an ARN is provided as an argument to a bucket parameter
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 { CompleteMultipart []Pair Create []Pair CreateDir []Pair CreateMultipart []Pair Delete []Pair List []Pair ListMultipart []Pair Metadata []Pair Read []Pair Stat []Pair Write []Pair WriteMultipart []Pair }
DefaultStoragePairs is default pairs for specific action
type ObjectMetadata
deprecated
type ObjectMetadata struct { // ServerSideEncryption ServerSideEncryption string // ServerSideEncryptionAwsKmsKeyID ServerSideEncryptionAwsKmsKeyID string // ServerSideEncryptionBucketKeyEnabled ServerSideEncryptionBucketKeyEnabled bool // ServerSideEncryptionContext ServerSideEncryptionContext string // ServerSideEncryptionCustomerAlgorithm ServerSideEncryptionCustomerAlgorithm string // ServerSideEncryptionCustomerKeyMd5 ServerSideEncryptionCustomerKeyMd5 string // StorageClass StorageClass string }
ObjectMetadata stores service metadata for object.
Deprecated: Use ObjectSystemMetadata instead.
func GetObjectMetadata
deprecated
func GetObjectMetadata(o *Object) ObjectMetadata
GetObjectMetadata will get ObjectMetadata from Object.
- This function should not be called by service implementer. - The returning ObjectMetadata is read only and should not be modified.
Deprecated: Use GetObjectSystemMetadata instead.
type ObjectSystemMetadata ¶ added in v2.2.0
type ObjectSystemMetadata struct { // ServerSideEncryption ServerSideEncryption string // ServerSideEncryptionAwsKmsKeyID ServerSideEncryptionAwsKmsKeyID string // ServerSideEncryptionBucketKeyEnabled ServerSideEncryptionBucketKeyEnabled bool // ServerSideEncryptionContext ServerSideEncryptionContext string // ServerSideEncryptionCustomerAlgorithm ServerSideEncryptionCustomerAlgorithm string // ServerSideEncryptionCustomerKeyMd5 ServerSideEncryptionCustomerKeyMd5 string // StorageClass StorageClass string }
ObjectSystemMetadata stores system metadata for object.
func GetObjectSystemMetadata ¶ added in v2.2.0
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 { typ.UnimplementedServicer // contains filtered or unexported fields }
Service is the s3 service config.
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 ¶ added in v2.1.0
type ServiceFeatures struct { // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationAll bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationCreate bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationDelete bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationGet bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationList bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. VirtualOperationAll bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. VirtualPairAll bool }
type Storage ¶
type Storage struct { typ.UnimplementedStorager typ.UnimplementedDirer typ.UnimplementedMultiparter // contains filtered or unexported fields }
Storage is the s3 object storage service.
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) 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) CreateDir ¶ added in v2.2.0
CreateDir will create a new dir object.
This function will create a context by default.
func (*Storage) CreateDirWithContext ¶ added in v2.2.0
func (s *Storage) CreateDirWithContext(ctx context.Context, path string, pairs ...Pair) (o *Object, err error)
CreateDirWithContext will create a new dir object.
func (*Storage) CreateMultipart ¶
CreateMultipart will create a new multipart.
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.
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) List ¶
List will return list a specific path.
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.
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) 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.
This function will create a context by default.
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.
type StorageFeatures ¶ added in v2.1.0
type StorageFeatures struct { // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationAll bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationCompleteMultipart bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationCreate bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationCreateDir bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationCreateMultipart bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationDelete bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationList bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationListMultipart bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationMetadata bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationRead bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationStat bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationWrite bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. LooseOperationWriteMultipart bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. VirtualOperationAll bool // Deprecated: This field has been deprecated by GSP-109, planned be removed in v4.3.0. VirtualPairAll 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 ¶ added in v2.2.0
type StorageSystemMetadata struct { }
StorageSystemMetadata stores system metadata for storage meta.
func GetStorageSystemMetadata ¶ added in v2.2.0
func GetStorageSystemMetadata(s *StorageMeta) StorageSystemMetadata
GetStorageSystemMetadata will get SystemMetadata from StorageMeta.
- The returning StorageSystemMetadata is read only and should not be modified.