From 49eccc078d13e1b6104f201f7e11ac31d8e024cf Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Wed, 8 Sep 2010 04:43:05 +0000 Subject: - Add an API to the ``Configurator`` named ``get_routes_mapper``. This returns an object implementing the ``IRoutesMapper`` interface. --- repoze/bfg/configuration.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'repoze/bfg/configuration.py') diff --git a/repoze/bfg/configuration.py b/repoze/bfg/configuration.py index 962ba8f25..5a97c4f38 100644 --- a/repoze/bfg/configuration.py +++ b/repoze/bfg/configuration.py @@ -1338,10 +1338,8 @@ class Configurator(object): _info=_info, ) - mapper = self.registry.queryUtility(IRoutesMapper) - if mapper is None: - mapper = RoutesMapper() - self.registry.registerUtility(mapper, IRoutesMapper) + mapper = self.get_routes_mapper() + factory = self.maybe_dotted(factory) if pattern is None: pattern = path @@ -1349,6 +1347,15 @@ class Configurator(object): raise ConfigurationError('"pattern" argument may not be None') return mapper.connect(name, pattern, factory, predicates=predicates) + def get_routes_mapper(self): + """ Return the :term:`routes mapper` object associated with + this configurator's :term:`registry`.""" + mapper = self.registry.queryUtility(IRoutesMapper) + if mapper is None: + mapper = RoutesMapper() + self.registry.registerUtility(mapper, IRoutesMapper) + return mapper + def scan(self, package=None, categories=None, _info=u''): """ Scan a Python package and any of its subpackages for objects marked with :term:`configuration decoration` such as -- cgit v1.2.3