From a0423aedb4abaf12b4008c0b229ec0ecad4ddfd8 Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Thu, 31 Jul 2008 06:17:31 +0000 Subject: - Add event sends for INewRequest and INewResponse. See the events.rst chapter in the documentation's ``api`` directory. --- repoze/bfg/router.py | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'repoze/bfg/router.py') diff --git a/repoze/bfg/router.py b/repoze/bfg/router.py index d889c15a0..0333c8a99 100644 --- a/repoze/bfg/router.py +++ b/repoze/bfg/router.py @@ -1,12 +1,15 @@ from zope.component import getMultiAdapter from zope.component import queryMultiAdapter from zope.component import queryUtility +from zope.component.event import dispatch from zope.interface import directlyProvides from webob import Request from webob.exc import HTTPNotFound from webob.exc import HTTPUnauthorized +from repoze.bfg.events import NewRequest +from repoze.bfg.events import NewResponse from repoze.bfg.interfaces import ITraverserFactory from repoze.bfg.interfaces import IView from repoze.bfg.interfaces import IViewPermission @@ -28,6 +31,7 @@ class Router: registry_manager.set(self.registry) request = Request(environ) directlyProvides(request, IRequest) + dispatch(NewRequest(request)) root = self.root_policy(environ) traverser = getMultiAdapter((root, request), ITraverserFactory) context, name, subpath = traverser(environ) @@ -55,6 +59,8 @@ class Router: if not isResponse(response): raise ValueError('response was not IResponse: %s' % response) + dispatch(NewResponse(response)) + start_response(response.status, response.headerlist) return response.app_iter -- cgit v1.2.3