From: Alexandre Terrasa Date: Mon, 23 May 2016 20:52:36 +0000 (-0400) Subject: lib/popcorn: App uses pre / post middlewares X-Git-Url: http://nitlanguage.org lib/popcorn: App uses pre / post middlewares Signed-off-by: Alexandre Terrasa --- diff --git a/lib/popcorn/popcorn.nit b/lib/popcorn/popcorn.nit index 887c122..64e4459 100644 --- a/lib/popcorn/popcorn.nit +++ b/lib/popcorn/popcorn.nit @@ -48,12 +48,19 @@ redef class App redef fun answer(req, uri) do uri = uri.simplify_path var res = new HttpResponse(404) + for route, handler in pre_handlers do + handler.handle(route, uri, req, res) + end for route, handler in handlers do handler.handle(route, uri, req, res) + if res.sent then break end if not res.sent then res.send(error_tpl(res.status_code, res.status_message), 404) end + for route, handler in post_handlers do + handler.handle(route, uri, req, res) + end res.session = req.session return res end