public final class UriParser extends Object
Modifier and Type | Field and Description |
---|---|
static char |
TRANS_SEPARATOR
The set of valid separators.
|
Modifier and Type | Method and Description |
---|---|
static void |
appendEncoded(StringBuilder buffer,
String unencodedValue,
char[] reserved)
Encodes and appends a string to a StringBuilder.
|
static void |
canonicalizePath(StringBuilder buffer,
int offset,
int length,
FileNameParser fileNameParser) |
static void |
checkUriEncoding(String uri)
Decodes the String.
|
static String |
decode(String encodedStr)
Removes %nn encodings from a string.
|
static void |
decode(StringBuilder buffer,
int offset,
int length)
Removes %nn encodings from a string.
|
static String |
encode(String decodedStr)
Converts "special" characters to their %nn value.
|
static String[] |
encode(String[] strings)
Encode an array of Strings.
|
static void |
encode(StringBuilder buffer,
int offset,
int length,
char[] reserved)
Encodes a set of reserved characters in a StringBuilder, using the URI %nn encoding.
|
static String |
encode(String decodedStr,
char[] reserved)
Converts "special" characters to their %nn value.
|
static String |
extractFirstElement(StringBuilder name)
Extracts the first element of a path.
|
static String |
extractQueryString(StringBuilder name)
Extract the query String from the URI.
|
static String |
extractScheme(String uri)
Deprecated.
Use instead
extractScheme(java.lang.String[], java.lang.String) . Will be removed in 3.0. |
static String |
extractScheme(String[] schemes,
String uri)
Extracts the scheme from a URI.
|
static String |
extractScheme(String[] schemes,
String uri,
StringBuilder buffer)
Extracts the scheme from a URI.
|
static String |
extractScheme(String uri,
StringBuilder buffer)
Deprecated.
Use instead
extractScheme(java.lang.String[], java.lang.String) . Will be removed in 3.0. |
static boolean |
fixSeparators(StringBuilder name)
Normalises the separators in a name.
|
static FileType |
normalisePath(StringBuilder path)
Normalises a path.
|
public static final char TRANS_SEPARATOR
public static void appendEncoded(StringBuilder buffer, String unencodedValue, char[] reserved)
buffer
- The StringBuilder to append to.unencodedValue
- The String to encode and append.reserved
- characters to encode.public static void canonicalizePath(StringBuilder buffer, int offset, int length, FileNameParser fileNameParser) throws FileSystemException
FileSystemException
public static void checkUriEncoding(String uri) throws FileSystemException
uri
- The String to decode.FileSystemException
- if an error occurs.public static String decode(String encodedStr) throws FileSystemException
encodedStr
- The encoded String.FileSystemException
- if an error occurs.public static void decode(StringBuilder buffer, int offset, int length) throws FileSystemException
buffer
- StringBuilder containing the string to decode.offset
- The position in the string to start decoding.length
- The number of characters to decode.FileSystemException
- if an error occurs.public static String encode(String decodedStr)
decodedStr
- The decoded String.public static String encode(String decodedStr, char[] reserved)
decodedStr
- The decoded String.reserved
- Characters to encode.public static String[] encode(String[] strings)
strings
- The array of Strings to encode.public static void encode(StringBuilder buffer, int offset, int length, char[] reserved)
buffer
- The StringBuilder to append to.offset
- The position in the buffer to start encoding at.length
- The number of characters to encode.reserved
- characters to encode.public static String extractFirstElement(StringBuilder name)
name
- StringBuilder containing the path.public static String extractQueryString(StringBuilder name)
name
- StringBuilder containing the URI.public static String extractScheme(String[] schemes, String uri)
The scheme is extracted based on the currently supported schemes in the system. That is to say the schemes supported by the registered providers.
This allows us to handle varying scheme's without making assumptions based on the ':' character. Specifically handle scheme extraction calls for URI parameters that are not actually uri's, but may be names with ':' in them.
schemes
- The schemes to check.uri
- The potential URI. May also be a name.public static String extractScheme(String[] schemes, String uri, StringBuilder buffer)
The scheme is extracted based on the given set of schemes. Normally, that is to say the schemes supported by the registered providers.
This allows us to handle varying scheme's without making assumptions based on the ':' character. Specifically handle scheme extraction calls for URI parameters that are not actually URI's, but may be names with ':' in them.
schemes
- The schemes to check.uri
- The potential URI. May also just be a name.buffer
- Returns the remainder of the URI.@Deprecated public static String extractScheme(String uri)
extractScheme(java.lang.String[], java.lang.String)
. Will be removed in 3.0.uri
- The URI.@Deprecated public static String extractScheme(String uri, StringBuilder buffer)
extractScheme(java.lang.String[], java.lang.String)
. Will be removed in 3.0.uri
- The URI.buffer
- Returns the remainder of the URI.public static boolean fixSeparators(StringBuilder name)
name
- The StringBuilder containing the namepublic static FileType normalisePath(StringBuilder path) throws FileSystemException
path
- The path to normalize.FileSystemException
- if an error occurs.fixSeparators(java.lang.StringBuilder)
Copyright © 2002–2020 The Apache Software Foundation. All rights reserved.