Struct sc_network::protocol_controller::ProtocolHandle
source · pub struct ProtocolHandle { /* private fields */ }
Expand description
Shared handle to ProtocolController
. Distributed around the code outside of the
protocol implementation.
Implementations§
source§impl ProtocolHandle
impl ProtocolHandle
sourcepub fn add_reserved_peer(&self, peer_id: PeerId)
pub fn add_reserved_peer(&self, peer_id: PeerId)
Adds a new reserved peer. ProtocolController
will make an effort
to always remain connected to this peer.
Has no effect if the node was already a reserved peer.
Note: Keep in mind that the networking has to know an address for this node, otherwise it will not be able to connect to it.
sourcepub fn remove_reserved_peer(&self, peer_id: PeerId)
pub fn remove_reserved_peer(&self, peer_id: PeerId)
Demotes reserved peer to non-reserved. Does not disconnect the peer.
Has no effect if the node was not a reserved peer.
sourcepub fn set_reserved_peers(&self, peer_ids: HashSet<PeerId>)
pub fn set_reserved_peers(&self, peer_ids: HashSet<PeerId>)
Set reserved peers to the new set.
sourcepub fn set_reserved_only(&self, reserved: bool)
pub fn set_reserved_only(&self, reserved: bool)
Sets whether or not ProtocolController
only has connections with nodes marked
as reserved for the given set.
sourcepub fn disconnect_peer(&self, peer_id: PeerId)
pub fn disconnect_peer(&self, peer_id: PeerId)
Disconnect peer. You should remove the PeerId
from the PeerStore
first
to not connect to the peer again during the next slot allocation.
sourcepub fn reserved_peers(&self, pending_response: Sender<Vec<PeerId>>)
pub fn reserved_peers(&self, pending_response: Sender<Vec<PeerId>>)
Get the list of reserved peers.
sourcepub fn incoming_connection(
&self,
peer_id: PeerId,
incoming_index: IncomingIndex
)
pub fn incoming_connection( &self, peer_id: PeerId, incoming_index: IncomingIndex )
Notify about incoming connection. ProtocolController
will either accept or reject it.
Trait Implementations§
source§impl Clone for ProtocolHandle
impl Clone for ProtocolHandle
source§fn clone(&self) -> ProtocolHandle
fn clone(&self) -> ProtocolHandle
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for ProtocolHandle
impl Send for ProtocolHandle
impl Sync for ProtocolHandle
impl Unpin for ProtocolHandle
impl !UnwindSafe for ProtocolHandle
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>,
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
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
T
.