Documentation
¶
Index ¶
- Constants
- func CollapseGrants(out BucketACLResponse) string
- func NormalizeOBSACL(level string) string
- func Sign(req *SignRequest) (http.Header, error)
- type APIError
- type BucketACLResponse
- type Client
- func (c *Client) GetBucketACL(ctx context.Context, bucket, region string) (string, error)
- func (c *Client) ListBuckets(ctx context.Context, endpointRegion string) (*ListBucketsResponse, error)
- func (c *Client) ListObjects(ctx context.Context, bucket, region, marker string, maxKeys int) (ListObjectsResponse, error)
- func (c *Client) PutBucketACL(ctx context.Context, bucket, region, acl string) error
- type Driver
- func (d *Driver) AuditBucketACL(ctx context.Context, bucket string) ([]schema.BucketACLEntry, error)
- func (d *Driver) ExposeBucket(ctx context.Context, bucket, level string) (string, error)
- func (d *Driver) GetBuckets(ctx context.Context) ([]schema.Storage, error)
- func (d *Driver) ListObjects(ctx context.Context, buckets map[string]string) ([]schema.BucketResult, error)
- func (d *Driver) TotalObjects(ctx context.Context, buckets map[string]string) ([]schema.BucketResult, error)
- func (d *Driver) UnexposeBucket(ctx context.Context, bucket string) error
- type ListBucketsResponse
- type ListObjectsResponse
- type OBSBucket
- type OBSObject
- type Option
- type SignRequest
Constants ¶
View Source
const ( OBSACLPrivate = "private" OBSACLPublicRead = "public-read" OBSACLPublicReadWrite = "public-read-write" OBSACLPublicReadDelivered = "public-read-delivered" OBSACLPublicReadWriteDelivered = "public-read-write-delivered" )
Huawei OBS canned ACL values, sent via the `x-obs-acl` header.
Variables ¶
This section is empty.
Functions ¶
func CollapseGrants ¶ added in v0.3.1
func CollapseGrants(out BucketACLResponse) string
CollapseGrants reduces a parsed grant list into a canned ACL label.
func NormalizeOBSACL ¶ added in v0.3.1
NormalizeOBSACL maps user-friendly aliases to canned OBS ACL values.
Types ¶
type BucketACLResponse ¶ added in v0.3.1
type BucketACLResponse struct {
XMLName xml.Name `xml:"AccessControlPolicy"`
Owner struct {
ID string `xml:"ID"`
DisplayName string `xml:"DisplayName"`
} `xml:"Owner"`
AccessControlList struct {
Grant []struct {
Grantee struct {
Type string `xml:"http://www.w3.org/2001/XMLSchema-instance type,attr"`
ID string `xml:"ID"`
URI string `xml:"URI"`
} `xml:"Grantee"`
Permission string `xml:"Permission"`
} `xml:"Grant"`
} `xml:"AccessControlList"`
}
BucketACLResponse maps the body returned by `GET /?acl`. OBS exposes the same Owner+AccessControlList shape as S3.
type Client ¶ added in v0.2.1
type Client struct {
// contains filtered or unexported fields
}
func (*Client) GetBucketACL ¶ added in v0.3.1
GetBucketACL returns the canned ACL summary for bucket. Grants are folded back into a canonical canned-ACL string for the audit table.
func (*Client) ListBuckets ¶ added in v0.2.1
func (*Client) ListObjects ¶ added in v0.2.1
type Driver ¶ added in v0.0.9
type Driver struct {
Cred auth.Credential
Regions []string
Client *Client
}
func (*Driver) AuditBucketACL ¶ added in v0.3.1
func (d *Driver) AuditBucketACL(ctx context.Context, bucket string) ([]schema.BucketACLEntry, error)
AuditBucketACL enumerates buckets in scope and returns the canned ACL state.
func (*Driver) ExposeBucket ¶ added in v0.3.1
ExposeBucket sets bucket public-readable (defaults to public-read).
func (*Driver) GetBuckets ¶ added in v0.0.9
func (*Driver) ListObjects ¶ added in v0.2.1
func (*Driver) TotalObjects ¶ added in v0.2.1
type ListBucketsResponse ¶ added in v0.2.1
type ListObjectsResponse ¶ added in v0.2.1
type Option ¶ added in v0.2.1
type Option func(*Client)
func WithHTTPClient ¶ added in v0.2.1
func WithRetryPolicy ¶ added in v0.2.1
Click to show internal directories.
Click to hide internal directories.