146 lines
4.9 KiB
Go
146 lines
4.9 KiB
Go
|
package oss
|
||
|
|
||
|
import "os"
|
||
|
|
||
|
// ACLType bucket/object ACL
|
||
|
type ACLType string
|
||
|
|
||
|
const (
|
||
|
// ACLPrivate definition : private read and write
|
||
|
ACLPrivate ACLType = "private"
|
||
|
|
||
|
// ACLPublicRead definition : public read and private write
|
||
|
ACLPublicRead ACLType = "public-read"
|
||
|
|
||
|
// ACLPublicReadWrite definition : public read and public write
|
||
|
ACLPublicReadWrite ACLType = "public-read-write"
|
||
|
|
||
|
// ACLDefault Object. It's only applicable for object.
|
||
|
ACLDefault ACLType = "default"
|
||
|
)
|
||
|
|
||
|
// MetadataDirectiveType specifying whether use the metadata of source object when copying object.
|
||
|
type MetadataDirectiveType string
|
||
|
|
||
|
const (
|
||
|
// MetaCopy the target object's metadata is copied from the source one
|
||
|
MetaCopy MetadataDirectiveType = "COPY"
|
||
|
|
||
|
// MetaReplace the target object's metadata is created as part of the copy request (not same as the source one)
|
||
|
MetaReplace MetadataDirectiveType = "REPLACE"
|
||
|
)
|
||
|
|
||
|
// StorageClassType bucket storage type
|
||
|
type StorageClassType string
|
||
|
|
||
|
const (
|
||
|
// StorageStandard standard
|
||
|
StorageStandard StorageClassType = "Standard"
|
||
|
|
||
|
// StorageIA infrequent access
|
||
|
StorageIA StorageClassType = "IA"
|
||
|
|
||
|
// StorageArchive archive
|
||
|
StorageArchive StorageClassType = "Archive"
|
||
|
)
|
||
|
|
||
|
// PayerType the type of request payer
|
||
|
type PayerType string
|
||
|
|
||
|
const (
|
||
|
// Requester the requester who send the request
|
||
|
Requester PayerType = "requester"
|
||
|
)
|
||
|
|
||
|
// HTTPMethod HTTP request method
|
||
|
type HTTPMethod string
|
||
|
|
||
|
const (
|
||
|
// HTTPGet HTTP GET
|
||
|
HTTPGet HTTPMethod = "GET"
|
||
|
|
||
|
// HTTPPut HTTP PUT
|
||
|
HTTPPut HTTPMethod = "PUT"
|
||
|
|
||
|
// HTTPHead HTTP HEAD
|
||
|
HTTPHead HTTPMethod = "HEAD"
|
||
|
|
||
|
// HTTPPost HTTP POST
|
||
|
HTTPPost HTTPMethod = "POST"
|
||
|
|
||
|
// HTTPDelete HTTP DELETE
|
||
|
HTTPDelete HTTPMethod = "DELETE"
|
||
|
)
|
||
|
|
||
|
// HTTP headers
|
||
|
const (
|
||
|
HTTPHeaderAcceptEncoding string = "Accept-Encoding"
|
||
|
HTTPHeaderAuthorization = "Authorization"
|
||
|
HTTPHeaderCacheControl = "Cache-Control"
|
||
|
HTTPHeaderContentDisposition = "Content-Disposition"
|
||
|
HTTPHeaderContentEncoding = "Content-Encoding"
|
||
|
HTTPHeaderContentLength = "Content-Length"
|
||
|
HTTPHeaderContentMD5 = "Content-MD5"
|
||
|
HTTPHeaderContentType = "Content-Type"
|
||
|
HTTPHeaderContentLanguage = "Content-Language"
|
||
|
HTTPHeaderDate = "Date"
|
||
|
HTTPHeaderEtag = "ETag"
|
||
|
HTTPHeaderExpires = "Expires"
|
||
|
HTTPHeaderHost = "Host"
|
||
|
HTTPHeaderLastModified = "Last-Modified"
|
||
|
HTTPHeaderRange = "Range"
|
||
|
HTTPHeaderLocation = "Location"
|
||
|
HTTPHeaderOrigin = "Origin"
|
||
|
HTTPHeaderServer = "Server"
|
||
|
HTTPHeaderUserAgent = "User-Agent"
|
||
|
HTTPHeaderIfModifiedSince = "If-Modified-Since"
|
||
|
HTTPHeaderIfUnmodifiedSince = "If-Unmodified-Since"
|
||
|
HTTPHeaderIfMatch = "If-Match"
|
||
|
HTTPHeaderIfNoneMatch = "If-None-Match"
|
||
|
|
||
|
HTTPHeaderOssACL = "X-Oss-Acl"
|
||
|
HTTPHeaderOssMetaPrefix = "X-Oss-Meta-"
|
||
|
HTTPHeaderOssObjectACL = "X-Oss-Object-Acl"
|
||
|
HTTPHeaderOssSecurityToken = "X-Oss-Security-Token"
|
||
|
HTTPHeaderOssServerSideEncryption = "X-Oss-Server-Side-Encryption"
|
||
|
HTTPHeaderOssServerSideEncryptionKeyID = "X-Oss-Server-Side-Encryption-Key-Id"
|
||
|
HTTPHeaderOssCopySource = "X-Oss-Copy-Source"
|
||
|
HTTPHeaderOssCopySourceRange = "X-Oss-Copy-Source-Range"
|
||
|
HTTPHeaderOssCopySourceIfMatch = "X-Oss-Copy-Source-If-Match"
|
||
|
HTTPHeaderOssCopySourceIfNoneMatch = "X-Oss-Copy-Source-If-None-Match"
|
||
|
HTTPHeaderOssCopySourceIfModifiedSince = "X-Oss-Copy-Source-If-Modified-Since"
|
||
|
HTTPHeaderOssCopySourceIfUnmodifiedSince = "X-Oss-Copy-Source-If-Unmodified-Since"
|
||
|
HTTPHeaderOssMetadataDirective = "X-Oss-Metadata-Directive"
|
||
|
HTTPHeaderOssNextAppendPosition = "X-Oss-Next-Append-Position"
|
||
|
HTTPHeaderOssRequestID = "X-Oss-Request-Id"
|
||
|
HTTPHeaderOssCRC64 = "X-Oss-Hash-Crc64ecma"
|
||
|
HTTPHeaderOssSymlinkTarget = "X-Oss-Symlink-Target"
|
||
|
HTTPHeaderOssStorageClass = "X-Oss-Storage-Class"
|
||
|
HTTPHeaderOssCallback = "X-Oss-Callback"
|
||
|
HTTPHeaderOssCallbackVar = "X-Oss-Callback-Var"
|
||
|
HTTPHeaderOSSRequester = "X-Oss-Request-Payer"
|
||
|
)
|
||
|
|
||
|
// HTTP Param
|
||
|
const (
|
||
|
HTTPParamExpires = "Expires"
|
||
|
HTTPParamAccessKeyID = "OSSAccessKeyId"
|
||
|
HTTPParamSignature = "Signature"
|
||
|
HTTPParamSecurityToken = "security-token"
|
||
|
)
|
||
|
|
||
|
// Other constants
|
||
|
const (
|
||
|
MaxPartSize = 5 * 1024 * 1024 * 1024 // Max part size, 5GB
|
||
|
MinPartSize = 100 * 1024 // Min part size, 100KB
|
||
|
|
||
|
FilePermMode = os.FileMode(0664) // Default file permission
|
||
|
|
||
|
TempFilePrefix = "oss-go-temp-" // Temp file prefix
|
||
|
TempFileSuffix = ".temp" // Temp file suffix
|
||
|
|
||
|
CheckpointFileSuffix = ".cp" // Checkpoint file suffix
|
||
|
|
||
|
Version = "1.9.2" // Go SDK version
|
||
|
)
|