Versions in this module Expand all Collapse all v1 v1.4.9 Jul 22, 2021 Changes in this version + const DefAliveExpirationCheckInterval + const DefAliveExpirationTimeout + const DefAliveTimeInterval + const DefReconnectInterval + func HasExternalEndpoint(member NetworkMember) bool + func SetMaxConnAttempts(attempts int) + type CommService interface + Accept func() <-chan proto.ReceivedMessage + CloseConn func(peer *NetworkMember) + Forward func(msg proto.ReceivedMessage) + Gossip func(msg *proto.SignedGossipMessage) + IdentitySwitch func() <-chan common.PKIidType + Ping func(peer *NetworkMember) bool + PresumedDead func() <-chan common.PKIidType + SendToPeer func(peer *NetworkMember, msg *proto.SignedGossipMessage) + type CryptoService interface + SignMessage func(m *proto.GossipMessage, internalEndpoint string) *proto.Envelope + ValidateAliveMsg func(message *proto.SignedGossipMessage) bool + type DisclosurePolicy func(remotePeer *NetworkMember) (Sieve, EnvelopeFilter) + type Discovery interface + Connect func(member NetworkMember, id identifier) + GetMembership func() []NetworkMember + InitiateSync func(peerNum int) + Lookup func(PKIID common.PKIidType) *NetworkMember + Self func() NetworkMember + Stop func() + UpdateEndpoint func(string) + UpdateMetadata func([]byte) + func NewDiscoveryService(self NetworkMember, comm CommService, crypt CryptoService, ...) Discovery + type DiscoveryConfig struct + AliveExpirationCheckInterval time.Duration + AliveExpirationTimeout time.Duration + AliveTimeInterval time.Duration + BootstrapPeers []string + ReconnectInterval time.Duration + type EnvelopeFilter func(message *proto.SignedGossipMessage) *proto.Envelope + type Members []NetworkMember + func (members Members) ByID() map[string]NetworkMember + func (members Members) Filter(filter func(member NetworkMember) bool) Members + func (members Members) Intersect(otherMembers Members) Members + func (members Members) Map(f func(member NetworkMember) NetworkMember) Members + type NetworkMember struct + Endpoint string + InternalEndpoint string + Metadata []byte + PKIid common.PKIidType + Properties *proto.Properties + func (n NetworkMember) PreferredEndpoint() string + func (n NetworkMember) String() string + type PeerIdentification struct + ID common.PKIidType + SelfOrg bool + type Sieve func(message *proto.SignedGossipMessage) bool