obs

package
v0.5.2 Latest Latest
Warning

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

Go to latest
Published: May 10, 2019 License: Apache-2.0 Imports: 29 Imported by: 8

Documentation

Index

Constants

View Source
const (
	USER_AGENT           = "obs-sdk-go/" + obs_sdk_version
	HEADER_PREFIX        = "x-amz-"
	HEADER_PREFIX_META   = "x-amz-meta-"
	HEADER_DATE_AMZ      = "x-amz-date"
	HEADER_STS_TOKEN_AMZ = "x-amz-security-token"

	PREFIX_META = "meta-"

	HEADER_CONTENT_SHA256_AMZ            = "x-amz-content-sha256"
	HEADER_ACL_AMZ                       = "x-amz-acl"
	HEADER_LOCATION_AMZ                  = "x-amz-location"
	HEADER_COPY_SOURCE_AMZ               = "x-amz-copy-source"
	HEADER_COPY_SOURCE_RANGE_AMZ         = "x-amz-copy-source-range"
	HEADER_RANGE                         = "Range"
	HEADER_STORAGE_CLASS                 = "x-default-storage-class"
	HEADER_REQUEST_ID                    = "request-id"
	HEADER_BUCKET_REGION                 = "bucket-region"
	HEADER_ACCESS_CONRTOL_ALLOW_ORIGIN   = "access-control-allow-origin"
	HEADER_ACCESS_CONRTOL_ALLOW_HEADERS  = "access-control-allow-headers"
	HEADER_ACCESS_CONRTOL_MAX_AGE        = "access-control-max-age"
	HEADER_ACCESS_CONRTOL_ALLOW_METHODS  = "access-control-allow-methods"
	HEADER_ACCESS_CONRTOL_EXPOSE_HEADERS = "access-control-expose-headers"
	HEADER_VERSION_ID                    = "version-id"
	HEADER_COPY_SOURCE_VERSION_ID        = "copy-source-version-id"
	HEADER_DELETE_MARKER                 = "delete-marker"
	HEADER_WEBSITE_REDIRECT_LOCATION     = "website-redirect-location"
	HEADER_WEBSITE_REDIRECT_LOCATION_AMZ = "x-amz-website-redirect-location"
	HEADER_METADATA_DIRECTIVE_AMZ        = "x-amz-metadata-directive"
	HEADER_EXPIRATION                    = "expiration"
	HEADER_RESTORE                       = "restore"
	HEADER_STORAGE_CLASS2                = "storage-class"
	HEADER_STORAGE_CLASS2_AMZ            = "x-amz-storage-class"
	HEADER_CONTENT_LENGTH                = "content-length"
	HEADER_CONTENT_TYPE                  = "content-type"
	HEADER_CONTENT_LANGUAGE              = "content-language"
	HEADER_EXPIRES                       = "expires"
	HEADER_CACHE_CONTROL                 = "cache-control"
	HEADER_CONTENT_DISPOSITION           = "content-disposition"
	HEADER_CONTENT_ENCODING              = "content-encoding"

	HEADER_ETAG         = "etag"
	HEADER_LASTMODIFIED = "last-modified"

	HEADER_COPY_SOURCE_IF_MATCH_AMZ            = "x-amz-copy-source-if-match"
	HEADER_COPY_SOURCE_IF_NONE_MATCH_AMZ       = "x-amz-copy-source-if-none-match"
	HEADER_COPY_SOURCE_IF_MODIFIED_SINCE_AMZ   = "x-amz-copy-source-if-modified-since"
	HEADER_COPY_SOURCE_IF_UNMODIFIED_SINCE_AMZ = "x-amz-copy-source-if-unmodified-since"

	HEADER_IF_MATCH            = "If-Match"
	HEADER_IF_NONE_MATCH       = "If-None-Match"
	HEADER_IF_MODIFIED_SINCE   = "If-Modified-Since"
	HEADER_IF_UNMODIFIED_SINCE = "If-Unmodified-Since"

	HEADER_SSEC_ENCRYPTION = "server-side-encryption-customer-algorithm"
	HEADER_SSEC_KEY        = "server-side-encryption-customer-key"
	HEADER_SSEC_KEY_MD5    = "server-side-encryption-customer-key-MD5"

	HEADER_SSEKMS_ENCRYPTION = "server-side-encryption"
	HEADER_SSEKMS_KEY        = "server-side-encryption-aws-kms-key-id"

	HEADER_SSEC_ENCRYPTION_AMZ = "x-amz-server-side-encryption-customer-algorithm"
	HEADER_SSEC_KEY_AMZ        = "x-amz-server-side-encryption-customer-key"
	HEADER_SSEC_KEY_MD5_AMZ    = "x-amz-server-side-encryption-customer-key-MD5"

	HEADER_SSEC_COPY_SOURCE_ENCRYPTION_AMZ = "x-amz-copy-source-server-side-encryption-customer-algorithm"
	HEADER_SSEC_COPY_SOURCE_KEY_AMZ        = "x-amz-copy-source-server-side-encryption-customer-key"
	HEADER_SSEC_COPY_SOURCE_KEY_MD5_AMZ    = "x-amz-copy-source-server-side-encryption-customer-key-MD5"

	HEADER_SSEKMS_ENCRYPTION_AMZ = "x-amz-server-side-encryption"
	HEADER_SSEKMS_KEY_AMZ        = "x-amz-server-side-encryption-aws-kms-key-id"

	HEADER_DATE_CAMEL                          = "Date"
	HEADER_HOST_CAMEL                          = "Host"
	HEADER_HOST                                = "host"
	HEADER_AUTH_CAMEL                          = "Authorization"
	HEADER_MD5_CAMEL                           = "Content-MD5"
	HEADER_LOCATION_CAMEL                      = "Location"
	HEADER_CONTENT_LENGTH_CAMEL                = "Content-Length"
	HEADER_CONTENT_TYPE_CAML                   = "Content-Type"
	HEADER_USER_AGENT_CAMEL                    = "User-Agent"
	HEADER_ORIGIN_CAMEL                        = "Origin"
	HEADER_ACCESS_CONTROL_REQUEST_HEADER_CAMEL = "Access-Control-Request-Headers"

	PARAM_VERSION_ID                   = "versionId"
	PARAM_RESPONSE_CONTENT_TYPE        = "response-content-type"
	PARAM_RESPONSE_CONTENT_LANGUAGE    = "response-content-language"
	PARAM_RESPONSE_EXPIRES             = "response-expires"
	PARAM_RESPONSE_CACHE_CONTROL       = "response-cache-control"
	PARAM_RESPONSE_CONTENT_DISPOSITION = "response-content-disposition"
	PARAM_RESPONSE_CONTENT_ENCODING    = "response-content-encoding"
	PARAM_IMAGE_PROCESS                = "x-image-process"

	PARAM_ALGORITHM_AMZ_CAMEL     = "X-Amz-Algorithm"
	PARAM_CREDENTIAL_AMZ_CAMEL    = "X-Amz-Credential"
	PARAM_DATE_AMZ_CAMEL          = "X-Amz-Date"
	PARAM_EXPIRES_AMZ_CAMEL       = "X-Amz-Expires"
	PARAM_SIGNEDHEADERS_AMZ_CAMEL = "X-Amz-SignedHeaders"
	PARAM_SIGNATURE_AMZ_CAMEL     = "X-Amz-Signature"

	DEFAULT_SIGNATURE            = SignatureV2
	DEFAULT_REGION               = "region"
	DEFAULT_CONNECT_TIMEOUT      = 60
	DEFAULT_SOCKET_TIMEOUT       = 60
	DEFAULT_HEADER_TIMEOUT       = 60
	DEFAULT_IDLE_CONN_TIMEOUT    = 30
	DEFAULT_MAX_RETRY_COUNT      = 3
	DEFAULT_MAX_CONN_PER_HOST    = 1000
	EMPTY_CONTENT_SHA256         = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
	UNSIGNED_PAYLOAD             = "UNSIGNED-PAYLOAD"
	LONG_DATE_FORMAT             = "20060102T150405Z"
	SHORT_DATE_FORMAT            = "20060102"
	ISO8601_DATE_FORMAT          = "2006-01-02T15:04:05Z"
	ISO8601_MIDNIGHT_DATE_FORMAT = "2006-01-02T00:00:00Z"
	RFC1123_FORMAT               = "Mon, 02 Jan 2006 15:04:05 GMT"

	V4_SERVICE_NAME   = "s3"
	V4_SERVICE_SUFFIX = "aws4_request"

	V2_HASH_PREFIX = "AWS"
	V4_HASH_PREFIX = "AWS4-HMAC-SHA256"
	V4_HASH_PRE    = "AWS4"

	DEFAULT_SSE_KMS_ENCRYPTION = "aws:kms"
	DEFAULT_SSE_C_ENCRYPTION   = "AES256"

	HTTP_GET     = "GET"
	HTTP_POST    = "POST"
	HTTP_PUT     = "PUT"
	HTTP_DELETE  = "DELETE"
	HTTP_HEAD    = "HEAD"
	HTTP_OPTIONS = "OPTIONS"
)

Variables

This section is empty.

Functions

func Base64Decode

func Base64Decode(value string) ([]byte, error)

func Base64Encode

func Base64Encode(value []byte) string

func Base64Md5

func Base64Md5(value []byte) string

func CloseLog

func CloseLog()

func ConvertAclToXml

func ConvertAclToXml(input AccessControlPolicy, returnMd5 bool) (data string, md5 string)

func ConvertCompleteMultipartUploadInputToXml

func ConvertCompleteMultipartUploadInputToXml(input CompleteMultipartUploadInput, returnMd5 bool) (data string, md5 string)

func ConvertLifecyleConfigurationToXml

func ConvertLifecyleConfigurationToXml(input BucketLifecyleConfiguration, returnMd5 bool) (data string, md5 string)

func ConvertLoggingStatusToXml

func ConvertLoggingStatusToXml(input BucketLoggingStatus, returnMd5 bool) (data string, md5 string)

func ConvertNotificationToXml

func ConvertNotificationToXml(input BucketNotification, returnMd5 bool) (data string, md5 string)

func ConvertRequestToIoReader

func ConvertRequestToIoReader(req interface{}) (io.Reader, error)

func ConvertRequestToIoReaderV2

func ConvertRequestToIoReaderV2(req interface{}) (io.Reader, string, error)

func ConvertWebsiteConfigurationToXml

func ConvertWebsiteConfigurationToXml(input BucketWebsiteConfiguration, returnMd5 bool) (data string, md5 string)

func DummyQueryEscape

func DummyQueryEscape(s string) string

func FormatUtcNow

func FormatUtcNow(format string) string

func FormatUtcToRfc1123

func FormatUtcToRfc1123(t time.Time) string

func GetAuthorization

func GetAuthorization(ak, sk, method, bucketName, objectKey, queryUrl string, headers map[string][]string) (ret map[string]string)

func GetCurrentTimestamp

func GetCurrentTimestamp() int64

func Hex

func Hex(value []byte) string

func HexMd5

func HexMd5(value []byte) string

func HexSha256

func HexSha256(value []byte) string

func HmacSha1

func HmacSha1(key, value []byte) []byte

func HmacSha256

func HmacSha256(key, value []byte) []byte

func InitLog

func InitLog(logFullPath string, maxLogSize int64, backups int, level Level, logToConsole bool) error

func InitLogWithCacheCnt

func InitLogWithCacheCnt(logFullPath string, maxLogSize int64, backups int, level Level, logToConsole bool, cacheCnt int) error

func Int64ToString

func Int64ToString(value int64) string

func IntToString

func IntToString(value int) string

func IsIP

func IsIP(value string) bool

func Md5

func Md5(value []byte) []byte

func ParseCompleteMultipartUploadOutput

func ParseCompleteMultipartUploadOutput(output *CompleteMultipartUploadOutput)

func ParseCopyObjectOutput

func ParseCopyObjectOutput(output *CopyObjectOutput)

func ParseCopyPartOutput

func ParseCopyPartOutput(output *CopyPartOutput)

func ParseDeleteObjectOutput

func ParseDeleteObjectOutput(output *DeleteObjectOutput)

func ParseGetBucketMetadataOutput

func ParseGetBucketMetadataOutput(output *GetBucketMetadataOutput)

func ParseGetObjectMetadataOutput

func ParseGetObjectMetadataOutput(output *GetObjectMetadataOutput)

func ParseGetObjectOutput

func ParseGetObjectOutput(output *GetObjectOutput)

func ParseInitiateMultipartUploadOutput

func ParseInitiateMultipartUploadOutput(output *InitiateMultipartUploadOutput)

func ParsePutObjectOutput

func ParsePutObjectOutput(output *PutObjectOutput)

func ParseResponseToBaseModel

func ParseResponseToBaseModel(resp *http.Response, baseModel IBaseModel, xmlResult bool) (err error)

func ParseResponseToObsError

func ParseResponseToObsError(resp *http.Response) error

func ParseUploadPartOutput

func ParseUploadPartOutput(output *UploadPartOutput)

func ParseXml

func ParseXml(value []byte, result interface{}) error

func Sha256Hash

func Sha256Hash(value []byte) []byte

func StringToInt

func StringToInt(value string, def int) int

func StringToInt64

func StringToInt64(value string, def int64) int64

func SyncLog

func SyncLog()

func TransToXml

func TransToXml(value interface{}) ([]byte, error)

func UrlDecode

func UrlDecode(value string) (string, error)

func UrlEncode

func UrlEncode(value string, chineseOnly bool) string

func V4Auth

func V4Auth(ak, sk, region, method, canonicalizedUrl, queryUrl string, headers map[string][]string) map[string]string

func WithConnectTimeout

func WithConnectTimeout(connectTimeout int) configurer

func WithHeaderTimeout

func WithHeaderTimeout(headerTimeout int) configurer

func WithIdleConnTimeout

func WithIdleConnTimeout(idleConnTimeout int) configurer

func WithMaxConnections

func WithMaxConnections(maxConnsPerHost int) configurer

func WithMaxRetryCount

func WithMaxRetryCount(maxRetryCount int) configurer

func WithPathStyle

func WithPathStyle(pathStyle bool) configurer

func WithProxyUrl

func WithProxyUrl(proxyUrl string) configurer

func WithRegion

func WithRegion(region string) configurer

func WithSecurityToken

func WithSecurityToken(securityToken string) configurer

func WithSignature

func WithSignature(signature SignatureType) configurer

func WithSocketTimeout

func WithSocketTimeout(socketTimeout int) configurer

func WithSslVerify

func WithSslVerify(sslVerify bool) configurer

func WithSslVerifyAndPemCerts

func WithSslVerifyAndPemCerts(sslVerify bool, pemCerts []byte) configurer

Types

type AbortMultipartUploadInput

type AbortMultipartUploadInput struct {
	Bucket   string
	Key      string
	UploadId string
}

type AccessControlPolicy

type AccessControlPolicy struct {
	XMLName xml.Name `xml:"AccessControlPolicy"`
	Owner   Owner    `xml:"Owner"`
	Grants  []Grant  `xml:"AccessControlList>Grant"`
}

type AclType

type AclType string
const (
	AclPrivate                AclType = "private"
	AclPublicRead             AclType = "public-read"
	AclPublicReadWrite        AclType = "public-read-write"
	AclAuthenticatedRead      AclType = "authenticated-read"
	AclBucketOwnerRead        AclType = "bucket-owner-read"
	AclBucketOwnerFullControl AclType = "bucket-owner-full-control"
	AclLogDeliveryWrite       AclType = "log-delivery-write"
)

type BaseModel

type BaseModel struct {
	StatusCode      int                 `xml:"-"`
	RequestId       string              `xml:"RequestId"`
	ResponseHeaders map[string][]string `xml:"-"`
}

type Bucket

type Bucket struct {
	XMLName      xml.Name  `xml:"Bucket"`
	Name         string    `xml:"Name"`
	CreationDate time.Time `xml:"CreationDate"`
	Location     string    `xml:"Location"`
}

type BucketCors

type BucketCors struct {
	XMLName   xml.Name   `xml:"CORSConfiguration"`
	CorsRules []CorsRule `xml:"CORSRule"`
}

type BucketLifecyleConfiguration

type BucketLifecyleConfiguration struct {
	XMLName        xml.Name        `xml:"LifecycleConfiguration"`
	LifecycleRules []LifecycleRule `xml:"Rule"`
}

type BucketLocation

type BucketLocation struct {
	XMLName  xml.Name `xml:"CreateBucketConfiguration"`
	Location string   `xml:"LocationConstraint"`
}

type BucketLoggingStatus

type BucketLoggingStatus struct {
	XMLName      xml.Name `xml:"BucketLoggingStatus"`
	TargetBucket string   `xml:"LoggingEnabled>TargetBucket,omitempty"`
	TargetPrefix string   `xml:"LoggingEnabled>TargetPrefix,omitempty"`
	TargetGrants []Grant  `xml:"LoggingEnabled>TargetGrants>Grant,omitempty"`
}

type BucketNotification

type BucketNotification struct {
	XMLName             xml.Name             `xml:"NotificationConfiguration"`
	TopicConfigurations []TopicConfiguration `xml:"TopicConfiguration"`
}

type BucketQuota

type BucketQuota struct {
	XMLName xml.Name `xml:"Quota"`
	Quota   int64    `xml:"StorageQuota"`
}

type BucketStoragePolicy

type BucketStoragePolicy struct {
	XMLName      xml.Name         `xml:"StoragePolicy"`
	StorageClass StorageClassType `xml:"DefaultStorageClass"`
}

type BucketTagging

type BucketTagging struct {
	XMLName xml.Name `xml:"Tagging"`
	Tags    []Tag    `xml:"TagSet>Tag"`
}

type BucketVersioningConfiguration

type BucketVersioningConfiguration struct {
	XMLName xml.Name             `xml:"VersioningConfiguration"`
	Status  VersioningStatusType `xml:"Status"`
}

type BucketWebsiteConfiguration

type BucketWebsiteConfiguration struct {
	XMLName               xml.Name              `xml:"WebsiteConfiguration"`
	RedirectAllRequestsTo RedirectAllRequestsTo `xml:"RedirectAllRequestsTo,omitempty"`
	IndexDocument         IndexDocument         `xml:"IndexDocument,omitempty"`
	ErrorDocument         ErrorDocument         `xml:"ErrorDocument,omitempty"`
	RoutingRules          []RoutingRule         `xml:"RoutingRules>RoutingRule,omitempty"`
}

type CompleteMultipartUploadInput

type CompleteMultipartUploadInput struct {
	Bucket   string   `xml:"-"`
	Key      string   `xml:"-"`
	UploadId string   `xml:"-"`
	XMLName  xml.Name `xml:"CompleteMultipartUpload"`
	Parts    []Part   `xml:"Part"`
}

type CompleteMultipartUploadOutput

type CompleteMultipartUploadOutput struct {
	BaseModel
	VersionId string     `xml:"-"`
	SseHeader ISseHeader `xml:"-"`
	XMLName   xml.Name   `xml:"CompleteMultipartUploadResult"`
	Location  string     `xml:"Location"`
	Bucket    string     `xml:"Bucket"`
	Key       string     `xml:"Key"`
	ETag      string     `xml:"ETag"`
}

type Condition

type Condition struct {
	XMLName                     xml.Name `xml:"Condition"`
	KeyPrefixEquals             string   `xml:"KeyPrefixEquals,omitempty"`
	HttpErrorCodeReturnedEquals string   `xml:"HttpErrorCodeReturnedEquals,omitempty"`
}

type Content

type Content struct {
	XMLName      xml.Name         `xml:"Contents"`
	Owner        Owner            `xml:"Owner"`
	ETag         string           `xml:"ETag"`
	Key          string           `xml:"Key"`
	LastModified time.Time        `xml:"LastModified"`
	Size         int64            `xml:"Size"`
	StorageClass StorageClassType `xml:"StorageClass"`
}

type CopyObjectInput

type CopyObjectInput struct {
	ObjectOperationInput
	CopySourceBucket            string
	CopySourceKey               string
	CopySourceVersionId         string
	CopySourceIfMatch           string
	CopySourceIfNoneMatch       string
	CopySourceIfUnmodifiedSince time.Time
	CopySourceIfModifiedSince   time.Time
	SourceSseHeader             ISseHeader
	CacheControl                string
	ContentDisposition          string
	ContentEncoding             string
	ContentLanguage             string
	ContentType                 string
	Expires                     string
	MetadataDirective           MetadataDirectiveType
}

type CopyObjectOutput

type CopyObjectOutput struct {
	BaseModel
	CopySourceVersionId string     `xml:"-"`
	VersionId           string     `xml:"-"`
	SseHeader           ISseHeader `xml:"-"`
	XMLName             xml.Name   `xml:"CopyObjectResult"`
	LastModified        time.Time  `xml:"LastModified"`
	ETag                string     `xml:"ETag"`
}

type CopyPartInput

type CopyPartInput struct {
	Bucket               string
	Key                  string
	UploadId             string
	PartNumber           int
	CopySourceBucket     string
	CopySourceKey        string
	CopySourceVersionId  string
	CopySourceRangeStart int64
	CopySourceRangeEnd   int64
	SseHeader            ISseHeader
	SourceSseHeader      ISseHeader
}

type CopyPartOutput

type CopyPartOutput struct {
	BaseModel
	XMLName      xml.Name   `xml:"CopyPartResult"`
	PartNumber   int        `xml:"-"`
	ETag         string     `xml:"ETag"`
	LastModified time.Time  `xml:"LastModified"`
	SseHeader    ISseHeader `xml:"-"`
}

type CorsRule

type CorsRule struct {
	XMLName       xml.Name `xml:"CORSRule"`
	ID            string   `xml:"ID,omitempty"`
	AllowedOrigin []string `xml:"AllowedOrigin"`
	AllowedMethod []string `xml:"AllowedMethod"`
	AllowedHeader []string `xml:"AllowedHeader,omitempty"`
	MaxAgeSeconds int      `xml:"MaxAgeSeconds"`
	ExposeHeader  []string `xml:"ExposeHeader,omitempty"`
}

type CreateBrowserBasedSignatureInput

type CreateBrowserBasedSignatureInput struct {
	Bucket     string
	Key        string
	Expires    int
	FormParams map[string]string
}

type CreateBrowserBasedSignatureOutput

type CreateBrowserBasedSignatureOutput struct {
	OriginPolicy string
	Policy       string
	Algorithm    string
	Credential   string
	Date         string
	Signature    string
}

type CreateBucketInput

type CreateBucketInput struct {
	BucketLocation
	Bucket       string           `xml:"-"`
	ACL          AclType          `xml:"-"`
	StorageClass StorageClassType `xml:"-"`
}

type CreateSignedUrlInput

type CreateSignedUrlInput struct {
	Method      HttpMethodType
	Bucket      string
	Key         string
	SubResource SubResourceType
	Expires     int
	Headers     map[string]string
	QueryParams map[string]string
}

type CreateSignedUrlOutput

type CreateSignedUrlOutput struct {
	SignedUrl                  string
	ActualSignedRequestHeaders http.Header
}

type DefaultSerializable

type DefaultSerializable struct {
	// contains filtered or unexported fields
}

type DeleteMarker

type DeleteMarker struct {
	XMLName      xml.Name         `xml:"DeleteMarker"`
	Key          string           `xml:"Key"`
	VersionId    string           `xml:"VersionId"`
	IsLatest     bool             `xml:"IsLatest"`
	LastModified time.Time        `xml:"LastModified"`
	Owner        Owner            `xml:"Owner"`
	StorageClass StorageClassType `xml:"StorageClass"`
}

type DeleteObjectInput

type DeleteObjectInput struct {
	Bucket    string
	Key       string
	VersionId string
}

type DeleteObjectOutput

type DeleteObjectOutput struct {
	BaseModel
	VersionId    string
	DeleteMarker bool
}

type DeleteObjectsInput

type DeleteObjectsInput struct {
	Bucket  string           `xml:"-"`
	XMLName xml.Name         `xml:"Delete"`
	Quiet   bool             `xml:"Quiet,omitempty"`
	Objects []ObjectToDelete `xml:"Object"`
}

type DeleteObjectsOutput

type DeleteObjectsOutput struct {
	BaseModel
	XMLName  xml.Name  `xml:"DeleteResult"`
	Deleteds []Deleted `xml:"Deleted"`
	Errors   []Error   `xml:"Error"`
}

type Deleted

type Deleted struct {
	XMLName               xml.Name `xml:"Deleted"`
	Key                   string   `xml:"Key"`
	VersionId             string   `xml:"VersionId"`
	DeleteMarker          bool     `xml:"DeleteMarker"`
	DeleteMarkerVersionId string   `xml:"DeleteMarkerVersionId"`
}

type Error

type Error struct {
	XMLName   xml.Name `xml:"Error"`
	Key       string   `xml:"Key"`
	VersionId string   `xml:"VersionId"`
	Code      string   `xml:"Code"`
	Message   string   `xml:"Message"`
}

type ErrorDocument

type ErrorDocument struct {
	Key string `xml:"Key,omitempty"`
}

type Expiration

type Expiration struct {
	XMLName xml.Name  `xml:"Expiration"`
	Date    time.Time `xml:"Date,omitempty"`
	Days    int       `xml:"Days,omitempty"`
}

type FilterRule

type FilterRule struct {
	XMLName xml.Name `xml:"FilterRule"`
	Name    string   `xml:"Name,omitempty"`
	Value   string   `xml:"Value,omitempty"`
}

type GetBucketAclOutput

type GetBucketAclOutput struct {
	BaseModel
	AccessControlPolicy
}

type GetBucketCorsOutput

type GetBucketCorsOutput struct {
	BaseModel
	BucketCors
}

type GetBucketLifecycleConfigurationOutput

type GetBucketLifecycleConfigurationOutput struct {
	BaseModel
	BucketLifecyleConfiguration
}

type GetBucketLocationOutput

type GetBucketLocationOutput struct {
	BaseModel
	BucketLocation
}

type GetBucketLoggingConfigurationOutput

type GetBucketLoggingConfigurationOutput struct {
	BaseModel
	BucketLoggingStatus
}

type GetBucketMetadataInput

type GetBucketMetadataInput struct {
	Bucket        string
	Origin        string
	RequestHeader string
}

type GetBucketMetadataOutput

type GetBucketMetadataOutput struct {
	BaseModel
	StorageClass  StorageClassType
	Location      string
	AllowOrigin   string
	AllowMethod   string
	AllowHeader   string
	MaxAgeSeconds int
	ExposeHeader  string
}

type GetBucketNotificationOutput

type GetBucketNotificationOutput struct {
	BaseModel
	BucketNotification
}

type GetBucketPolicyOutput

type GetBucketPolicyOutput struct {
	BaseModel
	Policy string `body`
}

type GetBucketQuotaOutput

type GetBucketQuotaOutput struct {
	BaseModel
	BucketQuota
}

type GetBucketStorageInfoOutput

type GetBucketStorageInfoOutput struct {
	BaseModel
	XMLName      xml.Name `xml:"GetBucketStorageInfoResult"`
	Size         int64    `xml:"Size"`
	ObjectNumber int      `xml:"ObjectNumber"`
}

type GetBucketStoragePolicyOutput

type GetBucketStoragePolicyOutput struct {
	BaseModel
	BucketStoragePolicy
}

type GetBucketTaggingOutput

type GetBucketTaggingOutput struct {
	BaseModel
	BucketTagging
}

type GetBucketVersioningOutput

type GetBucketVersioningOutput struct {
	BaseModel
	BucketVersioningConfiguration
}

type GetBucketWebsiteConfigurationOutput

type GetBucketWebsiteConfigurationOutput struct {
	BaseModel
	BucketWebsiteConfiguration
}

type GetObjectAclInput

type GetObjectAclInput struct {
	Bucket    string
	Key       string
	VersionId string
}

type GetObjectAclOutput

type GetObjectAclOutput struct {
	BaseModel
	VersionId string
	AccessControlPolicy
}

type GetObjectInput

type GetObjectInput struct {
	GetObjectMetadataInput
	IfMatch                    string
	IfNoneMatch                string
	IfUnmodifiedSince          time.Time
	IfModifiedSince            time.Time
	RangeStart                 int64
	RangeEnd                   int64
	ImageProcess               string
	ResponseCacheControl       string
	ResponseContentDisposition string
	ResponseContentEncoding    string
	ResponseContentLanguage    string
	ResponseContentType        string
	ResponseExpires            string
}

type GetObjectMetadataInput

type GetObjectMetadataInput struct {
	Bucket        string
	Key           string
	VersionId     string
	Origin        string
	RequestHeader string
	SseHeader     ISseHeader
}

type GetObjectMetadataOutput

type GetObjectMetadataOutput struct {
	BaseModel
	VersionId               string
	WebsiteRedirectLocation string
	Expiration              string
	Restore                 string
	StorageClass            StorageClassType
	ContentLength           int64
	ContentType             string
	ETag                    string
	AllowOrigin             string
	AllowHeader             string
	AllowMethod             string
	ExposeHeader            string
	MaxAgeSeconds           int
	LastModified            time.Time
	SseHeader               ISseHeader
	Metadata                map[string]string
}

type GetObjectOutput

type GetObjectOutput struct {
	GetObjectMetadataOutput
	DeleteMarker       bool
	CacheControl       string
	ContentDisposition string
	ContentEncoding    string
	ContentLanguage    string
	Expires            string
	Body               io.ReadCloser
}

type Grant

type Grant struct {
	XMLName    xml.Name       `xml:"Grant"`
	Grantee    Grantee        `xml:"Grantee"`
	Permission PermissionType `xml:"Permission"`
}

type Grantee

type Grantee struct {
	XMLName     xml.Name     `xml:"Grantee"`
	Type        GranteeType  `xml:"type,attr"`
	ID          string       `xml:"ID,omitempty"`
	DisplayName string       `xml:"DisplayName,omitempty"`
	URI         GroupUriType `xml:"URI,omitempty"`
}

type GranteeType

type GranteeType string
const (
	GranteeGroup GranteeType = "Group"
	GranteeUser  GranteeType = "CanonicalUser"
)

type GroupUriType

type GroupUriType string
const (
	GroupAllUsers           GroupUriType = "http://acs.amazonaws.com/groups/global/AllUsers"
	GroupAuthenticatedUsers GroupUriType = "http://acs.amazonaws.com/groups/global/AuthenticatedUsers"
	GroupLogDelivery        GroupUriType = "http://acs.amazonaws.com/groups/s3/LogDelivery"
)

type HttpMethodType

type HttpMethodType string
const (
	HttpMethodGet     HttpMethodType = HTTP_GET
	HttpMethodPut     HttpMethodType = HTTP_PUT
	HttpMethodPost    HttpMethodType = HTTP_POST
	HttpMethodDelete  HttpMethodType = HTTP_DELETE
	HttpMethodHead    HttpMethodType = HTTP_HEAD
	HttpMethodOptions HttpMethodType = HTTP_OPTIONS
)

type IBaseModel

type IBaseModel interface {
	// contains filtered or unexported methods
}

type IReadCloser

type IReadCloser interface {
	// contains filtered or unexported methods
}

type ISerializable

type ISerializable interface {
	// contains filtered or unexported methods
}

type ISseHeader

type ISseHeader interface {
	GetEncryption() string
	GetKey() string
}

type IndexDocument

type IndexDocument struct {
	Suffix string `xml:"Suffix"`
}

type InitiateMultipartUploadInput

type InitiateMultipartUploadInput struct {
	ObjectOperationInput
	ContentType string
}

type InitiateMultipartUploadOutput

type InitiateMultipartUploadOutput struct {
	BaseModel
	XMLName   xml.Name `xml:"InitiateMultipartUploadResult"`
	Bucket    string   `xml:"Bucket"`
	Key       string   `xml:"Key"`
	UploadId  string   `xml:"UploadId"`
	SseHeader ISseHeader
}

type Initiator

type Initiator struct {
	XMLName     xml.Name `xml:"Initiator"`
	ID          string   `xml:"ID"`
	DisplayName string   `xml:"DisplayName,omitempty"`
}

type Level

type Level int
const (
	LEVEL_OFF   Level = 500
	LEVEL_ERROR Level = 400
	LEVEL_WARN  Level = 300
	LEVEL_INFO  Level = 200
	LEVEL_DEBUG Level = 100
)

type LifecycleRule

type LifecycleRule struct {
	ID                           string                        `xml:"ID,omitempty"`
	Prefix                       string                        `xml:"Prefix"`
	Status                       RuleStatusType                `xml:"Status"`
	Transitions                  []Transition                  `xml:"Transition,omitempty"`
	Expiration                   Expiration                    `xml:"Expiration,omitempty"`
	NoncurrentVersionTransitions []NoncurrentVersionTransition `xml:"NoncurrentVersionTransition,omitempty"`
	NoncurrentVersionExpiration  NoncurrentVersionExpiration   `xml:"NoncurrentVersionExpiration,omitempty"`
}

type ListBucketsInput

type ListBucketsInput struct {
	QueryLocation bool
}

type ListBucketsOutput

type ListBucketsOutput struct {
	BaseModel
	XMLName xml.Name `xml:"ListAllMyBucketsResult"`
	Owner   Owner    `xml:"Owner"`
	Buckets []Bucket `xml:"Buckets>Bucket"`
}

type ListMultipartUploadsInput

type ListMultipartUploadsInput struct {
	Bucket         string
	Prefix         string
	MaxUploads     int
	Delimiter      string
	KeyMarker      string
	UploadIdMarker string
}

type ListMultipartUploadsOutput

type ListMultipartUploadsOutput struct {
	BaseModel
	XMLName            xml.Name `xml:"ListMultipartUploadsResult"`
	Bucket             string   `xml:"Bucket"`
	KeyMarker          string   `xml:"KeyMarker"`
	NextKeyMarker      string   `xml:"NextKeyMarker"`
	UploadIdMarker     string   `xml:"UploadIdMarker"`
	NextUploadIdMarker string   `xml:"NextUploadIdMarker"`
	Delimiter          string   `xml:"Delimiter"`
	IsTruncated        bool     `xml:"IsTruncated"`
	MaxUploads         int      `xml:"MaxUploads"`
	Prefix             string   `xml:"Prefix"`
	Uploads            []Upload `xml:"Upload"`
	CommonPrefixes     []string `xml:"CommonPrefixes>Prefix"`
}

type ListObjectsInput

type ListObjectsInput struct {
	ListObjsInput
	Bucket string
	Marker string
}

type ListObjectsOutput

type ListObjectsOutput struct {
	BaseModel
	XMLName        xml.Name  `xml:"ListBucketResult"`
	Delimiter      string    `xml:"Delimiter"`
	IsTruncated    bool      `xml:"IsTruncated"`
	Marker         string    `xml:"Marker"`
	NextMarker     string    `xml:"NextMarker"`
	MaxKeys        int       `xml:"MaxKeys"`
	Name           string    `xml:"Name"`
	Prefix         string    `xml:"Prefix"`
	Contents       []Content `xml:"Contents"`
	CommonPrefixes []string  `xml:"CommonPrefixes>Prefix"`
	Location       string    `xml:"-"`
}

type ListObjsInput

type ListObjsInput struct {
	Prefix        string
	MaxKeys       int
	Delimiter     string
	Origin        string
	RequestHeader string
}

type ListPartsInput

type ListPartsInput struct {
	Bucket           string
	Key              string
	UploadId         string
	MaxParts         int
	PartNumberMarker int
}

type ListPartsOutput

type ListPartsOutput struct {
	BaseModel
	XMLName              xml.Name         `xml:"ListPartsResult"`
	Bucket               string           `xml:"Bucket"`
	Key                  string           `xml:"Key"`
	UploadId             string           `xml:"UploadId"`
	PartNumberMarker     int              `xml:"PartNumberMarker"`
	NextPartNumberMarker int              `xml:"NextPartNumberMarker"`
	MaxParts             int              `xml:"MaxParts"`
	IsTruncated          bool             `xml:"IsTruncated"`
	StorageClass         StorageClassType `xml:"StorageClass"`
	Initiator            Initiator        `xml:"Initiator“`
	Owner                Owner            `xml:"Owner"`
	Parts                []Part           `xml:"Part"`
}

type ListVersionsInput

type ListVersionsInput struct {
	ListObjsInput
	Bucket          string
	KeyMarker       string
	VersionIdMarker string
}

type ListVersionsOutput

type ListVersionsOutput struct {
	BaseModel
	XMLName             xml.Name       `xml:"ListVersionsResult"`
	Delimiter           string         `xml:"Delimiter"`
	IsTruncated         bool           `xml:"IsTruncated"`
	KeyMarker           string         `xml:"KeyMarker"`
	NextKeyMarker       string         `xml:"NextKeyMarker"`
	VersionIdMarker     string         `xml:"VersionIdMarker"`
	NextVersionIdMarker string         `xml:"NextVersionIdMarker"`
	MaxKeys             int            `xml:"MaxKeys"`
	Name                string         `xml:"Name"`
	Prefix              string         `xml:"Prefix"`
	Versions            []Version      `xml:"Version"`
	DeleteMarkers       []DeleteMarker `xml:"DeleteMarker"`
	CommonPrefixes      []string       `xml:"CommonPrefixes>Prefix"`
	Location            string         `xml:"-"`
}

type MetadataDirectiveType

type MetadataDirectiveType string
const (
	CopyMetadata    MetadataDirectiveType = "COPY"
	ReplaceMetadata MetadataDirectiveType = "REPLACE"
)

type NoncurrentVersionExpiration

type NoncurrentVersionExpiration struct {
	XMLName        xml.Name `xml:"NoncurrentVersionExpiration"`
	NoncurrentDays int      `xml:"NoncurrentDays"`
}

type NoncurrentVersionTransition

type NoncurrentVersionTransition struct {
	XMLName        xml.Name         `xml:"NoncurrentVersionTransition"`
	NoncurrentDays int              `xml:"NoncurrentDays"`
	StorageClass   StorageClassType `xml:"StorageClass"`
}

type ObjectOperationInput

type ObjectOperationInput struct {
	Bucket                  string
	Key                     string
	ACL                     AclType
	StorageClass            StorageClassType
	WebsiteRedirectLocation string
	SseHeader               ISseHeader
	Metadata                map[string]string
}

type ObjectToDelete

type ObjectToDelete struct {
	XMLName   xml.Name `xml:"Object"`
	Key       string   `xml:"Key"`
	VersionId string   `xml:"VersionId,omitempty"`
}

type ObsClient

type ObsClient struct {
	// contains filtered or unexported fields
}

func New

func New(ak, sk, endpoint string, configurers ...configurer) (*ObsClient, error)

func (ObsClient) AbortMultipartUpload

func (obsClient ObsClient) AbortMultipartUpload(input *AbortMultipartUploadInput) (output *BaseModel, err error)

func (ObsClient) AbortMultipartUploadWithSignedUrl

func (obsClient ObsClient) AbortMultipartUploadWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *BaseModel, err error)

func (ObsClient) Close

func (obsClient ObsClient) Close()

func (ObsClient) CompleteMultipartUpload

func (obsClient ObsClient) CompleteMultipartUpload(input *CompleteMultipartUploadInput) (output *CompleteMultipartUploadOutput, err error)

func (ObsClient) CompleteMultipartUploadWithSignedUrl

func (obsClient ObsClient) CompleteMultipartUploadWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *CompleteMultipartUploadOutput, err error)

func (ObsClient) CopyObject

func (obsClient ObsClient) CopyObject(input *CopyObjectInput) (output *CopyObjectOutput, err error)

func (ObsClient) CopyObjectWithSignedUrl

func (obsClient ObsClient) CopyObjectWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *CopyObjectOutput, err error)

func (ObsClient) CopyPart

func (obsClient ObsClient) CopyPart(input *CopyPartInput) (output *CopyPartOutput, err error)

func (ObsClient) CopyPartWithSignedUrl

func (obsClient ObsClient) CopyPartWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *CopyPartOutput, err error)

func (ObsClient) CreateBrowserBasedSignature

func (obsClient ObsClient) CreateBrowserBasedSignature(input *CreateBrowserBasedSignatureInput) (output *CreateBrowserBasedSignatureOutput, err error)

func (ObsClient) CreateBucket

func (obsClient ObsClient) CreateBucket(input *CreateBucketInput) (output *BaseModel, err error)

func (ObsClient) CreateBucketWithSignedUrl

func (obsClient ObsClient) CreateBucketWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *BaseModel, err error)

func (ObsClient) CreateSignedUrl

func (obsClient ObsClient) CreateSignedUrl(input *CreateSignedUrlInput) (output *CreateSignedUrlOutput, err error)

func (ObsClient) DeleteBucket

func (obsClient ObsClient) DeleteBucket(bucketName string) (output *BaseModel, err error)

func (ObsClient) DeleteBucketCors

func (obsClient ObsClient) DeleteBucketCors(bucketName string) (output *BaseModel, err error)

func (ObsClient) DeleteBucketCorsWithSignedUrl

func (obsClient ObsClient) DeleteBucketCorsWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *BaseModel, err error)

func (ObsClient) DeleteBucketLifecycleConfiguration

func (obsClient ObsClient) DeleteBucketLifecycleConfiguration(bucketName string) (output *BaseModel, err error)

func (ObsClient) DeleteBucketLifecycleConfigurationWithSignedUrl

func (obsClient ObsClient) DeleteBucketLifecycleConfigurationWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *BaseModel, err error)

func (ObsClient) DeleteBucketPolicy

func (obsClient ObsClient) DeleteBucketPolicy(bucketName string) (output *BaseModel, err error)

func (ObsClient) DeleteBucketPolicyWithSignedUrl

func (obsClient ObsClient) DeleteBucketPolicyWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *BaseModel, err error)

func (ObsClient) DeleteBucketTagging

func (obsClient ObsClient) DeleteBucketTagging(bucketName string) (output *BaseModel, err error)

func (ObsClient) DeleteBucketTaggingWithSignedUrl

func (obsClient ObsClient) DeleteBucketTaggingWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *BaseModel, err error)

func (ObsClient) DeleteBucketWebsiteConfiguration

func (obsClient ObsClient) DeleteBucketWebsiteConfiguration(bucketName string) (output *BaseModel, err error)

func (ObsClient) DeleteBucketWebsiteConfigurationWithSignedUrl

func (obsClient ObsClient) DeleteBucketWebsiteConfigurationWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *BaseModel, err error)

func (ObsClient) DeleteBucketWithSignedUrl

func (obsClient ObsClient) DeleteBucketWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *BaseModel, err error)

func (ObsClient) DeleteObject

func (obsClient ObsClient) DeleteObject(input *DeleteObjectInput) (output *DeleteObjectOutput, err error)

func (ObsClient) DeleteObjectWithSignedUrl

func (obsClient ObsClient) DeleteObjectWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *DeleteObjectOutput, err error)

func (ObsClient) DeleteObjects

func (obsClient ObsClient) DeleteObjects(input *DeleteObjectsInput) (output *DeleteObjectsOutput, err error)

func (ObsClient) DeleteObjectsWithSignedUrl

func (obsClient ObsClient) DeleteObjectsWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *DeleteObjectsOutput, err error)

func (ObsClient) GetBucketAcl

func (obsClient ObsClient) GetBucketAcl(bucketName string) (output *GetBucketAclOutput, err error)

func (ObsClient) GetBucketAclWithSignedUrl

func (obsClient ObsClient) GetBucketAclWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetBucketAclOutput, err error)

func (ObsClient) GetBucketCors

func (obsClient ObsClient) GetBucketCors(bucketName string) (output *GetBucketCorsOutput, err error)

func (ObsClient) GetBucketCorsWithSignedUrl

func (obsClient ObsClient) GetBucketCorsWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetBucketCorsOutput, err error)

func (ObsClient) GetBucketLifecycleConfiguration

func (obsClient ObsClient) GetBucketLifecycleConfiguration(bucketName string) (output *GetBucketLifecycleConfigurationOutput, err error)

func (ObsClient) GetBucketLifecycleConfigurationWithSignedUrl

func (obsClient ObsClient) GetBucketLifecycleConfigurationWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetBucketLifecycleConfigurationOutput, err error)

func (ObsClient) GetBucketLocation

func (obsClient ObsClient) GetBucketLocation(bucketName string) (output *GetBucketLocationOutput, err error)

func (ObsClient) GetBucketLocationWithSignedUrl

func (obsClient ObsClient) GetBucketLocationWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetBucketLocationOutput, err error)

func (ObsClient) GetBucketLoggingConfiguration

func (obsClient ObsClient) GetBucketLoggingConfiguration(bucketName string) (output *GetBucketLoggingConfigurationOutput, err error)

func (ObsClient) GetBucketLoggingConfigurationWithSignedUrl

func (obsClient ObsClient) GetBucketLoggingConfigurationWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetBucketLoggingConfigurationOutput, err error)

func (ObsClient) GetBucketMetadata

func (obsClient ObsClient) GetBucketMetadata(input *GetBucketMetadataInput) (output *GetBucketMetadataOutput, err error)

func (ObsClient) GetBucketMetadataWithSignedUrl

func (obsClient ObsClient) GetBucketMetadataWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetBucketMetadataOutput, err error)

func (ObsClient) GetBucketNotification

func (obsClient ObsClient) GetBucketNotification(bucketName string) (output *GetBucketNotificationOutput, err error)

func (ObsClient) GetBucketNotificationWithSignedUrl

func (obsClient ObsClient) GetBucketNotificationWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetBucketNotificationOutput, err error)

func (ObsClient) GetBucketPolicy

func (obsClient ObsClient) GetBucketPolicy(bucketName string) (output *GetBucketPolicyOutput, err error)

func (ObsClient) GetBucketPolicyWithSignedUrl

func (obsClient ObsClient) GetBucketPolicyWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetBucketPolicyOutput, err error)

func (ObsClient) GetBucketQuota

func (obsClient ObsClient) GetBucketQuota(bucketName string) (output *GetBucketQuotaOutput, err error)

func (ObsClient) GetBucketQuotaWithSignedUrl

func (obsClient ObsClient) GetBucketQuotaWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetBucketQuotaOutput, err error)

func (ObsClient) GetBucketStorageInfo

func (obsClient ObsClient) GetBucketStorageInfo(bucketName string) (output *GetBucketStorageInfoOutput, err error)

func (ObsClient) GetBucketStorageInfoWithSignedUrl

func (obsClient ObsClient) GetBucketStorageInfoWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetBucketStorageInfoOutput, err error)

func (ObsClient) GetBucketStoragePolicy

func (obsClient ObsClient) GetBucketStoragePolicy(bucketName string) (output *GetBucketStoragePolicyOutput, err error)

func (ObsClient) GetBucketStoragePolicyWithSignedUrl

func (obsClient ObsClient) GetBucketStoragePolicyWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetBucketStoragePolicyOutput, err error)

func (ObsClient) GetBucketTagging

func (obsClient ObsClient) GetBucketTagging(bucketName string) (output *GetBucketTaggingOutput, err error)

func (ObsClient) GetBucketTaggingWithSignedUrl

func (obsClient ObsClient) GetBucketTaggingWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetBucketTaggingOutput, err error)

func (ObsClient) GetBucketVersioning

func (obsClient ObsClient) GetBucketVersioning(bucketName string) (output *GetBucketVersioningOutput, err error)

func (ObsClient) GetBucketVersioningWithSignedUrl

func (obsClient ObsClient) GetBucketVersioningWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetBucketVersioningOutput, err error)

func (ObsClient) GetBucketWebsiteConfiguration

func (obsClient ObsClient) GetBucketWebsiteConfiguration(bucketName string) (output *GetBucketWebsiteConfigurationOutput, err error)

func (ObsClient) GetBucketWebsiteConfigurationWithSignedUrl

func (obsClient ObsClient) GetBucketWebsiteConfigurationWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetBucketWebsiteConfigurationOutput, err error)

func (ObsClient) GetObject

func (obsClient ObsClient) GetObject(input *GetObjectInput) (output *GetObjectOutput, err error)

func (ObsClient) GetObjectAcl

func (obsClient ObsClient) GetObjectAcl(input *GetObjectAclInput) (output *GetObjectAclOutput, err error)

func (ObsClient) GetObjectAclWithSignedUrl

func (obsClient ObsClient) GetObjectAclWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetObjectAclOutput, err error)

func (ObsClient) GetObjectMetadata

func (obsClient ObsClient) GetObjectMetadata(input *GetObjectMetadataInput) (output *GetObjectMetadataOutput, err error)

func (ObsClient) GetObjectMetadataWithSignedUrl

func (obsClient ObsClient) GetObjectMetadataWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetObjectMetadataOutput, err error)

func (ObsClient) GetObjectWithSignedUrl

func (obsClient ObsClient) GetObjectWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *GetObjectOutput, err error)

func (ObsClient) HeadBucket

func (obsClient ObsClient) HeadBucket(bucketName string) (output *BaseModel, err error)

func (ObsClient) HeadBucketWithSignedUrl

func (obsClient ObsClient) HeadBucketWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *BaseModel, err error)

func (ObsClient) InitiateMultipartUpload

func (obsClient ObsClient) InitiateMultipartUpload(input *InitiateMultipartUploadInput) (output *InitiateMultipartUploadOutput, err error)

func (ObsClient) InitiateMultipartUploadWithSignedUrl

func (obsClient ObsClient) InitiateMultipartUploadWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *InitiateMultipartUploadOutput, err error)

func (ObsClient) ListBuckets

func (obsClient ObsClient) ListBuckets(input *ListBucketsInput) (output *ListBucketsOutput, err error)

func (ObsClient) ListBucketsWithSignedUrl

func (obsClient ObsClient) ListBucketsWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *ListBucketsOutput, err error)

func (ObsClient) ListMultipartUploads

func (obsClient ObsClient) ListMultipartUploads(input *ListMultipartUploadsInput) (output *ListMultipartUploadsOutput, err error)

func (ObsClient) ListMultipartUploadsWithSignedUrl

func (obsClient ObsClient) ListMultipartUploadsWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *ListMultipartUploadsOutput, err error)

func (ObsClient) ListObjects

func (obsClient ObsClient) ListObjects(input *ListObjectsInput) (output *ListObjectsOutput, err error)

func (ObsClient) ListObjectsWithSignedUrl

func (obsClient ObsClient) ListObjectsWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *ListObjectsOutput, err error)

func (ObsClient) ListParts

func (obsClient ObsClient) ListParts(input *ListPartsInput) (output *ListPartsOutput, err error)

func (ObsClient) ListPartsWithSignedUrl

func (obsClient ObsClient) ListPartsWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *ListPartsOutput, err error)

func (ObsClient) ListVersions

func (obsClient ObsClient) ListVersions(input *ListVersionsInput) (output *ListVersionsOutput, err error)

func (ObsClient) ListVersionsWithSignedUrl

func (obsClient ObsClient) ListVersionsWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header) (output *ListVersionsOutput, err error)

func (ObsClient) PutFile

func (obsClient ObsClient) PutFile(input *PutFileInput) (output *PutObjectOutput, err error)

func (ObsClient) PutFileWithSignedUrl

func (obsClient ObsClient) PutFileWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, sourceFile string) (output *PutObjectOutput, err error)

func (ObsClient) PutObject

func (obsClient ObsClient) PutObject(input *PutObjectInput) (output *PutObjectOutput, err error)

func (ObsClient) PutObjectWithSignedUrl

func (obsClient ObsClient) PutObjectWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *PutObjectOutput, err error)

func (ObsClient) Refresh

func (obsClient ObsClient) Refresh(ak, sk, securityToken string)

func (ObsClient) RestoreObject

func (obsClient ObsClient) RestoreObject(input *RestoreObjectInput) (output *BaseModel, err error)

func (ObsClient) RestoreObjectWithSignedUrl

func (obsClient ObsClient) RestoreObjectWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *BaseModel, err error)

func (ObsClient) SetBucketAcl

func (obsClient ObsClient) SetBucketAcl(input *SetBucketAclInput) (output *BaseModel, err error)

func (ObsClient) SetBucketAclWithSignedUrl

func (obsClient ObsClient) SetBucketAclWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *BaseModel, err error)

func (ObsClient) SetBucketCors

func (obsClient ObsClient) SetBucketCors(input *SetBucketCorsInput) (output *BaseModel, err error)

func (ObsClient) SetBucketCorsWithSignedUrl

func (obsClient ObsClient) SetBucketCorsWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *BaseModel, err error)

func (ObsClient) SetBucketLifecycleConfiguration

func (obsClient ObsClient) SetBucketLifecycleConfiguration(input *SetBucketLifecycleConfigurationInput) (output *BaseModel, err error)

func (ObsClient) SetBucketLifecycleConfigurationWithSignedUrl

func (obsClient ObsClient) SetBucketLifecycleConfigurationWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *BaseModel, err error)

func (ObsClient) SetBucketLoggingConfiguration

func (obsClient ObsClient) SetBucketLoggingConfiguration(input *SetBucketLoggingConfigurationInput) (output *BaseModel, err error)

func (ObsClient) SetBucketLoggingConfigurationWithSignedUrl

func (obsClient ObsClient) SetBucketLoggingConfigurationWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *BaseModel, err error)

func (ObsClient) SetBucketNotification

func (obsClient ObsClient) SetBucketNotification(input *SetBucketNotificationInput) (output *BaseModel, err error)

func (ObsClient) SetBucketNotificationWithSignedUrl

func (obsClient ObsClient) SetBucketNotificationWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *BaseModel, err error)

func (ObsClient) SetBucketPolicy

func (obsClient ObsClient) SetBucketPolicy(input *SetBucketPolicyInput) (output *BaseModel, err error)

func (ObsClient) SetBucketPolicyWithSignedUrl

func (obsClient ObsClient) SetBucketPolicyWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *BaseModel, err error)

func (ObsClient) SetBucketQuota

func (obsClient ObsClient) SetBucketQuota(input *SetBucketQuotaInput) (output *BaseModel, err error)

func (ObsClient) SetBucketQuotaWithSignedUrl

func (obsClient ObsClient) SetBucketQuotaWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *BaseModel, err error)

func (ObsClient) SetBucketStoragePolicy

func (obsClient ObsClient) SetBucketStoragePolicy(input *SetBucketStoragePolicyInput) (output *BaseModel, err error)

func (ObsClient) SetBucketStoragePolicyWithSignedUrl

func (obsClient ObsClient) SetBucketStoragePolicyWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *BaseModel, err error)

func (ObsClient) SetBucketTagging

func (obsClient ObsClient) SetBucketTagging(input *SetBucketTaggingInput) (output *BaseModel, err error)

func (ObsClient) SetBucketTaggingWithSignedUrl

func (obsClient ObsClient) SetBucketTaggingWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *BaseModel, err error)

func (ObsClient) SetBucketVersioning

func (obsClient ObsClient) SetBucketVersioning(input *SetBucketVersioningInput) (output *BaseModel, err error)

func (ObsClient) SetBucketVersioningWithSignedUrl

func (obsClient ObsClient) SetBucketVersioningWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *BaseModel, err error)

func (ObsClient) SetBucketWebsiteConfiguration

func (obsClient ObsClient) SetBucketWebsiteConfiguration(input *SetBucketWebsiteConfigurationInput) (output *BaseModel, err error)

func (ObsClient) SetBucketWebsiteConfigurationWithSignedUrl

func (obsClient ObsClient) SetBucketWebsiteConfigurationWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *BaseModel, err error)

func (ObsClient) SetObjectAcl

func (obsClient ObsClient) SetObjectAcl(input *SetObjectAclInput) (output *BaseModel, err error)

func (ObsClient) SetObjectAclWithSignedUrl

func (obsClient ObsClient) SetObjectAclWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *BaseModel, err error)

func (ObsClient) UploadPart

func (obsClient ObsClient) UploadPart(input *UploadPartInput) (output *UploadPartOutput, err error)

func (ObsClient) UploadPartWithSignedUrl

func (obsClient ObsClient) UploadPartWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *UploadPartOutput, err error)

type ObsError

type ObsError struct {
	BaseModel
	Status   string
	XMLName  xml.Name `xml:"Error"`
	Code     string   `xml:"Code"`
	Message  string   `xml:"Message"`
	Resource string   `xml:"Resource"`
	HostId   string   `xml:"HostId"`
}

func (ObsError) Error

func (err ObsError) Error() string

type Owner

type Owner struct {
	XMLName     xml.Name `xml:"Owner"`
	ID          string   `xml:"ID"`
	DisplayName string   `xml:"DisplayName,omitempty"`
}

type Part

type Part struct {
	XMLName      xml.Name  `xml:"Part"`
	PartNumber   int       `xml:"PartNumber"`
	ETag         string    `xml:"ETag"`
	LastModified time.Time `xml:"LastModified,omitempty"`
	Size         int64     `xml:"Size,omitempty"`
}

type PermissionType

type PermissionType string
const (
	PermissionRead        PermissionType = "READ"
	PermissionWrite       PermissionType = "WRITE"
	PermissionReadAcp     PermissionType = "READ_ACP"
	PermissionWriteAcp    PermissionType = "WRITE_ACP"
	PermissionFullControl PermissionType = "FULL_CONTROL"
)

type ProtocolType

type ProtocolType string
const (
	ProtocolHttp  ProtocolType = "http"
	ProtocolHttps ProtocolType = "https"
)

type PutFileInput

type PutFileInput struct {
	PutObjectBasicInput
	SourceFile string
}

type PutObjectBasicInput

type PutObjectBasicInput struct {
	ObjectOperationInput
	ContentType   string
	ContentMD5    string
	ContentLength int64
}

type PutObjectInput

type PutObjectInput struct {
	PutObjectBasicInput
	Body io.Reader
}

type PutObjectOutput

type PutObjectOutput struct {
	BaseModel
	VersionId    string
	SseHeader    ISseHeader
	StorageClass StorageClassType
	ETag         string
}

type Redirect

type Redirect struct {
	XMLName              xml.Name     `xml:"Redirect"`
	Protocol             ProtocolType `xml:"Protocol,omitempty"`
	HostName             string       `xml:"HostName,omitempty"`
	ReplaceKeyPrefixWith string       `xml:"ReplaceKeyPrefixWith,omitempty"`
	ReplaceKeyWith       string       `xml:"ReplaceKeyWith,omitempty"`
	HttpRedirectCode     string       `xml:"HttpRedirectCode,omitempty"`
}

type RedirectAllRequestsTo

type RedirectAllRequestsTo struct {
	XMLName  xml.Name     `xml:"RedirectAllRequestsTo"`
	Protocol ProtocolType `xml:"Protocol,omitempty"`
	HostName string       `xml:"HostName"`
}

type RestoreObjectInput

type RestoreObjectInput struct {
	Bucket    string          `xml:"-"`
	Key       string          `xml:"-"`
	VersionId string          `xml:"-"`
	XMLName   xml.Name        `xml:"RestoreRequest"`
	Days      int             `xml:"Days"`
	Tier      RestoreTierType `xml:"GlacierJobParameters>Tier,omitempty"`
}

type RestoreTierType

type RestoreTierType string
const (
	RestoreTierExpedited RestoreTierType = "Expedited"
	RestoreTierStandard  RestoreTierType = "Standard"
	RestoreTierBulk      RestoreTierType = "Bulk"
)

type RoutingRule

type RoutingRule struct {
	XMLName   xml.Name  `xml:"RoutingRule"`
	Condition Condition `xml:"Condition,omitempty"`
	Redirect  Redirect  `xml:"Redirect"`
}

type RuleStatusType

type RuleStatusType string
const (
	RuleStatusEnabled  RuleStatusType = "Enabled"
	RuleStatusDisabled RuleStatusType = "Disabled"
)

type SetBucketAclInput

type SetBucketAclInput struct {
	Bucket string  `xml:"-"`
	ACL    AclType `xml:"-"`
	AccessControlPolicy
}

type SetBucketCorsInput

type SetBucketCorsInput struct {
	Bucket string `xml:"-"`
	BucketCors
}

type SetBucketLifecycleConfigurationInput

type SetBucketLifecycleConfigurationInput struct {
	Bucket string `xml:"-"`
	BucketLifecyleConfiguration
}

type SetBucketLoggingConfigurationInput

type SetBucketLoggingConfigurationInput struct {
	Bucket string `xml:"-"`
	BucketLoggingStatus
}

type SetBucketNotificationInput

type SetBucketNotificationInput struct {
	Bucket string `xml:"-"`
	BucketNotification
}

type SetBucketPolicyInput

type SetBucketPolicyInput struct {
	Bucket string
	Policy string
}

type SetBucketQuotaInput

type SetBucketQuotaInput struct {
	Bucket string `xml:"-"`
	BucketQuota
}

type SetBucketStoragePolicyInput

type SetBucketStoragePolicyInput struct {
	Bucket string `xml:"-"`
	BucketStoragePolicy
}

type SetBucketTaggingInput

type SetBucketTaggingInput struct {
	Bucket string `xml:"-"`
	BucketTagging
}

type SetBucketVersioningInput

type SetBucketVersioningInput struct {
	Bucket string `xml:"-"`
	BucketVersioningConfiguration
}

type SetBucketWebsiteConfigurationInput

type SetBucketWebsiteConfigurationInput struct {
	Bucket string `xml:"-"`
	BucketWebsiteConfiguration
}

type SetObjectAclInput

type SetObjectAclInput struct {
	Bucket    string  `xml:"-"`
	Key       string  `xml:"-"`
	VersionId string  `xml:"-"`
	ACL       AclType `xml:"-"`
	AccessControlPolicy
}

type SignatureType

type SignatureType string
const (
	SignatureV2 SignatureType = "v2"
	SignatureV4 SignatureType = "v4"
)

type SseCHeader

type SseCHeader struct {
	Encryption string
	Key        string
	KeyMD5     string
}

func (SseCHeader) GetEncryption

func (header SseCHeader) GetEncryption() string

func (SseCHeader) GetKey

func (header SseCHeader) GetKey() string

func (SseCHeader) GetKeyMD5

func (header SseCHeader) GetKeyMD5() string

type SseKmsHeader

type SseKmsHeader struct {
	Encryption string
	Key        string
}

func (SseKmsHeader) GetEncryption

func (header SseKmsHeader) GetEncryption() string

func (SseKmsHeader) GetKey

func (header SseKmsHeader) GetKey() string

type StorageClassType

type StorageClassType string
const (
	StorageClassStandard StorageClassType = "STANDARD"
	StorageClassWarm     StorageClassType = "STANDARD_IA"
	StorageClassCold     StorageClassType = "GLACIER"
)

func ParseStringToStorageClassType

func ParseStringToStorageClassType(value string) (ret StorageClassType)

type SubResourceType

type SubResourceType string
const (
	SubResourceStoragePolicy SubResourceType = "storagePolicy"
	SubResourceQuota         SubResourceType = "quota"
	SubResourceStorageInfo   SubResourceType = "storageinfo"
	SubResourceLocation      SubResourceType = "location"
	SubResourceAcl           SubResourceType = "acl"
	SubResourcePolicy        SubResourceType = "policy"
	SubResourceCors          SubResourceType = "cors"
	SubResourceVersioning    SubResourceType = "versioning"
	SubResourceWebsite       SubResourceType = "website"
	SubResourceLogging       SubResourceType = "logging"
	SubResourceLifecycle     SubResourceType = "lifecycle"
	SubResourceNotification  SubResourceType = "notification"
	SubResourceTagging       SubResourceType = "tagging"
	SubResourceDelete        SubResourceType = "delete"
	SubResourceVersions      SubResourceType = "versions"
	SubResourceUploads       SubResourceType = "uploads"
	SubResourceRestore       SubResourceType = "restore"
)

type Tag

type Tag struct {
	XMLName xml.Name `xml:"Tag"`
	Key     string   `xml:"Key"`
	Value   string   `xml:"Value"`
}

type TopicConfiguration

type TopicConfiguration struct {
	XMLName     xml.Name     `xml:"TopicConfiguration"`
	ID          string       `xml:"Id,omitempty"`
	Topic       string       `xml:"Topic"`
	Events      []string     `xml:"Event"`
	FilterRules []FilterRule `xml:"Filter>S3Key>FilterRule"`
}

type Transition

type Transition struct {
	XMLName      xml.Name         `xml:"Transition"`
	Date         time.Time        `xml:"Date,omitempty"`
	Days         int              `xml:"Days,omitempty"`
	StorageClass StorageClassType `xml:"StorageClass"`
}

type Upload

type Upload struct {
	XMLName      xml.Name         `xml:"Upload"`
	Key          string           `xml:"Key"`
	UploadId     string           `xml:"UploadId"`
	Initiated    time.Time        `xml:"Initiated"`
	StorageClass StorageClassType `xml:"StorageClass"`
	Owner        Owner            `xml:"Owner"`
	Initiator    Initiator        `xml:"Initiator"`
}

type UploadPartInput

type UploadPartInput struct {
	Bucket     string
	Key        string
	PartNumber int
	UploadId   string
	ContentMD5 string
	SseHeader  ISseHeader
	Body       io.Reader
	SourceFile string
	Offset     int64
	PartSize   int64
}

type UploadPartOutput

type UploadPartOutput struct {
	BaseModel
	PartNumber int
	ETag       string
	SseHeader  ISseHeader
}

type Version

type Version struct {
	DeleteMarker
	XMLName xml.Name `xml:"Version"`
	ETag    string   `xml:"ETag"`
	Size    int64    `xml:"Size"`
}

type VersioningStatusType

type VersioningStatusType string
const (
	VersioningStatusEnabled   VersioningStatusType = "Enabled"
	VersioningStatusSuspended VersioningStatusType = "Suspended"
)

Jump to

Keyboard shortcuts

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