s3_service

package
v0.21.0 Latest Latest
Warning

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

Go to latest
Published: Dec 3, 2022 License: Apache-2.0 Imports: 17 Imported by: 1

Documentation

Index

Constants

View Source
const (
	// ErrCodeNoSuchTagSet - AWS API neglects to include a constant for this error code.
	ErrCodeNoSuchTagSet = "NoSuchTagSet"
	ErrCodeAccessDenied = "AccessDenied"
)

Variables

This section is empty.

Functions

func New

func New(provider core.AwsProvider) (storage.StorageService, error)

New creates a new default S3 storage plugin

func NewWithClient

func NewWithClient(provider core.AwsProvider, client s3iface.S3API, preSignClient s3iface.PreSignAPI, opts ...S3StorageServiceOption) (storage.StorageService, error)

NewWithClient creates a new S3 Storage plugin and injects the given client

Types

type BucketSelector

type BucketSelector = func(nitricName string) (*string, error)

type S3StorageService

type S3StorageService struct {
	storage.UnimplementedStoragePlugin
	// contains filtered or unexported fields
}

S3StorageService - Is the concrete implementation of AWS S3 for the Nitric Storage Plugin

func (*S3StorageService) Delete

func (s *S3StorageService) Delete(ctx context.Context, bucket string, key string) error

Delete - Deletes an item from a bucket

func (*S3StorageService) ListFiles added in v0.16.0

func (s *S3StorageService) ListFiles(ctx context.Context, bucket string) ([]*storage.FileInfo, error)

func (*S3StorageService) PreSignUrl

func (s *S3StorageService) PreSignUrl(ctx context.Context, bucket string, key string, operation storage.Operation, expiry uint32) (string, error)

PreSignUrl - generates a signed URL which can be used to perform direct operations on a file useful for large file uploads/downloads so they can bypass application code and work directly with S3

func (*S3StorageService) Read

func (s *S3StorageService) Read(ctx context.Context, bucket string, key string) ([]byte, error)

Read - Retrieves an item from a bucket

func (*S3StorageService) Write

func (s *S3StorageService) Write(ctx context.Context, bucket string, key string, object []byte) error

Write - Writes an item to a bucket

type S3StorageServiceOption

type S3StorageServiceOption interface {
	Apply(*S3StorageService)
}

func WithSelector

func WithSelector(selector BucketSelector) S3StorageServiceOption

Jump to

Keyboard shortcuts

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