public final class URISupport extends Object
Modifier and Type | Field and Description |
---|---|
static String |
RAW_TOKEN_END |
static String |
RAW_TOKEN_START |
Modifier and Type | Method and Description |
---|---|
static String |
appendParametersToURI(String originalURI,
Map<String,Object> newParameters)
Appends the given parameters to the given URI.
|
static String |
createQueryString(Map<String,Object> options)
Assembles a query from the given map.
|
static URI |
createRemainingURI(URI originalURI,
Map<String,Object> params)
Creates a URI from the original URI and the remaining parameters
Used by various Camel components
|
static URI |
createURIWithQuery(URI uri,
String query)
Creates a URI with the given query
|
static Map<String,Object> |
extractProperties(Map<String,Object> properties,
String optionPrefix) |
static String |
extractRemainderPath(URI u,
boolean useRaw)
Extracts the scheme specific path from the URI that is used as the remainder option when creating endpoints.
|
static String |
normalizeUri(String uri)
Normalizes the uri by reordering the parameters so they are sorted and thus
we can use the uris for endpoint matching.
|
static Map<String,Object> |
parseParameters(URI uri)
Parses the query parameters of the uri (eg the query part).
|
static Map<String,Object> |
parseQuery(String uri)
Parses the query part of the uri (eg the parameters).
|
static Map<String,Object> |
parseQuery(String uri,
boolean useRaw)
Parses the query part of the uri (eg the parameters).
|
static Map<String,Object> |
parseQuery(String uri,
boolean useRaw,
boolean lenient)
Parses the query part of the uri (eg the parameters).
|
static String |
pathAndQueryOf(URI uri) |
static void |
resolveRawParameterValues(Map<String,Object> parameters)
Traverses the given parameters, and resolve any parameter values which uses the RAW token
syntax: key=RAW(value).
|
static String |
sanitizePath(String path)
Removes detected sensitive information (such as passwords) from the
path part of an URI (that is, the part without the query
parameters or component prefix) and returns the result.
|
static String |
sanitizeUri(String uri)
Removes detected sensitive information (such as passwords) from the URI and returns the result.
|
static String |
stripPrefix(String value,
String prefix)
Strips the prefix from the value.
|
public static final String RAW_TOKEN_START
public static final String RAW_TOKEN_END
public static String sanitizeUri(String uri)
uri
- The uri to sanitize.and #USERINFO_PASSWORD for the matched pattern
public static String sanitizePath(String path)
path
- the URI path to sanitizepublic static String extractRemainderPath(URI u, boolean useRaw)
u
- the URIuseRaw
- whether to force using raw valuespublic static Map<String,Object> parseQuery(String uri) throws URISyntaxException
uri
- the uriURISyntaxException
- is thrown if uri has invalid syntax.RAW_TOKEN_START
,
RAW_TOKEN_END
public static Map<String,Object> parseQuery(String uri, boolean useRaw) throws URISyntaxException
uri
- the uriuseRaw
- whether to force using raw valuesURISyntaxException
- is thrown if uri has invalid syntax.RAW_TOKEN_START
,
RAW_TOKEN_END
public static Map<String,Object> parseQuery(String uri, boolean useRaw, boolean lenient) throws URISyntaxException
uri
- the uriuseRaw
- whether to force using raw valueslenient
- whether to parse lenient and ignore trailing & markers which has no key or value which can happen when using HTTP componentsURISyntaxException
- is thrown if uri has invalid syntax.RAW_TOKEN_START
,
RAW_TOKEN_END
public static Map<String,Object> parseParameters(URI uri) throws URISyntaxException
uri
- the uriURISyntaxException
- is thrown if uri has invalid syntax.public static void resolveRawParameterValues(Map<String,Object> parameters)
parameters
- the uri parametersparseQuery(String)
,
RAW_TOKEN_START
,
RAW_TOKEN_END
public static URI createURIWithQuery(URI uri, String query) throws URISyntaxException
uri
- the uriquery
- the query to append to the uriURISyntaxException
- is thrown if uri has invalid syntax.public static String stripPrefix(String value, String prefix)
value
- the valueprefix
- the prefix to remove from valuepublic static String createQueryString(Map<String,Object> options) throws URISyntaxException
options
- the map with the options (eg key/value pairs)URISyntaxException
- is thrown if uri has invalid syntax.public static URI createRemainingURI(URI originalURI, Map<String,Object> params) throws URISyntaxException
URISyntaxException
public static String appendParametersToURI(String originalURI, Map<String,Object> newParameters) throws URISyntaxException, UnsupportedEncodingException
originalURI
, it will be replaced by its value in newParameters
.originalURI
- the original URInewParameters
- the parameters to addURISyntaxException
- is thrown if the uri syntax is invalidUnsupportedEncodingException
- is thrown if encoding errorpublic static String normalizeUri(String uri) throws URISyntaxException, UnsupportedEncodingException
uri
- the uriURISyntaxException
- in thrown if the uri syntax is invalidUnsupportedEncodingException
- is thrown if encoding errorRAW_TOKEN_START
,
RAW_TOKEN_END
public static Map<String,Object> extractProperties(Map<String,Object> properties, String optionPrefix)
public static String pathAndQueryOf(URI uri)
Apache Camel