java.lang.Object
edu.internet2.middleware.grouperClientExt.org.apache.commons.httpclient.util.URIUtil

public class URIUtil extends Object
The URI escape and character encoding and decoding utility. It's compatible with HttpURL rather than URI.
Version:
$Revision: 507321 $ $Date: 2002/03/14 15:14:01
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    protected static class 
    Deprecated.
    use edu.internet2.middleware.grouperClientExt.org.apache.commons.codec.net.URLCodec
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected static final BitSet
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static String
    decode(String escaped)
    Unescape and decode a given string regarded as an escaped string with the default protocol charset.
    static String
    decode(String escaped, String charset)
    Unescape and decode a given string regarded as an escaped string.
    static String
    encode(String unescaped, BitSet allowed)
    Escape and encode a given string with allowed characters not to be escaped and the default protocol charset.
    static String
    encode(String unescaped, BitSet allowed, String charset)
    Escape and encode a given string with allowed characters not to be escaped and a given charset.
    static String
    encodeAll(String unescaped)
    Get the all escaped and encoded string with the default protocl charset.
    static String
    encodeAll(String unescaped, String charset)
    Get the all escaped and encoded string with a given charset.
    static String
    encodePath(String unescaped)
    Escape and encode a string regarded as the path component of an URI with the default protocol charset.
    static String
    encodePath(String unescaped, String charset)
    Escape and encode a string regarded as the path component of an URI with a given charset.
    static String
    Escape and encode a string regarded as the path and query components of an URI with the default protocol charset.
    static String
    encodePathQuery(String unescaped, String charset)
    Escape and encode a string regarded as the path and query components of an URI with a given charset.
    static String
    encodeQuery(String unescaped)
    Escape and encode a string regarded as the query component of an URI with the default protocol charset.
    static String
    encodeQuery(String unescaped, String charset)
    Escape and encode a string regarded as the query component of an URI with a given charset.
    static String
    Escape and encode a string regarded as within the authority component of an URI with the default protocol charset.
    static String
    encodeWithinAuthority(String unescaped, String charset)
    Escape and encode a string regarded as within the authority component of an URI with a given charset.
    static String
    Escape and encode a string regarded as within the path component of an URI with the default protocol charset.
    static String
    encodeWithinPath(String unescaped, String charset)
    Escape and encode a string regarded as within the path component of an URI with a given charset.
    static String
    Escape and encode a string regarded as within the query component of an URI with the default protocol charset.
    static String
    encodeWithinQuery(String unescaped, String charset)
    Escape and encode a string regarded as within the query component of an URI with a given charset.
    static String
    Get the path of an URI and its rest part.
    static String
    Get the basename of an URI.
    static String
    Get the path of an URI.
    static String
    Get the path and query of an URI.
    static String
    Get the query of an URI.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • empty

      protected static final BitSet empty
  • Constructor Details

    • URIUtil

      public URIUtil()
  • Method Details

    • getName

      public static String getName(String uri)
      Get the basename of an URI. It's possibly an empty string.
      Parameters:
      uri - a string regarded an URI
      Returns:
      the basename string; an empty string if the path ends with slash
    • getQuery

      public static String getQuery(String uri)
      Get the query of an URI.
      Parameters:
      uri - a string regarded an URI
      Returns:
      the query string; null if empty or undefined
    • getPath

      public static String getPath(String uri)
      Get the path of an URI.
      Parameters:
      uri - a string regarded an URI
      Returns:
      the path string
    • getPathQuery

      public static String getPathQuery(String uri)
      Get the path and query of an URI.
      Parameters:
      uri - a string regarded an URI
      Returns:
      the path and query string
    • getFromPath

      public static String getFromPath(String uri)
      Get the path of an URI and its rest part.
      Parameters:
      uri - a string regarded an URI
      Returns:
      the string from the path part
    • encodeAll

      public static String encodeAll(String unescaped) throws URIException
      Get the all escaped and encoded string with the default protocl charset. It's the same function to use encode(String unescaped, Bitset empty, URI.getDefaultProtocolCharset()).
      Parameters:
      unescaped - an unescaped string
      Returns:
      the escaped string
      Throws:
      URIException - if the default protocol charset is not supported
      See Also:
    • encodeAll

      public static String encodeAll(String unescaped, String charset) throws URIException
      Get the all escaped and encoded string with a given charset. It's the same function to use encode(String unescaped, Bitset empty, String charset).
      Parameters:
      unescaped - an unescaped string
      charset - the charset
      Returns:
      the escaped string
      Throws:
      URIException - if the charset is not supported
      See Also:
    • encodeWithinAuthority

      public static String encodeWithinAuthority(String unescaped) throws URIException
      Escape and encode a string regarded as within the authority component of an URI with the default protocol charset. Within the authority component, the characters ";", ":", "@", "?", and "/" are reserved.
      Parameters:
      unescaped - an unescaped string
      Returns:
      the escaped string
      Throws:
      URIException - if the default protocol charset is not supported
      See Also:
    • encodeWithinAuthority

      public static String encodeWithinAuthority(String unescaped, String charset) throws URIException
      Escape and encode a string regarded as within the authority component of an URI with a given charset. Within the authority component, the characters ";", ":", "@", "?", and "/" are reserved.
      Parameters:
      unescaped - an unescaped string
      charset - the charset
      Returns:
      the escaped string
      Throws:
      URIException - if the charset is not supported
      See Also:
    • encodePathQuery

      public static String encodePathQuery(String unescaped) throws URIException
      Escape and encode a string regarded as the path and query components of an URI with the default protocol charset.
      Parameters:
      unescaped - an unescaped string
      Returns:
      the escaped string
      Throws:
      URIException - if the default protocol charset is not supported
      See Also:
    • encodePathQuery

      public static String encodePathQuery(String unescaped, String charset) throws URIException
      Escape and encode a string regarded as the path and query components of an URI with a given charset.
      Parameters:
      unescaped - an unescaped string
      charset - the charset
      Returns:
      the escaped string
      Throws:
      URIException - if the charset is not supported
      See Also:
    • encodeWithinPath

      public static String encodeWithinPath(String unescaped) throws URIException
      Escape and encode a string regarded as within the path component of an URI with the default protocol charset. The path may consist of a sequence of path segments separated by a single slash "/" character. Within a path segment, the characters "/", ";", "=", and "?" are reserved.
      Parameters:
      unescaped - an unescaped string
      Returns:
      the escaped string
      Throws:
      URIException - if the default protocol charset is not supported
      See Also:
    • encodeWithinPath

      public static String encodeWithinPath(String unescaped, String charset) throws URIException
      Escape and encode a string regarded as within the path component of an URI with a given charset. The path may consist of a sequence of path segments separated by a single slash "/" character. Within a path segment, the characters "/", ";", "=", and "?" are reserved.
      Parameters:
      unescaped - an unescaped string
      charset - the charset
      Returns:
      the escaped string
      Throws:
      URIException - if the charset is not supported
      See Also:
    • encodePath

      public static String encodePath(String unescaped) throws URIException
      Escape and encode a string regarded as the path component of an URI with the default protocol charset.
      Parameters:
      unescaped - an unescaped string
      Returns:
      the escaped string
      Throws:
      URIException - if the default protocol charset is not supported
      See Also:
    • encodePath

      public static String encodePath(String unescaped, String charset) throws URIException
      Escape and encode a string regarded as the path component of an URI with a given charset.
      Parameters:
      unescaped - an unescaped string
      charset - the charset
      Returns:
      the escaped string
      Throws:
      URIException - if the charset is not supported
      See Also:
    • encodeWithinQuery

      public static String encodeWithinQuery(String unescaped) throws URIException
      Escape and encode a string regarded as within the query component of an URI with the default protocol charset. When a query comprise the name and value pairs, it is used in order to encode each name and value string. The reserved special characters within a query component are being included in encoding the query.
      Parameters:
      unescaped - an unescaped string
      Returns:
      the escaped string
      Throws:
      URIException - if the default protocol charset is not supported
      See Also:
    • encodeWithinQuery

      public static String encodeWithinQuery(String unescaped, String charset) throws URIException
      Escape and encode a string regarded as within the query component of an URI with a given charset. When a query comprise the name and value pairs, it is used in order to encode each name and value string. The reserved special characters within a query component are being included in encoding the query.
      Parameters:
      unescaped - an unescaped string
      charset - the charset
      Returns:
      the escaped string
      Throws:
      URIException - if the charset is not supported
      See Also:
    • encodeQuery

      public static String encodeQuery(String unescaped) throws URIException
      Escape and encode a string regarded as the query component of an URI with the default protocol charset. When a query string is not misunderstood the reserved special characters ("&", "=", "+", ",", and "$") within a query component, this method is recommended to use in encoding the whole query.
      Parameters:
      unescaped - an unescaped string
      Returns:
      the escaped string
      Throws:
      URIException - if the default protocol charset is not supported
      See Also:
    • encodeQuery

      public static String encodeQuery(String unescaped, String charset) throws URIException
      Escape and encode a string regarded as the query component of an URI with a given charset. When a query string is not misunderstood the reserved special characters ("&", "=", "+", ",", and "$") within a query component, this method is recommended to use in encoding the whole query.
      Parameters:
      unescaped - an unescaped string
      charset - the charset
      Returns:
      the escaped string
      Throws:
      URIException - if the charset is not supported
      See Also:
    • encode

      public static String encode(String unescaped, BitSet allowed) throws URIException
      Escape and encode a given string with allowed characters not to be escaped and the default protocol charset.
      Parameters:
      unescaped - a string
      allowed - allowed characters not to be escaped
      Returns:
      the escaped string
      Throws:
      URIException - if the default protocol charset is not supported
      See Also:
    • encode

      public static String encode(String unescaped, BitSet allowed, String charset) throws URIException
      Escape and encode a given string with allowed characters not to be escaped and a given charset.
      Parameters:
      unescaped - a string
      allowed - allowed characters not to be escaped
      charset - the charset
      Returns:
      the escaped string
      Throws:
      URIException
    • decode

      public static String decode(String escaped) throws URIException
      Unescape and decode a given string regarded as an escaped string with the default protocol charset.
      Parameters:
      escaped - a string
      Returns:
      the unescaped string
      Throws:
      URIException - if the string cannot be decoded (invalid)
      See Also:
    • decode

      public static String decode(String escaped, String charset) throws URIException
      Unescape and decode a given string regarded as an escaped string.
      Parameters:
      escaped - a string
      charset - the charset
      Returns:
      the unescaped string
      Throws:
      URIException - if the charset is not supported
      See Also: