Versions in this module Expand all Collapse all v2 v2.0.2 Mar 29, 2023 Changes in this version + var ErrGivenObjectNotFound = fmt.Errorf("given object not found") + var ErrNoObjectFound = fmt.Errorf("no object found") + func IsCancelationError(err error) bool + func ShouldProcessUrl(url *url.URL, followSymlinks bool) bool + type Bucket struct + CreationDate time.Time + Name string + func (b Bucket) JSON() string + func (b Bucket) String() string + type Filesystem struct + func NewLocalClient(opts Options) *Filesystem + func (f *Filesystem) Copy(ctx context.Context, src, dst *url.URL, _ Metadata) error + func (f *Filesystem) Create(path string) (*os.File, error) + func (f *Filesystem) Delete(ctx context.Context, url *url.URL) error + func (f *Filesystem) List(ctx context.Context, src *url.URL, followSymlinks bool) <-chan *Object + func (f *Filesystem) MkdirAll(path string) error + func (f *Filesystem) MultiDelete(ctx context.Context, urlch <-chan *url.URL) <-chan *Object + func (f *Filesystem) Open(path string) (*os.File, error) + func (f *Filesystem) Stat(ctx context.Context, url *url.URL) (*Object, error) + type Metadata map[string]string + func NewMetadata() Metadata + func (m Metadata) ACL() string + func (m Metadata) CacheControl() string + func (m Metadata) ContentType() string + func (m Metadata) Expires() string + func (m Metadata) SSE() string + func (m Metadata) SSEKeyID() string + func (m Metadata) SetACL(acl string) Metadata + func (m Metadata) SetCacheControl(cacheControl string) Metadata + func (m Metadata) SetContentType(contentType string) Metadata + func (m Metadata) SetExpires(expires string) Metadata + func (m Metadata) SetSSE(sse string) Metadata + func (m Metadata) SetSSEKeyID(kid string) Metadata + func (m Metadata) SetStorageClass(class string) Metadata + func (m Metadata) StorageClass() string + type MockStorage struct + func (_m *MockStorage) Copy(ctx context.Context, src *url.URL, dst *url.URL, metadata Metadata) error + func (_m *MockStorage) Delete(ctx context.Context, src *url.URL) error + func (_m *MockStorage) List(ctx context.Context, src *url.URL, followSymlinks bool) <-chan *Object + func (_m *MockStorage) MultiDelete(ctx context.Context, urls <-chan *url.URL) <-chan *Object + func (_m *MockStorage) Stat(ctx context.Context, src *url.URL) (*Object, error) + type Object struct + Err error + Etag string + ModTime *time.Time + Size int64 + StorageClass StorageClass + Type ObjectType + URL *url.URL + func (o *Object) JSON() string + func (o *Object) String() string + type ObjectType struct + func (o ObjectType) IsDir() bool + func (o ObjectType) IsSymlink() bool + func (o ObjectType) MarshalJSON() ([]byte, error) + func (o ObjectType) String() string + type Options struct + DryRun bool + Endpoint string + MaxRetries int + NoSignRequest bool + NoVerifySSL bool + RequestPayer string + UseListObjectsV1 bool + func (o *Options) SetRegion(region string) + type S3 struct + func NewRemoteClient(ctx context.Context, url *url.URL, opts Options) (*S3, error) + func (s *S3) Copy(ctx context.Context, from, to *url.URL, metadata Metadata) error + func (s *S3) Delete(ctx context.Context, url *url.URL) error + func (s *S3) Get(ctx context.Context, from *url.URL, to io.WriterAt, concurrency int, ...) (int64, error) + func (s *S3) List(ctx context.Context, url *url.URL, _ bool) <-chan *Object + func (s *S3) ListBuckets(ctx context.Context, prefix string) ([]Bucket, error) + func (s *S3) MakeBucket(ctx context.Context, name string) error + func (s *S3) MultiDelete(ctx context.Context, urlch <-chan *url.URL) <-chan *Object + func (s *S3) Put(ctx context.Context, reader io.Reader, to *url.URL, metadata Metadata, ...) error + func (s *S3) Read(ctx context.Context, src *url.URL) (io.ReadCloser, error) + func (s *S3) RemoveBucket(ctx context.Context, name string) error + func (s *S3) RequestPayer() *string + func (s *S3) Select(ctx context.Context, url *url.URL, query *SelectQuery, ...) error + func (s *S3) Stat(ctx context.Context, url *url.URL) (*Object, error) + type SelectQuery struct + CompressionType string + Expression string + ExpressionType string + type SessionCache struct + type Storage interface + Copy func(ctx context.Context, src, dst *url.URL, metadata Metadata) error + Delete func(ctx context.Context, src *url.URL) error + List func(ctx context.Context, src *url.URL, followSymlinks bool) <-chan *Object + MultiDelete func(ctx context.Context, urls <-chan *url.URL) <-chan *Object + Stat func(ctx context.Context, src *url.URL) (*Object, error) + func NewClient(ctx context.Context, url *url.URL, opts Options) (Storage, error) + type StorageClass string + func (s StorageClass) IsGlacier() bool