[KSS-checkins] r44505 - kukit/kss.core/trunk/kss/core
hannosch at codespeak.net
hannosch at codespeak.net
Mon Jun 25 14:17:59 CEST 2007
Author: hannosch
Date: Mon Jun 25 14:17:57 2007
New Revision: 44505
Modified:
kukit/kss.core/trunk/kss/core/kssview.py
Log:
Added the five.lsm conditional code. Part of it is commented as it doesn't seem to work :(
Modified: kukit/kss.core/trunk/kss/core/kssview.py
==============================================================================
--- kukit/kss.core/trunk/kss/core/kssview.py (original)
+++ kukit/kss.core/trunk/kss/core/kssview.py Mon Jun 25 14:17:57 2007
@@ -41,13 +41,19 @@
from zope import component, interface, event
from zope.interface.adapter import VerifyingAdapterRegistry
-from zope.component import getSiteManager
from zope.component.globalregistry import BaseGlobalComponents
-from zope.component.interfaces import IComponentLookup, ComponentLookupError
from zope.component.interfaces import IObjectEvent
from zope.app.component.interfaces import ISite
from zope.app.publication.zopepublication import BeforeTraverseEvent
+HAS_FIVE_LSM = True
+try:
+ from five.localsitemanager import registry
+ from zope.component.registry import UtilityRegistration
+except ImportError:
+ HAS_FIVE_LSM = False
+
+
class SiteViewComponents(BaseGlobalComponents):
def _init_registries(self):
@@ -55,8 +61,21 @@
# regular AdapterRegistry because it wants to do funny things
# with __bases__.
self.adapters = VerifyingAdapterRegistry()
+ # if HAS_FIVE_LSM:
+ # self.utilities.LookupClass = registry.FiveVerifyingAdapterLookup
+ # self.utilities._createLookup()
+ # self.utilities.__parent__ = self
+ # else:
self.utilities = VerifyingAdapterRegistry()
+ if HAS_FIVE_LSM:
+ def registeredUtilities(self):
+ for ((provided, name), (component, info)
+ ) in self._utility_registrations.iteritems():
+ yield UtilityRegistration(self, provided, name,
+ registry._wrap(component, self),
+ info)
+
class SiteView(BrowserView):
"""A browser view that is its own site
"""
@@ -68,6 +87,8 @@
next = component.getSiteManager()
self._sitemanager = SiteViewComponents('siteview')
self._sitemanager.__bases__ = (next, )
+ if HAS_FIVE_LSM:
+ self._sitemanager.__parent__ = self
# On Five, we should wrap it in the acquisition context
# see, if self has aq_parent, it is done obligatoraly
More information about the Kukit-checkins
mailing list