Documentation ¶
Overview ¶
Package qingstor provided support for qingstor object storage (https://www.qingcloud.com/products/qingstor/)
Code generated by go generate via internal/cmd/service; DO NOT EDIT.
Index ¶
- Constants
- Variables
- func IsBucketNameValid(s string) bool
- 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 WithCopySourceEncryptionCustomerAlgorithm(v string) Pair
- func WithCopySourceEncryptionCustomerKey(v []byte) Pair
- func WithDefaultServicePairs(v DefaultServicePairs) Pair
- func WithDefaultStoragePairs(v DefaultStoragePairs) Pair
- func WithDisableURICleaning(v bool) Pair
- func WithEncryptionCustomerAlgorithm(v string) Pair
- func WithEncryptionCustomerKey(v []byte) Pair
- func WithStorageClass(v string) Pair
- type DefaultServicePairs
- type DefaultStoragePairs
- type ObjectMetadata
- 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 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) 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) 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, err error)
- func (s *Storage) MetadataWithContext(ctx context.Context, pairs ...Pair) (meta *StorageMeta, err error)
- 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) WriteMultipart(o *Object, r io.Reader, size int64, index int, pairs ...Pair) (n int64, err error)
- func (s *Storage) WriteMultipartWithContext(ctx context.Context, o *Object, r io.Reader, size int64, index int, ...) (n int64, err error)
- func (s *Storage) WriteWithContext(ctx context.Context, path string, r io.Reader, size int64, pairs ...Pair) (n int64, err error)
Examples ¶
Constants ¶
const ( StorageClassStandard = "STANDARD" StorageClassStandardIA = "STANDARD_IA" )
All available storage classes are listed here.
const (
SseCustomerAlgorithmAes256 = "AES256"
)
All available SSE customer algorithms are listed here.
const Type = "qingstor"
Type is the type for qingstor
Variables ¶
var ( // ErrInvalidBucketName will be returned while bucket name is invalid. ErrInvalidBucketName = errors.New("invalid bucket name") // ErrInvalidWorkDir will be returned while work dir is invalid. // Work dir must start and end with only one '/' ErrInvalidWorkDir = errors.New("invalid work dir") // ErrInvalidEncryptionCustomerKey will be returned while encryption customer key is invalid. // Encryption key must be a 32-byte AES-256 key. ErrInvalidEncryptionCustomerKey = errors.New("invalid encryption customer key") )
Functions ¶
func IsBucketNameValid ¶
IsBucketNameValid will check whether given string is a valid bucket name.
func New ¶
New will create both Servicer and Storager.
Example ¶
_, _, err := New( pairs.WithCredential( credential.NewHmac("test_access_key", "test_secret_key").String(), ), ) if err != nil { log.Printf("service init failed: %v", err) }
Output:
func NewServicer ¶
NewServicer will create Servicer only.
func NewStorager ¶
NewStorager will create Storager only.
func WithCopySourceEncryptionCustomerAlgorithm ¶ added in v2.1.0
func WithCopySourceEncryptionCustomerAlgorithm(v string) Pair
WithCopySourceEncryptionCustomerAlgorithm will apply copy_source_encryption_customer_algorithm value to Options CopySourceEncryptionCustomerAlgorithm is the encryption algorithm for the source object. Only AES256 is supported now.
func WithCopySourceEncryptionCustomerKey ¶ added in v2.1.0
func WithCopySourceEncryptionCustomerKey(v []byte) Pair
WithCopySourceEncryptionCustomerKey will apply copy_source_encryption_customer_key value to Options CopySourceEncryptionCustomerKey is the customer-provided encryption key for the source object. For AES256 keys, the plaintext must be 32 bytes long.
func WithDefaultServicePairs ¶ added in v2.1.0
func WithDefaultServicePairs(v DefaultServicePairs) Pair
WithDefaultServicePairs will apply default_service_pairs value to Options DefaultServicePairs set default pairs for service actions
func WithDefaultStoragePairs ¶ added in v2.1.0
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(v bool) Pair
WithDisableURICleaning will apply disable_uri_cleaning value to Options DisableURICleaning
func WithEncryptionCustomerAlgorithm ¶ added in v2.1.0
func WithEncryptionCustomerAlgorithm(v string) Pair
WithEncryptionCustomerAlgorithm will apply encryption_customer_algorithm value to Options EncryptionCustomerAlgorithm specifies the encryption algorithm. Only AES256 is supported now.
func WithEncryptionCustomerKey ¶ added in v2.1.0
func WithEncryptionCustomerKey(v []byte) Pair
WithEncryptionCustomerKey will apply encryption_customer_key value to Options EncryptionCustomerKey is the customer-provided encryption key. For AES256 keys, the plaintext must be 32 bytes long.
func WithStorageClass ¶ added in v2.1.0
func WithStorageClass(v string) Pair
WithStorageClass will apply storage_class value to Options StorageClass
Types ¶
type DefaultServicePairs ¶ added in v2.1.0
type DefaultServicePairs struct { Create []Pair Delete []Pair Get []Pair List []Pair }
DefaultServicePairs is default pairs for specific action
type DefaultStoragePairs ¶ added in v2.1.0
type DefaultStoragePairs struct { CompleteMultipart []Pair Copy []Pair Create []Pair CreateMultipart []Pair Delete []Pair Fetch []Pair List []Pair ListMultipart []Pair Metadata []Pair Move []Pair Reach []Pair Read []Pair Stat []Pair Write []Pair WriteMultipart []Pair }
DefaultStoragePairs is default pairs for specific action
type ObjectMetadata ¶ added in v2.1.0
type ObjectMetadata struct { // EncryptionCustomerAlgorithm EncryptionCustomerAlgorithm string // StorageClass StorageClass string }
ObjectMetadata stores service metadata for object.
func GetObjectMetadata ¶ added in v2.1.0
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.
type Service ¶
type Service struct { typ.UnimplementedServicer // contains filtered or unexported fields }
Service is the qingstor 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.
Example ¶
srv, _, err := New( pairs.WithCredential( credential.NewHmac("test_access_key", "test_secret_key").String(), ), ) if err != nil { log.Printf("service init failed: %v", err) } store, err := srv.Get("bucket_name", pairs.WithLocation("location")) if err != nil { log.Printf("service get bucket failed: %v", err) } log.Printf("%v", store)
Output:
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 Storage ¶
type Storage struct { typ.UnimplementedStorager typ.UnimplementedCopier typ.UnimplementedFetcher typ.UnimplementedMover typ.UnimplementedMultiparter typ.UnimplementedReacher // contains filtered or unexported fields }
Storage is the qingstor object storage client.
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.
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.
func (*Storage) Create ¶ added in v2.1.0
Create will create a new object without any api call.
This function will create a context by default.
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.
This function will create a context by default.
func (*Storage) DeleteWithContext ¶
DeleteWithContext will delete an Object from service.
func (*Storage) Fetch ¶
Fetch will fetch from a given url to path.
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.
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 ¶
Metadata will return current storager metadata.
This function will create a context by default.
func (*Storage) MetadataWithContext ¶
func (s *Storage) MetadataWithContext(ctx context.Context, pairs ...Pair) (meta *StorageMeta, err error)
MetadataWithContext will return current storager metadata.
func (*Storage) Move ¶
Move will move an object in the service.
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.
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.
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.
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, err error)
WriteMultipart will write content to a multipart.
This function will create a context by default.