[][src]Trait actix_service::Transform

pub trait Transform<S> {
    type Request;
    type Response;
    type Error;
    type Transform: Service<Request = Self::Request, Response = Self::Response, Error = Self::Error>;
    type InitError;
    type Future: Future<Output = Result<Self::Transform, Self::InitError>>;
    fn new_transform(&self, service: S) -> Self::Future;
}

The Transform trait defines the interface of a Service factory. Transform is often implemented for middleware, defining how to construct a middleware Service. A Service that is constructed by the factory takes the Service that follows it during execution as a parameter, assuming ownership of the next Service.

Associated Types

type Request

Requests handled by the service.

type Response

Responses given by the service.

type Error

Errors produced by the service.

type Transform: Service<Request = Self::Request, Response = Self::Response, Error = Self::Error>

The TransformService value created by this factory

type InitError

Errors produced while building a service.

type Future: Future<Output = Result<Self::Transform, Self::InitError>>

The future response value.

Loading content...

Required methods

fn new_transform(&self, service: S) -> Self::Future

Creates and returns a new Service component, asynchronously

Loading content...

Implementations on Foreign Types

impl<T, S> Transform<S> for Rc<T> where
    T: Transform<S>, 
[src]

type Request = T::Request

type Response = T::Response

type Error = T::Error

type InitError = T::InitError

type Transform = T::Transform

type Future = T::Future

impl<T, S> Transform<S> for Arc<T> where
    T: Transform<S>, 
[src]

type Request = T::Request

type Response = T::Response

type Error = T::Error

type InitError = T::InitError

type Transform = T::Transform

type Future = T::Future

Loading content...

Implementors

Loading content...