standard

package
v1.0.4 Latest Latest
Warning

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

Go to latest
Published: Mar 13, 2021 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Parameter

type Parameter interface {
	// contains filtered or unexported methods
}

Parameter is the interface for service parameters.

func WithAggregateAndProofSigner added in v1.0.0

func WithAggregateAndProofSigner(signer signer.AggregateAndProofSigner) Parameter

WithAggregateAndProofSigner sets the aggregate and proof submitter.

func WithAggregateAttestationDataProvider

func WithAggregateAttestationDataProvider(provider eth2client.AggregateAttestationProvider) Parameter

WithAggregateAttestationDataProvider sets the aggregate attestation provider.

func WithAggregateAttestationsSubmitter added in v0.6.1

func WithAggregateAttestationsSubmitter(submitter submitter.AggregateAttestationsSubmitter) Parameter

WithAggregateAttestationsSubmitter sets the aggregate attestation submitter.

func WithLogLevel

func WithLogLevel(logLevel zerolog.Level) Parameter

WithLogLevel sets the log level for the module.

func WithMonitor

func WithMonitor(monitor metrics.AttestationAggregationMonitor) Parameter

WithMonitor sets the monitor for this module.

func WithPrysmAggregateAttestationDataProvider added in v0.9.0

func WithPrysmAggregateAttestationDataProvider(provider eth2client.PrysmAggregateAttestationProvider) Parameter

WithPrysmAggregateAttestationDataProvider sets the non-spec aggregate attestation provider.

func WithSlotSelectionSigner added in v1.0.0

func WithSlotSelectionSigner(signer signer.SlotSelectionSigner) Parameter

WithSlotSelectionSigner sets the slot selection submitter.

func WithSlotsPerEpochProvider added in v1.0.0

func WithSlotsPerEpochProvider(provider eth2client.SlotsPerEpochProvider) Parameter

WithSlotsPerEpochProvider sets the slots per epoch provider.

func WithTargetAggregatorsPerCommitteeProvider

func WithTargetAggregatorsPerCommitteeProvider(provider eth2client.TargetAggregatorsPerCommitteeProvider) Parameter

WithTargetAggregatorsPerCommitteeProvider sets the target aggregators per attestation provider.

func WithValidatingAccountsProvider

func WithValidatingAccountsProvider(provider accountmanager.ValidatingAccountsProvider) Parameter

WithValidatingAccountsProvider sets the account manager.

type Service

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

Service is an attestation aggregator.

func New

func New(ctx context.Context, params ...Parameter) (*Service, error)

New creates a new attestation aggregator.

func (*Service) Aggregate

func (s *Service) Aggregate(ctx context.Context, data interface{})

Aggregate aggregates the attestations for a given slot/committee combination.

func (*Service) IsAggregator

func (s *Service) IsAggregator(ctx context.Context,
	validatorIndex spec.ValidatorIndex,
	committeeIndex spec.CommitteeIndex,
	slot spec.Slot,
	committeeSize uint64,
) (bool, spec.BLSSignature, error)

IsAggregator reports if we are an attestation aggregator for a given validator/committee/slot combination.

Jump to

Keyboard shortcuts

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