summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Merickel <michael@merickel.org>2017-06-12 01:07:57 -0500
committerMichael Merickel <michael@merickel.org>2017-06-12 01:07:57 -0500
commit72ca1352493ef5b9113090598608da0c0d49389a (patch)
treeb793c72b84cf8dbccd5bdfd76efc744581d6c93f
parentcdd0a86b46ecf0a16403ccf780c87f2c938b3e0c (diff)
downloadpyramid-72ca1352493ef5b9113090598608da0c0d49389a.tar.gz
pyramid-72ca1352493ef5b9113090598608da0c0d49389a.tar.bz2
pyramid-72ca1352493ef5b9113090598608da0c0d49389a.zip
apply request extensions within invoke_subrequest itself
-rw-r--r--pyramid/router.py29
1 files changed, 19 insertions, 10 deletions
diff --git a/pyramid/router.py b/pyramid/router.py
index 7f3f9fbea..a02ff1715 100644
--- a/pyramid/router.py
+++ b/pyramid/router.py
@@ -192,13 +192,21 @@ class Router(object):
"""
request.registry = self.registry
request.invoke_subrequest = self.invoke_subrequest
- return self.invoke_request(
- request,
- _use_tweens=use_tweens,
- _apply_extensions=True,
- )
+ extensions = self.request_extensions
+ if extensions is not None:
+ apply_request_extensions(request, extensions=extensions)
+ return self.invoke_request(request, _use_tweens=use_tweens)
def make_request(self, environ):
+ """
+ Configure a request object for use by the router.
+
+ The request is created using the configured
+ :class:`pyramid.interfaces.IRequestFactory` and will have any
+ configured request methods / properties added that were set by
+ :meth:`pyramid.config.Configurator.add_request_method`.
+
+ """
request = self.request_factory(environ)
request.registry = self.registry
request.invoke_subrequest = self.invoke_subrequest
@@ -207,8 +215,12 @@ class Router(object):
apply_request_extensions(request, extensions=extensions)
return request
- def invoke_request(self, request,
- _use_tweens=True, _apply_extensions=False):
+ def invoke_request(self, request, _use_tweens=True):
+ """
+ Execute a request through the request processing pipeline and
+ return the generated response.
+
+ """
registry = self.registry
has_listeners = self.registry.has_listeners
notify = self.registry.notify
@@ -224,9 +236,6 @@ class Router(object):
try:
try:
- extensions = self.request_extensions
- if _apply_extensions and extensions is not None:
- apply_request_extensions(request, extensions=extensions)
response = handle_request(request)
if request.response_callbacks: