type Request: RPCRequest + Clone
type Response: Clone
type InboundCodec: Encoder<Item = Self::Response> + Decoder<Item = Self::Request>
type OutboundCodec: Encoder<Item = Self::Request> + Decoder<Item = Self::Response>
fn inbound_codec(&self, protocol: Self::Info) -> Self::InboundCodec
fn outbound_codec(&self, protocol: Self::Info) -> Self::OutboundCodec