Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Ws Wiki" for change 
notification.

The following page has been changed by KevinWilliams:
http://wiki.apache.org/ws/ColumnConverters

------------------------------------------------------------------------------
    </Table>
        
  </Config>
- 
  }}}
  
+ Here is the user-defined converter class:
+ {{{
+ public class StringObfuscationConverter implements Converter {
+ 
+     public StringObfuscationConverter() {
+         super();
+     }
+ 
+     public Object getPropertyValue(Object columnData) {
+         return toRot13((String) columnData);
+     }
+ 
+     public Object getColumnValue(Object propertyData) {
+         return toRot13((String) propertyData);
+     }
+ 
+     // Utilities
+ 
+     // A simple, reversible, obfuscation algorithm using a ROT13 
implementation
+     private String toRot13(String original) {
+ 
+         int abyte = 0;
+         byte[] buffer = {};
+         try {
+             buffer = original.getBytes("ISO-8859-1");
+         } catch (UnsupportedEncodingException e) {
+             throw new Error(e);
+         }
+ 
+         for (int i = 0; i < buffer.length; i++) {
+             abyte = buffer[i];
+             int cap = abyte & 32;
+             abyte &= ~cap;
+             abyte = ((abyte >= 'A') && (abyte <= 'Z') ? ((abyte - 'A' + 13) % 
26 + 'A') : abyte) | cap;
+             buffer[i] = (byte) abyte;
+         }
+         try {
+             return new String(buffer, "ISO-8859-1");
+         } catch (UnsupportedEncodingException e) {
+             throw new Error(e);
+         }
+     }
+ }
+ }}}
+ 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to