diff --git a/examples/middleware/Cargo.toml b/examples/middleware/Cargo.toml index 55bf481..d72e487 100644 --- a/examples/middleware/Cargo.toml +++ b/examples/middleware/Cargo.toml @@ -5,6 +5,6 @@ edition = "2018" [dependencies] ntex = { version = "0.7.2", features = ["tokio", "cookie"] } -ntex-session = { version = "0.2.0" } +ntex-session = { version = "0.3.0" } futures-util = { version = "0.3.7", default-features = false, features = ["std"] } -env_logger = "0.7" +env_logger = "0.10.0" diff --git a/examples/middleware/src/errorhandler.rs b/examples/middleware/src/errorhandler.rs index 9b1abf6..5f9fa2a 100644 --- a/examples/middleware/src/errorhandler.rs +++ b/examples/middleware/src/errorhandler.rs @@ -4,7 +4,7 @@ use ntex::http::header; use ntex::service::{Middleware, Service}; use ntex::util::BoxFuture; -use ntex::web; +use ntex::{web, ServiceCtx}; pub struct Error; @@ -31,9 +31,9 @@ where ntex::forward_poll_ready!(service); - fn call(&self, req: web::WebRequest) -> Self::Future<'_> { + fn call<'a>(&'a self, req: web::WebRequest, ctx: ServiceCtx<'a, Self>) -> Self::Future<'_> { Box::pin(async move { - self.service.call(req).await.map(|mut res| { + ctx.call(&self.service, req).await.map(|mut res| { let status = res.status(); if status.is_client_error() || status.is_server_error() { res.headers_mut().insert( diff --git a/examples/middleware/src/main.rs b/examples/middleware/src/main.rs index ef1cc83..84c2ec2 100644 --- a/examples/middleware/src/main.rs +++ b/examples/middleware/src/main.rs @@ -6,7 +6,7 @@ pub mod user_sessions; // use ntex::service::{Middleware, Service}; use ntex::util::BoxFuture; -use ntex::web; +use ntex::{web, ServiceCtx}; // There are two steps in middleware processing. // 1. Middleware initialization, middleware factory gets called with @@ -37,11 +37,10 @@ where ntex::forward_poll_ready!(service); - fn call(&self, req: web::WebRequest) -> Self::Future<'_> { + fn call<'a>(&'a self, req: web::WebRequest, ctx: ServiceCtx<'a, Self>) -> Self::Future<'_> { println!("Hi from start. You requested: {}", req.path()); - let fut = self.service.call(req); - + let fut = ctx.call(&self.service, req); Box::pin(async move { let res = fut.await?; diff --git a/examples/requests/Cargo.toml b/examples/requests/Cargo.toml index a567a16..cdae323 100644 --- a/examples/requests/Cargo.toml +++ b/examples/requests/Cargo.toml @@ -8,4 +8,4 @@ serde = "1.0" serde_json = "1.0" ntex = { version = "0.7.2", features = ["tokio"] } futures = "0.3.1" -ntex-multipart = "0.2.0" +ntex-multipart = "0.3.0" diff --git a/examples/static-files/Cargo.toml b/examples/static-files/Cargo.toml index 913878f..e67e4d2 100644 --- a/examples/static-files/Cargo.toml +++ b/examples/static-files/Cargo.toml @@ -5,5 +5,5 @@ edition = "2018" [dependencies] ntex = { version = "0.7.2", features = ["tokio"] } -ntex-files = "0.2.0" +ntex-files = "0.3.0" mime = "0.3"