rpc

package
v1.0.0-beta.0 Latest Latest
Warning

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

Go to latest
Published: Oct 24, 2020 License: GPL-3.0 Imports: 40 Imported by: 10

Documentation

Overview

Package rpc defines a gRPC server implementing the eth2 API as needed by validator clients and consumers of chain data.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	Host                    string
	Port                    string
	CertFlag                string
	KeyFlag                 string
	BeaconDB                db.HeadAccessDatabase
	ChainInfoFetcher        blockchain.ChainInfoFetcher
	HeadFetcher             blockchain.HeadFetcher
	ForkFetcher             blockchain.ForkFetcher
	FinalizationFetcher     blockchain.FinalizationFetcher
	AttestationReceiver     blockchain.AttestationReceiver
	BlockReceiver           blockchain.BlockReceiver
	POWChainService         powchain.Chain
	ChainStartFetcher       powchain.ChainStartFetcher
	GenesisTimeFetcher      blockchain.TimeFetcher
	GenesisFetcher          blockchain.GenesisFetcher
	EnableDebugRPCEndpoints bool
	MockEth1Votes           bool
	AttestationsPool        attestations.Pool
	ExitPool                *voluntaryexits.Pool
	SlashingsPool           *slashings.Pool
	SyncService             chainSync.Checker
	Broadcaster             p2p.Broadcaster
	PeersFetcher            p2p.PeersProvider
	PeerManager             p2p.PeerManager
	DepositFetcher          depositcache.DepositFetcher
	PendingDepositFetcher   depositcache.PendingDepositsFetcher
	StateNotifier           statefeed.Notifier
	BlockNotifier           blockfeed.Notifier
	OperationNotifier       opfeed.Notifier
	StateGen                *stategen.State
}

Config options for the beacon node RPC server.

type Service

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

Service defining an RPC server for a beacon node.

func NewService

func NewService(ctx context.Context, cfg *Config) *Service

NewService instantiates a new RPC service instance that will be registered into a running beacon node.

func (*Service) Start

func (s *Service) Start()

Start the gRPC server.

func (*Service) Status

func (s *Service) Status() error

Status returns nil or credentialError

func (*Service) Stop

func (s *Service) Stop() error

Stop the service.

Directories

Path Synopsis
Package beacon defines a gRPC beacon service implementation, providing useful endpoints for checking fetching chain-specific data such as blocks, committees, validators, assignments, and more.
Package beacon defines a gRPC beacon service implementation, providing useful endpoints for checking fetching chain-specific data such as blocks, committees, validators, assignments, and more.
Package beaconv1 defines a gRPC beacon service implementation, following the official API standards https://ethereum.github.io/eth2.0-APIs/#/.
Package beaconv1 defines a gRPC beacon service implementation, following the official API standards https://ethereum.github.io/eth2.0-APIs/#/.
Package debug defines a gRPC server implementation of a debugging service which allows for helpful endpoints to debug a beacon node at runtime, this server is gated behind the feature flag --enable-debug-rpc-endpoints.
Package debug defines a gRPC server implementation of a debugging service which allows for helpful endpoints to debug a beacon node at runtime, this server is gated behind the feature flag --enable-debug-rpc-endpoints.
Package node defines a gRPC node service implementation, providing useful endpoints for checking a node's sync status, peer info, genesis data, and version information.
Package node defines a gRPC node service implementation, providing useful endpoints for checking a node's sync status, peer info, genesis data, and version information.
Package nodev1 defines a gRPC node service implementation, providing useful endpoints for checking a node's sync status, peer info, genesis data, and version information.
Package nodev1 defines a gRPC node service implementation, providing useful endpoints for checking a node's sync status, peer info, genesis data, and version information.
Package validator defines a gRPC validator service implementation, providing critical endpoints for validator clients to submit blocks/attestations to the beacon node, receive assignments, and more.
Package validator defines a gRPC validator service implementation, providing critical endpoints for validator clients to submit blocks/attestations to the beacon node, receive assignments, and more.

Jump to

Keyboard shortcuts

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