diff artifact-database/src/main/java/de/intevation/artifactdatabase/StringUtils.java @ 80:8447467cef86

Implementation to import artifacts from incoming xml documents (applied patch from issue208 by SLT). artifacts/trunk@799 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Fri, 19 Mar 2010 09:34:40 +0000
parents f69e5b87f05f
children 0f48188a6e02
line wrap: on
line diff
--- a/artifact-database/src/main/java/de/intevation/artifactdatabase/StringUtils.java	Tue Mar 16 16:03:06 2010 +0000
+++ b/artifact-database/src/main/java/de/intevation/artifactdatabase/StringUtils.java	Fri Mar 19 09:34:40 2010 +0000
@@ -4,6 +4,10 @@
 
 import java.util.UUID;
 
+import org.apache.commons.codec.DecoderException;
+
+import org.apache.commons.codec.binary.Hex;
+
 import org.apache.log4j.Logger;
 
 /**
@@ -13,26 +17,6 @@
 {
     private static Logger logger = Logger.getLogger(StringUtils.class);
 
-    private static final char [] HEX = {
-        '0', '1', '2', '3', '4', '5', '6', '7', 
-        '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'
-    };
-
-    private StringUtils() {
-    }
-
-    public static final String toHex(byte [] bytes) {
-        char out [] = new char[bytes.length*2];
-
-        for (int i = 0, j = 0; i < bytes.length; ++i) {
-            byte b  = bytes[i];
-            out[j++] = HEX[(b >> 4) & 0xf];
-            out[j++] = HEX[ b       & 0xf];
-        }
-
-        return new String(out);
-    }
-
     public static final String newUUID() {
         return UUID.randomUUID().toString();
     }
@@ -57,5 +41,14 @@
             return s.getBytes();
         }
     }
+
+    public static final byte [] decodeHex(String s) {
+        try {
+            return Hex.decodeHex(s.toCharArray());
+        }
+        catch (DecoderException de) {
+            return null;
+        }
+    }
 }
 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org