[Checkins] SVN: megrok.icon/branches/utility-less/src/megrok/icon/ - Removed the registered and exists methods in favour of __contains__

Vincent Fretin vincent.fretin at gmail.com
Sat Jan 2 11:42:03 EST 2010


Log message for revision 107557:
  - Removed the registered and exists methods in favour of __contains__
  - Added a getIconsRegistry function
  

Changed:
  U   megrok.icon/branches/utility-less/src/megrok/icon/__init__.py
  U   megrok.icon/branches/utility-less/src/megrok/icon/directive.py
  U   megrok.icon/branches/utility-less/src/megrok/icon/meta.py
  U   megrok.icon/branches/utility-less/src/megrok/icon/registries_map.py
  U   megrok.icon/branches/utility-less/src/megrok/icon/registry.py
  U   megrok.icon/branches/utility-less/src/megrok/icon/utils.py

-=-
Modified: megrok.icon/branches/utility-less/src/megrok/icon/__init__.py
===================================================================
--- megrok.icon/branches/utility-less/src/megrok/icon/__init__.py	2010-01-02 14:40:20 UTC (rev 107556)
+++ megrok.icon/branches/utility-less/src/megrok/icon/__init__.py	2010-01-02 16:42:02 UTC (rev 107557)
@@ -21,7 +21,10 @@
 
 from megrok.icon.registries_map import _icons_registries_map
 from megrok.icon.registries_map import (
-    getIconsRegistriesMap, setIconsRegistriesMap, queryIconsRegistry)
+    getIconsRegistriesMap,
+    setIconsRegistriesMap,
+    getIconsRegistry,
+    queryIconsRegistry)
 
 from megrok.icon.directive import icon
 from megrok.icon.utils import (

Modified: megrok.icon/branches/utility-less/src/megrok/icon/directive.py
===================================================================
--- megrok.icon/branches/utility-less/src/megrok/icon/directive.py	2010-01-02 14:40:20 UTC (rev 107556)
+++ megrok.icon/branches/utility-less/src/megrok/icon/directive.py	2010-01-02 16:42:02 UTC (rev 107557)
@@ -24,7 +24,7 @@
     def factory(self, name, registry="common", path=None):
         mapping = getIconsRegistriesMap()
         if path is not None:
-            if not mapping.exists(registry):
+            if not registry in mapping:
                 reg = mapping.register(registry, IconsRegistry)
                 directlyProvides(reg, ITemporaryIconsRegistry)
             else:
@@ -33,7 +33,7 @@
             reg.add(name, icon_absolute_path(self.frame, path))
         else:
             reg = mapping.get(registry)
-            if not reg.registered(name):
+            if not name in reg:
                 raise ValueError, 'Icon %r does not exist' % name
 
         return (name, registry)

Modified: megrok.icon/branches/utility-less/src/megrok/icon/meta.py
===================================================================
--- megrok.icon/branches/utility-less/src/megrok/icon/meta.py	2010-01-02 14:40:20 UTC (rev 107556)
+++ megrok.icon/branches/utility-less/src/megrok/icon/meta.py	2010-01-02 16:42:02 UTC (rev 107557)
@@ -21,7 +21,7 @@
     def execute(self, factory, config, name, path, **kw):
 
         mapping = getIconsRegistriesMap()
-        if mapping.exists(name):
+        if name in mapping:
             registry = mapping.get(name)
             if ITemporaryIconsRegistry.providedBy(registry):
                 mapping.replace(name, factory)

Modified: megrok.icon/branches/utility-less/src/megrok/icon/registries_map.py
===================================================================
--- megrok.icon/branches/utility-less/src/megrok/icon/registries_map.py	2010-01-02 14:40:20 UTC (rev 107556)
+++ megrok.icon/branches/utility-less/src/megrok/icon/registries_map.py	2010-01-02 16:42:02 UTC (rev 107557)
@@ -37,7 +37,7 @@
     def register(self, name, factory):
         return self._map.setdefault(name, factory(name))
 
-    def exists(self, name):
+    def __contains__(self, name):
         return name in self._map
 
 
@@ -52,14 +52,29 @@
     _icons_registries_map = registries_map
 
 
-def clearIconsRegistriesMap():
+def _clearIconsRegistriesMap():
     global _icons_registries_map
     _icons_registries_map = None
 
 
+def getIconsRegistry(name):
+    mapping = getIconsRegistriesMap()
+    return mapping.get(name)
+
+
 def queryIconsRegistry(name):
     mapping = getIconsRegistriesMap()
     try:
         return mapping.get(name)
     except IconsRegistryError:
         return None
+
+
+try:
+    from zope.testing.cleanup import addCleanUp
+except ImportError:
+    # don't have that part of Zope
+    pass
+else:
+    addCleanUp(_clearIconsRegistriesMap)
+    del addCleanUp

Modified: megrok.icon/branches/utility-less/src/megrok/icon/registry.py
===================================================================
--- megrok.icon/branches/utility-less/src/megrok/icon/registry.py	2010-01-02 14:40:20 UTC (rev 107556)
+++ megrok.icon/branches/utility-less/src/megrok/icon/registry.py	2010-01-02 16:42:02 UTC (rev 107557)
@@ -26,7 +26,7 @@
     subregistries = FieldProperty(IIconsRegistry['subregistries'])
     
     def add(self, name, path):
-        if self.registered(name):
+        if name in self:
             log.warning(
                 "Skipping %s (%r): already in registry" % (name, path))
             return False
@@ -37,7 +37,7 @@
         else:
             print "skipping %s (%s) [WRONG MIMETYPE]" % (path, mimetype)
 
-    def registered(self, name):
+    def __contains__(self, name):
         return name in self.registry
 
     def get(self, name):

Modified: megrok.icon/branches/utility-less/src/megrok/icon/utils.py
===================================================================
--- megrok.icon/branches/utility-less/src/megrok/icon/utils.py	2010-01-02 14:40:20 UTC (rev 107556)
+++ megrok.icon/branches/utility-less/src/megrok/icon/utils.py	2010-01-02 16:42:02 UTC (rev 107557)
@@ -4,7 +4,7 @@
 import grokcore.component as grok
 
 import megrok.icon
-from megrok.icon import getIconsRegistriesMap, queryIconsRegistry
+from megrok.icon import getIconsRegistry, queryIconsRegistry
 from zope.component import queryUtility
 from zope.traversing.browser.absoluteurl import absoluteURL
 
@@ -16,17 +16,16 @@
 
 def get_component_icon_url(component, request):
     icon, reg_name = megrok.icon.icon.bind().get(component)
-    mapping = getIconsRegistriesMap()
     registry = queryIconsRegistry(reg_name)
 
     if registry is not None:
-        if registry.registered(icon):
+        if icon in registry:
             return get_icon_url(registry, request, icon)
     return None
 
 
 def populate_icons_registry(name, path):
-    registry = getIconsRegistriesMap().get(name)
+    registry = getIconsRegistry(name)
     
     if not os.path.isdir(path):
         path = os.path.join(os.path.dirname(__file__), path)



More information about the checkins mailing list