pub struct ResponseCompression(/* private fields */);
Expand description
HTTP response compression module
Methods from Deref<Target = ResponseCompressionCtx>§
Sourcepub fn is_enabled(&self) -> bool
pub fn is_enabled(&self) -> bool
Whether the encoder is enabled. The enablement will change according to the request and response filter by this ctx.
Sourcepub fn get_info(&self) -> Option<(&'static str, usize, usize, Duration)>
pub fn get_info(&self) -> Option<(&'static str, usize, usize, Duration)>
Return the stat of this ctx: algorithm name, in bytes, out bytes, time took for the compression
Sourcepub fn adjust_level(&mut self, new_level: u32)
pub fn adjust_level(&mut self, new_level: u32)
Adjust the compression level for all compression algorithms.
§Panic
This function will panic if it has already started encoding the response body.
Sourcepub fn adjust_algorithm_level(&mut self, algorithm: Algorithm, new_level: u32)
pub fn adjust_algorithm_level(&mut self, algorithm: Algorithm, new_level: u32)
Adjust the compression level for a specific algorithm.
§Panic
This function will panic if it has already started encoding the response body.
Sourcepub fn adjust_decompression(&mut self, enabled: bool)
pub fn adjust_decompression(&mut self, enabled: bool)
Adjust the decompression flag for all compression algorithms.
§Panic
This function will panic if it has already started encoding the response body.
Sourcepub fn adjust_algorithm_decompression(
&mut self,
algorithm: Algorithm,
enabled: bool,
)
pub fn adjust_algorithm_decompression( &mut self, algorithm: Algorithm, enabled: bool, )
Adjust the decompression flag for a specific algorithm.
§Panic
This function will panic if it has already started encoding the response body.
Sourcepub fn adjust_preserve_etag(&mut self, enabled: bool)
pub fn adjust_preserve_etag(&mut self, enabled: bool)
Adjust preserve etag setting.
§Panic
This function will panic if it has already started encoding the response body.
Sourcepub fn adjust_algorithm_preserve_etag(
&mut self,
algorithm: Algorithm,
enabled: bool,
)
pub fn adjust_algorithm_preserve_etag( &mut self, algorithm: Algorithm, enabled: bool, )
Adjust preserve etag setting for a specific algorithm.
§Panic
This function will panic if it has already started encoding the response body.
Sourcepub fn request_filter(&mut self, req: &RequestHeader)
pub fn request_filter(&mut self, req: &RequestHeader)
Feed the request header into this ctx.
Sourcepub fn response_header_filter(&mut self, resp: &mut ResponseHeader, end: bool)
pub fn response_header_filter(&mut self, resp: &mut ResponseHeader, end: bool)
Feed the response header into this ctx
Sourcepub fn response_body_filter(
&mut self,
data: Option<&Bytes>,
end: bool,
) -> Option<Bytes>
pub fn response_body_filter( &mut self, data: Option<&Bytes>, end: bool, ) -> Option<Bytes>
Stream the response body chunks into this ctx. The return value will be the compressed data
Return None if the compressed is not enabled
Sourcepub fn response_filter(&mut self, t: &mut HttpTask)
pub fn response_filter(&mut self, t: &mut HttpTask)
Feed the response into this ctx. This filter will mutate the response accordingly if encoding is needed.