Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Coordinator ¶
type Coordinator interface { Start() // Start the block transfer go routine Stop() // Stop up the block transfer go routine // SyncToTarget attempts to move the state to the given target, returning an error, and whether this target might succeed if attempted at a later time SyncToTarget(blockNumber uint64, blockHash []byte, peerIDs []*pb.PeerID) (error, bool) }
Coordinator is used to initiate state transfer. Start must be called before use, and Stop should be called to free allocated resources
func NewCoordinatorImpl ¶
func NewCoordinatorImpl(stack PartialStack) Coordinator
NewCoordinatorImpl constructs a coordinatorImpl
type PartialStack ¶
type PartialStack interface { peer.BlockChainAccessor peer.BlockChainModifier peer.BlockChainUtil GetPeers() (*pb.PeersMessage, error) GetPeerEndpoint() (*pb.PeerEndpoint, error) GetRemoteLedger(receiver *pb.PeerID) (peer.RemoteLedger, error) }
PartialStack is a subset of peer.MessageHandlerCoordinator functionality which is necessary to perform state transfer
Click to show internal directories.
Click to hide internal directories.