public abstract class UriUtils
extends java.lang.Object
All encode*(String, String)
methods in this class operate in a similar way:
%xy
"
format.Constructor and Description |
---|
UriUtils() |
Modifier and Type | Method and Description |
---|---|
static java.lang.String |
decode(java.lang.String source,
java.lang.String encoding)
Decode the given encoded URI component.
|
static java.lang.String |
encode(java.lang.String source,
java.lang.String encoding)
Encode characters outside the unreserved character set as defined in
RFC 3986 Section 2.
|
static java.lang.String |
encodeAuthority(java.lang.String authority,
java.lang.String encoding)
Encode the given URI authority with the given encoding.
|
static java.lang.String |
encodeFragment(java.lang.String fragment,
java.lang.String encoding)
Encode the given URI fragment with the given encoding.
|
static java.lang.String |
encodeHost(java.lang.String host,
java.lang.String encoding)
Encode the given URI host with the given encoding.
|
static java.lang.String |
encodePath(java.lang.String path,
java.lang.String encoding)
Encode the given URI path with the given encoding.
|
static java.lang.String |
encodePathSegment(java.lang.String segment,
java.lang.String encoding)
Encode the given URI path segment with the given encoding.
|
static java.lang.String |
encodePort(java.lang.String port,
java.lang.String encoding)
Encode the given URI port with the given encoding.
|
static java.lang.String |
encodeQuery(java.lang.String query,
java.lang.String encoding)
Encode the given URI query with the given encoding.
|
static java.lang.String |
encodeQueryParam(java.lang.String queryParam,
java.lang.String encoding)
Encode the given URI query parameter with the given encoding.
|
static java.lang.String |
encodeScheme(java.lang.String scheme,
java.lang.String encoding)
Encode the given URI scheme with the given encoding.
|
static java.lang.String |
encodeUserInfo(java.lang.String userInfo,
java.lang.String encoding)
Encode the given URI user info with the given encoding.
|
static java.lang.String |
extractFileExtension(java.lang.String path)
Extract the file extension from the given URI path.
|
public static java.lang.String encodeScheme(java.lang.String scheme, java.lang.String encoding) throws java.io.UnsupportedEncodingException
scheme
- the scheme to be encodedencoding
- the character encoding to encode tojava.io.UnsupportedEncodingException
- when the given encoding parameter is not supportedpublic static java.lang.String encodeAuthority(java.lang.String authority, java.lang.String encoding) throws java.io.UnsupportedEncodingException
authority
- the authority to be encodedencoding
- the character encoding to encode tojava.io.UnsupportedEncodingException
- when the given encoding parameter is not supportedpublic static java.lang.String encodeUserInfo(java.lang.String userInfo, java.lang.String encoding) throws java.io.UnsupportedEncodingException
userInfo
- the user info to be encodedencoding
- the character encoding to encode tojava.io.UnsupportedEncodingException
- when the given encoding parameter is not supportedpublic static java.lang.String encodeHost(java.lang.String host, java.lang.String encoding) throws java.io.UnsupportedEncodingException
host
- the host to be encodedencoding
- the character encoding to encode tojava.io.UnsupportedEncodingException
- when the given encoding parameter is not supportedpublic static java.lang.String encodePort(java.lang.String port, java.lang.String encoding) throws java.io.UnsupportedEncodingException
port
- the port to be encodedencoding
- the character encoding to encode tojava.io.UnsupportedEncodingException
- when the given encoding parameter is not supportedpublic static java.lang.String encodePath(java.lang.String path, java.lang.String encoding) throws java.io.UnsupportedEncodingException
path
- the path to be encodedencoding
- the character encoding to encode tojava.io.UnsupportedEncodingException
- when the given encoding parameter is not supportedpublic static java.lang.String encodePathSegment(java.lang.String segment, java.lang.String encoding) throws java.io.UnsupportedEncodingException
segment
- the segment to be encodedencoding
- the character encoding to encode tojava.io.UnsupportedEncodingException
- when the given encoding parameter is not supportedpublic static java.lang.String encodeQuery(java.lang.String query, java.lang.String encoding) throws java.io.UnsupportedEncodingException
query
- the query to be encodedencoding
- the character encoding to encode tojava.io.UnsupportedEncodingException
- when the given encoding parameter is not supportedpublic static java.lang.String encodeQueryParam(java.lang.String queryParam, java.lang.String encoding) throws java.io.UnsupportedEncodingException
queryParam
- the query parameter to be encodedencoding
- the character encoding to encode tojava.io.UnsupportedEncodingException
- when the given encoding parameter is not supportedpublic static java.lang.String encodeFragment(java.lang.String fragment, java.lang.String encoding) throws java.io.UnsupportedEncodingException
fragment
- the fragment to be encodedencoding
- the character encoding to encode tojava.io.UnsupportedEncodingException
- when the given encoding parameter is not supportedpublic static java.lang.String encode(java.lang.String source, java.lang.String encoding) throws java.io.UnsupportedEncodingException
This can be used to ensure the given String will not contain any characters with reserved URI meaning regardless of URI component.
source
- the String to be encodedencoding
- the character encoding to encode tojava.io.UnsupportedEncodingException
- when the given encoding parameter is not supportedpublic static java.lang.String decode(java.lang.String source, java.lang.String encoding) throws java.io.UnsupportedEncodingException
"a"
through "z"
, "A"
through "Z"
, and
"0"
through "9"
stay the same."-"
, "_"
, "."
, and "*"
stay the same.%<i>xy</i>
" is interpreted as a hexadecimal representation of the character.source
- the encoded Stringencoding
- the encodingjava.lang.IllegalArgumentException
- when the given source contains invalid encoded sequencesjava.io.UnsupportedEncodingException
- when the given encoding parameter is not supportedURLDecoder.decode(String, String)
public static java.lang.String extractFileExtension(java.lang.String path)
path
- the URI path (e.g. "/products/index.html")