public interface WebTarget extends Configurable<WebTarget>
Modifier and Type | Method and Description |
---|---|
java.net.URI |
getUri()
Get the URI identifying the resource.
|
UriBuilder |
getUriBuilder()
Get the URI builder initialized with the
URI of the current resource target. |
WebTarget |
matrixParam(java.lang.String name,
java.lang.Object... values)
Create a new
WebTarget instance by appending a matrix parameter to the existing set of matrix parameters of
the current final segment of the URI of the current target instance. |
WebTarget |
path(java.lang.String path)
Create a new
WebTarget instance by appending path to the URI of the current target instance. |
WebTarget |
queryParam(java.lang.String name,
java.lang.Object... values)
Create a new
WebTarget instance by configuring a query parameter on the URI of the current target instance. |
Invocation.Builder |
request()
Start building a request to the targeted web resource.
|
Invocation.Builder |
request(MediaType... acceptedResponseTypes)
Start building a request to the targeted web resource and define the accepted response media types.
|
Invocation.Builder |
request(java.lang.String... acceptedResponseTypes)
Start building a request to the targeted web resource and define the accepted response media types.
|
WebTarget |
resolveTemplate(java.lang.String name,
java.lang.Object value)
Create a new
WebTarget instance by resolving a URI template with a given name in the URI of the
current target instance using a supplied value. |
WebTarget |
resolveTemplate(java.lang.String name,
java.lang.Object value,
boolean encodeSlashInPath)
Create a new
WebTarget instance by resolving a URI template with a given name in the URI of the
current target instance using a supplied value. |
WebTarget |
resolveTemplateFromEncoded(java.lang.String name,
java.lang.Object value)
Create a new
WebTarget instance by resolving a URI template with a given name in the URI of the
current target instance using a supplied encoded value. |
WebTarget |
resolveTemplates(java.util.Map<java.lang.String,java.lang.Object> templateValues)
Create a new
WebTarget instance by resolving one or more URI templates in the URI of the current target
instance using supplied name-value pairs. |
WebTarget |
resolveTemplates(java.util.Map<java.lang.String,java.lang.Object> templateValues,
boolean encodeSlashInPath)
Create a new
WebTarget instance by resolving one or more URI templates in the URI of the current target
instance using supplied name-value pairs. |
WebTarget |
resolveTemplatesFromEncoded(java.util.Map<java.lang.String,java.lang.Object> templateValues)
Create a new
WebTarget instance by resolving one or more URI templates in the URI of the current target
instance using supplied name-encoded value pairs. |
java.net.URI getUri()
UriBuilder getUriBuilder()
URI
of the current resource target. The returned URI builder is
detached from the target, i.e. any updates in the URI builder MUST NOT have any effects on the URI of the originating
target.WebTarget path(java.lang.String path)
WebTarget
instance by appending path to the URI of the current target instance.
When constructing the final path, a '/' separator will be inserted between the existing path and the supplied path if necessary. Existing '/' characters are preserved thus a single value can represent multiple URI path segments.
A snapshot of the present configuration of the current (parent) target instance is taken and is inherited by the newly constructed (child) target instance.
path
- the path, may contain URI template parameters.java.lang.NullPointerException
- if path is null
.WebTarget resolveTemplate(java.lang.String name, java.lang.Object value)
WebTarget
instance by resolving a URI template with a given name
in the URI of the
current target instance using a supplied value.
In case a null
template name or value is entered a NullPointerException
is thrown.
A snapshot of the present configuration of the current (parent) target instance is taken and is inherited by the newly constructed (child) target instance.
name
- name of the URI template.value
- value to be used to resolve the template.java.lang.NullPointerException
- if the resolved template name or value is null
.WebTarget resolveTemplate(java.lang.String name, java.lang.Object value, boolean encodeSlashInPath)
WebTarget
instance by resolving a URI template with a given name
in the URI of the
current target instance using a supplied value.
In case a null
template name or value is entered a NullPointerException
is thrown.
A snapshot of the present configuration of the current (parent) target instance is taken and is inherited by the newly constructed (child) target instance.
name
- name of the URI template.value
- value to be used to resolve the template.encodeSlashInPath
- if true
, the slash ('/'
) characters in template values will be encoded if
the template is placed in the URI path component, otherwise the slash characters will not be encoded in path
templates.java.lang.NullPointerException
- if the resolved template name or value is null
.WebTarget resolveTemplateFromEncoded(java.lang.String name, java.lang.Object value)
WebTarget
instance by resolving a URI template with a given name
in the URI of the
current target instance using a supplied encoded value.
A template with a matching name will be replaced by the supplied value. Value is converted to String
using
its toString()
method and is then encoded to match the rules of the URI component to which they pertain. All
% characters in the stringified values that are not followed by two hexadecimal numbers will be encoded.
In case a null
template name or value is entered a NullPointerException
is thrown.
A snapshot of the present configuration of the current (parent) target instance is taken and is inherited by the newly constructed (child) target instance.
name
- name of the URI template.value
- encoded value to be used to resolve the template.java.lang.NullPointerException
- if the resolved template name or value is null
.WebTarget resolveTemplates(java.util.Map<java.lang.String,java.lang.Object> templateValues)
WebTarget
instance by resolving one or more URI templates in the URI of the current target
instance using supplied name-value pairs.
A call to the method with an empty parameter map is ignored, i.e. same WebTarget
instance is returned.
A snapshot of the present configuration of the current (parent) target instance is taken and is inherited by the newly constructed (child) target instance.
templateValues
- a map of URI template names and their values.java.lang.NullPointerException
- if the name-value map or any of the names or values in the map is null
.WebTarget resolveTemplates(java.util.Map<java.lang.String,java.lang.Object> templateValues, boolean encodeSlashInPath)
WebTarget
instance by resolving one or more URI templates in the URI of the current target
instance using supplied name-value pairs.
A call to the method with an empty parameter map is ignored, i.e. same WebTarget
instance is returned.
A snapshot of the present configuration of the current (parent) target instance is taken and is inherited by the newly constructed (child) target instance.
templateValues
- a map of URI template names and their values.encodeSlashInPath
- if true
, the slash ('/'
) characters in template values will be encoded if
the template is placed in the URI path component, otherwise the slash characters will not be encoded in path
templates.java.lang.NullPointerException
- if the name-value map or any of the names or values in the map is null
.WebTarget resolveTemplatesFromEncoded(java.util.Map<java.lang.String,java.lang.Object> templateValues)
WebTarget
instance by resolving one or more URI templates in the URI of the current target
instance using supplied name-encoded value pairs.
All templates with their name matching one of the keys in the supplied map will be replaced by the value in the
supplied map. Values are converted to String
using their toString()
method and are then encoded to
match the rules of the URI component to which they pertain. All % characters in the stringified values that are not
followed by two hexadecimal numbers will be encoded.
A call to the method with an empty parameter map is ignored, i.e. same WebTarget
instance is returned.
A snapshot of the present configuration of the current (parent) target instance is taken and is inherited by the newly constructed (child) target instance.
templateValues
- a map of URI template names and their encoded values.java.lang.NullPointerException
- if the name-value map or any of the names or encoded values in the map is null
.WebTarget matrixParam(java.lang.String name, java.lang.Object... values)
WebTarget
instance by appending a matrix parameter to the existing set of matrix parameters of
the current final segment of the URI of the current target instance.
If multiple values are supplied the parameter will be added once per value. In case a single null
value is
entered, all parameters with that name in the current final path segment are removed (if present) from the collection
of last segment matrix parameters inherited from the current target.
Note that the matrix parameters are tied to a particular path segment; appending a value to an existing matrix parameter name will not affect the position of the matrix parameter in the URI path.
A snapshot of the present configuration of the current (parent) target instance is taken and is inherited by the newly constructed (child) target instance.
name
- the matrix parameter name, may contain URI template parameters.values
- the matrix parameter value(s), each object will be converted to a String
using its
toString()
method. Stringified values may contain URI template parameters.java.lang.NullPointerException
- if the parameter name is null
or if there are multiple values present and any of
those values is null
.WebTarget queryParam(java.lang.String name, java.lang.Object... values)
WebTarget
instance by configuring a query parameter on the URI of the current target instance.
If multiple values are supplied the parameter will be added once per value. In case a single null
value is
entered, all parameters with that name are removed (if present) from the collection of query parameters inherited
from the current target.
A snapshot of the present configuration of the current (parent) target instance is taken and is inherited by the newly constructed (child) target instance.
name
- the query parameter name, may contain URI template parametersvalues
- the query parameter value(s), each object will be converted to a String
using its
toString()
method. Stringified values may contain URI template parameters.java.lang.NullPointerException
- if the parameter name is null
or if there are multiple values present and any of
those values is null
.Invocation.Builder request()
Invocation.Builder request(java.lang.String... acceptedResponseTypes)
Invoking this method is identical to:
webTarget.request().accept(types);
acceptedResponseTypes
- accepted response media types.Invocation.Builder request(MediaType... acceptedResponseTypes)
Invoking this method is identical to:
webTarget.request().accept(types);
acceptedResponseTypes
- accepted response media types.