org.mmbase.util.transformers
Class ChainedCharTransformer
java.lang.Object
org.mmbase.util.transformers.ReaderTransformer
org.mmbase.util.transformers.ChainedCharTransformer
- All Implemented Interfaces:
- CharTransformer, Transformer
- public class ChainedCharTransformer
- extends ReaderTransformer
- implements CharTransformer
A CharTransformer which wraps N other CharTransformers, and links them with N - 1 new Threads,
effectively working as a 'chained' transformer.
The first transformation is done by the ChainedCharTransformer instance itself, after starting
the N - 1 Threads for the other N - 1 transformations.
If no CharTransformers are added, and 'transform' is called, logically, nothing will happen. Add
the CopyCharTransformer if necessary.
Schematicly:
new ChainedCharTransformer().add(T1).add(T2)....add(TN).transform(R, W);
___________ __________ _________
/ \/ \ / \
| R --> PW - PR --> PW -...- PR --> W |
| T1 | T2 | | TN |
\___________/ \_________/ \_________/
R: reader, PR: piped reader, W: writer, PW, piped writer, T1 - TN: transformers
- Since:
- MMBase-1.7
- Version:
- $Id: ChainedCharTransformer.java,v 1.15 2004/01/05 17:39:07 michiel Exp $
- Author:
- Michiel Meeuwissen
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
ChainedCharTransformer
public ChainedCharTransformer()
add
public ChainedCharTransformer add(CharTransformer ct)
- Adds a CharTranformer to the chain of CharTransformers. If the
CharTransformer is a ChainedCharTransformer, then it will not
be added itself, but its elements will be added.
addAll
public ChainedCharTransformer addAll(java.util.Collection col)
- Adds a Collection of CharTranformers to the chain of CharTransformers.
- Throws:
java.lang.ClassCastException - if collecion does not contain only CharTransformers
transform
public java.io.Writer transform(java.io.Reader startReader,
java.io.Writer endWriter)
- Specified by:
transform in interface CharTransformer- Specified by:
transform in class ReaderTransformer
toString
public java.lang.String toString()
- Specified by:
toString in interface Transformer
main
public static void main(java.lang.String[] args)
throws java.io.IOException
- Throws:
java.io.IOException
MMBase build 1.7.1.20041002