KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > mmbase > util > transformers > CopyCharTransformer


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.util.transformers;
11
12 import java.io.Reader JavaDoc;
13 import java.io.Writer JavaDoc;
14
15
16 /**
17  * This is the character transformer which does not actually transform
18  * anything, it just copies the reader to the writer.
19  *
20  * @author Michiel Meeuwissen
21  * @since MMBase-1.7
22  * @version $Id: CopyCharTransformer.java,v 1.6 2005/05/08 13:22:05 michiel Exp $
23  */

24
25 public class CopyCharTransformer extends ReaderTransformer implements CharTransformer {
26
27     public static final CopyCharTransformer INSTANCE = new CopyCharTransformer();
28
29     private CopyCharTransformer() {
30         super();
31     }
32
33     // implementation, javadoc inherited
34
public Writer JavaDoc transform(Reader JavaDoc r, Writer JavaDoc w) {
35         try {
36             while (true) {
37                 int c = r.read();
38                 if (c == -1) break;
39                 w.write(c);
40             }
41         } catch (java.io.IOException JavaDoc e) {
42             System.out.println("c " + e.toString());
43         }
44         return w;
45     }
46
47     // implementation, javadoc inherited
48
public Writer JavaDoc transformBack(Reader JavaDoc r, Writer JavaDoc w) {
49         return transform(r, w);
50     }
51
52     // overridden for performance.
53
public String JavaDoc transform(String JavaDoc s) {
54         return s;
55     }
56
57     // overridden for performance.
58
public String JavaDoc transformBack(String JavaDoc s) {
59         return s;
60     }
61
62     public String JavaDoc toString() {
63         return "COPY";
64     }
65
66 }
67
Popular Tags