objectclient

package
v2.1.1-0...-c609277 Latest Latest
Warning

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

Go to latest
Published: Aug 30, 2021 License: AGPL-3.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Base64Encoder = func(key string) string {
	return base64.StdEncoding.EncodeToString([]byte(key))
}

Base64Encoder is used to encode chunk keys in base64 before storing/retrieving them from the ObjectClient

Functions

This section is empty.

Types

type Client

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

Client is used to store chunks in object store backends

func NewClient

func NewClient(store chunk.ObjectClient, encoder KeyEncoder) *Client

NewClient wraps the provided ObjectClient with a chunk.Client implementation

func (*Client) DeleteChunk

func (o *Client) DeleteChunk(ctx context.Context, userID, chunkID string) error

GetChunks retrieves the specified chunks from the configured backend

func (*Client) GetChunks

func (o *Client) GetChunks(ctx context.Context, chunks []chunk.Chunk) ([]chunk.Chunk, error)

GetChunks retrieves the specified chunks from the configured backend

func (*Client) IsChunkNotFoundErr

func (o *Client) IsChunkNotFoundErr(err error) bool

func (*Client) PutChunks

func (o *Client) PutChunks(ctx context.Context, chunks []chunk.Chunk) error

PutChunks stores the provided chunks in the configured backend. If multiple errors are returned, the last one sequentially will be propagated up.

func (*Client) Stop

func (o *Client) Stop()

Stop shuts down the object store and any underlying clients

type KeyEncoder

type KeyEncoder func(string) string

KeyEncoder is used to encode chunk keys before writing/retrieving chunks from the underlying ObjectClient

Jump to

Keyboard shortcuts

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