summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris McDonough <chrism@plope.com>2010-12-07 19:44:17 -0500
committerChris McDonough <chrism@plope.com>2010-12-07 19:44:17 -0500
commitad493deb36497518f982ab50a2ffb88803b96949 (patch)
tree383953679cf3c65db8b28d4253cb44fc416d6494
parent14965d6144bdee75cfe0c15087d5ce7389374941 (diff)
downloadpyramid-ad493deb36497518f982ab50a2ffb88803b96949.tar.gz
pyramid-ad493deb36497518f982ab50a2ffb88803b96949.tar.bz2
pyramid-ad493deb36497518f982ab50a2ffb88803b96949.zip
reimplement with_package in terms of with_context
-rw-r--r--pyramid/configuration.py15
1 files changed, 5 insertions, 10 deletions
diff --git a/pyramid/configuration.py b/pyramid/configuration.py
index cba44ad7f..2135c6d57 100644
--- a/pyramid/configuration.py
+++ b/pyramid/configuration.py
@@ -239,7 +239,6 @@ class Configurator(object):
renderer_globals_factory=None,
default_permission=None,
session_factory=None,
- _ctx=None,
):
if package is None:
package = caller_package()
@@ -248,14 +247,11 @@ class Configurator(object):
self.package_name = name_resolver.package_name
self.package = name_resolver.package
self.registry = registry
- if _ctx is None:
- _ctx = self._make_context()
- _ctx.registry = registry
- self._ctx = _ctx
+ self._ctx = self._make_context()
if registry is None:
registry = Registry(self.package_name)
self.registry = registry
- _ctx.registry = registry
+ self._ctx.registry = registry
self.setup_registry(
settings=settings,
root_factory=root_factory,
@@ -409,10 +405,9 @@ class Configurator(object):
``package`` argument to the new configurator. ``package`` may
be an actual Python package object or a Python dotted name
representing a package."""
- if _ctx is None:
- _ctx = self._ctx
- return self.__class__(registry=self.registry, package=package,
- _ctx=_ctx)
+ context = GroupingContextDecorator(self._ctx)
+ context.package = package
+ return Configurator.with_context(context)
def maybe_dotted(self, dotted):
""" Resolve the :term:`dotted Python name` ``dotted`` to a