Documentation ¶
Index ¶
- func ParsePublicKeysFromStrings(pubKeys []string) (keys.PublicKeys, error)
- type ClientCache
- func (c *ClientCache) Get(info clientcore.NodeInfo) (clientcore.Client, error)
- func (c *ClientCache) GetHeader(prm auditor.GetHeaderPrm) (*object.Object, error)
- func (c *ClientCache) GetRangeHash(prm auditor.GetRangeHashPrm) ([]byte, error)
- func (c *ClientCache) GetSG(prm storagegroup2.GetSGPrm) (*storagegroup.StorageGroup, error)
- func (c ClientCache) ListSG(dst *storagegroup2.SearchSGDst, prm storagegroup2.SearchSGPrm) error
- type ContractProcessor
- type GlagoliticLetter
- type IrFetcherWithNotary
- type IrFetcherWithoutNotary
- type Server
- func (s *Server) AlphabetIndex() int
- func (s *Server) EpochCounter() uint64
- func (s *Server) EpochDuration() uint64
- func (s *Server) HealthStatus() control.HealthStatus
- func (s *Server) InnerRingIndex() int
- func (s *Server) InnerRingSize() int
- func (s *Server) IsActive() bool
- func (s *Server) IsAlphabet() bool
- func (s *Server) ResetEpochTimer(h uint32) error
- func (s *Server) SetEpochCounter(val uint64)
- func (s *Server) SetEpochDuration(val uint64)
- func (s *Server) Start(ctx context.Context, intError chan<- error) (err error)
- func (s *Server) Stop()
- func (s *Server) VoteForSidechainValidator(prm governance.VoteValidatorPrm) error
- func (s *Server) WriteReport(r *audit.Report) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ParsePublicKeysFromStrings ¶
func ParsePublicKeysFromStrings(pubKeys []string) (keys.PublicKeys, error)
ParsePublicKeysFromStrings returns slice of neo public keys from slice of hex encoded strings.
Types ¶
type ClientCache ¶
type ClientCache struct {
// contains filtered or unexported fields
}
func (*ClientCache) Get ¶
func (c *ClientCache) Get(info clientcore.NodeInfo) (clientcore.Client, error)
func (*ClientCache) GetHeader ¶
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 ¶
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 ¶
func (c *ClientCache) GetSG(prm storagegroup2.GetSGPrm) (*storagegroup.StorageGroup, error)
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 ¶
func (c ClientCache) ListSG(dst *storagegroup2.SearchSGDst, prm storagegroup2.SearchSGPrm) error
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 GlagoliticLetter ¶
type GlagoliticLetter int8
func (GlagoliticLetter) String ¶
func (l GlagoliticLetter) String() string
String returns l in config-compatible format.
type IrFetcherWithNotary ¶
type IrFetcherWithNotary struct {
// contains filtered or unexported fields
}
IrFetcherWithNotary fetches keys using notary contract. Must be created with NewIRFetcherWithNotary.
func NewIRFetcherWithNotary ¶
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 ¶
func (fN IrFetcherWithNotary) InnerRingKeys() (keys.PublicKeys, error)
InnerRingKeys fetches list of innerring keys from NeoFSAlphabet role in the sidechain.
type IrFetcherWithoutNotary ¶
type IrFetcherWithoutNotary struct {
// contains filtered or unexported fields
}
IrFetcherWithoutNotary fetches keys using netmap contract. Must be created with NewIRFetcherWithoutNotary.
func NewIRFetcherWithoutNotary ¶
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 ¶
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 *logger.Logger, cfg *viper.Viper, errChan chan<- error) (*Server, error)
New creates instance of inner ring sever structure.
func (*Server) AlphabetIndex ¶
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 ¶
EpochCounter is a getter for a global epoch counter.
func (*Server) EpochDuration ¶
EpochDuration is a getter for a global epoch duration.
func (*Server) HealthStatus ¶
func (s *Server) HealthStatus() control.HealthStatus
HealthStatus returns the current health status of the IR application.
func (*Server) InnerRingIndex ¶
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 ¶
InnerRingSize is a getter for a global size of inner ring list. This value paired with inner ring index.
func (*Server) IsAlphabet ¶
IsAlphabet is a getter for a global alphabet flag state.
func (*Server) ResetEpochTimer ¶
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 ¶
SetEpochCounter is a setter for contract processors to update global epoch counter.
func (*Server) SetEpochDuration ¶
SetEpochDuration is a setter for the Netmap processor to update global epoch duration.
func (*Server) VoteForSidechainValidator ¶
func (s *Server) VoteForSidechainValidator(prm governance.VoteValidatorPrm) error
VoteForSidechainValidator calls vote method on alphabet contracts with the provided list of keys.
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
internal
|
|
client
Package frostfsapiclient provides functionality for IR application communication with FrostFS network.
|
Package frostfsapiclient provides functionality for IR application communication with FrostFS 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. |