[re]-merged in Brians stuff
[org.ibex.core.git] / src / org / ibex / util / FileNameEncoder.java
diff --git a/src/org/ibex/util/FileNameEncoder.java b/src/org/ibex/util/FileNameEncoder.java
deleted file mode 100644 (file)
index e68bba2..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-// Copyright (C) 2003 Adam Megacz <adam@ibex.org> all rights reserved.
-//
-// You may modify, copy, and redistribute this code under the terms of
-// the GNU Library Public License version 2.1, with the exception of
-// the portion of clause 6a after the semicolon (aka the "obnoxious
-// relink clause")
-
-package org.ibex.util;
-import java.util.*;
-import java.io.*;
-
-/** provides commands to urlencode and urldecode strings, making sure
- *  to escape sequences which have special meanings in filenames */
-public class FileNameEncoder {
-
-    private static final char[] hex =
-        new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
-
-    public static String encode(String s) {
-        StringBuffer sb = new StringBuffer();
-        try {
-            byte[] b = s.getBytes("UTF-8");
-            for(int i=0; i<b.length; i++) {
-                char c = (char)(b[i] & 0xff);
-                if (c == File.separatorChar || c < 32 || c > 126 || c == '%' || (i == 0 && c == '.'))
-                    sb.append("%" + hex[(b[i] & 0xf0) >> 8] + hex[b[i] & 0xf]);
-                else sb.append(c);
-            }
-            return sb.toString();
-        } catch (UnsupportedEncodingException uee) {
-            throw new Error("this should never happen; Java spec mandates UTF-8 support");
-        }
-    }
-
-    public static String decode(String s) {
-        StringBuffer sb = new StringBuffer();
-        byte[] b = new byte[s.length() * 2];
-        int bytes = 0;
-        for(int i=0; i<s.length(); i++) {
-            char c = s.charAt(i);
-            if (c == '%') b[bytes++] = (byte)Integer.parseInt(("" + s.charAt(++i) + s.charAt(++i)), 16);
-            else b[bytes++] = (byte)c;
-        }
-        try {
-            return new String(b, 0, bytes, "UTF-8");
-        } catch (UnsupportedEncodingException uee) {
-            throw new Error("this should never happen; Java spec mandates UTF-8 support");
-        }
-    }
-}