getsvc

package
v0.27.6 Latest Latest
Warning

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

Go to latest
Published: Mar 28, 2022 License: GPL-3.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ChunkWriter added in v0.13.0

type ChunkWriter interface {
	WriteChunk([]byte) error
}

ChunkWriter is an interface of target component to write payload chunk.

type ClientConstructor added in v0.18.0

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

type HeadPrm added in v0.13.0

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

HeadPrm groups parameters of Head service call.

func (*HeadPrm) SetCommonParameters added in v0.13.0

func (p *HeadPrm) SetCommonParameters(common *util.CommonPrm)

SetCommonParameters sets common parameters of the operation.

func (*HeadPrm) SetHeaderWriter added in v0.13.0

func (p *HeadPrm) SetHeaderWriter(w HeaderWriter)

SetHeaderWriter sets target component to write the object header.

func (*HeadPrm) SetRequestForwarder added in v0.19.0

func (p *HeadPrm) SetRequestForwarder(f RequestForwarder)

func (*HeadPrm) WithAddress added in v0.27.0

func (p *HeadPrm) WithAddress(addr *objectSDK.Address)

WithAddress sets object address to be read.

func (*HeadPrm) WithRawFlag added in v0.27.0

func (p *HeadPrm) WithRawFlag(raw bool)

WithRawFlag sets flag of raw reading.

type HeaderWriter added in v0.13.0

type HeaderWriter interface {
	WriteHeader(*object.Object) error
}

HeaderWriter is an interface of target component to write object header.

type ObjectWriter added in v0.13.0

type ObjectWriter interface {
	HeaderWriter
	ChunkWriter
}

ObjectWriter is an interface of target component to write object.

type Option

type Option func(*cfg)

Option is a Service's constructor option.

func WithClientConstructor added in v0.18.0

func WithClientConstructor(v ClientConstructor) Option

WithClientConstructor returns option to set constructor of remote node clients.

func WithKeyStorage added in v0.26.1

func WithKeyStorage(store *util.KeyStorage) Option

WithKeyStorage returns option to set private key storage for session tokens and node key.

func WithLocalStorageEngine added in v0.13.0

func WithLocalStorageEngine(e *engine.StorageEngine) Option

WithLocalStorageEngine returns option to set local storage instance.

func WithLogger added in v0.13.0

func WithLogger(l *logger.Logger) Option

WithLogger returns option to specify Get service's logger.

func WithNetMapSource added in v0.14.1

func WithNetMapSource(nmSrc netmap.Source) Option

WithNetMapSource returns option to set network map storage to receive current network state.

func WithTraverserGenerator added in v0.13.0

func WithTraverserGenerator(t *util.TraverserGenerator) Option

WithTraverserGenerator returns option to set generator of placement traverser to get the objects from containers.

func WithoutAssembly added in v0.13.0

func WithoutAssembly() Option

WithoutAssembly returns option to disable object assembling.

type Prm

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

Prm groups parameters of Get service call.

func (*Prm) SetCommonParameters added in v0.13.0

func (p *Prm) SetCommonParameters(common *util.CommonPrm)

SetCommonParameters sets common parameters of the operation.

func (*Prm) SetObjectWriter added in v0.13.0

func (p *Prm) SetObjectWriter(w ObjectWriter)

SetObjectWriter sets target component to write the object.

func (*Prm) SetRequestForwarder added in v0.19.0

func (p *Prm) SetRequestForwarder(f RequestForwarder)

func (*Prm) WithAddress

func (p *Prm) WithAddress(addr *objectSDK.Address)

WithAddress sets object address to be read.

func (*Prm) WithRawFlag added in v0.27.0

func (p *Prm) WithRawFlag(raw bool)

WithRawFlag sets flag of raw reading.

type RangeHashPrm added in v0.13.0

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

RangeHashPrm groups parameters of GetRange service call.

func (*RangeHashPrm) SetCommonParameters added in v0.13.0

func (p *RangeHashPrm) SetCommonParameters(common *util.CommonPrm)

SetCommonParameters sets common parameters of the operation.

func (*RangeHashPrm) SetHashGenerator added in v0.13.0

func (p *RangeHashPrm) SetHashGenerator(v func() hash.Hash)

SetHashGenerator sets constructor of hashing algorithm.

func (*RangeHashPrm) SetRangeList added in v0.13.0

func (p *RangeHashPrm) SetRangeList(rngs []*objectSDK.Range)

SetRangeList sets list of object payload ranges.

func (*RangeHashPrm) SetRequestForwarder added in v0.19.0

func (p *RangeHashPrm) SetRequestForwarder(f RequestForwarder)

func (*RangeHashPrm) SetSalt added in v0.14.1

func (p *RangeHashPrm) SetSalt(salt []byte)

SetSalt sets binary salt to XOR object's payload ranges before hash calculation.

func (*RangeHashPrm) WithAddress added in v0.27.0

func (p *RangeHashPrm) WithAddress(addr *objectSDK.Address)

WithAddress sets object address to be read.

func (*RangeHashPrm) WithRawFlag added in v0.27.0

func (p *RangeHashPrm) WithRawFlag(raw bool)

WithRawFlag sets flag of raw reading.

type RangeHashRes added in v0.13.0

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

func (*RangeHashRes) Hashes added in v0.13.0

func (r *RangeHashRes) Hashes() [][]byte

type RangePrm added in v0.13.0

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

RangePrm groups parameters of GetRange service call.

func (*RangePrm) SetChunkWriter added in v0.13.0

func (p *RangePrm) SetChunkWriter(w ChunkWriter)

SetChunkWriter sets target component to write the object payload range.

func (*RangePrm) SetCommonParameters added in v0.13.0

func (p *RangePrm) SetCommonParameters(common *util.CommonPrm)

SetCommonParameters sets common parameters of the operation.

func (*RangePrm) SetRange added in v0.13.0

func (p *RangePrm) SetRange(rng *objectSDK.Range)

SetRange sets range of the requested payload data.

func (*RangePrm) SetRequestForwarder added in v0.19.0

func (p *RangePrm) SetRequestForwarder(f RequestForwarder)

func (*RangePrm) WithAddress added in v0.27.0

func (p *RangePrm) WithAddress(addr *objectSDK.Address)

WithAddress sets object address to be read.

func (*RangePrm) WithRawFlag added in v0.27.0

func (p *RangePrm) WithRawFlag(raw bool)

WithRawFlag sets flag of raw reading.

type RequestForwarder added in v0.19.0

type Service

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

Service utility serving requests of Object.Get service.

func New added in v0.13.0

func New(opts ...Option) *Service

New creates, initializes and returns utility serving Object.Get service requests.

func (*Service) Get

func (s *Service) Get(ctx context.Context, prm Prm) error

Get serves a request to get an object by address, and returns Streamer instance.

func (*Service) GetRange added in v0.13.0

func (s *Service) GetRange(ctx context.Context, prm RangePrm) error

GetRange serves a request to get an object by address, and returns Streamer instance.

func (*Service) GetRangeHash added in v0.13.0

func (s *Service) GetRangeHash(ctx context.Context, prm RangeHashPrm) (*RangeHashRes, error)

func (*Service) Head added in v0.13.0

func (s *Service) Head(ctx context.Context, prm HeadPrm) error

Head reads object header from container.

Returns ErrNotFound if the header was not received for the call. Returns SplitInfoError if object is virtual and raw flag is set.

type SimpleObjectWriter added in v0.13.0

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

func NewSimpleObjectWriter added in v0.13.0

func NewSimpleObjectWriter() *SimpleObjectWriter

func (*SimpleObjectWriter) Object added in v0.13.0

func (s *SimpleObjectWriter) Object() *object.Object

func (*SimpleObjectWriter) WriteChunk added in v0.13.0

func (s *SimpleObjectWriter) WriteChunk(p []byte) error

func (*SimpleObjectWriter) WriteHeader added in v0.13.0

func (s *SimpleObjectWriter) WriteHeader(obj *object.Object) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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