1 10 package org.mmbase.util.transformers; 11 12 import java.io.Reader ; 13 import java.io.Writer ; 14 15 import org.mmbase.util.logging.*; 16 17 25 26 public class Rot5 extends ReaderTransformer implements CharTransformer { 27 28 private static final Logger log = Logging.getLoggerInstance(Rot5.class); 29 30 protected Writer rot5(Reader r, Writer w) { 31 try { 32 int c = r.read(); 33 while (c != -1) { 34 if (c >= '0' && c <= '4') { 35 c += 5; 36 } else if (c >= '5' && c <= '9') { 37 c -= 5; 38 } 39 w.write(c); 40 c = r.read(); 41 } 42 } catch (java.io.IOException ioe) { 43 log.error(ioe); 44 } 45 return w; 46 } 47 48 public Writer transform(Reader r, Writer w) { 49 return rot5(r, w); 50 } 51 52 55 public Writer transformBack(Reader r, Writer w) { 56 return rot5(r, w); 57 } 58 59 public String toString() { 60 return "ROT-5"; 61 } 62 } 63 | Popular Tags |