KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > mmbase > datatypes > processors > ChainedCommitProcessor


1 /*
2
3 This software is OSI Certified Open Source Software.
4 OSI Certified is a certification mark of the Open Source Initiative.
5
6 The license (Mozilla version 1.0) can be read at the MMBase site.
7 See http://www.MMBase.org/license
8
9 */

10 package org.mmbase.datatypes.processors;
11
12 import org.mmbase.bridge.*;
13 import java.util.*;
14
15 /**
16  * Chains a bunch of other processors into one new processor.
17  *
18  * @author Michiel Meeuwissen
19  * @version $Id: ChainedCommitProcessor.java,v 1.2 2005/12/10 14:33:36 michiel Exp $
20  * @since MMBase-1.7
21  */

22
23 public class ChainedCommitProcessor implements CommitProcessor {
24
25     private static final long serialVersionUID = 1L;
26
27     private List processors = new ArrayList();
28
29     public ChainedCommitProcessor add(CommitProcessor proc) {
30         processors.add(proc);
31         return this;
32     }
33
34     public void commit(Node node, Field field) {
35         Iterator i = processors.iterator();
36         while (i.hasNext()) {
37             Object JavaDoc proc = i.next();
38             if (i instanceof CommitProcessor) {
39                 CommitProcessor commitProc = (CommitProcessor) proc;
40                 commitProc.commit(node, field);
41             }
42         }
43         return;
44     }
45
46     public String JavaDoc toString() {
47         return "chained" + processors;
48     }
49
50
51
52 }
53
Popular Tags