2021-07-12 15:38:55 +00:00
|
|
|
package validator
|
|
|
|
|
2021-07-16 20:55:22 +00:00
|
|
|
import (
|
2023-03-17 18:52:56 +00:00
|
|
|
"github.com/prysmaticlabs/prysm/v4/beacon-chain/blockchain"
|
2023-04-26 16:59:29 +00:00
|
|
|
"github.com/prysmaticlabs/prysm/v4/beacon-chain/builder"
|
2023-03-17 18:52:56 +00:00
|
|
|
"github.com/prysmaticlabs/prysm/v4/beacon-chain/cache"
|
2023-07-31 17:32:39 +00:00
|
|
|
"github.com/prysmaticlabs/prysm/v4/beacon-chain/core/feed/operation"
|
2023-03-20 20:04:40 +00:00
|
|
|
"github.com/prysmaticlabs/prysm/v4/beacon-chain/db"
|
2023-03-17 18:52:56 +00:00
|
|
|
"github.com/prysmaticlabs/prysm/v4/beacon-chain/operations/attestations"
|
|
|
|
"github.com/prysmaticlabs/prysm/v4/beacon-chain/operations/synccommittee"
|
|
|
|
"github.com/prysmaticlabs/prysm/v4/beacon-chain/p2p"
|
2023-08-05 20:54:12 +00:00
|
|
|
"github.com/prysmaticlabs/prysm/v4/beacon-chain/rpc/core"
|
2023-10-10 15:12:20 +00:00
|
|
|
"github.com/prysmaticlabs/prysm/v4/beacon-chain/rpc/eth/rewards"
|
2023-03-28 16:44:41 +00:00
|
|
|
"github.com/prysmaticlabs/prysm/v4/beacon-chain/rpc/lookup"
|
2023-03-17 18:52:56 +00:00
|
|
|
"github.com/prysmaticlabs/prysm/v4/beacon-chain/sync"
|
2023-04-26 16:59:29 +00:00
|
|
|
eth "github.com/prysmaticlabs/prysm/v4/proto/prysm/v1alpha1"
|
2021-07-16 20:55:22 +00:00
|
|
|
)
|
|
|
|
|
2021-07-12 15:38:55 +00:00
|
|
|
// Server defines a server implementation of the gRPC Validator service,
|
|
|
|
// providing RPC endpoints intended for validator clients.
|
|
|
|
type Server struct {
|
2022-09-30 17:19:40 +00:00
|
|
|
HeadFetcher blockchain.HeadFetcher
|
|
|
|
TimeFetcher blockchain.TimeFetcher
|
|
|
|
SyncChecker sync.Checker
|
|
|
|
AttestationsPool attestations.Pool
|
|
|
|
PeerManager p2p.PeerManager
|
|
|
|
Broadcaster p2p.Broadcaster
|
2023-03-28 16:44:41 +00:00
|
|
|
Stater lookup.Stater
|
2022-09-30 17:19:40 +00:00
|
|
|
OptimisticModeFetcher blockchain.OptimisticModeFetcher
|
|
|
|
SyncCommitteePool synccommittee.Pool
|
2023-04-26 16:59:29 +00:00
|
|
|
V1Alpha1Server eth.BeaconNodeValidatorServer
|
2022-09-30 17:19:40 +00:00
|
|
|
ProposerSlotIndexCache *cache.ProposerPayloadIDsCache
|
2023-03-20 20:04:40 +00:00
|
|
|
ChainInfoFetcher blockchain.ChainInfoFetcher
|
2023-04-26 16:59:29 +00:00
|
|
|
BeaconDB db.HeadAccessDatabase
|
|
|
|
BlockBuilder builder.BlockBuilder
|
2023-07-31 17:32:39 +00:00
|
|
|
OperationNotifier operation.Notifier
|
2023-08-05 20:54:12 +00:00
|
|
|
CoreService *core.Service
|
2023-10-10 15:12:20 +00:00
|
|
|
BlockRewardFetcher rewards.BlockRewardsFetcher
|
2021-07-12 15:38:55 +00:00
|
|
|
}
|