pub trait HttpControl {
    const TYPE: HttpType;

    // Required method
    fn attributes(&self) -> &Attributes;

    // Provided methods
    fn end_of_stream(&self) -> bool { ... }
    fn resume(&self) { ... }
    fn reset(&self) { ... }
    fn send_http_response(
        &self,
        status_code: u32,
        headers: &[(&str, &[u8])],
        body: Option<&[u8]>
    ) -> Result<(), Status> { ... }
    fn done(&self) { ... }
}
Expand description

Defines control functions for http data

Required Associated Constants§

source

const TYPE: HttpType

Request or Response

Required Methods§

source

fn attributes(&self) -> &Attributes

Retrieve attributes for the http data

Provided Methods§

source

fn end_of_stream(&self) -> bool

If true, this is the last block

source

fn resume(&self)

Resume a paused HTTP request/response

source

fn reset(&self)

Reset the HTTP request/response

source

fn send_http_response( &self, status_code: u32, headers: &[(&str, &[u8])], body: Option<&[u8]> ) -> Result<(), Status>

Send an early HTTP response, terminating the current request/response

source

fn done(&self)

Mark this transaction as complete

Object Safety§

This trait is not object safe.

Implementors§

source§

impl HttpControl for RequestBody

source§

const TYPE: HttpType = HttpType::Request

source§

impl HttpControl for RequestHeaders

source§

const TYPE: HttpType = HttpType::Request

source§

impl HttpControl for RequestTrailers

source§

const TYPE: HttpType = HttpType::Request

source§

impl HttpControl for ResponseBody

source§

const TYPE: HttpType = HttpType::Response

source§

impl HttpControl for ResponseHeaders

source§

const TYPE: HttpType = HttpType::Response

source§

impl HttpControl for ResponseTrailers

source§

const TYPE: HttpType = HttpType::Response