oss

package module
v3.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 24, 2021 License: Apache-2.0 Imports: 16 Imported by: 1

README

Services Test Oss

oss

Aliyun Object Storage service support for go-storage.

Install

go get go.beyondstorage.io/services/oss/v3

Usage

import (
	"log"

	_ "go.beyondstorage.io/services/oss/v3"
	"go.beyondstorage.io/v5/services"
)

func main() {
	store, err := services.NewStoragerFromString("oss://bucket_name/path/to/workdir?credential=hmac:<access_key>:<secret_key>&endpoint=https:<location>.aliyuncs.com")
	if err != nil {
		log.Fatal(err)
	}

	// Write data from io.Reader into hello.txt
	n, err := store.Write("hello.txt", r, length)
}

Documentation

Overview

Package oss provided support for Aliyun Object Storage Service (https://cn.aliyun.com/product/oss)

Code generated by go generate via cmd/definitions; DO NOT EDIT.

Index

Constants

View Source
const (

	// ref: https://www.alibabacloud.com/help/doc-detail/51374.htm
	StorageClassStandard = "STANDARD"
	StorageClassIA       = "IA"
	StorageClassArchive  = "Archive"
)

All available storage classes are listed here.

View Source
const (
	ServerSideEncryptionAES256 = "AES256"
	ServerSideEncryptionKMS    = "KMS"
	ServerSideEncryptionSM4    = "SM4"

	ServerSideDataEncryptionSM4 = "SM4"
)

All available encryption algorithms are listed here.

View Source
const Type = "oss"

Type is the type for oss

Variables

This section is empty.

Functions

func New

func New(pairs ...typ.Pair) (typ.Servicer, typ.Storager, error)

New will create both Servicer and Storager.

func NewServicer

func NewServicer(pairs ...typ.Pair) (typ.Servicer, error)

NewServicer will create Servicer only.

func NewStorager

func NewStorager(pairs ...typ.Pair) (typ.Storager, error)

NewStorager will create Storager only.

func WithDefaultServicePairs

func WithDefaultServicePairs(v DefaultServicePairs) Pair

WithDefaultServicePairs will apply default_service_pairs value to Options.

set default pairs for service actions

func WithDefaultStoragePairs

func WithDefaultStoragePairs(v DefaultStoragePairs) Pair

WithDefaultStoragePairs will apply default_storage_pairs value to Options.

set default pairs for storager actions

func WithEnableVirtualDir

func WithEnableVirtualDir() Pair

WithEnableVirtualDir will apply enable_virtual_dir value to Options.

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 WithServerSideDataEncryption

func WithServerSideDataEncryption(v string) Pair

WithServerSideDataEncryption will apply server_side_data_encryption value to Options.

specifies the encryption algorithm when server_side_encryption is KMS. Can only be set to SM4. If this is not set, AES256 will be used.

For Chinese users, refer to https://help.aliyun.com/document_detail/31871.html for details.

For global users, refer to https://www.alibabacloud.com/help/doc-detail/31871.htm for details, and double-check whether SM4 can be used.

func WithServerSideEncryption

func WithServerSideEncryption(v string) Pair

WithServerSideEncryption will apply server_side_encryption value to Options.

specifies the encryption algorithm. Can be AES256, KMS or SM4.

For Chinese users, refer to https://help.aliyun.com/document_detail/31871.html for details.

For global users, refer to https://www.alibabacloud.com/help/doc-detail/31871.htm for details, and double-check whether SM4 can be used.

func WithServerSideEncryptionKeyID

func WithServerSideEncryptionKeyID(v string) Pair

WithServerSideEncryptionKeyID will apply server_side_encryption_key_id value to Options.

is the KMS-managed user master key. Only valid when server_side_encryption is KMS.

func WithServiceFeatures

func WithServiceFeatures(v ServiceFeatures) Pair

WithServiceFeatures will apply service_features value to Options.

set service features

func WithStorageClass

func WithStorageClass(v string) Pair

WithStorageClass will apply storage_class value to Options.

func WithStorageFeatures

func WithStorageFeatures(v StorageFeatures) Pair

WithStorageFeatures will apply storage_features value to Options.

set storage features

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
	Create            []Pair
	CreateAppend      []Pair
	CreateDir         []Pair
	CreateLink        []Pair
	CreateMultipart   []Pair
	Delete            []Pair
	List              []Pair
	ListMultipart     []Pair
	Metadata          []Pair
	Read              []Pair
	Stat              []Pair
	Write             []Pair
	WriteAppend       []Pair
	WriteMultipart    []Pair
}

DefaultStoragePairs is default pairs for specific action

type ObjectSystemMetadata

type ObjectSystemMetadata struct {
	ServerSideEncryption      string
	ServerSideEncryptionKeyID string
	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 {
	typ.UnimplementedServicer
	// contains filtered or unexported fields
}

Service is the aliyun oss *Service config.

func (*Service) Create

func (s *Service) Create(name string, pairs ...Pair) (store Storager, err error)

func (*Service) CreateWithContext

func (s *Service) CreateWithContext(ctx context.Context, name string, pairs ...Pair) (store Storager, err error)

func (*Service) Delete

func (s *Service) Delete(name string, pairs ...Pair) (err error)

func (*Service) DeleteWithContext

func (s *Service) DeleteWithContext(ctx context.Context, name string, pairs ...Pair) (err error)

func (*Service) Get

func (s *Service) Get(name string, pairs ...Pair) (store Storager, err error)

func (*Service) GetWithContext

func (s *Service) GetWithContext(ctx context.Context, name string, pairs ...Pair) (store Storager, err error)

func (*Service) List

func (s *Service) List(pairs ...Pair) (sti *StoragerIterator, err error)

func (*Service) ListWithContext

func (s *Service) ListWithContext(ctx context.Context, pairs ...Pair) (sti *StoragerIterator, err error)

func (*Service) String

func (s *Service) String() string

String implements Servicer.String

type ServiceFeatures

type ServiceFeatures struct {
}

type Storage

Storage is the aliyun object storage service.

func (*Storage) CommitAppend

func (s *Storage) CommitAppend(o *Object, pairs ...Pair) (err error)

func (*Storage) CommitAppendWithContext

func (s *Storage) CommitAppendWithContext(ctx context.Context, o *Object, pairs ...Pair) (err error)

func (*Storage) CompleteMultipart

func (s *Storage) CompleteMultipart(o *Object, parts []*Part, pairs ...Pair) (err error)

func (*Storage) CompleteMultipartWithContext

func (s *Storage) CompleteMultipartWithContext(ctx context.Context, o *Object, parts []*Part, pairs ...Pair) (err error)

func (*Storage) Create

func (s *Storage) Create(path string, pairs ...Pair) (o *Object)

func (*Storage) CreateAppend

func (s *Storage) CreateAppend(path string, pairs ...Pair) (o *Object, err error)

func (*Storage) CreateAppendWithContext

func (s *Storage) CreateAppendWithContext(ctx context.Context, path string, pairs ...Pair) (o *Object, err error)

func (*Storage) CreateDir

func (s *Storage) CreateDir(path string, pairs ...Pair) (o *Object, err error)

func (*Storage) CreateDirWithContext

func (s *Storage) CreateDirWithContext(ctx context.Context, path string, pairs ...Pair) (o *Object, err error)
func (s *Storage) CreateLink(path string, target string, pairs ...Pair) (o *Object, err error)

func (*Storage) CreateLinkWithContext

func (s *Storage) CreateLinkWithContext(ctx context.Context, path string, target string, pairs ...Pair) (o *Object, err error)

func (*Storage) CreateMultipart

func (s *Storage) CreateMultipart(path string, pairs ...Pair) (o *Object, err error)

func (*Storage) CreateMultipartWithContext

func (s *Storage) CreateMultipartWithContext(ctx context.Context, path string, pairs ...Pair) (o *Object, err error)

func (*Storage) Delete

func (s *Storage) Delete(path string, pairs ...Pair) (err error)

func (*Storage) DeleteWithContext

func (s *Storage) DeleteWithContext(ctx context.Context, path string, pairs ...Pair) (err error)

func (*Storage) List

func (s *Storage) List(path string, pairs ...Pair) (oi *ObjectIterator, err error)

func (*Storage) ListMultipart

func (s *Storage) ListMultipart(o *Object, pairs ...Pair) (pi *PartIterator, err error)

func (*Storage) ListMultipartWithContext

func (s *Storage) ListMultipartWithContext(ctx context.Context, o *Object, pairs ...Pair) (pi *PartIterator, err error)

func (*Storage) ListWithContext

func (s *Storage) ListWithContext(ctx context.Context, path string, pairs ...Pair) (oi *ObjectIterator, err error)

func (*Storage) Metadata

func (s *Storage) Metadata(pairs ...Pair) (meta *StorageMeta)

func (*Storage) Read

func (s *Storage) Read(path string, w io.Writer, pairs ...Pair) (n int64, err error)

func (*Storage) ReadWithContext

func (s *Storage) ReadWithContext(ctx context.Context, path string, w io.Writer, pairs ...Pair) (n int64, err error)

func (*Storage) Stat

func (s *Storage) Stat(path string, pairs ...Pair) (o *Object, err error)

func (*Storage) StatWithContext

func (s *Storage) StatWithContext(ctx context.Context, path string, pairs ...Pair) (o *Object, err error)

func (*Storage) String

func (s *Storage) String() string

String implements Storager.String

func (*Storage) Write

func (s *Storage) Write(path string, r io.Reader, size int64, pairs ...Pair) (n int64, err error)

func (*Storage) WriteAppend

func (s *Storage) WriteAppend(o *Object, r io.Reader, size int64, pairs ...Pair) (n int64, err error)

func (*Storage) WriteAppendWithContext

func (s *Storage) WriteAppendWithContext(ctx context.Context, o *Object, r io.Reader, size int64, pairs ...Pair) (n int64, err error)

func (*Storage) WriteMultipart

func (s *Storage) WriteMultipart(o *Object, r io.Reader, size int64, index int, pairs ...Pair) (n int64, part *Part, err error)

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)

func (*Storage) WriteWithContext

func (s *Storage) WriteWithContext(ctx context.Context, path string, r io.Reader, size int64, pairs ...Pair) (n int64, err error)

type StorageFeatures

type StorageFeatures struct {
	// 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 {
	ServerSideEncryption      string
	ServerSideEncryptionKeyID string
	StorageClass              string
}

StorageSystemMetadata stores system metadata for object.

func GetStorageSystemMetadata

func GetStorageSystemMetadata(s *StorageMeta) StorageSystemMetadata

GetStorageSystemMetadata will get StorageSystemMetadata from Storage.

- This function should not be called by service implementer. - The returning StorageServiceMetadata is read only and should not be modified.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL