diff --git a/projects/samskivert/src/java/com/samskivert/net/HttpPostUtil.java b/projects/samskivert/src/java/com/samskivert/net/HttpPostUtil.java index 8b157327..0d7d910e 100644 --- a/projects/samskivert/src/java/com/samskivert/net/HttpPostUtil.java +++ b/projects/samskivert/src/java/com/samskivert/net/HttpPostUtil.java @@ -1,5 +1,5 @@ // -// $Id: HttpPostUtil.java,v 1.1 2003/09/26 02:36:41 ray Exp $ +// $Id: HttpPostUtil.java,v 1.2 2003/10/08 23:52:49 ray Exp $ package com.samskivert.net; @@ -10,7 +10,6 @@ import java.io.IOException; import java.net.HttpURLConnection; import java.net.URL; -import java.net.URLEncoder; import com.samskivert.util.ServiceWaiter; diff --git a/projects/samskivert/src/java/com/samskivert/servlet/user/UserManager.java b/projects/samskivert/src/java/com/samskivert/servlet/user/UserManager.java index 56797b70..1225a5a2 100644 --- a/projects/samskivert/src/java/com/samskivert/servlet/user/UserManager.java +++ b/projects/samskivert/src/java/com/samskivert/servlet/user/UserManager.java @@ -1,5 +1,5 @@ // -// $Id: UserManager.java,v 1.18 2003/10/06 22:50:28 ray Exp $ +// $Id: UserManager.java,v 1.19 2003/10/08 23:52:50 ray Exp $ // // samskivert library - useful routines for java programs // Copyright (C) 2001 Michael Bayne @@ -20,7 +20,6 @@ package com.samskivert.servlet.user; -import java.net.URLEncoder; import java.util.Properties; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; diff --git a/projects/samskivert/src/java/com/samskivert/servlet/util/RequestUtils.java b/projects/samskivert/src/java/com/samskivert/servlet/util/RequestUtils.java index 66d2f740..74331351 100644 --- a/projects/samskivert/src/java/com/samskivert/servlet/util/RequestUtils.java +++ b/projects/samskivert/src/java/com/samskivert/servlet/util/RequestUtils.java @@ -1,5 +1,5 @@ // -// $Id: RequestUtils.java,v 1.8 2003/10/08 00:40:16 mdb Exp $ +// $Id: RequestUtils.java,v 1.9 2003/10/08 23:52:50 ray Exp $ // // samskivert library - useful routines for java programs // Copyright (C) 2001 Michael Bayne @@ -21,7 +21,6 @@ package com.samskivert.servlet.util; import java.io.UnsupportedEncodingException; -import java.net.URLEncoder; import javax.servlet.http.HttpServletRequest; import com.samskivert.util.StringUtil; @@ -41,12 +40,7 @@ public class RequestUtils */ public static String getLocationEncoded (HttpServletRequest req) { - String location = getLocation(req); - try { - return URLEncoder.encode(location, "UTF-8"); - } catch (UnsupportedEncodingException uee) { - return location; - } + return StringUtil.encode(getLocation(req)); } /** diff --git a/projects/samskivert/src/java/com/samskivert/util/StringUtil.java b/projects/samskivert/src/java/com/samskivert/util/StringUtil.java index f906ce9d..23ca74b3 100644 --- a/projects/samskivert/src/java/com/samskivert/util/StringUtil.java +++ b/projects/samskivert/src/java/com/samskivert/util/StringUtil.java @@ -1,5 +1,5 @@ // -// $Id: StringUtil.java,v 1.57 2003/08/19 23:37:56 ray Exp $ +// $Id: StringUtil.java,v 1.58 2003/10/08 23:52:50 ray Exp $ // // samskivert library - useful routines for java programs // Copyright (C) 2001 Michael Bayne @@ -24,10 +24,15 @@ import java.awt.geom.Dimension2D; import java.awt.geom.Point2D; import java.awt.geom.Rectangle2D; +import java.io.UnsupportedEncodingException; + import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.net.URLEncoder; +import java.net.URLDecoder; + import java.text.NumberFormat; import java.security.MessageDigest; @@ -635,6 +640,30 @@ public class StringUtil } } + /** + * URL encodes the specified string using the UTF-8 character encoding. + */ + public static String encode (String s) + { + try { + return URLEncoder.encode(s, "UTF-8"); + } catch (UnsupportedEncodingException uee) { + throw new RuntimeException("UTF-8 is unknown in this Java."); + } + } + + /** + * URL decodes the specified string using the UTF-8 character encoding. + */ + public static String decode (String s) + { + try { + return URLDecoder.decode(s, "UTF-8"); + } catch (UnsupportedEncodingException uee) { + throw new RuntimeException("UTF-8 is unknown in this Java."); + } + } + /** * Generates a string from the supplied bytes that is the HEX encoded * representation of those bytes. Returns the empty string for a @@ -650,8 +679,8 @@ public class StringUtil return ""; } - char[] chars = new char[bytes.length*2]; count = Math.min(count, bytes.length); + char[] chars = new char[count*2]; for (int i = 0; i < count; i++) { int val = (int)bytes[i]; diff --git a/projects/samskivert/src/java/com/samskivert/velocity/StringTool.java b/projects/samskivert/src/java/com/samskivert/velocity/StringTool.java index 9f18dfc3..6d905229 100644 --- a/projects/samskivert/src/java/com/samskivert/velocity/StringTool.java +++ b/projects/samskivert/src/java/com/samskivert/velocity/StringTool.java @@ -1,5 +1,5 @@ // -// $Id: StringTool.java,v 1.10 2003/10/08 00:35:57 ray Exp $ +// $Id: StringTool.java,v 1.11 2003/10/08 23:52:50 ray Exp $ // // samskivert library - useful routines for java programs // Copyright (C) 2001 Michael Bayne @@ -20,7 +20,6 @@ package com.samskivert.velocity; -import java.net.URLEncoder; import java.text.NumberFormat; import com.samskivert.servlet.util.HTMLUtil; @@ -44,12 +43,7 @@ public class StringTool */ public static String urlEncode (String text) { - try { - return URLEncoder.encode(text, "UTF-8"); - } catch (java.io.UnsupportedEncodingException uee) { - // won't happen - return text; - } + return StringUtil.encode(text); } /**