oss

package
v0.3.1 Latest Latest
Warning

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

Go to latest
Published: May 6, 2026 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const (
	OSSACLPrivate           = "private"
	OSSACLPublicRead        = "public-read"
	OSSACLPublicReadWrite   = "public-read-write"
	OSSACLAuthenticatedRead = "authenticated-read"
)

JDCloud OSS canned ACL values, sent via the `x-amz-acl` header (S3-style).

Variables

This section is empty.

Functions

func CannedACLFromGrants added in v0.3.1

func CannedACLFromGrants(out BucketACLOutput) string

CannedACLFromGrants reduces a parsed grant list to a canned ACL label.

func NormalizeOSSACL added in v0.3.1

func NormalizeOSSACL(level string) string

NormalizeOSSACL maps user-friendly aliases to canned JDCloud OSS ACL values.

Types

type BucketACLOutput added in v0.3.1

type BucketACLOutput struct {
	Owner  Owner
	Grants []Grant
}

BucketACLOutput is the parsed `?acl` response. JDCloud OSS exposes the S3-compatible Owner+AccessControlList shape.

type Client added in v0.2.6

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

func NewClient added in v0.2.6

func NewClient(credential jdauth.Credential, opts ...awsapi.Option) *Client

func (*Client) GetBucketAcl added in v0.3.1

func (c *Client) GetBucketAcl(ctx context.Context, bucket, region string) (BucketACLOutput, error)

GetBucketAcl fetches the parsed ACL response for bucket.

func (*Client) ListObjectsV2 added in v0.2.6

func (c *Client) ListObjectsV2(ctx context.Context, bucket, region, continuationToken string, maxKeys int) (ListObjectsV2Output, error)

func (*Client) PutBucketAcl added in v0.3.1

func (c *Client) PutBucketAcl(ctx context.Context, bucket, region, cannedACL string) error

PutBucketAcl sets the canned ACL on bucket via the `x-amz-acl` header.

type Driver

type Driver struct {
	Client              *api.Client
	Credential          jdauth.Credential
	Region              string
	ObjectClient        *Client
	ObjectClientOptions []awsapi.Option
}

func (*Driver) AuditBucketACL added in v0.3.1

func (d *Driver) AuditBucketACL(ctx context.Context, bucket string) ([]schema.BucketACLEntry, error)

AuditBucketACL enumerates buckets and returns canned ACL state for each.

func (*Driver) ExposeBucket added in v0.3.1

func (d *Driver) ExposeBucket(ctx context.Context, bucket, level string) (string, error)

ExposeBucket sets bucket public-readable (defaults to public-read).

func (*Driver) ListBuckets

func (d *Driver) ListBuckets(ctx context.Context) ([]schema.Storage, error)

func (*Driver) ListObjects added in v0.2.6

func (d *Driver) ListObjects(ctx context.Context, buckets map[string]string) ([]schema.BucketResult, error)

func (*Driver) ResolveBucketRegion added in v0.2.6

func (d *Driver) ResolveBucketRegion(ctx context.Context, bucket string) (string, error)

func (*Driver) TotalObjects added in v0.2.6

func (d *Driver) TotalObjects(ctx context.Context, buckets map[string]string) ([]schema.BucketResult, error)

func (*Driver) UnexposeBucket added in v0.3.1

func (d *Driver) UnexposeBucket(ctx context.Context, bucket string) error

UnexposeBucket reverts bucket to private.

type Grant added in v0.3.1

type Grant struct {
	GranteeType string
	GranteeID   string
	GranteeURI  string
	Permission  string
}

type ListObjectsV2Output added in v0.2.6

type ListObjectsV2Output struct {
	Objects               []Object
	IsTruncated           bool
	NextContinuationToken string
}

type Object added in v0.2.6

type Object struct {
	Key          string
	Size         int64
	LastModified string
	StorageClass string
}

type Owner added in v0.3.1

type Owner struct {
	ID          string
	DisplayName string
}

Jump to

Keyboard shortcuts

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