Author: michiel
Date: 2009-06-05 19:17:32 +0200 (Fri, 05 Jun 2009)
New Revision: 35796

Modified:
   
mmbase/trunk/core/src/main/java/org/mmbase/datatypes/processors/ChainedCommitProcessor.java
   
mmbase/trunk/core/src/main/java/org/mmbase/datatypes/processors/ChainedProcessor.java
Log:
added 'getProcessors' method, and also resolving ChainedProcessors in 
ChainedProcessor, which makes the result of 'getProcessors' less complicated

Modified: 
mmbase/trunk/core/src/main/java/org/mmbase/datatypes/processors/ChainedCommitProcessor.java
===================================================================
--- 
mmbase/trunk/core/src/main/java/org/mmbase/datatypes/processors/ChainedCommitProcessor.java
 2009-06-05 17:16:43 UTC (rev 35795)
+++ 
mmbase/trunk/core/src/main/java/org/mmbase/datatypes/processors/ChainedCommitProcessor.java
 2009-06-05 17:17:32 UTC (rev 35796)
@@ -27,7 +27,11 @@
     private ArrayList<CommitProcessor> processors = new 
ArrayList<CommitProcessor>();
 
     public ChainedCommitProcessor add(CommitProcessor proc) {
-        processors.add(proc);
+        if (proc instanceof ChainedCommitProcessor) {
+            processors.addAll(((ChainedCommitProcessor) proc).getProcessors());
+        } else {
+            processors.add(proc);
+        }
         return this;
     }
 
@@ -38,6 +42,13 @@
         return;
     }
 
+    /**
+     * @since 1.9.2
+     */
+    public List<CommitProcessor> getProcessors() {
+        return Collections.unmodifiableList(processors);
+    }
+
     public String toString() {
         return "chained" + processors;
     }

Modified: 
mmbase/trunk/core/src/main/java/org/mmbase/datatypes/processors/ChainedProcessor.java
===================================================================
--- 
mmbase/trunk/core/src/main/java/org/mmbase/datatypes/processors/ChainedProcessor.java
       2009-06-05 17:16:43 UTC (rev 35795)
+++ 
mmbase/trunk/core/src/main/java/org/mmbase/datatypes/processors/ChainedProcessor.java
       2009-06-05 17:17:32 UTC (rev 35796)
@@ -27,7 +27,11 @@
     private List<Processor> processors = new ArrayList<Processor>();
 
     public ChainedProcessor add(Processor proc) {
-        processors.add(proc);
+        if (proc instanceof ChainedCommitProcessor) {
+            processors.addAll(((ChainedProcessor) proc).getProcessors());
+        } else {
+            processors.add(proc);
+        }
         return this;
     }
 
@@ -38,6 +42,15 @@
         return value;
     }
 
+
+    /**
+     * @since 1.9.2
+     */
+    public List<Processor> getProcessors() {
+        return Collections.unmodifiableList(processors);
+    }
+
+
     public String toString() {
         return "chained" + processors;
     }

_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to