pub struct Condition<T> { /* private fields */ }
Expand description
Middleware for conditionally enabling other middleware.
§Examples
use actix_web::middleware::{Condition, NormalizePath};
use actix_web::App;
let enable_normalize = std::env::var("NORMALIZE_PATH").is_ok();
let app = App::new()
.wrap(Condition::new(enable_normalize, NormalizePath::default()));
Implementations§
Trait Implementations§
source§impl<S, T, Req, BE, BD, Err> Transform<S, Req> for Condition<T>where
S: Service<Req, Response = ServiceResponse<BD>, Error = Err> + 'static,
T: Transform<S, Req, Response = ServiceResponse<BE>, Error = Err>,
T::Future: 'static,
T::InitError: 'static,
T::Transform: 'static,
impl<S, T, Req, BE, BD, Err> Transform<S, Req> for Condition<T>where
S: Service<Req, Response = ServiceResponse<BD>, Error = Err> + 'static,
T: Transform<S, Req, Response = ServiceResponse<BE>, Error = Err>,
T::Future: 'static,
T::InitError: 'static,
T::Transform: 'static,
source§type Response = ServiceResponse<EitherBody<BE, BD>>
type Response = ServiceResponse<EitherBody<BE, BD>>
Responses produced by the service.
source§type Transform = ConditionMiddleware<<T as Transform<S, Req>>::Transform, S>
type Transform = ConditionMiddleware<<T as Transform<S, Req>>::Transform, S>
The
TransformService
value created by this factorysource§type InitError = <T as Transform<S, Req>>::InitError
type InitError = <T as Transform<S, Req>>::InitError
Errors produced while building a transform service.
source§type Future = Pin<Box<dyn Future<Output = Result<<Condition<T> as Transform<S, Req>>::Transform, <Condition<T> as Transform<S, Req>>::InitError>>>>
type Future = Pin<Box<dyn Future<Output = Result<<Condition<T> as Transform<S, Req>>::Transform, <Condition<T> as Transform<S, Req>>::InitError>>>>
The future response value.
source§fn new_transform(&self, service: S) -> Self::Future
fn new_transform(&self, service: S) -> Self::Future
Creates and returns a new Transform component, asynchronously
Auto Trait Implementations§
impl<T> Freeze for Condition<T>where
T: Freeze,
impl<T> RefUnwindSafe for Condition<T>where
T: RefUnwindSafe,
impl<T> Send for Condition<T>where
T: Send,
impl<T> Sync for Condition<T>where
T: Sync,
impl<T> Unpin for Condition<T>where
T: Unpin,
impl<T> UnwindSafe for Condition<T>where
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