public class UriComponentsBuilder
extends java.lang.Object
UriComponents
.
Typical usage involves:
UriComponentsBuilder
with one of the static factory methods (such as
fromPath(String)
or fromUri(URI)
)scheme(String)
,
userInfo(String)
, host(String)
, port(int)
, path(String)
,
pathSegment(String...)
, queryParam(String, Object...)
, and
fragment(String)
.UriComponents
instance with the build()
method.newInstance()
,
fromPath(String)
,
fromUri(URI)
Modifier | Constructor and Description |
---|---|
protected |
UriComponentsBuilder()
Default constructor.
|
Modifier and Type | Method and Description |
---|---|
UriComponents |
build()
Builds a
UriComponents instance from the various components contained in this builder. |
UriComponents |
build(boolean encoded)
Builds a
UriComponents instance from the various components contained in this builder. |
UriComponents |
buildAndExpand(java.util.Map<java.lang.String,?> uriVariables)
Builds a
UriComponents instance and replaces URI template variables
with the values from a map. |
UriComponents |
buildAndExpand(java.lang.Object... uriVariableValues)
Builds a
UriComponents instance and replaces URI template variables
with the values from an array. |
UriComponentsBuilder |
fragment(java.lang.String fragment)
Sets the URI fragment.
|
static UriComponentsBuilder |
fromHttpUrl(java.lang.String httpUrl)
Creates a new
UriComponents object from the string HTTP URL. |
static UriComponentsBuilder |
fromPath(java.lang.String path)
Returns a builder that is initialized with the given path.
|
static UriComponentsBuilder |
fromUri(java.net.URI uri)
Returns a builder that is initialized with the given
URI . |
static UriComponentsBuilder |
fromUriString(java.lang.String uri)
Returns a builder that is initialized with the given URI string.
|
UriComponentsBuilder |
host(java.lang.String host)
Sets the URI host.
|
static UriComponentsBuilder |
newInstance()
Returns a new, empty builder.
|
UriComponentsBuilder |
path(java.lang.String path)
Appends the given path to the existing path of this builder.
|
UriComponentsBuilder |
pathSegment(java.lang.String... pathSegments)
Appends the given path segments to the existing path of this builder.
|
UriComponentsBuilder |
port(int port)
Sets the URI port.
|
UriComponentsBuilder |
query(java.lang.String query)
Appends the given query to the existing query of this builder.
|
UriComponentsBuilder |
queryParam(java.lang.String name,
java.lang.Object... values)
Appends the given query parameter to the existing query parameters.
|
UriComponentsBuilder |
replacePath(java.lang.String path)
Sets the path of this builder overriding all existing path and path segment values.
|
UriComponentsBuilder |
replaceQuery(java.lang.String query)
Sets the query of this builder overriding all existing query parameters.
|
UriComponentsBuilder |
replaceQueryParam(java.lang.String name,
java.lang.Object... values)
Sets the query parameter values overriding all existing query values for the same parameter.
|
UriComponentsBuilder |
scheme(java.lang.String scheme)
Sets the URI scheme.
|
UriComponentsBuilder |
uri(java.net.URI uri)
Initializes all components of this URI builder with the components of the given URI.
|
UriComponentsBuilder |
userInfo(java.lang.String userInfo)
Sets the URI user info.
|
protected UriComponentsBuilder()
newInstance()
,
fromPath(String)
,
fromUri(URI)
public static UriComponentsBuilder newInstance()
UriComponentsBuilder
public static UriComponentsBuilder fromPath(java.lang.String path)
path
- the path to initialize withUriComponentsBuilder
public static UriComponentsBuilder fromUri(java.net.URI uri)
URI
.uri
- the URI to initialize withUriComponentsBuilder
public static UriComponentsBuilder fromUriString(java.lang.String uri)
uri
- the URI string to initialize withUriComponentsBuilder
public static UriComponentsBuilder fromHttpUrl(java.lang.String httpUrl)
UriComponents
object from the string HTTP URL.httpUrl
- the source URIpublic UriComponents build()
UriComponents
instance from the various components contained in this builder.public UriComponents build(boolean encoded)
UriComponents
instance from the various components contained in this builder.encoded
- whether all the components set in this builder are encoded (true
) or not (false
).public UriComponents buildAndExpand(java.util.Map<java.lang.String,?> uriVariables)
UriComponents
instance and replaces URI template variables
with the values from a map. This is a shortcut method, which combines
calls to build()
and then UriComponents.expand(Map)
.uriVariables
- the map of URI variablespublic UriComponents buildAndExpand(java.lang.Object... uriVariableValues)
UriComponents
instance and replaces URI template variables
with the values from an array. This is a shortcut method, which combines
calls to build()
and then UriComponents.expand(Object...)
.uriVariableValues
- URI variable valuespublic UriComponentsBuilder uri(java.net.URI uri)
uri
- the URIpublic UriComponentsBuilder scheme(java.lang.String scheme)
null
to clear the
scheme of this builder.scheme
- the URI schemepublic UriComponentsBuilder userInfo(java.lang.String userInfo)
null
to
clear the user info of this builder.userInfo
- the URI user infopublic UriComponentsBuilder host(java.lang.String host)
null
to clear the host
of this builder.host
- the URI hostpublic UriComponentsBuilder port(int port)
-1
will clear the port of this builder.port
- the URI portpublic UriComponentsBuilder path(java.lang.String path)
path
- the URI pathpublic UriComponentsBuilder replacePath(java.lang.String path)
path
- the URI path; a null
value results in an empty path.public UriComponentsBuilder pathSegment(java.lang.String... pathSegments) throws java.lang.IllegalArgumentException
pathSegments
- the URI path segmentsjava.lang.IllegalArgumentException
public UriComponentsBuilder query(java.lang.String query)
query
- the query stringpublic UriComponentsBuilder replaceQuery(java.lang.String query)
query
- the query string; a null
value removes all query parameters.public UriComponentsBuilder queryParam(java.lang.String name, java.lang.Object... values)
?foo
instead of ?foo=bar
.name
- the query parameter namevalues
- the query parameter valuespublic UriComponentsBuilder replaceQueryParam(java.lang.String name, java.lang.Object... values)
name
- the query parameter namevalues
- the query parameter valuespublic UriComponentsBuilder fragment(java.lang.String fragment)
null
to clear
the fragment of this builder.fragment
- the URI fragment