diff --git a/src/handler.rs b/src/handler.rs index 267c3f835..fa3e3f40f 100644 --- a/src/handler.rs +++ b/src/handler.rs @@ -15,7 +15,7 @@ use crate::responder::Responder; use crate::service::{ServiceRequest, ServiceResponse}; /// Async handler converter factory -pub trait Factory: Clone + 'static +pub trait Handler: Clone + 'static where R: Future, O: Responder, @@ -23,7 +23,7 @@ where fn call(&self, param: T) -> R; } -impl Factory<(), R, O> for F +impl Handler<(), R, O> for F where F: Fn() -> R + Clone + 'static, R: Future, @@ -38,7 +38,7 @@ where /// Extract arguments from request, run factory function and make response. pub struct HandlerService where - F: Factory, + F: Handler, T: FromRequest, R: Future, O: Responder, @@ -49,7 +49,7 @@ where impl HandlerService where - F: Factory, + F: Handler, T: FromRequest, R: Future, O: Responder, @@ -64,7 +64,7 @@ where impl Clone for HandlerService where - F: Factory, + F: Handler, T: FromRequest, R: Future, O: Responder, @@ -79,7 +79,7 @@ where impl ServiceFactory for HandlerService where - F: Factory, + F: Handler, T: FromRequest, R: Future, O: Responder, @@ -97,10 +97,10 @@ where } } -// Handler is both it's ServiceFactory and Service Type. +// Handler is both it's ServiceHandler and Service Type. impl Service for HandlerService where - F: Factory, + F: Handler, T: FromRequest, R: Future, O: Responder, @@ -125,7 +125,7 @@ where #[pin_project(project = HandlerProj)] pub enum HandlerServiceFuture where - F: Factory, + F: Handler, T: FromRequest, R: Future, O: Responder, @@ -137,7 +137,7 @@ where impl Future for HandlerServiceFuture where - F: Factory, + F: Handler, T: FromRequest, R: Future, O: Responder, @@ -181,7 +181,7 @@ where /// FromRequest trait impl for tuples macro_rules! factory_tuple ({ $(($n:tt, $T:ident)),+} => { - impl Factory<($($T,)+), Res, O> for Func + impl Handler<($($T,)+), Res, O> for Func where Func: Fn($($T,)+) -> Res + Clone + 'static, Res: Future, O: Responder, diff --git a/src/lib.rs b/src/lib.rs index b8346d966..8246c8286 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -121,7 +121,7 @@ pub mod dev { pub use crate::config::{AppConfig, AppService}; #[doc(hidden)] - pub use crate::handler::Factory; + pub use crate::handler::Handler; pub use crate::info::ConnectionInfo; pub use crate::rmap::ResourceMap; pub use crate::service::{ diff --git a/src/resource.rs b/src/resource.rs index dd9b23012..2f9d95571 100644 --- a/src/resource.rs +++ b/src/resource.rs @@ -17,7 +17,7 @@ use crate::data::Data; use crate::dev::{insert_slash, AppService, HttpServiceFactory, ResourceDef}; use crate::extract::FromRequest; use crate::guard::Guard; -use crate::handler::Factory; +use crate::handler::Handler; use crate::responder::Responder; use crate::route::{CreateRouteService, Route, RouteService}; use crate::service::{ServiceRequest, ServiceResponse}; @@ -229,7 +229,7 @@ where /// ``` pub fn to(mut self, handler: F) -> Self where - F: Factory, + F: Handler, I: FromRequest + 'static, R: Future + 'static, U: Responder + 'static, diff --git a/src/route.rs b/src/route.rs index 25790f500..04451017a 100644 --- a/src/route.rs +++ b/src/route.rs @@ -11,7 +11,7 @@ use futures_util::future::{ready, FutureExt, LocalBoxFuture}; use crate::extract::FromRequest; use crate::guard::{self, Guard}; -use crate::handler::{Factory, HandlerService}; +use crate::handler::{Handler, HandlerService}; use crate::responder::Responder; use crate::service::{ServiceRequest, ServiceResponse}; use crate::HttpResponse; @@ -221,7 +221,7 @@ impl Route { /// ``` pub fn to(mut self, handler: F) -> Self where - F: Factory, + F: Handler, T: FromRequest + 'static, R: Future + 'static, U: Responder + 'static, diff --git a/src/web.rs b/src/web.rs index bf2158917..463829fc3 100644 --- a/src/web.rs +++ b/src/web.rs @@ -9,7 +9,7 @@ pub use futures_channel::oneshot::Canceled; use crate::error::BlockingError; use crate::extract::FromRequest; -use crate::handler::Factory; +use crate::handler::Handler; use crate::resource::Resource; use crate::responder::Responder; use crate::route::Route; @@ -246,7 +246,7 @@ pub fn method(method: Method) -> Route { /// ``` pub fn to(handler: F) -> Route where - F: Factory, + F: Handler, I: FromRequest + 'static, R: Future + 'static, U: Responder + 'static,