1
0
mirror of https://github.com/actix/actix-extras.git synced 2024-11-30 18:34:36 +01:00

rename .p to a .filter

This commit is contained in:
Nikolay Kim 2018-03-01 18:32:31 -08:00
parent 5b6d7cddbf
commit 4e13505b92
5 changed files with 23 additions and 15 deletions

View File

@ -2,6 +2,8 @@
## 0.4.1 (2018-03-01) ## 0.4.1 (2018-03-01)
* Rename `Route::p()` to `Route::filter()`
* Fix payload parse in situation when socket data is not ready. * Fix payload parse in situation when socket data is not ready.
* Fix Session mutable borrow lifetime #87 * Fix Session mutable borrow lifetime #87

View File

@ -68,8 +68,8 @@ fn main() {
Application::new() Application::new()
.resource("/path", |resource| .resource("/path", |resource|
resource.route() resource.route()
.p(pred::Get()) .filter(pred::Get())
.p(pred::Header("content-type", "text/plain")) .filter(pred::Header("content-type", "text/plain"))
.f(|req| HTTPOk) .f(|req| HTTPOk)
) )
.finish(); .finish();
@ -85,7 +85,7 @@ If resource can not match any route "NOT FOUND" response get returned.
[*Route*](../actix_web/struct.Route.html) object. Route can be configured with [*Route*](../actix_web/struct.Route.html) object. Route can be configured with
builder-like pattern. Following configuration methods are available: builder-like pattern. Following configuration methods are available:
* [*Route::p()*](../actix_web/struct.Route.html#method.p) method registers new predicate, * [*Route::filter()*](../actix_web/struct.Route.html#method.filter) method registers new predicate,
any number of predicates could be registered for each route. any number of predicates could be registered for each route.
* [*Route::f()*](../actix_web/struct.Route.html#method.f) method registers handler function * [*Route::f()*](../actix_web/struct.Route.html#method.f) method registers handler function
@ -502,7 +502,7 @@ fn main() {
Application::new() Application::new()
.resource("/index.html", |r| .resource("/index.html", |r|
r.route() r.route()
.p(ContentTypeHeader) .filter(ContentTypeHeader)
.h(HTTPOk)); .h(HTTPOk));
} }
``` ```
@ -530,7 +530,7 @@ fn main() {
Application::new() Application::new()
.resource("/index.html", |r| .resource("/index.html", |r|
r.route() r.route()
.p(pred::Not(pred::Get())) .filter(pred::Not(pred::Get()))
.f(|req| HTTPMethodNotAllowed)) .f(|req| HTTPMethodNotAllowed))
.finish(); .finish();
} }
@ -568,7 +568,7 @@ fn main() {
Application::new() Application::new()
.default_resource(|r| { .default_resource(|r| {
r.method(Method::GET).f(|req| HTTPNotFound); r.method(Method::GET).f(|req| HTTPNotFound);
r.route().p(pred::Not(pred::Get())).f(|req| HTTPMethodNotAllowed); r.route().filter(pred::Not(pred::Get())).f(|req| HTTPMethodNotAllowed);
}) })
# .finish(); # .finish();
} }

View File

@ -28,7 +28,7 @@ pub trait Predicate<S> {
/// fn main() { /// fn main() {
/// Application::new() /// Application::new()
/// .resource("/index.html", |r| r.route() /// .resource("/index.html", |r| r.route()
/// .p(pred::Any(pred::Get()).or(pred::Post())) /// .filter(pred::Any(pred::Get()).or(pred::Post()))
/// .h(HTTPMethodNotAllowed)); /// .h(HTTPMethodNotAllowed));
/// } /// }
/// ``` /// ```
@ -71,7 +71,7 @@ impl<S: 'static> Predicate<S> for AnyPredicate<S> {
/// fn main() { /// fn main() {
/// Application::new() /// Application::new()
/// .resource("/index.html", |r| r.route() /// .resource("/index.html", |r| r.route()
/// .p(pred::All(pred::Get()) /// .filter(pred::All(pred::Get())
/// .and(pred::Header("content-type", "plain/text"))) /// .and(pred::Header("content-type", "plain/text")))
/// .h(HTTPMethodNotAllowed)); /// .h(HTTPMethodNotAllowed));
/// } /// }

View File

@ -81,8 +81,8 @@ impl<S: 'static> Resource<S> {
/// let app = Application::new() /// let app = Application::new()
/// .resource( /// .resource(
/// "/", |r| r.route() /// "/", |r| r.route()
/// .p(pred::Any(pred::Get()).or(pred::Put())) /// .filter(pred::Any(pred::Get()).or(pred::Put()))
/// .p(pred::Header("Content-Type", "text/plain")) /// .filter(pred::Header("Content-Type", "text/plain"))
/// .f(|r| HttpResponse::Ok())) /// .f(|r| HttpResponse::Ok()))
/// .finish(); /// .finish();
/// } /// }
@ -97,11 +97,11 @@ impl<S: 'static> Resource<S> {
/// This is shortcut for: /// This is shortcut for:
/// ///
/// ```rust,ignore /// ```rust,ignore
/// Resource::resource("/", |r| r.route().p(pred::Get()).f(index) /// Resource::resource("/", |r| r.route().filter(pred::Get()).f(index)
/// ``` /// ```
pub fn method(&mut self, method: Method) -> &mut Route<S> { pub fn method(&mut self, method: Method) -> &mut Route<S> {
self.routes.push(Route::default()); self.routes.push(Route::default());
self.routes.last_mut().unwrap().p(pred::Method(method)) self.routes.last_mut().unwrap().filter(pred::Method(method))
} }
/// Register a new route and add handler object. /// Register a new route and add handler object.

View File

@ -65,18 +65,24 @@ impl<S: 'static> Route<S> {
/// Application::new() /// Application::new()
/// .resource("/path", |r| /// .resource("/path", |r|
/// r.route() /// r.route()
/// .p(pred::Get()) /// .filter(pred::Get())
/// .p(pred::Header("content-type", "text/plain")) /// .filter(pred::Header("content-type", "text/plain"))
/// .f(|req| HTTPOk) /// .f(|req| HTTPOk)
/// ) /// )
/// # .finish(); /// # .finish();
/// # } /// # }
/// ``` /// ```
pub fn p<T: Predicate<S> + 'static>(&mut self, p: T) -> &mut Self { pub fn filter<T: Predicate<S> + 'static>(&mut self, p: T) -> &mut Self {
self.preds.push(Box::new(p)); self.preds.push(Box::new(p));
self self
} }
#[doc(hidden)]
#[deprecated(since="0.4.1", note="please use `.filter()` instead")]
pub fn p<T: Predicate<S> + 'static>(&mut self, p: T) -> &mut Self {
self.filter(p)
}
/// Set handler object. Usually call to this method is last call /// Set handler object. Usually call to this method is last call
/// during route configuration, because it does not return reference to self. /// during route configuration, because it does not return reference to self.
pub fn h<H: Handler<S>>(&mut self, handler: H) { pub fn h<H: Handler<S>>(&mut self, handler: H) {