Trait ntex::ServiceFactory[][src]

pub trait ServiceFactory {
    type Request;
    type Response;
    type Error;
    type Config;
    type Service: Service;
    type InitError;
    type Future: Future;
    fn new_service(&self, cfg: Self::Config) -> Self::Future;

    fn map<F, R>(self, f: F) -> MapServiceFactory<Self, F, R>
    where
        F: FnMut(Self::Response) -> R + Clone
, { ... }
fn map_err<F, E>(self, f: F) -> MapErrServiceFactory<Self, F, E>
    where
        F: Fn(Self::Error) -> E + Clone
, { ... }
fn map_init_err<F, E>(self, f: F) -> MapInitErr<Self, F, E>
    where
        F: Fn(Self::InitError) -> E + Clone
, { ... } }
Expand description

Creates new Service values.

Acts as a service factory. This is useful for cases where new Service values must be produced. One case is a TCP server listener. The listener accepts new TCP streams, obtains a new Service value using the ServiceFactory trait, and uses that new Service value to process inbound requests on that new TCP stream.

Config is a service factory configuration type.

Associated Types

Requests handled by the service.

Responses given by the service

Errors produced by the service

Service factory configuration

The Service value created by this factory

Errors produced while building a service.

The future of the ServiceFactory instance.

Required methods

Create and return a new service value asynchronously.

Provided methods

Map this service’s output to a different type, returning a new service of the resulting type.

Map this service’s error to a different error, returning a new service.

Map this factory’s init error to a different error, returning a new service.

Implementations on Foreign Types

Implementors