Documentation ¶
Index ¶
- func IterateAllSplitLeaves(r HeadReceiver, addr *addressSDK.Address, h func(*object.Object)) error
- func IterateSplitLeaves(r HeadReceiver, addr *addressSDK.Address, h func(*object.Object) bool) error
- func LogServiceError(l *logger.Logger, req string, node network.AddressGroup, err error)
- func LogWorkerPoolError(l *logger.Logger, req string, err error)
- func NewLocalPlacement(b placement.Builder, s netmap.AnnouncedKeys) placement.Builder
- func NewRemotePlacementBuilder(b placement.Builder, s netmap.AnnouncedKeys) placement.Builder
- func TraverseSplitChain(r HeadReceiver, addr *addressSDK.Address, h SplitMemberHandler) error
- type CommonPrm
- func (p *CommonPrm) BearerToken() *token.BearerToken
- func (p *CommonPrm) LocalOnly() bool
- func (p *CommonPrm) NetmapEpoch() uint64
- func (p *CommonPrm) NetmapLookupDepth() uint64
- func (p *CommonPrm) SessionToken() *sessionsdk.Token
- func (p *CommonPrm) SetNetmapLookupDepth(v uint64)
- func (p *CommonPrm) TTL() uint32
- func (p *CommonPrm) WithLocalOnly(v bool) *CommonPrm
- func (p *CommonPrm) XHeaders() []*sessionsdk.XHeader
- type HeadReceiver
- type KeyStorage
- type SplitMemberHandler
- type TraverserGenerator
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IterateAllSplitLeaves ¶ added in v0.14.0
func IterateAllSplitLeaves(r HeadReceiver, addr *addressSDK.Address, h func(*object.Object)) error
IterateAllSplitLeaves is an iterator over all object split-tree leaves in direct order.
func IterateSplitLeaves ¶ added in v0.14.0
func IterateSplitLeaves(r HeadReceiver, addr *addressSDK.Address, h func(*object.Object) bool) error
IterateSplitLeaves is an iterator over object split-tree leaves in direct order.
If member handler returns true, then the iterator aborts without error.
func LogServiceError ¶ added in v0.12.1
LogServiceError writes debug error message of object service to provided logger.
func LogWorkerPoolError ¶ added in v0.12.1
LogWorkerPoolError writes debug error message of object worker pool to provided logger.
func NewLocalPlacement ¶
func NewRemotePlacementBuilder ¶ added in v0.13.0
NewRemotePlacementBuilder creates, initializes and returns placement builder that excludes local node from any placement vector.
func TraverseSplitChain ¶ added in v0.14.0
func TraverseSplitChain(r HeadReceiver, addr *addressSDK.Address, h SplitMemberHandler) error
TraverseSplitChain is an iterator over object split-tree leaves.
Traversal occurs in one of two directions, which depends on what pslit info was received: * in direct order for link part; * in reverse order for last part.
Types ¶
type CommonPrm ¶
type CommonPrm struct {
// contains filtered or unexported fields
}
func CommonPrmFromV2 ¶
func CommonPrmFromV2(req interface { GetMetaHeader() *session.RequestMetaHeader }) (*CommonPrm, error)
func (*CommonPrm) BearerToken ¶
func (p *CommonPrm) BearerToken() *token.BearerToken
func (*CommonPrm) NetmapEpoch ¶ added in v0.14.1
func (*CommonPrm) NetmapLookupDepth ¶ added in v0.14.1
func (*CommonPrm) SessionToken ¶
func (p *CommonPrm) SessionToken() *sessionsdk.Token
func (*CommonPrm) SetNetmapLookupDepth ¶ added in v0.14.1
func (*CommonPrm) WithLocalOnly ¶
func (*CommonPrm) XHeaders ¶ added in v0.27.0
func (p *CommonPrm) XHeaders() []*sessionsdk.XHeader
Returns X-Headers for new requests.
type HeadReceiver ¶ added in v0.14.0
type HeadReceiver interface { // Head must return one of: // * object header (*object.Object); // * structured information about split-chain (*object.SplitInfo). Head(*addressSDK.Address) (interface{}, error) }
HeadReceiver is an interface of entity that can receive object header or the information about the object relations.
type KeyStorage ¶
type KeyStorage struct {
// contains filtered or unexported fields
}
KeyStorage represents private key storage of the local node.
func NewKeyStorage ¶
func NewKeyStorage(localKey *ecdsa.PrivateKey, tokenStore *storage.TokenStore, net netmap.State) *KeyStorage
NewKeyStorage creates, initializes and returns new KeyStorage instance.
func (*KeyStorage) GetKey ¶
func (s *KeyStorage) GetKey(token *session.Token) (*ecdsa.PrivateKey, error)
GetKey returns private key of the node.
If token is not nil, session private key is returned. Otherwise, node private key is returned.
type SplitMemberHandler ¶ added in v0.14.0
SplitMemberHandler is a handler of next split-chain element.
If reverseDirection arg is true, then the traversal is done in reverse order. Stop boolean result provides the ability to interrupt the traversal.
type TraverserGenerator ¶ added in v0.13.0
type TraverserGenerator struct {
// contains filtered or unexported fields
}
TraverserGenerator represents tool that generates container traverser for the particular need.
func NewTraverserGenerator ¶ added in v0.13.0
func NewTraverserGenerator(nmSrc netmap.Source, cnrSrc container.Source, netmapKeys netmap.AnnouncedKeys) *TraverserGenerator
NewTraverserGenerator creates, initializes and returns new TraverserGenerator instance.
func (*TraverserGenerator) GenerateTraverser ¶ added in v0.13.0
func (g *TraverserGenerator) GenerateTraverser(addr *addressSDK.Address, epoch uint64) (*placement.Traverser, error)
GenerateTraverser generates placement Traverser for provided object address using epoch-th network map.
func (*TraverserGenerator) WithTraverseOptions ¶ added in v0.13.0
func (g *TraverserGenerator) WithTraverseOptions(opts ...placement.Option) *TraverserGenerator
WithTraverseOptions returns TraverseGenerator that additionally applies provided options.