1
0
mirror of https://github.com/fafhrd91/actix-web synced 2025-03-14 20:26:26 +01:00

34 lines
878 B
Rust
Raw Normal View History

use actix_service::{Service, ServiceFactory};
2021-04-01 15:26:13 +01:00
use actix_utils::future::{ready, Ready};
2019-04-05 16:46:44 -07:00
use crate::{Error, Request};
2019-04-05 16:46:44 -07:00
pub struct ExpectHandler;
impl ServiceFactory<Request> for ExpectHandler {
2019-04-05 16:46:44 -07:00
type Response = Request;
type Error = Error;
type Config = ();
2019-04-05 16:46:44 -07:00
type Service = ExpectHandler;
type InitError = Error;
type Future = Ready<Result<Self::Service, Self::InitError>>;
2019-04-05 16:46:44 -07:00
2020-12-23 01:28:17 +00:00
fn new_service(&self, _: Self::Config) -> Self::Future {
ready(Ok(ExpectHandler))
2019-04-05 16:46:44 -07:00
}
}
impl Service<Request> for ExpectHandler {
2019-04-05 16:46:44 -07:00
type Response = Request;
type Error = Error;
type Future = Ready<Result<Self::Response, Self::Error>>;
2019-04-05 16:46:44 -07:00
actix_service::always_ready!();
2019-04-05 16:46:44 -07:00
fn call(&self, req: Request) -> Self::Future {
2020-12-23 01:28:17 +00:00
ready(Ok(req))
// TODO: add some way to trigger error
// Err(error::ErrorExpectationFailed("test"))
2019-04-05 16:46:44 -07:00
}
}