Struct swagger::drop_context::DropContextMakeService
source · pub struct DropContextMakeService<T, C>where
C: Send + 'static,{ /* private fields */ }
Expand description
Middleware wrapper service that drops the context from the incoming request
and passes the plain hyper::Request
to the wrapped service.
This service can be used to to include services that take a plain hyper::Request
in a CompositeService
wrapped in an AddContextService
.
Example Usage
In the following example SwaggerService
implements hyper::service::MakeService
with Request = (hyper::Request, SomeContext)
, and PlainService
implements it
with Request = hyper::Request
ⓘ
let swagger_service_one = SwaggerService::new();
let swagger_service_two = SwaggerService::new();
let plain_service = PlainService::new();
let mut composite_new_service = CompositeMakeService::new();
composite_new_service.push(("/base/path/1", swagger_service_one));
composite_new_service.push(("/base/path/2", swagger_service_two));
composite_new_service.push(("/base/path/3", DropContextMakeService::new(plain_service)));
Implementations§
Trait Implementations§
source§impl<Inner, Context, Target> Service<Target> for DropContextMakeService<Inner, Context>where
Context: Send + 'static,
Inner: Service<Target>,
Inner::Future: Send + 'static,
impl<Inner, Context, Target> Service<Target> for DropContextMakeService<Inner, Context>where Context: Send + 'static, Inner: Service<Target>, Inner::Future: Send + 'static,
§type Response = DropContextService<<Inner as Service<Target>>::Response, Context>
type Response = DropContextService<<Inner as Service<Target>>::Response, Context>
Responses given by the service.
§type Future = Pin<Box<dyn Future<Output = Result<<DropContextMakeService<Inner, Context> as Service<Target>>::Response, <DropContextMakeService<Inner, Context> as Service<Target>>::Error>> + Send, Global>>
type Future = Pin<Box<dyn Future<Output = Result<<DropContextMakeService<Inner, Context> as Service<Target>>::Response, <DropContextMakeService<Inner, Context> as Service<Target>>::Error>> + Send, Global>>
The future response value.
Auto Trait Implementations§
impl<T, C> RefUnwindSafe for DropContextMakeService<T, C>where C: RefUnwindSafe, T: RefUnwindSafe,
impl<T, C> Send for DropContextMakeService<T, C>where T: Send,
impl<T, C> Sync for DropContextMakeService<T, C>where C: Sync, T: Sync,
impl<T, C> Unpin for DropContextMakeService<T, C>where C: Unpin, T: Unpin,
impl<T, C> UnwindSafe for DropContextMakeService<T, C>where C: UnwindSafe, T: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more