innerring

package
v0.39.1 Latest Latest
Warning

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

Go to latest
Published: Dec 19, 2023 License: GPL-3.0 Imports: 98 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ParsePublicKeysFromStrings added in v0.13.0

func ParsePublicKeysFromStrings(pubKeys []string) (keys.PublicKeys, error)

ParsePublicKeysFromStrings returns slice of neo public keys from slice of hex encoded strings.

Types

type ClientCache added in v0.14.0

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

func (*ClientCache) Get added in v0.14.0

func (*ClientCache) GetHeader added in v0.14.0

func (c *ClientCache) GetHeader(prm auditor.GetHeaderPrm) (*object.Object, error)

GetHeader requests node from the container under audit to return object header by id.

func (*ClientCache) GetRangeHash added in v0.14.0

func (c *ClientCache) GetRangeHash(prm auditor.GetRangeHashPrm) ([]byte, error)

GetRangeHash requests node from the container under audit to return Tillich-Zemor hash of the payload range of the object with specified identifier.

func (*ClientCache) GetSG added in v0.14.0

GetSG polls the container to get the object by id. Returns storage groups structure from received object.

Returns an error of type apistatus.ObjectNotFound if storage group is missing.

func (ClientCache) ListSG added in v0.26.1

type ContractProcessor

type ContractProcessor interface {
	ListenerNotificationParsers() []event.NotificationParserInfo
	ListenerNotificationHandlers() []event.NotificationHandlerInfo
	ListenerNotaryParsers() []event.NotaryParserInfo
	ListenerNotaryHandlers() []event.NotaryHandlerInfo
	TimersHandlers() []event.NotificationHandlerInfo
}

ContractProcessor interface defines functions for binding event producers such as event.Listener and Timers with contract processor.

type IrFetcherWithNotary added in v0.23.0

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

IrFetcherWithNotary fetches keys using notary contract. Must be created with NewIRFetcherWithNotary.

func NewIRFetcherWithNotary added in v0.23.0

func NewIRFetcherWithNotary(cli *client.Client) *IrFetcherWithNotary

NewIRFetcherWithNotary creates IrFetcherWithNotary.

IrFetcherWithNotary can be used to obtain innerring key list if network that client is connected to supports notary contract.

Passed client is required. Panics if nil.

func (IrFetcherWithNotary) InnerRingKeys added in v0.23.0

func (fN IrFetcherWithNotary) InnerRingKeys() (keys.PublicKeys, error)

InnerRingKeys fetches list of innerring keys from NeoFSAlphabet role in the sidechain.

type IrFetcherWithoutNotary added in v0.23.0

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

IrFetcherWithoutNotary fetches keys using netmap contract. Must be created with NewIRFetcherWithoutNotary.

func NewIRFetcherWithoutNotary added in v0.23.0

func NewIRFetcherWithoutNotary(nm *nmClient.Client) *IrFetcherWithoutNotary

NewIRFetcherWithoutNotary creates IrFetcherWithoutNotary.

IrFetcherWithoutNotary must be used to obtain innerring key list if network that netmap wrapper is connected to does not support notary contract.

Passed netmap wrapper is required. Panics if nil.

func (IrFetcherWithoutNotary) InnerRingKeys added in v0.23.0

func (f IrFetcherWithoutNotary) InnerRingKeys() (keys.PublicKeys, error)

InnerRingKeys fetches list of innerring keys from netmap contract in the sidechain.

type Server

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

Server is the inner ring application structure that contains all event processors, shared variables and event handlers.

func New

func New(ctx context.Context, log *zap.Logger, cfg *viper.Viper, errChan chan<- error) (*Server, error)

New creates instance of inner ring sever structure.

func (*Server) AlphabetIndex added in v0.18.0

func (s *Server) AlphabetIndex() int

AlphabetIndex is a getter for a global index of node in alphabet list. Negative index means that node is not in the alphabet list.

func (*Server) EpochCounter

func (s *Server) EpochCounter() uint64

EpochCounter is a getter for a global epoch counter.

func (*Server) EpochDuration added in v0.26.0

func (s *Server) EpochDuration() uint64

EpochDuration is a getter for a global epoch duration.

func (*Server) HealthStatus added in v0.22.0

func (s *Server) HealthStatus() control.HealthStatus

HealthStatus returns the current health status of the IR application.

func (*Server) InnerRingIndex added in v0.18.0

func (s *Server) InnerRingIndex() int

InnerRingIndex is a getter for a global index of node in inner ring list. Negative index means that node is not in the inner ring list.

func (*Server) InnerRingSize added in v0.14.0

func (s *Server) InnerRingSize() int

InnerRingSize is a getter for a global size of inner ring list. This value paired with inner ring index.

func (*Server) IsActive

func (s *Server) IsActive() bool

IsActive is a getter for a global active flag state.

func (*Server) IsAlphabet added in v0.18.0

func (s *Server) IsAlphabet() bool

IsAlphabet is a getter for a global alphabet flag state.

func (*Server) ResetEpochTimer added in v0.15.0

func (s *Server) ResetEpochTimer(h uint32) error

ResetEpochTimer resets the block timer that produces events to update epoch counter in the netmap contract. It is used to synchronize this even production based on the block with a notification of the last epoch.

func (*Server) SetEpochCounter

func (s *Server) SetEpochCounter(val uint64)

SetEpochCounter is a setter for contract processors to update global epoch counter.

func (*Server) SetEpochDuration added in v0.26.0

func (s *Server) SetEpochDuration(val uint64)

SetEpochDuration is a setter for the Netmap processor to update global epoch duration.

func (*Server) Start

func (s *Server) Start(ctx context.Context, intError chan<- error) (err error)

Start runs all event providers.

func (*Server) Stop

func (s *Server) Stop()

Stop closes all subscription channels.

func (*Server) VoteForSidechainValidator added in v0.18.0

func (s *Server) VoteForSidechainValidator(prm governance.VoteValidatorPrm) error

VoteForSidechainValidator calls vote method on alphabet contracts with the provided list of keys.

func (*Server) WriteReport added in v0.14.0

func (s *Server) WriteReport(r *audit.Report) error

WriteReport composes the audit result structure from the audit report and sends it to Audit contract.

Directories

Path Synopsis
internal
client
Package neofsapiclient provides functionality for IR application communication with NeoFS network.
Package neofsapiclient provides functionality for IR application communication with NeoFS network.
processors
netmap/nodevalidation/state
Package state collects functionality for verifying states of network map members.
Package state collects functionality for verifying states of network map members.

Jump to

Keyboard shortcuts

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