Trait tower_http::classify::ClassifyEos[][src]

pub trait ClassifyEos {
    type FailureClass;
    fn classify_eos(
        self,
        trailers: Option<&HeaderMap>
    ) -> Result<(), Self::FailureClass>;
fn classify_error<E>(self, error: &E) -> Self::FailureClass
    where
        E: Display + 'static
; }
Expand description

Trait for classifying end of streams (EOS) as either success or failure.

Associated Types

type FailureClass[src]

The type of failure classifications.

Required methods

fn classify_eos(
    self,
    trailers: Option<&HeaderMap>
) -> Result<(), Self::FailureClass>
[src]

Perform the classification from response trailers.

fn classify_error<E>(self, error: &E) -> Self::FailureClass where
    E: Display + 'static, 
[src]

Classify an error.

Errors are always errors (doh) but sometimes it might be useful to have multiple classes of errors. A retry policy might allow retrying some errors and not others.

Implementors

impl ClassifyEos for GrpcEosErrorsAsFailures[src]

type FailureClass = GrpcFailureClass

fn classify_eos(
    self,
    trailers: Option<&HeaderMap>
) -> Result<(), Self::FailureClass>
[src]

fn classify_error<E>(self, error: &E) -> Self::FailureClass where
    E: Display + 'static, 
[src]

impl<T> ClassifyEos for NeverClassifyEos<T>[src]

type FailureClass = T

fn classify_eos(
    self,
    _trailers: Option<&HeaderMap>
) -> Result<(), Self::FailureClass>
[src]

fn classify_error<E>(self, _error: &E) -> Self::FailureClass where
    E: Display + 'static, 
[src]