Struct ntex_service::dev::FnServiceFactory
source · [−]pub struct FnServiceFactory<F, Fut, Req, Res, Err, Cfg, FShut = fn()> where
F: Fn(Req) -> Fut,
Fut: Future<Output = Result<Res, Err>>, { /* private fields */ }Implementations
sourceimpl<F, Fut, Req, Res, Err, Cfg> FnServiceFactory<F, Fut, Req, Res, Err, Cfg> where
F: Fn(Req) -> Fut + Clone,
Fut: Future<Output = Result<Res, Err>>,
impl<F, Fut, Req, Res, Err, Cfg> FnServiceFactory<F, Fut, Req, Res, Err, Cfg> where
F: Fn(Req) -> Fut + Clone,
Fut: Future<Output = Result<Res, Err>>,
sourcepub fn on_shutdown<FShut>(
self,
f: FShut
) -> FnServiceFactory<F, Fut, Req, Res, Err, Cfg, FShut> where
FShut: FnOnce(),
pub fn on_shutdown<FShut>(
self,
f: FShut
) -> FnServiceFactory<F, Fut, Req, Res, Err, Cfg, FShut> where
FShut: FnOnce(),
Set function that get called oin poll_shutdown method of Service trait.
Trait Implementations
sourceimpl<F, Fut, Req, Res, Err, Cfg, FShut> Clone for FnServiceFactory<F, Fut, Req, Res, Err, Cfg, FShut> where
F: Fn(Req) -> Fut + Clone,
FShut: FnOnce() + Clone,
Fut: Future<Output = Result<Res, Err>>,
impl<F, Fut, Req, Res, Err, Cfg, FShut> Clone for FnServiceFactory<F, Fut, Req, Res, Err, Cfg, FShut> where
F: Fn(Req) -> Fut + Clone,
FShut: FnOnce() + Clone,
Fut: Future<Output = Result<Res, Err>>,
sourceimpl<F, Fut, Req, Res, Err, Cfg> IntoServiceFactory<FnServiceFactory<F, Fut, Req, Res, Err, Cfg, fn()>, Req, Cfg> for F where
F: Fn(Req) -> Fut + Clone,
Fut: Future<Output = Result<Res, Err>>,
impl<F, Fut, Req, Res, Err, Cfg> IntoServiceFactory<FnServiceFactory<F, Fut, Req, Res, Err, Cfg, fn()>, Req, Cfg> for F where
F: Fn(Req) -> Fut + Clone,
Fut: Future<Output = Result<Res, Err>>,
sourcefn into_factory(self) -> FnServiceFactory<F, Fut, Req, Res, Err, Cfg>
fn into_factory(self) -> FnServiceFactory<F, Fut, Req, Res, Err, Cfg>
Convert Self to a ServiceFactory
sourceimpl<F, Fut, Req, Res, Err, FShut> Service<Req> for FnServiceFactory<F, Fut, Req, Res, Err, (), FShut> where
F: Fn(Req) -> Fut,
FShut: FnOnce(),
Fut: Future<Output = Result<Res, Err>>,
impl<F, Fut, Req, Res, Err, FShut> Service<Req> for FnServiceFactory<F, Fut, Req, Res, Err, (), FShut> where
F: Fn(Req) -> Fut,
FShut: FnOnce(),
Fut: Future<Output = Result<Res, Err>>,
type Response = Res
type Response = Res
Responses given by the service.
type Error = Err
type Error = Err
Errors produced by the service.
type Future = Fut
type Future = Fut
The future response value.
sourcefn poll_ready(&self, _: &mut Context<'_>) -> Poll<Result<(), Self::Error>>
fn poll_ready(&self, _: &mut Context<'_>) -> Poll<Result<(), Self::Error>>
Returns Ready when the service is able to process requests. Read more
sourcefn call(&self, req: Req) -> Self::Future
fn call(&self, req: Req) -> Self::Future
Process the request and return the response asynchronously. Read more
sourceimpl<F, Fut, Req, Res, Err, Cfg, FShut> ServiceFactory<Req, Cfg> for FnServiceFactory<F, Fut, Req, Res, Err, Cfg, FShut> where
F: Fn(Req) -> Fut + Clone,
FShut: FnOnce() + Clone,
Fut: Future<Output = Result<Res, Err>>,
impl<F, Fut, Req, Res, Err, Cfg, FShut> ServiceFactory<Req, Cfg> for FnServiceFactory<F, Fut, Req, Res, Err, Cfg, FShut> where
F: Fn(Req) -> Fut + Clone,
FShut: FnOnce() + Clone,
Fut: Future<Output = Result<Res, Err>>,
type Response = Res
type Response = Res
Responses given by the service
type Error = Err
type Error = Err
Errors produced by the service
type Future = Ready<Result<<FnServiceFactory<F, Fut, Req, Res, Err, Cfg, FShut> as ServiceFactory<Req, Cfg>>::Service, <FnServiceFactory<F, Fut, Req, Res, Err, Cfg, FShut> as ServiceFactory<Req, Cfg>>::InitError>>
type Future = Ready<Result<<FnServiceFactory<F, Fut, Req, Res, Err, Cfg, FShut> as ServiceFactory<Req, Cfg>>::Service, <FnServiceFactory<F, Fut, Req, Res, Err, Cfg, FShut> as ServiceFactory<Req, Cfg>>::InitError>>
The future of the ServiceFactory instance.
sourcefn new_service(&self, _: Cfg) -> Self::Future
fn new_service(&self, _: Cfg) -> Self::Future
Create and return a new service value asynchronously.
sourcefn map<F, Res>(self, f: F) -> MapServiceFactory<Self, F, Req, Res, Cfg> where
Self: Sized,
F: FnMut(Self::Response) -> Res + Clone,
fn map<F, Res>(self, f: F) -> MapServiceFactory<Self, F, Req, Res, Cfg> where
Self: Sized,
F: FnMut(Self::Response) -> Res + Clone,
Map this service’s output to a different type, returning a new service of the resulting type. Read more
sourcefn map_err<F, E>(self, f: F) -> MapErrServiceFactory<Self, Req, Cfg, F, E> where
Self: Sized,
F: Fn(Self::Error) -> E + Clone,
fn map_err<F, E>(self, f: F) -> MapErrServiceFactory<Self, Req, Cfg, F, E> where
Self: Sized,
F: Fn(Self::Error) -> E + Clone,
Map this service’s error to a different error, returning a new service.
sourcefn map_init_err<F, E>(self, f: F) -> MapInitErr<Self, Req, Cfg, F, E> where
Self: Sized,
F: Fn(Self::InitError) -> E + Clone,
fn map_init_err<F, E>(self, f: F) -> MapInitErr<Self, Req, Cfg, F, E> where
Self: Sized,
F: Fn(Self::InitError) -> E + Clone,
Map this factory’s init error to a different error, returning a new service.
Auto Trait Implementations
impl<F, Fut, Req, Res, Err, Cfg, FShut = fn()> !RefUnwindSafe for FnServiceFactory<F, Fut, Req, Res, Err, Cfg, FShut>
impl<F, Fut, Req, Res, Err, Cfg, FShut> Send for FnServiceFactory<F, Fut, Req, Res, Err, Cfg, FShut> where
Cfg: Send,
F: Send,
FShut: Send,
Req: Send,
impl<F, Fut, Req, Res, Err, Cfg, FShut = fn()> !Sync for FnServiceFactory<F, Fut, Req, Res, Err, Cfg, FShut>
impl<F, Fut, Req, Res, Err, Cfg, FShut> Unpin for FnServiceFactory<F, Fut, Req, Res, Err, Cfg, FShut> where
Cfg: Unpin,
F: Unpin,
FShut: Unpin,
Req: Unpin,
impl<F, Fut, Req, Res, Err, Cfg, FShut> UnwindSafe for FnServiceFactory<F, Fut, Req, Res, Err, Cfg, FShut> where
Cfg: UnwindSafe,
F: UnwindSafe,
FShut: UnwindSafe,
Req: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T, Req> IntoService<T, Req> for T where
T: Service<Req>,
impl<T, Req> IntoService<T, Req> for T where
T: Service<Req>,
sourcefn into_service(self) -> T
fn into_service(self) -> T
Convert to a Service
sourceimpl<T, Req, Cfg> IntoServiceFactory<T, Req, Cfg> for T where
T: ServiceFactory<Req, Cfg>,
impl<T, Req, Cfg> IntoServiceFactory<T, Req, Cfg> for T where
T: ServiceFactory<Req, Cfg>,
sourcefn into_factory(self) -> T
fn into_factory(self) -> T
Convert Self to a ServiceFactory