Author: jmorliaguet
Date: Sun May 21 22:39:24 2006
New Revision: 3189

Modified:
   cpsskins/branches/paris-sprint-2006/setup/traversal.py
   cpsskins/branches/paris-sprint-2006/standard/io/setting.py

Log:

- fix: clone the importer when importer settings

- added a traversal error if the setting does not exist



Modified: cpsskins/branches/paris-sprint-2006/setup/traversal.py
==============================================================================
--- cpsskins/branches/paris-sprint-2006/setup/traversal.py      (original)
+++ cpsskins/branches/paris-sprint-2006/setup/traversal.py      Sun May 21 
22:39:24 2006
@@ -19,7 +19,7 @@
 
 from zope.component import getUtility
 from zope.interface import implements
-from zope.traversing.interfaces import ITraversable
+from zope.traversing.interfaces import ITraversable, TraversalError
 
 from cpsskins.setup.interfaces import IResourceManager
 
@@ -34,5 +34,8 @@
     def traverse(self, name, ignored):
         resources = getUtility(IResourceManager)
         uri = u'cpsskins://[EMAIL PROTECTED]' % name
-        return resources.resolve(uri, context=self.context)
+        img = resources.resolve(uri, context=self.context)
+        if img is None:
+            raise TraversalError(self.context, name)
+        return img
 

Modified: cpsskins/branches/paris-sprint-2006/standard/io/setting.py
==============================================================================
--- cpsskins/branches/paris-sprint-2006/standard/io/setting.py  (original)
+++ cpsskins/branches/paris-sprint-2006/standard/io/setting.py  Sun May 21 
22:39:24 2006
@@ -70,6 +70,7 @@
         typename = node.getAttribute(u'type')
         resource = IResource(context).getResource()
         importer = getMultiAdapter((resource, node), IDOMAdapter)
+        importer.clone(self)
         importer.object_type = getResourceTypeName(typename)
         importer.load()
 
-- 
http://lists.nuxeo.com/mailman/listinfo/z3lab-checkins

Reply via email to