Documentation ¶
Index ¶
- func NewEpochStartTrigger(args *ArgsShardEpochStartTrigger) (*trigger, error)
- func NewValidatorInfoProcessor(arguments ArgValidatorInfoProcessor) (*validatorInfoProcessor, error)
- type ArgValidatorInfoProcessor
- type ArgsShardEpochStartTrigger
- type TestTrigger
- func (t TestTrigger) Epoch() uint32
- func (t TestTrigger) EpochFinalityAttestingRound() uint64
- func (t TestTrigger) EpochStartMetaHdrHash() []byte
- func (t TestTrigger) EpochStartRound() uint64
- func (t TestTrigger) ForceEpochStart(_ uint64) error
- func (t *TestTrigger) GetRoundsPerEpoch() uint64
- func (t TestTrigger) GetSavedStateKey() []byte
- func (t TestTrigger) IsEpochStart() bool
- func (t TestTrigger) IsInterfaceNil() bool
- func (t TestTrigger) LoadState(key []byte) error
- func (t TestTrigger) RequestEpochStartIfNeeded(interceptedHeader data.HeaderHandler)
- func (t TestTrigger) RevertStateToBlock(header data.HeaderHandler) error
- func (t TestTrigger) SetAppStatusHandler(handler core.AppStatusHandler) error
- func (t TestTrigger) SetCurrentEpochStartRound(_ uint64)
- func (t TestTrigger) SetFinalityAttestingRound(_ uint64)
- func (t TestTrigger) SetProcessed(header data.HeaderHandler)
- func (t *TestTrigger) SetRoundsPerEpoch(roundsPerEpoch uint64)
- func (t *TestTrigger) SetTrigger(triggerHandler epochStart.TriggerHandler)
- func (t TestTrigger) Update(_ uint64, _ uint64)
- type TriggerRegistry
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewEpochStartTrigger ¶
func NewEpochStartTrigger(args *ArgsShardEpochStartTrigger) (*trigger, error)
NewEpochStartTrigger creates a trigger to signal start of epoch
func NewValidatorInfoProcessor ¶
func NewValidatorInfoProcessor(arguments ArgValidatorInfoProcessor) (*validatorInfoProcessor, error)
NewValidatorInfoProcessor creates a new validatorInfoProcessor object
Types ¶
type ArgValidatorInfoProcessor ¶
type ArgValidatorInfoProcessor struct { MiniBlocksPool storage.Cacher Marshalizer marshal.Marshalizer ValidatorStatisticsProcessor epochStart.ValidatorStatisticsProcessorHandler Requesthandler epochStart.RequestHandler Hasher hashing.Hasher }
ArgValidatorInfoProcessor holds all dependencies required to create a validatorInfoProcessor
type ArgsShardEpochStartTrigger ¶
type ArgsShardEpochStartTrigger struct { Marshalizer marshal.Marshalizer Hasher hashing.Hasher HeaderValidator epochStart.HeaderValidator Uint64Converter typeConverters.Uint64ByteSliceConverter DataPool dataRetriever.PoolsHolder Storage dataRetriever.StorageService RequestHandler epochStart.RequestHandler EpochStartNotifier epochStart.EpochStartNotifier ValidatorInfoProcessor process.ValidatorInfoProcessorHandler Epoch uint32 Validity uint64 Finality uint64 }
ArgsShardEpochStartTrigger struct { defines the arguments needed for new start of epoch trigger
type TestTrigger ¶
type TestTrigger struct {
// contains filtered or unexported fields
}
TestTrigger extends start of epoch trigger and is used in integration tests as it exposes some functions that are not supposed to be used in production code Exported functions simplify the reproduction of edge cases
func (TestTrigger) Epoch ¶
func (t TestTrigger) Epoch() uint32
Epoch returns the current epoch number
func (TestTrigger) EpochFinalityAttestingRound ¶
func (t TestTrigger) EpochFinalityAttestingRound() uint64
EpochFinalityAttestingRound returns the round when epoch start block was finalized
func (TestTrigger) EpochStartMetaHdrHash ¶
func (t TestTrigger) EpochStartMetaHdrHash() []byte
EpochStartMetaHdrHash returns the announcing meta header hash which created the new epoch
func (TestTrigger) EpochStartRound ¶
func (t TestTrigger) EpochStartRound() uint64
EpochStartRound returns the start round of the current epoch
func (TestTrigger) ForceEpochStart ¶
ForceEpochStart sets the conditions for start of epoch to true in case of edge cases
func (*TestTrigger) GetRoundsPerEpoch ¶
func (t *TestTrigger) GetRoundsPerEpoch() uint64
GetRoundsPerEpoch gets the number of rounds per epoch
func (TestTrigger) GetSavedStateKey ¶
func (t TestTrigger) GetSavedStateKey() []byte
GetSavedStateKey returns the last saved trigger state key
func (TestTrigger) IsEpochStart ¶
func (t TestTrigger) IsEpochStart() bool
IsEpochStart returns true if conditions are fulfilled for start of epoch
func (TestTrigger) IsInterfaceNil ¶
func (t TestTrigger) IsInterfaceNil() bool
IsInterfaceNil returns true if underlying object is nil
func (TestTrigger) RequestEpochStartIfNeeded ¶
func (t TestTrigger) RequestEpochStartIfNeeded(interceptedHeader data.HeaderHandler)
RequestEpochStartIfNeeded request the needed epoch start block if metablock with new epoch was received
func (TestTrigger) RevertStateToBlock ¶
func (t TestTrigger) RevertStateToBlock(header data.HeaderHandler) error
RevertStateToBlock will revert the state of the trigger to the current block
func (TestTrigger) SetAppStatusHandler ¶ added in v0.0.5
func (t TestTrigger) SetAppStatusHandler(handler core.AppStatusHandler) error
SetAppStatusHandler will set the satus handler for the trigger
func (TestTrigger) SetCurrentEpochStartRound ¶
func (t TestTrigger) SetCurrentEpochStartRound(_ uint64)
SetCurrentEpochStartRound sets the round when the current epoch started
func (TestTrigger) SetFinalityAttestingRound ¶
func (t TestTrigger) SetFinalityAttestingRound(_ uint64)
SetFinalityAttestingRound sets the round which finalized the start of epoch block
func (TestTrigger) SetProcessed ¶
func (t TestTrigger) SetProcessed(header data.HeaderHandler)
SetProcessed sets start of epoch to false and cleans underlying structure
func (*TestTrigger) SetRoundsPerEpoch ¶
func (t *TestTrigger) SetRoundsPerEpoch(roundsPerEpoch uint64)
SetRoundsPerEpoch sets the number of round between epochs
func (*TestTrigger) SetTrigger ¶
func (t *TestTrigger) SetTrigger(triggerHandler epochStart.TriggerHandler)
SetTrigger sets the start of epoch trigger
type TriggerRegistry ¶
type TriggerRegistry struct { Epoch uint32 CurrentRoundIndex int64 EpochStartRound uint64 EpochMetaBlockHash []byte IsEpochStart bool NewEpochHeaderReceived bool EpochFinalityAttestingRound uint64 EpochStartShardHeader *block.Header }
TriggerRegistry holds the data required to correctly initialize the trigger when booting from saved state