Struct solicit::http::client::ClientSession[][src]

pub struct ClientSession<'a, State> where
    State: SessionState + 'a, 
{ /* fields omitted */ }

An implementation of the Session trait specific to handling client HTTP/2 connections.

While handling the events signaled by the HttpConnection, the struct will modify the given session state appropriately.

The purpose of the type is to make it easier for client implementations to only handle stream-level events by providing a Stream implementation, instead of having to implement all session management callbacks.

For example, by varying the Stream implementation it is easy to implement a client that streams responses directly into a file on the local file system, instead of keeping it in memory (like the DefaultStream does), without having to change any HTTP/2-specific logic.

Methods

impl<'a, State> ClientSession<'a, State> where
    State: SessionState + 'a, 
[src]

Returns a new ClientSession associated to the given state.

Trait Implementations

impl<'a, State> Session for ClientSession<'a, State> where
    State: SessionState + 'a, 
[src]

Notifies the Session that a new data chunk has arrived on the connection for a particular stream. Only the raw data is passed to the callback (all padding is already discarded by the connection). Read more

Notifies the Session that headers have arrived for a particular stream. The given list of headers is already decoded by the connection. Read more

Notifies the Session that a particular stream got closed by the peer.

Auto Trait Implementations

impl<'a, State> Send for ClientSession<'a, State> where
    State: Send

impl<'a, State> Sync for ClientSession<'a, State> where
    State: Sync