Struct sc_network::peer_info::PeerInfoBehaviour
source · pub struct PeerInfoBehaviour { /* private fields */ }
Expand description
Implementation of NetworkBehaviour
that holds information about peers in cache.
Implementations§
source§impl PeerInfoBehaviour
impl PeerInfoBehaviour
sourcepub fn new(
user_agent: String,
local_public_key: PublicKey,
external_addresses: Arc<Mutex<HashSet<Multiaddr>>>
) -> Self
pub fn new( user_agent: String, local_public_key: PublicKey, external_addresses: Arc<Mutex<HashSet<Multiaddr>>> ) -> Self
Builds a new PeerInfoBehaviour
.
sourcepub fn node(&self, peer_id: &PeerId) -> Option<Node<'_>>
pub fn node(&self, peer_id: &PeerId) -> Option<Node<'_>>
Borrows self
and returns a struct giving access to the information about a node.
Returns None
if we don’t know anything about this node. Always returns Some
for nodes
we’re connected to, meaning that if None
is returned then we’re not connected to that
node.
Trait Implementations§
source§impl NetworkBehaviour for PeerInfoBehaviour
impl NetworkBehaviour for PeerInfoBehaviour
§type ConnectionHandler = IntoConnectionHandlerSelect<<Behaviour as NetworkBehaviour>::ConnectionHandler, <Behaviour as NetworkBehaviour>::ConnectionHandler>
type ConnectionHandler = IntoConnectionHandlerSelect<<Behaviour as NetworkBehaviour>::ConnectionHandler, <Behaviour as NetworkBehaviour>::ConnectionHandler>
Handler for all the protocols the network behaviour supports.
§type OutEvent = PeerInfoEvent
type OutEvent = PeerInfoEvent
Event generated by the
NetworkBehaviour
and that the swarm will report back.source§fn handle_pending_inbound_connection(
&mut self,
connection_id: ConnectionId,
local_addr: &Multiaddr,
remote_addr: &Multiaddr
) -> Result<(), ConnectionDenied>
fn handle_pending_inbound_connection( &mut self, connection_id: ConnectionId, local_addr: &Multiaddr, remote_addr: &Multiaddr ) -> Result<(), ConnectionDenied>
Callback that is invoked for every new inbound connection. Read more
source§fn handle_pending_outbound_connection(
&mut self,
_connection_id: ConnectionId,
_maybe_peer: Option<PeerId>,
_addresses: &[Multiaddr],
_effective_role: Endpoint
) -> Result<Vec<Multiaddr>, ConnectionDenied>
fn handle_pending_outbound_connection( &mut self, _connection_id: ConnectionId, _maybe_peer: Option<PeerId>, _addresses: &[Multiaddr], _effective_role: Endpoint ) -> Result<Vec<Multiaddr>, ConnectionDenied>
Callback that is invoked for every outbound connection attempt. Read more
source§fn handle_established_inbound_connection(
&mut self,
connection_id: ConnectionId,
peer: PeerId,
local_addr: &Multiaddr,
remote_addr: &Multiaddr
) -> Result<THandler<Self>, ConnectionDenied>
fn handle_established_inbound_connection( &mut self, connection_id: ConnectionId, peer: PeerId, local_addr: &Multiaddr, remote_addr: &Multiaddr ) -> Result<THandler<Self>, ConnectionDenied>
Callback that is invoked for every established inbound connection. Read more
source§fn handle_established_outbound_connection(
&mut self,
connection_id: ConnectionId,
peer: PeerId,
addr: &Multiaddr,
role_override: Endpoint
) -> Result<THandler<Self>, ConnectionDenied>
fn handle_established_outbound_connection( &mut self, connection_id: ConnectionId, peer: PeerId, addr: &Multiaddr, role_override: Endpoint ) -> Result<THandler<Self>, ConnectionDenied>
Callback that is invoked for every established outbound connection. Read more
source§fn on_swarm_event(&mut self, event: FromSwarm<'_, Self::ConnectionHandler>)
fn on_swarm_event(&mut self, event: FromSwarm<'_, Self::ConnectionHandler>)
Informs the behaviour about an event from the
Swarm
.source§fn on_connection_handler_event(
&mut self,
peer_id: PeerId,
connection_id: ConnectionId,
event: THandlerOutEvent<Self>
)
fn on_connection_handler_event( &mut self, peer_id: PeerId, connection_id: ConnectionId, event: THandlerOutEvent<Self> )
Informs the behaviour about an event generated by the
ConnectionHandler
dedicated to the peer identified by peer_id
. for the behaviour. Read moresource§fn poll(
&mut self,
cx: &mut Context<'_>,
params: &mut impl PollParameters
) -> Poll<ToSwarm<Self::OutEvent, THandlerInEvent<Self>>>
fn poll( &mut self, cx: &mut Context<'_>, params: &mut impl PollParameters ) -> Poll<ToSwarm<Self::OutEvent, THandlerInEvent<Self>>>
Polls for things that swarm should do. Read more
§fn new_handler(&mut self) -> Self::ConnectionHandler
fn new_handler(&mut self) -> Self::ConnectionHandler
👎Deprecated since 0.42.0: Use one or more of
NetworkBehaviour::{handle_pending_inbound_connection,handle_established_inbound_connection,handle_pending_outbound_connection,handle_established_outbound_connection}
instead.Creates a new
ConnectionHandler
for a connection with a peer. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for PeerInfoBehaviour
impl Send for PeerInfoBehaviour
impl !Sync for PeerInfoBehaviour
impl Unpin for PeerInfoBehaviour
impl !UnwindSafe for PeerInfoBehaviour
Blanket Implementations§
source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T, Outer> IsWrappedBy<Outer> for Twhere
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
impl<T, Outer> IsWrappedBy<Outer> for Twhere Outer: AsRef<T> + AsMut<T> + From<T>, T: From<Outer>,
§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
source§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere Self: UniqueSaturatedFrom<T>,
source§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of
T
. Read moresource§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere T: UncheckedFrom<S>,
source§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from
.source§impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere T: Bounded, S: TryInto<T>,
source§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T
.