Documentation ¶
Overview ¶
Package topology exposes abstractions needed in topology-aware components.
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrNotFound = errors.New("no peer found") ErrWantSelf = errors.New("node wants self") )
Functions ¶
This section is empty.
Types ¶
type ClosestPeerer ¶
type ClosestPeerer interface { // ClosestPeer returns the closest connected peer we have in relation to a // given chunk address. // This function will ignore peers with addresses provided in skipPeers. // Returns topology.ErrWantSelf in case base is the closest to the address. ClosestPeer(addr swarm.Address, skipPeers ...swarm.Address) (peerAddr swarm.Address, err error) }
type Driver ¶
type Driver interface { PeerAdder ClosestPeerer EachPeerer NeighborhoodDepth() uint8 SubscribePeersChange() (c <-chan struct{}, unsubscribe func()) io.Closer }
type EachPeerFunc ¶
EachPeerFunc is a callback that is called with a peer and its PO
type EachPeerer ¶
type EachPeerer interface { // EachPeer iterates from closest bin to farthest EachPeer(EachPeerFunc) error // EachPeerRev iterates from farthest bin to closest EachPeerRev(EachPeerFunc) error }
Click to show internal directories.
Click to hide internal directories.