package
6.0.0
Repository: https://github.com/couchbase/tools-common.git
Documentation: pkg.go.dev

# Packages

Package objaws provides an implementation of 'objstore.Client' for use with AWS S3.
Package objazure is a generated GoMock package.
Package objgcp provides an implementation of 'objstore.Client' for use with GCS.

# Functions

CopyReadSeeker copies from src to dst, seeking back to the current position in src upon completion.
NewMockClient creates a new instance of MockClient.
NewRateLimitedClient returns a RateLimitedClient.
NewTestClient returns a new test client, which has no buckets/objects.
SeekerLength calculates the number of bytes in the given seeker.
ShouldIgnore uses the given regular expressions to determine if we should skip listing the provided file.
TestDownloadJSON downloads the given object, unmarshaling it into the provided interface.
TestDownloadRAW downloads the object as raw data.
TestListObjects returns the attributes of all the existing objects.
TestRequireKeyExists asserts that the given key exists.
TestRequireKeyNotFound asserts that the given key does not exist.
TestUploadJSON uploads the given data as JSON.
TestUploadRAW uploads the given raw data.

# Constants

NoPartNumber is a readability definition which should be used by client implementations for cloud providers that do not need numbers to order parts for multipart uploads.
NoUploadID is a readability definition which should be used by client implementations for cloud providers which do not utilize uploads ids.

# Variables

ErrExpectedNoUploadID is returned if the user has provided an upload id for a client which doesn't generate or require upload ids.
ErrIncludeAndExcludeAreMutuallyExclusive is returned if the user attempts to supply both the include and exclude arguments to 'IterateObjects' at once.

# Structs

AbortMultipartUploadOptions encapsulates the options available when using the 'AbortMultipartUpload' function.
AppendToObjectOptions encapsulates the options available when using the 'AppendToObject' function.
CompleteMultipartUploadOptions encapsulates the options available when using the 'CompleteMultipartUpload' function.
CopyObjectOptions encapsulates the options available when using the 'CopyObject' function.
CreateMultipartUploadOptions encapsulates the options available when using the 'CreateMultipartUpload' function.
DeleteDirectoryOptions encapsulates the options available when using the 'DeleteDirectory' function.
DeleteObjectsOptions encapsulates the options available when using the 'DeleteObjects' function.
GetObjectAttrsOptions encapsulates the options available when using the 'GetObjectAttrs' function.
GetObjectOptions encapsulates the options available when using the 'GetObject' function.
IterateObjectsOptions encapsulates the options available when using the 'IterateObjects' function.
ListPartsOptions encapsulates the options available when using the 'ListParts' function.
MockClient is an autogenerated mock type for the Client type.
PutObjectOptions encapsulates the options available when using the 'PutObject' function.
RateLimitedClient implements objcli.Client interface mostly by deferring to the underlying Client, but where the methods which involve uploading/downloading objects, the rate limiter is used to control the rate of data transfer.
TestClient implementation of the 'Client' interface which stores state in memory, and can be used to avoid having to manually mock a client during unit testing.
UploadPartCopyOptions encapsulates the options available when using the 'UploadPartCopy' function.
UploadPartOptions encapsulates the options available when using the 'UploadPart' function.

# Interfaces

Client is a unified interface for accessing/managing objects stored in the cloud.

# Type aliases

IterateFunc is the function used when iterating over objects, this function will be called once for each object whose key matches the provided filtering.