Struct libp2p_swarm::keep_alive::ConnectionHandler
source · pub struct ConnectionHandler;
Expand description
Implementation of ConnectionHandler
that doesn’t handle anything but keeps the connection alive.
Trait Implementations§
source§impl Clone for ConnectionHandler
impl Clone for ConnectionHandler
source§fn clone(&self) -> ConnectionHandler
fn clone(&self) -> ConnectionHandler
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl ConnectionHandler for ConnectionHandler
impl ConnectionHandler for ConnectionHandler
§type OutEvent = Void
type OutEvent = Void
Custom event that can be produced by the handler and that will be returned to the outside.
§type Error = Void
type Error = Void
The type of errors returned by
ConnectionHandler::poll
.§type InboundProtocol = DeniedUpgrade
type InboundProtocol = DeniedUpgrade
The inbound upgrade for the protocol(s) used by the handler.
§type OutboundProtocol = DeniedUpgrade
type OutboundProtocol = DeniedUpgrade
The outbound upgrade for the protocol(s) used by the handler.
§type InboundOpenInfo = ()
type InboundOpenInfo = ()
The type of additional information returned from
listen_protocol
.§type OutboundOpenInfo = Void
type OutboundOpenInfo = Void
The type of additional information passed to an
OutboundSubstreamRequest
.source§fn listen_protocol(
&self
) -> SubstreamProtocol<Self::InboundProtocol, Self::InboundOpenInfo>
fn listen_protocol(
&self
) -> SubstreamProtocol<Self::InboundProtocol, Self::InboundOpenInfo>
The
InboundUpgrade
to apply on inbound
substreams to negotiate the desired protocols. Read moresource§fn on_behaviour_event(&mut self, v: Self::InEvent)
fn on_behaviour_event(&mut self, v: Self::InEvent)
Informs the handler about an event from the
NetworkBehaviour
.source§fn connection_keep_alive(&self) -> KeepAlive
fn connection_keep_alive(&self) -> KeepAlive
Returns until when the connection should be kept alive. Read more
source§fn poll(
&mut self,
_: &mut Context<'_>
) -> Poll<ConnectionHandlerEvent<Self::OutboundProtocol, Self::OutboundOpenInfo, Self::OutEvent, Self::Error>>
fn poll(
&mut self,
_: &mut Context<'_>
) -> Poll<ConnectionHandlerEvent<Self::OutboundProtocol, Self::OutboundOpenInfo, Self::OutEvent, Self::Error>>
Should behave like
Stream::poll()
.fn on_connection_event(
&mut self,
event: ConnectionEvent<'_, Self::InboundProtocol, Self::OutboundProtocol, Self::InboundOpenInfo, Self::OutboundOpenInfo>
)
source§fn inject_fully_negotiated_inbound(
&mut self,
protocol: <Self::InboundProtocol as InboundUpgradeSend>::Output,
info: Self::InboundOpenInfo
)
fn inject_fully_negotiated_inbound(
&mut self,
protocol: <Self::InboundProtocol as InboundUpgradeSend>::Output,
info: Self::InboundOpenInfo
)
👎Deprecated since 0.41.0: Handle
ConnectionEvent::FullyNegotiatedInbound
on ConnectionHandler::on_connection_event
instead.
The default implemention of this inject_*
method delegates to it.Injects the output of a successful upgrade on a new inbound substream. Read more
source§fn inject_fully_negotiated_outbound(
&mut self,
protocol: <Self::OutboundProtocol as OutboundUpgradeSend>::Output,
info: Self::OutboundOpenInfo
)
fn inject_fully_negotiated_outbound(
&mut self,
protocol: <Self::OutboundProtocol as OutboundUpgradeSend>::Output,
info: Self::OutboundOpenInfo
)
👎Deprecated since 0.41.0: Handle
ConnectionEvent::FullyNegotiatedOutbound
on ConnectionHandler::on_connection_event
instead.
The default implemention of this inject_*
method delegates to it.Injects the output of a successful upgrade on a new outbound substream. Read more
source§fn inject_event(&mut self, event: Self::InEvent)
fn inject_event(&mut self, event: Self::InEvent)
👎Deprecated since 0.41.0: Implement
ConnectionHandler::on_behaviour_event
instead. The default implementation of inject_event
delegates to it.Injects an event coming from the outside in the handler.
source§fn inject_address_change(&mut self, new_address: &Multiaddr)
fn inject_address_change(&mut self, new_address: &Multiaddr)
👎Deprecated since 0.41.0: Handle
ConnectionEvent::AddressChange
on ConnectionHandler::on_connection_event
instead.
The default implemention of this inject_*
method delegates to it.Notifies the handler of a change in the address of the remote.
source§fn inject_dial_upgrade_error(
&mut self,
info: Self::OutboundOpenInfo,
error: ConnectionHandlerUpgrErr<<Self::OutboundProtocol as OutboundUpgradeSend>::Error>
)
fn inject_dial_upgrade_error(
&mut self,
info: Self::OutboundOpenInfo,
error: ConnectionHandlerUpgrErr<<Self::OutboundProtocol as OutboundUpgradeSend>::Error>
)
👎Deprecated since 0.41.0: Handle
ConnectionEvent::DialUpgradeError
on ConnectionHandler::on_connection_event
instead.
The default implemention of this inject_*
method delegates to it.Indicates to the handler that upgrading an outbound substream to the given protocol has failed.
source§fn inject_listen_upgrade_error(
&mut self,
info: Self::InboundOpenInfo,
error: ConnectionHandlerUpgrErr<<Self::InboundProtocol as InboundUpgradeSend>::Error>
)
fn inject_listen_upgrade_error(
&mut self,
info: Self::InboundOpenInfo,
error: ConnectionHandlerUpgrErr<<Self::InboundProtocol as InboundUpgradeSend>::Error>
)
👎Deprecated since 0.41.0: Handle
ConnectionEvent::ListenUpgradeError
on ConnectionHandler::on_connection_event
instead.
The default implemention of this inject_*
method delegates to it.Indicates to the handler that upgrading an inbound substream to the given protocol has failed.
source§fn map_in_event<TNewIn, TMap>(self, map: TMap) -> MapInEvent<Self, TNewIn, TMap>where
Self: Sized,
TMap: Fn(&TNewIn) -> Option<&Self::InEvent>,
fn map_in_event<TNewIn, TMap>(self, map: TMap) -> MapInEvent<Self, TNewIn, TMap>where
Self: Sized,
TMap: Fn(&TNewIn) -> Option<&Self::InEvent>,
Adds a closure that turns the input event into something else.
source§fn map_out_event<TMap, TNewOut>(self, map: TMap) -> MapOutEvent<Self, TMap>where
Self: Sized,
TMap: FnMut(Self::OutEvent) -> TNewOut,
fn map_out_event<TMap, TNewOut>(self, map: TMap) -> MapOutEvent<Self, TMap>where
Self: Sized,
TMap: FnMut(Self::OutEvent) -> TNewOut,
Adds a closure that turns the output event into something else.
source§fn select<TProto2>(
self,
other: TProto2
) -> ConnectionHandlerSelect<Self, TProto2>where
Self: Sized,
fn select<TProto2>(
self,
other: TProto2
) -> ConnectionHandlerSelect<Self, TProto2>where
Self: Sized,
Creates a new
ConnectionHandler
that selects either this handler or
other
by delegating methods calls appropriately. Read moreAuto Trait Implementations§
impl RefUnwindSafe for ConnectionHandler
impl Send for ConnectionHandler
impl Sync for ConnectionHandler
impl Unpin for ConnectionHandler
impl UnwindSafe for ConnectionHandler
Blanket Implementations§
source§impl<T> IntoConnectionHandler for Twhere
T: ConnectionHandler,
impl<T> IntoConnectionHandler for Twhere
T: ConnectionHandler,
source§fn into_handler(self, _: &PeerId, _: &ConnectedPoint) -> T
fn into_handler(self, _: &PeerId, _: &ConnectedPoint) -> T
Builds the protocols handler. Read more
source§fn inbound_protocol(
&self
) -> <<T as IntoConnectionHandler>::Handler as ConnectionHandler>::InboundProtocol
fn inbound_protocol(
&self
) -> <<T as IntoConnectionHandler>::Handler as ConnectionHandler>::InboundProtocol
Return the handler’s inbound protocol.
source§fn select<TProto2>(
self,
other: TProto2
) -> IntoConnectionHandlerSelect<Self, TProto2>where
Self: Sized,
fn select<TProto2>(
self,
other: TProto2
) -> IntoConnectionHandlerSelect<Self, TProto2>where
Self: Sized,
Builds an implementation of
IntoConnectionHandler
that handles both this protocol and the
other one together. Read more