putsvc

package
v0.30.1 Latest Latest
Warning

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

Go to latest
Published: Jul 29, 2022 License: GPL-3.0 Imports: 26 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrExceedingMaxSize = errors.New("payload size is greater than the limit")
	ErrWrongPayloadSize = errors.New("wrong payload size")
)

errors related to invalid payload size

Functions

This section is empty.

Types

type ClientConstructor added in v0.18.0

type ClientConstructor interface {
	Get(client.NodeInfo) (client.MultiAddressClient, error)
}

type MaxSizeSource

type MaxSizeSource interface {
	// MaxObjectSize returns maximum payload size
	// of physically stored object in system.
	//
	// Must return 0 if value can not be obtained.
	MaxObjectSize() uint64
}

type ObjectStorage added in v0.28.0

type ObjectStorage interface {
	// Put must save passed object
	// and return any appeared error.
	Put(o *objectSDK.Object) error
}

ObjectStorage is an object storage interface.

type Option

type Option func(*cfg)

func WithClientConstructor added in v0.18.0

func WithClientConstructor(v ClientConstructor) Option

func WithContainerSource

func WithContainerSource(v container.Source) Option

func WithFormatValidatorOpts

func WithFormatValidatorOpts(v ...object.FormatValidatorOption) Option

func WithKeyStorage

func WithKeyStorage(v *objutil.KeyStorage) Option

func WithLogger added in v0.12.1

func WithLogger(l *logger.Logger) Option

func WithMaxSizeSource

func WithMaxSizeSource(v MaxSizeSource) Option

func WithNetmapKeys added in v0.25.0

func WithNetmapKeys(v netmap.AnnouncedKeys) Option

func WithNetworkMapSource

func WithNetworkMapSource(v netmap.Source) Option

func WithNetworkState

func WithNetworkState(v netmap.State) Option

func WithObjectStorage added in v0.28.0

func WithObjectStorage(v ObjectStorage) Option

func WithWorkerPools added in v0.25.0

func WithWorkerPools(remote util.WorkerPool) Option

type PutChunkPrm

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

func (*PutChunkPrm) WithChunk

func (p *PutChunkPrm) WithChunk(v []byte) *PutChunkPrm

type PutInitPrm

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

func (*PutInitPrm) WithCommonPrm

func (p *PutInitPrm) WithCommonPrm(v *util.CommonPrm) *PutInitPrm

func (*PutInitPrm) WithObject

func (p *PutInitPrm) WithObject(v *object.Object) *PutInitPrm

func (*PutInitPrm) WithRelay added in v0.21.0

type PutResponse

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

func (*PutResponse) ObjectID

func (r *PutResponse) ObjectID() oid.ID

type RemotePutPrm

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

RemotePutPrm groups remote put operation parameters.

func (*RemotePutPrm) WithNodeInfo added in v0.26.0

func (p *RemotePutPrm) WithNodeInfo(v netmap.NodeInfo) *RemotePutPrm

WithNodeInfo sets information about the remote node.

func (*RemotePutPrm) WithObject

func (p *RemotePutPrm) WithObject(v *object.Object) *RemotePutPrm

WithObject sets transferred object.

type RemoteSender

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

RemoteSender represents utility for sending an object to a remote host.

func NewRemoteSender

func NewRemoteSender(keyStorage *util.KeyStorage, cons ClientConstructor) *RemoteSender

NewRemoteSender creates, initializes and returns new RemoteSender instance.

func (*RemoteSender) PutObject

func (s *RemoteSender) PutObject(ctx context.Context, p *RemotePutPrm) error

PutObject sends object to remote node.

type Service

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

func NewService

func NewService(opts ...Option) *Service

func (*Service) Put

func (p *Service) Put(ctx context.Context) (*Streamer, error)

type Streamer

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

func (*Streamer) Close

func (p *Streamer) Close() (*PutResponse, error)

func (*Streamer) Init

func (p *Streamer) Init(prm *PutInitPrm) error

func (*Streamer) MaxObjectSize added in v0.21.1

func (p *Streamer) MaxObjectSize() uint64

MaxObjectSize returns maximum payload size for the streaming session.

Must be called after the successful Init.

func (*Streamer) SendChunk

func (p *Streamer) SendChunk(prm *PutChunkPrm) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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