# HG changeset patch # User Thierry Florac # Date 1521726214 -3600 # Node ID 3ac4eb0a2b8915b002b89d8843fe75a66340551a # Parent d90f8f91f8516ed9b275f7cf41b5a58fddaf1cd6 Updated site factory to use new factory interface diff -r d90f8f91f851 -r 3ac4eb0a2b89 src/pyams_utils/site.py --- a/src/pyams_utils/site.py Thu Mar 22 14:42:18 2018 +0100 +++ b/src/pyams_utils/site.py Thu Mar 22 14:43:34 2018 +0100 @@ -18,8 +18,8 @@ # import interfaces from pyams_utils.interfaces import PYAMS_APPLICATION_SETTINGS_KEY, PYAMS_APPLICATION_DEFAULT_NAME, \ PYAMS_APPLICATION_FACTORY_KEY -from pyams_utils.interfaces.site import ISiteRoot, INewLocalSiteCreatedEvent, ISiteUpgradeEvent, ISiteGenerations, \ - SITE_GENERATIONS_KEY, IConfigurationManager +from pyams_utils.interfaces.site import ISiteRoot, ISiteRootFactory, INewLocalSiteCreatedEvent, ISiteUpgradeEvent, \ + ISiteGenerations, SITE_GENERATIONS_KEY, IConfigurationManager from zope.annotation.interfaces import IAnnotations from zope.component.interfaces import IPossibleSite, ObjectEvent from zope.traversing.interfaces import ITraversable @@ -91,7 +91,7 @@ resolver = DottedNameResolver() factory = resolver.maybe_resolve(factory) else: - factory = BaseSiteRoot + factory = request.registry.queryUtility(ISiteRootFactory, default=BaseSiteRoot) application = root[application_key] = factory() if IPossibleSite.providedBy(application): sm = LocalSiteManager(application, default_folder=False)