Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CreateDutyExecuteMsg ¶ added in v0.4.7
func CreateDutyExecuteMsg(duty *spectypes.Duty, pubKey *bls.PublicKey) (*spectypes.SSVMessage, error)
CreateDutyExecuteMsg returns ssvMsg with event type of duty execute
Types ¶
type ControllerOptions ¶
type ControllerOptions struct {
Ctx context.Context
BeaconClient beaconprotocol.Beacon
EthNetwork beaconprotocol.Network
ValidatorController validator.Controller
Executor DutyExecutor
DutyLimit uint64
ForkVersion forksprotocol.ForkVersion
Ticker slot_ticker.Ticker
}
ControllerOptions holds the needed dependencies
type DutyController ¶
DutyController interface for dispatching duties execution according to slot ticker
func NewDutyController ¶
func NewDutyController(logger *zap.Logger, opts *ControllerOptions) DutyController
NewDutyController creates a new instance of DutyController
type DutyExecutor ¶ added in v0.1.8
DutyExecutor represents the component that executes duties
func NewReadOnlyExecutor ¶ added in v0.1.8
func NewReadOnlyExecutor() DutyExecutor
NewReadOnlyExecutor creates a dummy executor that is used to run in read mode
type DutyFetcher ¶
type DutyFetcher interface {
GetDuties(logger *zap.Logger, slot phase0.Slot) ([]spectypes.Duty, error)
SyncCommitteeDuties(logger *zap.Logger, epoch phase0.Epoch, indices []phase0.ValidatorIndex) ([]*eth2apiv1.SyncCommitteeDuty, error)
eth2client.EventsProvider
}
DutyFetcher represents the component that manages duties
Click to show internal directories.
Click to hide internal directories.