Documentation ¶
Index ¶
- func BootstrapIdentities(addresses []string, keys []string) (flow.IdentityList, error)
- type AccessNodeBuilder
- type AccessNodeConfig
- type FlowAccessNodeBuilder
- func (anb *FlowAccessNodeBuilder) Build() AccessNodeBuilder
- func (builder *FlowAccessNodeBuilder) BuildConsensusFollower() AccessNodeBuilder
- func (builder *FlowAccessNodeBuilder) IsStaked() bool
- func (builder *FlowAccessNodeBuilder) ParseFlags()
- func (builder *FlowAccessNodeBuilder) ParticipatesInUnstakedNetwork() bool
- type Option
- type StakedAccessNodeBuilder
- type UnstakedAccessNodeBuilder
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BootstrapIdentities ¶
func BootstrapIdentities(addresses []string, keys []string) (flow.IdentityList, error)
BootstrapIdentities converts the bootstrap node addresses and keys to a Flow Identity list where each Flow Identity is initialized with the passed address, the networking key and the Node ID set to ZeroID, role set to Access, 0 stake and no staking key.
Types ¶
type AccessNodeBuilder ¶
type AccessNodeBuilder interface { cmd.NodeBuilder // IsStaked returns True is this is a staked Access Node, False otherwise IsStaked() bool // ParticipatesInUnstakedNetwork returns True if this is a staked Access node which also participates // in the unstaked network acting as an upstream for other unstaked access nodes, False otherwise. ParticipatesInUnstakedNetwork() bool // Build defines all of the Access node's components and modules. Build() AccessNodeBuilder }
type AccessNodeConfig ¶
type AccessNodeConfig struct { ExecutionNodeAddress string // deprecated HistoricalAccessRPCs []access.AccessAPIClient // contains filtered or unexported fields }
AccessNodeConfig defines all the user defined parameters required to bootstrap an access node For a node running as a standalone process, the config fields will be populated from the command line params, while for a node running as a library, the config fields are expected to be initialized by the caller.
func DefaultAccessNodeConfig ¶
func DefaultAccessNodeConfig() *AccessNodeConfig
DefaultAccessNodeConfig defines all the default values for the AccessNodeConfig
type FlowAccessNodeBuilder ¶
type FlowAccessNodeBuilder struct { *cmd.FlowNodeBuilder *AccessNodeConfig // components UnstakedLibP2PNode *p2p.Node UnstakedNetwork *p2p.Network FollowerState protocol.MutableState SyncCore *synchronization.Core RpcEng *rpc.Engine FinalizationDistributor *pubsub.FinalizationDistributor FinalizedHeader *synceng.FinalizedHeaderCache CollectionRPC access.AccessAPIClient TransactionTimings *stdmap.TransactionTimings CollectionsToMarkFinalized *stdmap.Times CollectionsToMarkExecuted *stdmap.Times BlocksToMarkExecuted *stdmap.Times TransactionMetrics module.TransactionMetrics PingMetrics module.PingMetrics Committee hotstuff.Committee Finalized *flow.Header Pending []*flow.Header FollowerCore module.HotStuffFollower // engines IngestEng *ingestion.Engine RequestEng *requester.Engine FollowerEng *followereng.Engine SyncEng *synceng.Engine // contains filtered or unexported fields }
FlowAccessNodeBuilder provides the common functionality needed to bootstrap a Flow staked and unstaked access node It is composed of the FlowNodeBuilder, the AccessNodeConfig and contains all the components and modules needed for the staked and unstaked access nodes
func FlowAccessNode ¶
func FlowAccessNode(opts ...Option) *FlowAccessNodeBuilder
func (*FlowAccessNodeBuilder) Build ¶
func (anb *FlowAccessNodeBuilder) Build() AccessNodeBuilder
func (*FlowAccessNodeBuilder) BuildConsensusFollower ¶
func (builder *FlowAccessNodeBuilder) BuildConsensusFollower() AccessNodeBuilder
func (*FlowAccessNodeBuilder) IsStaked ¶
func (builder *FlowAccessNodeBuilder) IsStaked() bool
func (*FlowAccessNodeBuilder) ParseFlags ¶
func (builder *FlowAccessNodeBuilder) ParseFlags()
func (*FlowAccessNodeBuilder) ParticipatesInUnstakedNetwork ¶
func (builder *FlowAccessNodeBuilder) ParticipatesInUnstakedNetwork() bool
type Option ¶
type Option func(*AccessNodeConfig)
func WithBaseOptions ¶
func WithBootStrapPeers ¶
type StakedAccessNodeBuilder ¶
type StakedAccessNodeBuilder struct {
*FlowAccessNodeBuilder
}
StakedAccessNodeBuilder builds a staked access node. The staked access node can optionally participate in the unstaked network publishing data for the unstaked access node downstream.
func NewStakedAccessNodeBuilder ¶
func NewStakedAccessNodeBuilder(anb *FlowAccessNodeBuilder) *StakedAccessNodeBuilder
func (*StakedAccessNodeBuilder) Build ¶
func (anb *StakedAccessNodeBuilder) Build() AccessNodeBuilder
func (*StakedAccessNodeBuilder) Initialize ¶
func (builder *StakedAccessNodeBuilder) Initialize() cmd.NodeBuilder
type UnstakedAccessNodeBuilder ¶
type UnstakedAccessNodeBuilder struct {
*FlowAccessNodeBuilder
}
func NewUnstakedAccessNodeBuilder ¶
func NewUnstakedAccessNodeBuilder(anb *FlowAccessNodeBuilder) *UnstakedAccessNodeBuilder
func (*UnstakedAccessNodeBuilder) Initialize ¶
func (builder *UnstakedAccessNodeBuilder) Initialize() cmd.NodeBuilder