Trait tokio_proto::streaming::pipeline::advanced::Dispatch[][src]

pub trait Dispatch {
    type Io;
    type In;
    type BodyIn;
    type Out;
    type BodyOut;
    type Error: From<Error>;
    type Stream: Stream<Item = Self::BodyIn, Error = Self::Error>;
    type Transport: Transport<Item = Frame<Self::Out, Self::BodyOut, Self::Error>, SinkItem = Frame<Self::In, Self::BodyIn, Self::Error>>;
    fn transport(&mut self) -> &mut Self::Transport;
fn dispatch(
        &mut self,
        message: PipelineMessage<Self::Out, Body<Self::BodyOut, Self::Error>, Self::Error>
    ) -> Result<()>;
fn poll(
        &mut self
    ) -> Poll<Option<PipelineMessage<Self::In, Self::Stream, Self::Error>>, Error>;
fn has_in_flight(&self) -> bool; }
[]

Dispatch messages from the transport to the service

Associated Types

[]

Type of underlying I/O object

[]

Message written to transport

[]

Body written to transport

[]

Messages read from the transport

[]

Outbound body frame

[]

Transport error

[]

Body stream written to transport

[]

Transport type

Required Methods

[]

Mutable reference to the transport

[]

Process an out message

[]

Poll the next completed message

[]

RPC currently in flight TODO: Get rid of

Implementors