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.