Documentation ¶
Index ¶
- func ParsePublicKeysFromStrings(pubKeys []string) (keys.PublicKeys, error)
- type AlphabetContracts
- 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) SetExtraWallets(cfg *viper.Viper) error
- func (s *Server) Start(ctx context.Context, intError chan<- error) (err error)
- func (s *Server) Stop()
- func (s *Server) VoteForSidechainValidator(prm governance.VoteValidatorPrm) 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 AlphabetContracts ¶ added in v0.37.0
type AlphabetContracts map[GlagoliticLetter]util.Uint160
func NewAlphabetContracts ¶ added in v0.37.0
func NewAlphabetContracts() AlphabetContracts
func (AlphabetContracts) GetByIndex ¶ added in v0.37.0
func (a AlphabetContracts) GetByIndex(ind int) (util.Uint160, bool)
type ContractProcessor ¶
type ContractProcessor interface { ListenerNotificationParsers() []event.NotificationParserInfo ListenerNotificationHandlers() []event.NotificationHandlerInfo ListenerNotaryParsers() []event.NotaryParserInfo ListenerNotaryHandlers() []event.NotaryHandlerInfo }
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, metrics *metrics.InnerRingServiceMetrics, cmode *atomic.Bool, audit *atomic.Bool, ) (*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) SetExtraWallets ¶ added in v0.37.0
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 |
---|---|
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. |