@Immutable public class URIUtils extends Object
URIs
, to workaround
bugs within the class or for ease-of-use features.Modifier and Type | Method and Description |
---|---|
static URI |
createURI(String scheme,
String host,
int port,
String path,
String query,
String fragment)
Deprecated.
(4.2) use
URIBuilder . |
static HttpHost |
extractHost(URI uri)
Extracts target host from the given
URI . |
static URI |
resolve(URI originalURI,
HttpHost target,
List<URI> redirects)
Derives the interpreted (absolute) URI that was used to generate the last
request.
|
static URI |
resolve(URI baseURI,
String reference)
Resolves a URI reference against a base URI.
|
static URI |
resolve(URI baseURI,
URI reference)
Resolves a URI reference against a base URI.
|
static URI |
rewriteURI(URI uri)
A convenience method that creates a new
URI whose scheme, host, port, path,
query are taken from the existing URI, dropping any fragment or user-information. |
static URI |
rewriteURI(URI uri,
HttpHost target)
A convenience method for
rewriteURI(URI, HttpHost, boolean) that always keeps the
fragment. |
static URI |
rewriteURI(URI uri,
HttpHost target,
boolean dropFragment)
A convenience method for creating a new
URI whose scheme, host
and port are taken from the target host, but whose path, query and
fragment are taken from the existing URI. |
@Deprecated public static URI createURI(String scheme, String host, int port, String path, String query, String fragment) throws URISyntaxException
URIBuilder
.URI
using all the parameters. This should be
used instead of
URI.URI(String, String, String, int, String, String, String)
or any of the other URI multi-argument URI constructors.scheme
- Scheme namehost
- Host nameport
- Port numberpath
- Pathquery
- Queryfragment
- FragmentURISyntaxException
- If both a scheme and a path are given but the path is
relative, if the URI string constructed from the given
components violates RFC 2396, or if the authority
component of the string is present but cannot be parsed
as a server-based authoritypublic static URI rewriteURI(URI uri, HttpHost target, boolean dropFragment) throws URISyntaxException
URI
whose scheme, host
and port are taken from the target host, but whose path, query and
fragment are taken from the existing URI. The fragment is only used if
dropFragment is false. The path is set to "/" if not explicitly specified.uri
- Contains the path, query and fragment to use.target
- Contains the scheme, host and port to use.dropFragment
- True if the fragment should not be copied.URISyntaxException
- If the resulting URI is invalid.public static URI rewriteURI(URI uri, HttpHost target) throws URISyntaxException
rewriteURI(URI, HttpHost, boolean)
that always keeps the
fragment.URISyntaxException
public static URI rewriteURI(URI uri) throws URISyntaxException
URI
whose scheme, host, port, path,
query are taken from the existing URI, dropping any fragment or user-information.
The path is set to "/" if not explicitly specified. The existing URI is returned
unmodified if it has no fragment or user-information and has a path.uri
- original URI.URISyntaxException
- If the resulting URI is invalid.public static URI resolve(URI baseURI, String reference)
baseURI
- the base URIreference
- the URI referencepublic static URI resolve(URI baseURI, URI reference)
baseURI
- the base URIreference
- the URI referencepublic static HttpHost extractHost(URI uri)
URI
.uri
- null if the URI is
relative or does not contain a valid host name.
public static URI resolve(URI originalURI, HttpHost target, List<URI> redirects) throws URISyntaxException
URI
.originalURI
- original request before any redirectstarget
- if the last URI is relative, it is resolved against this target,
or null
if not available.redirects
- collection of redirect locations since the original request
or null
if not available.URISyntaxException
Copyright © 1999–2013 The Apache Software Foundation. All rights reserved.