Author: jmorliaguet
Date: Sat May 20 10:14:25 2006
New Revision: 3167

Modified:
   cpsskins/branches/paris-sprint-2006/setup/io/adapters.py
   cpsskins/branches/paris-sprint-2006/setup/manager.py

Log:

- raise an exception if a setting is not found

- resources are already stored in settings - they don't need to be added to 
  a container during XML imports



Modified: cpsskins/branches/paris-sprint-2006/setup/io/adapters.py
==============================================================================
--- cpsskins/branches/paris-sprint-2006/setup/io/adapters.py    (original)
+++ cpsskins/branches/paris-sprint-2006/setup/io/adapters.py    Sat May 20 
10:14:25 2006
@@ -183,7 +183,6 @@
                     value = archive[filename]
                 setattr(context, name, value)
 
-
         # child nodes
         for child_el in node.childNodes:
             if child_el.nodeType != Node.ELEMENT_NODE:
@@ -206,12 +205,13 @@
             # create the object
             element = createObject(factory_name)
 
-            # add it to the container
-            if IStorage.providedBy(context):
-                context.add(element, contentname)
-            else:
-                name = INameChooser(context).chooseName(contentname, element)
-                context[name] = element
+            if context.__parent__ is None:
+                if IStorage.providedBy(context):
+                    context.add(element, contentname)
+                else:
+                    namechooser = INameChooser(context)
+                    name = namechooser.chooseName(contentname, element)
+                    context[name] = element
 
             # load data into the object
             importer = getMultiAdapter((element, child_el), IDOMAdapter)

Modified: cpsskins/branches/paris-sprint-2006/setup/manager.py
==============================================================================
--- cpsskins/branches/paris-sprint-2006/setup/manager.py        (original)
+++ cpsskins/branches/paris-sprint-2006/setup/manager.py        Sat May 20 
10:14:25 2006
@@ -121,6 +121,8 @@
 
         if '@' in location:
             setting = self.lookup(uri, context)
+            if setting is None:
+                raise ValueError("No such setting: %s" % uri)
             resource = IResource(setting).getResource()
 
         elif ':' in location:
-- 
http://lists.nuxeo.com/mailman/listinfo/z3lab-checkins

Reply via email to