pub trait ConnectionHandler:
    Send
    + Sync
    + 'static {
    type Connection: Stream<Item = BytesMut> + Send + 'static;
    // Required methods
    fn protocol(&self) -> Protocol;
    fn on_unsupported_by_peer(
        self,
        supported: &SharedCapabilities,
        direction: Direction,
        peer_id: PeerId,
    ) -> OnNotSupported;
    fn into_connection(
        self,
        direction: Direction,
        peer_id: PeerId,
        conn: ProtocolConnection,
    ) -> Self::Connection;
}Expand description
A trait that allows to authenticate a protocol after the RLPx connection was established.
Required Associated Types§
Sourcetype Connection: Stream<Item = BytesMut> + Send + 'static
 
type Connection: Stream<Item = BytesMut> + Send + 'static
The connection that yields messages to send to the remote.
The connection will be closed when this stream resolves.
Required Methods§
Sourcefn protocol(&self) -> Protocol
 
fn protocol(&self) -> Protocol
Returns the protocol to announce when the RLPx connection will be established.
This will be negotiated with the remote peer.
Sourcefn on_unsupported_by_peer(
    self,
    supported: &SharedCapabilities,
    direction: Direction,
    peer_id: PeerId,
) -> OnNotSupported
 
fn on_unsupported_by_peer( self, supported: &SharedCapabilities, direction: Direction, peer_id: PeerId, ) -> OnNotSupported
Invoked when the RLPx connection has been established by the peer does not share the
protocol.
Sourcefn into_connection(
    self,
    direction: Direction,
    peer_id: PeerId,
    conn: ProtocolConnection,
) -> Self::Connection
 
fn into_connection( self, direction: Direction, peer_id: PeerId, conn: ProtocolConnection, ) -> Self::Connection
Invoked when the RLPx connection was established.
The returned future should resolve when the connection should disconnect.