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

Modified Files:
        DataTypeDefinition.java 
Log Message:
MMB-1815


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


Index: DataTypeDefinition.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/datatypes/util/xml/DataTypeDefinition.java,v
retrieving revision 1.73
retrieving revision 1.74
diff -u -b -r1.73 -r1.74
--- DataTypeDefinition.java     27 Apr 2009 16:14:18 -0000      1.73
+++ DataTypeDefinition.java     30 Apr 2009 14:42:08 -0000      1.74
@@ -32,7 +32,7 @@
  *
  * @author Pierre van Rooden
  * @author Michiel Meeuwissen
- * @version $Id: DataTypeDefinition.java,v 1.73 2009/04/27 16:14:18 michiel 
Exp $
+ * @version $Id: DataTypeDefinition.java,v 1.74 2009/04/30 14:42:08 michiel 
Exp $
  * @since MMBase-1.8
  **/
 public class DataTypeDefinition {
@@ -236,48 +236,51 @@
      * @return whether successfully read the element.
      */
     protected boolean addCondition(Element childElement) {
-        boolean ret = false;
         String childTag = childElement.getLocalName();
         if ("property".equals(childTag)) {
-            ret = setProperty(childElement);
+            setProperty(childElement);
+            return true;
         } else if ("required".equals(childTag)) {
             boolean value = DataTypeXml.getBooleanValue(childElement, false);
             dataType.setRequired(value);
             setRestrictionData(dataType.getRequiredRestriction(), 
childElement);
-            ret = true;
+            return true;
         } else if ("unique".equals(childTag)) {
             boolean value = DataTypeXml.getBooleanValue(childElement, false);
             dataType.setUnique(value);
             setRestrictionData(dataType.getUniqueRestriction(), childElement);
-            ret = true;
+            return true;
         } else if ("getprocessor".equals(childTag)) {
             addProcessor(DataType.PROCESS_GET, childElement);
-            ret = true;
+            return true;
         } else if ("setprocessor".equals(childTag)) {
             addProcessor(DataType.PROCESS_SET, childElement);
-            ret = true;
+            return true;
         } else if ("commitprocessor".equals(childTag)) {
             addCommitProcessor(childElement);
-            ret = true;
+            return true;
+        } else if ("deleteprocessor".equals(childTag)) {
+            addDeleteProcessor(childElement);
+            return true;
         } else if ("enumeration".equals(childTag)) {
             addEnumeration(childElement);
-            ret = true;
+            return true;
         } else if ("default".equals(childTag)) {
             String value = DataTypeXml.getAttribute(childElement, "value");
             dataType.setDefaultValue(value);
-            ret = true;
+            return true;
         } else if (addPatternCondition(childElement)) {
-            ret = true;
+            return true;
         } else if (addPasswordProperty(childElement)) {
-            ret = true;
+            return true;
         } else if (addDecimalCondition(childElement)) {
-            ret = true;
+            return true;
         } else if (addLengthDataCondition(childElement)) {
-            ret =  true;
+            return  true;
         } else if (addComparableCondition(childElement)) {
-            ret = true;
+            return true;
         }
-        return ret;
+        return false;
     }
 
 
@@ -314,6 +317,12 @@
         newProcessor = DataTypeXml.chainProcessors(oldProcessor, newProcessor);
         dataType.setCommitProcessor(newProcessor);
     }
+    protected void addDeleteProcessor(Element processorElement) {
+        CommitProcessor newProcessor = 
DataTypeXml.createCommitProcessor(processorElement);
+        CommitProcessor oldProcessor = dataType.getDeleteProcessor();
+        newProcessor = DataTypeXml.chainProcessors(oldProcessor, newProcessor);
+        dataType.setDeleteProcessor(newProcessor);
+    }
 
     protected void setRestrictionData(DataType.Restriction restriction, 
Element element) {
         if (DataTypeXml.hasAttribute(element, "fixed")) {
_______________________________________________
Cvs mailing list
Cvs@lists.mmbase.org
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to