Update of /var/cvs/src/org/mmbase/util/xml
In directory james.mmbase.org:/tmp/cvs-serv22680

Modified Files:
      Tag: MMBase-1_8
        BuilderReader.java 
Log Message:
  MMB-1586


See also: http://cvs.mmbase.org/viewcvs/src/org/mmbase/util/xml
See also: http://www.mmbase.org/jira/browse/MMB-1586


Index: BuilderReader.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/util/xml/BuilderReader.java,v
retrieving revision 1.74.2.7
retrieving revision 1.74.2.8
diff -u -b -r1.74.2.7 -r1.74.2.8
--- BuilderReader.java  27 Jul 2007 14:35:23 -0000      1.74.2.7
+++ BuilderReader.java  28 Jan 2008 18:44:18 -0000      1.74.2.8
@@ -18,6 +18,7 @@
 import org.mmbase.core.util.Fields;
 import org.mmbase.datatypes.*;
 import org.mmbase.datatypes.util.xml.DataTypeReader;
+import org.mmbase.datatypes.util.xml.DependencyException;
 import org.mmbase.module.core.MMBase;
 import org.mmbase.module.core.MMObjectBuilder;
 import org.mmbase.storage.util.Index;
@@ -36,7 +37,7 @@
  * @author Rico Jansen
  * @author Pierre van Rooden
  * @author Michiel Meeuwissen
- * @version $Id: BuilderReader.java,v 1.74.2.7 2007/07/27 14:35:23 michiel Exp 
$
+ * @version $Id: BuilderReader.java,v 1.74.2.8 2008/01/28 18:44:18 michiel Exp 
$
  */
 public class BuilderReader extends DocumentReader {
 
@@ -160,8 +161,11 @@
             inheritanceResolved = true;
         } else {
             inheritanceResolved = false;
-            if (mmbase != null) {
+            if (buildername.equals(getElementAttributeValue("builder", 
"name"))) {
+
+            } else if (mmbase != null) {
                 parentBuilder = mmbase.getBuilder(buildername);
+            }
                 inheritanceResolved = (parentBuilder != null);
                 if (inheritanceResolved) { // fill inputPositions, 
searchPositions
                     Iterator fields = 
parentBuilder.getFields(NodeManager.ORDER_EDIT).iterator();
@@ -176,7 +180,6 @@
                     }
                 }
             }
-        }
         return inheritanceResolved;
     }
 
@@ -499,6 +502,8 @@
 
                 log.info("Found new function " + function + " for builder " + 
buil.getTableName());
                 results.add(function);
+            } catch (ClassNotFoundException cnfe) {
+                log.warn("No such class "  + cnfe.getMessage());
             } catch (Throwable e) {
                 log.error(e.getMessage(), e);
             }
@@ -704,7 +709,11 @@
                     requestedBaseDataType = baseDataType;
                 }
             }
+            try {
             dataType = (BasicDataType) 
DataTypeReader.readDataType(dataTypeElement, requestedBaseDataType, 
collector).dataType;
+            } catch (DependencyException de) {
+                dataType = de.fallback();
+            }
             if (log.isDebugEnabled()) log.debug("Found datatype " + dataType + 
" for field " + fieldName);
         }
 
@@ -900,7 +909,7 @@
      * @return the plural names in a Hashtable, accessible by language
      */
     public Hashtable getPluralNames() {
-        Hashtable results=new Hashtable();
+        Hashtable results = new Hashtable();
         for (Iterator iter = getChildElements("builder.names","plural"); 
iter.hasNext(); ) {
             Element tmp = (Element)iter.next();
             String lang = getElementAttributeValue(tmp,"xml:lang");
@@ -915,7 +924,7 @@
      * @return the singular names in a Hashtable, accessible by language
      */
     public Hashtable getSingularNames() {
-        Hashtable results=new Hashtable();
+        Hashtable results = new Hashtable();
         for (Iterator iter = getChildElements("builder.names","singular"); 
iter.hasNext(); ) {
             Element tmp = (Element)iter.next();
             String lang = getElementAttributeValue(tmp,"xml:lang");
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to