|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jboss.resteasy.spi.ResteasyUriInfo
public class ResteasyUriInfo
UriInfo implementation with some added extra methods to help process requests
Constructor Summary | |
---|---|
ResteasyUriInfo(URI base,
URI relative)
|
Method Summary | |
---|---|
void |
addEncodedPathParameter(String name,
String value)
|
protected void |
extractMatchingPath(List<PathSegment> encodedPathSegments)
matching path without matrix parameters |
protected void |
extractParameters(String queryString)
|
URI |
getAbsolutePath()
Get the absolute path of the request. |
UriBuilder |
getAbsolutePathBuilder()
Get the absolute path of the request in the form of a UriBuilder. |
URI |
getBaseUri()
Get the base URI of the application. |
UriBuilder |
getBaseUriBuilder()
Get the base URI of the application in the form of a UriBuilder. |
MultivaluedMap<String,PathSegment[]> |
getEncodedPathParameterPathSegments()
|
protected MultivaluedMap<String,String> |
getEncodedQueryParameters()
|
List<Object> |
getMatchedResources()
Get a read-only list of the currently matched resource class instances. |
List<String> |
getMatchedURIs()
Get a read-only list of URIs for matched resources. |
List<String> |
getMatchedURIs(boolean decode)
Get a read-only list of URIs for matched resources. |
String |
getMatchingPath()
Encoded path without matrix parameters |
String |
getPath()
Get the path of the current request relative to the base URI as a string. |
String |
getPath(boolean decode)
Get the path of the current request relative to the base URI as a string. |
MultivaluedMap<String,PathSegment[]> |
getPathParameterPathSegments()
|
MultivaluedMap<String,String> |
getPathParameters()
Get the values of any embedded URI template parameters. |
MultivaluedMap<String,String> |
getPathParameters(boolean decode)
Get the values of any embedded URI template parameters. |
List<PathSegment> |
getPathSegments()
Get the path of the current request relative to the base URI as a list of PathSegment . |
List<PathSegment> |
getPathSegments(boolean decode)
Get the path of the current request relative to the base URI as a list of PathSegment . |
MultivaluedMap<String,String> |
getQueryParameters()
Get the URI query parameters of the current request. |
MultivaluedMap<String,String> |
getQueryParameters(boolean decode)
Get the URI query parameters of the current request. |
URI |
getRequestUri()
Get the absolute request URI including any query parameters. |
UriBuilder |
getRequestUriBuilder()
Get the absolute request URI in the form of a UriBuilder. |
void |
popCurrentResource()
|
void |
popMatchedURI()
|
void |
pushCurrentResource(Object resource)
|
void |
pushMatchedURI(String encoded,
String decoded)
|
ResteasyUriInfo |
relative(URI relative)
Create a UriInfo from the baseURI |
URI |
relativize(URI uri)
Relativize a URI with respect to the current request URI. |
URI |
relativize(URI from,
URI uri)
Relativize a URI as follows: If URI to relativize is already relative, it is first resolved using UriInfo.resolve(java.net.URI) and the result is normalized.
The resulting URI is relativize with respect to the first URI passed to
this method. |
URI |
resolve(URI uri)
Resolve a relative URI with respect to the base URI of the application. |
URI |
resolve(URI baseUri,
URI uri)
Resolve a relative URI with respect to a base URI. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ResteasyUriInfo(URI base, URI relative)
Method Detail |
---|
protected void extractMatchingPath(List<PathSegment> encodedPathSegments)
encodedPathSegments
- public String getMatchingPath()
public ResteasyUriInfo relative(URI relative)
relative
-
public String getPath()
UriInfo
getPath(true)
.
getPath
in interface UriInfo
public String getPath(boolean decode)
UriInfo
getPath
in interface UriInfo
decode
- controls whether sequences of escaped octets are decoded
(true
) or not (false
).
public List<PathSegment> getPathSegments()
UriInfo
PathSegment
. This method is useful when the
path needs to be parsed, particularly when matrix parameters may be
present in the path. All sequences of escaped octets in path segments
and matrix parameter values are decoded,
equivalent to getPathSegments(true)
.
getPathSegments
in interface UriInfo
PathSegment
. The matrix parameter
map of each path segment is also unmodifiable.PathSegment
,
Matrix URIspublic List<PathSegment> getPathSegments(boolean decode)
UriInfo
PathSegment
. This method is useful when the path needs to be parsed,
particularly when matrix parameters may be present in the path.
getPathSegments
in interface UriInfo
decode
- controls whether sequences of escaped octets in path segments
and matrix parameter values are decoded (true
) or not (false
).
PathSegment
. The matrix parameter
map of each path segment is also unmodifiable.PathSegment
,
Matrix URIspublic URI getRequestUri()
UriInfo
getRequestUri
in interface UriInfo
public UriBuilder getRequestUriBuilder()
UriInfo
getRequestUriBuilder
in interface UriInfo
public URI getAbsolutePath()
UriInfo
uriInfo.getBaseUri().resolve(uriInfo.getPath(false))
.
getAbsolutePath
in interface UriInfo
public UriBuilder getAbsolutePathBuilder()
UriInfo
getAbsolutePathBuilder
in interface UriInfo
public URI getBaseUri()
UriInfo
getBaseUri
in interface UriInfo
public UriBuilder getBaseUriBuilder()
UriInfo
getBaseUriBuilder
in interface UriInfo
public MultivaluedMap<String,String> getPathParameters()
UriInfo
getPathParameters(true)
.
getPathParameters
in interface UriInfo
Path
,
PathParam
public void addEncodedPathParameter(String name, String value)
public MultivaluedMap<String,PathSegment[]> getEncodedPathParameterPathSegments()
public MultivaluedMap<String,PathSegment[]> getPathParameterPathSegments()
public MultivaluedMap<String,String> getPathParameters(boolean decode)
UriInfo
getPathParameters
in interface UriInfo
decode
- controls whether sequences of escaped octets are decoded
(true
) or not (false
).
Path
,
PathParam
public MultivaluedMap<String,String> getQueryParameters()
UriInfo
getQueryParameters(true)
.
getQueryParameters
in interface UriInfo
protected MultivaluedMap<String,String> getEncodedQueryParameters()
public MultivaluedMap<String,String> getQueryParameters(boolean decode)
UriInfo
getQueryParameters
in interface UriInfo
decode
- controls whether sequences of escaped octets in parameter
names and values are decoded (true
) or not (false
).
protected void extractParameters(String queryString)
public List<String> getMatchedURIs(boolean decode)
UriInfo
UriInfo.getMatchedURIs()
for an
example.
In case the method is invoked prior to the request matching (e.g. from a
pre-matching filter), the method returns an empty list.
getMatchedURIs
in interface UriInfo
decode
- controls whether sequences of escaped octets are decoded
(true
) or not (false
).
public List<String> getMatchedURIs()
UriInfo
getMatchedURIs(true)
.
Entries do not include query parameters but do include matrix parameters
if present in the request URI. Entries are ordered in reverse request
URI matching order, with the current resource URI first. E.g. given the
following resource classes:
@Path("foo") public class FooResource { @GET public String getFoo() {...} @Path("bar") public BarResource getBarResource() {...} } public class BarResource { @GET public String getBar() {...} }
The values returned by this method based on request uri and where the method is called from are:
Request | Called from | Value(s) |
---|---|---|
GET /foo | FooResource.getFoo | foo |
GET /foo/bar | FooResource.getBarResource | foo/bar, foo |
GET /foo/bar | BarResource.getBar | foo/bar, foo |
getMatchedURIs
in interface UriInfo
public List<Object> getMatchedResources()
UriInfo
@Path("foo") public class FooResource { @GET public String getFoo() {...} @Path("bar") public BarResource getBarResource() {...} } public class BarResource { @GET public String getBar() {...} }
The values returned by this method based on request uri and where the method is called from are:
Request | Called from | Value(s) |
---|---|---|
GET /foo | FooResource.getFoo | FooResource |
GET /foo/bar | FooResource.getBarResource | FooResource |
GET /foo/bar | BarResource.getBar | BarResource, FooResource |
getMatchedResources
in interface UriInfo
public void pushCurrentResource(Object resource)
public void popCurrentResource()
public void pushMatchedURI(String encoded, String decoded)
public void popMatchedURI()
public URI resolve(URI uri)
UriInfo
uriInfo.resolve(uriInfo.getBaseUri(), uri)
.
The resolved URI returned by this method is normalized. If the supplied URI is
already resolved, it is just returned.
resolve
in interface UriInfo
uri
- URI to resolve against the base URI of the application.
public URI resolve(URI baseUri, URI uri)
UriInfo
resolve
in interface UriInfo
baseUri
- base URI used for resolution.uri
- URI to resolve against a base URI.
public URI relativize(URI uri)
UriInfo
uriInfo.relativize(uriInfo.getRequestUri(), uri)
.
relativize
in interface UriInfo
uri
- URI to relativize against the request URI.
public URI relativize(URI from, URI uri)
UriInfo
Relativize a URI as follows:
UriInfo.resolve(java.net.URI)
and the result is normalized.Examples:
From URI: http://host:port/app/root/a/b/c
Supplied URI: a/d/e
Returned URI: ../../d/e
From URI: http://host:port/app/root/a/b/c
Supplied URI: http://host:port/app/root/a/d/e
Returned URI: ../../d/e
From URI: http://host1:port1/app/root/a/b/c
Supplied URI: http://host2:port2/app/root/a/d/e
Returned URI: http://host2:port2/app/root/a/d/e
In the last example, the supplied URI is returned given that it is absolute and there is no common prefix between it and the from URI.
relativize
in interface UriInfo
from
- URI from which to relativize.uri
- URI to relativize against the from URI.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |