Package com.atlassian.jira.util
Class URLCodec
java.lang.Object
com.atlassian.jira.util.URLCodec
Implements the 'www-form-urlencoded' encoding scheme, also misleadingly known as URL encoding.
For more detailed information please refer to Chapter 17.13.4 'Form content types' of the HTML 4.01 Specification
This codec is meant to be a replacement for standard Java classes
URLEncoder
and URLDecoder
on older Java platforms, as these classes in Java versions below
1.4 rely on the platform's default charset encoding.
- Since:
- 1.2
- Version:
- $Id: URLCodec.java,v 1.2 2006/05/23 01:06:07 schang Exp $
- Author:
- Apache Software Foundation
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic byte[]
decode
(byte[] bytes) Decodes an array of URL safe 7-bit characters into an array of original bytes.static Object
Decodes a URL safe object into its original form.static String
Decodes a URL safe string into its original form using the default string charset.static String
Decodes a URL safe string into its original form using the specified encoding.static byte[]
decodeUrl
(byte[] bytes) Decodes an array of URL safe 7-bit characters into an array of original bytes.static byte[]
encode
(byte[] bytes) Encodes an array of bytes into an array of URL safe 7-bit characters.static byte[]
encode
(byte[] bytes, boolean withSpacesAsHexValue) Encodes an array of bytes into an array of URL safe 7-bit characters.static Object
Encodes an object into its URL safe form.static Object
Encodes an object into its URL safe form.static String
Encodes a string into its URL safe form using the default string charset.static String
Encodes a string into its URL safe form using the default string charset.static String
Encodes a string into its URL safe form using the specified string charset.static String
Encodes a string into its URL safe form using the specified string charset.static byte[]
Encodes an array of bytes into an array of URL safe 7-bit characters.
-
Constructor Details
-
URLCodec
public URLCodec()
-
-
Method Details
-
encodeUrl
Encodes an array of bytes into an array of URL safe 7-bit characters. Unsafe characters are escaped.- Parameters:
urlsafe
- bitset of characters deemed URL safebytes
- array of bytes to convert to URL safe characters- Returns:
- array of bytes containing URL safe characters
-
decodeUrl
Decodes an array of URL safe 7-bit characters into an array of original bytes. Escaped characters are converted back to their original representation.- Parameters:
bytes
- array of URL safe characters- Returns:
- array of original bytes
- Throws:
UnsupportedEncodingException
- Thrown if URL decoding is unsuccessful
-
encode
public static byte[] encode(byte[] bytes) Encodes an array of bytes into an array of URL safe 7-bit characters. Unsafe characters are escaped. Spaces are encoded as the '+' character.- Parameters:
bytes
- array of bytes to convert to URL safe characters- Returns:
- array of bytes containing URL safe characters
-
encode
public static byte[] encode(byte[] bytes, boolean withSpacesAsHexValue) Encodes an array of bytes into an array of URL safe 7-bit characters. Unsafe characters are escaped.- Parameters:
withSpacesAsHexValue
- if true, spaces will be encoded with their hex value (%20), otherwise they're encoded with '+' character.bytes
- array of bytes to convert to URL safe characters- Returns:
- array of bytes containing URL safe characters
-
decode
Decodes an array of URL safe 7-bit characters into an array of original bytes. Escaped characters are converted back to their original representation.- Parameters:
bytes
- array of URL safe characters- Returns:
- array of original bytes
- Throws:
UnsupportedEncodingException
- Thrown if URL decoding is unsuccessful
-
encode
Encodes a string into its URL safe form using the specified string charset. Unsafe characters are escaped. Spaces are encoded with the '+' character.- Parameters:
pString
- string to convert to a URL safe formcharset
- the charset for pString- Returns:
- URL safe string
- Throws:
UnsupportedEncodingException
- Thrown if charset is not supported
-
encode
public static String encode(String pString, String charset, boolean withSpacesAsHexValue) throws UnsupportedEncodingException Encodes a string into its URL safe form using the specified string charset. Unsafe characters are escaped.- Parameters:
pString
- string to convert to a URL safe formcharset
- the charset for pStringwithSpacesAsHexValue
- if true spaces will be encoded with their hex value (%20), otherwise they're encoded with '+' character.- Returns:
- URL safe string
- Throws:
UnsupportedEncodingException
- Thrown if charset is not supported
-
encode
Encodes a string into its URL safe form using the default string charset. Unsafe characters are escaped. Spaces are encoded as the '+' character.- Parameters:
pString
- string to convert to a URL safe form- Returns:
- URL safe string
- Throws:
UnsupportedEncodingException
- Thrown if URL encoding is unsuccessful- See Also:
-
getDefaultCharset()
-
encode
public static String encode(String pString, boolean withSpacesAsHexValue) throws UnsupportedEncodingException Encodes a string into its URL safe form using the default string charset. Unsafe characters are escaped.- Parameters:
pString
- string to convert to a URL safe formwithSpacesAsHexValue
- if true spaces will be encoded with their hex value (%20), otherwise they're encoded with '+' character.- Returns:
- URL safe string
- Throws:
UnsupportedEncodingException
- Thrown if URL encoding is unsuccessful- See Also:
-
getDefaultCharset()
-
decode
Decodes a URL safe string into its original form using the specified encoding. Escaped characters are converted back to their original representation.- Parameters:
pString
- URL safe string to convert into its original formcharset
- the original string charset- Returns:
- original string
- Throws:
UnsupportedEncodingException
- Thrown if charset is not supported
-
decode
Decodes a URL safe string into its original form using the default string charset. Escaped characters are converted back to their original representation.- Parameters:
pString
- URL safe string to convert into its original form- Returns:
- original string
- Throws:
UnsupportedEncodingException
- Thrown if URL decoding is unsuccessful- See Also:
-
getDefaultCharset()
-
encode
Encodes an object into its URL safe form. Unsafe characters are escaped. Encodes spaces as '+' character.- Parameters:
pObject
- string to convert to a URL safe form- Returns:
- URL safe object
- Throws:
UnsupportedEncodingException
- Thrown if URL encoding is not applicable to objects of this type or if encoding is unsuccessful
-
encode
public static Object encode(Object pObject, boolean withSpacesAsHexValue) throws UnsupportedEncodingException Encodes an object into its URL safe form. Unsafe characters are escaped.- Parameters:
pObject
- string to convert to a URL safe formwithSpacesAsHexValue
- if true spaces will be encoded with their hex value (%20), otherwise they're encoded with '+' character.- Returns:
- URL safe object
- Throws:
UnsupportedEncodingException
- Thrown if URL encoding is not applicable to objects of this type or if encoding is unsuccessful
-
decode
Decodes a URL safe object into its original form. Escaped characters are converted back to their original representation.- Parameters:
pObject
- URL safe object to convert into its original form- Returns:
- original object
- Throws:
UnsupportedEncodingException
- Thrown if the argument is not aString
orbyte[]
. Thrown if a failure condition is encountered during the decode process.
-