|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface UriInfo
An injectable interface that provides access to application and request
URI information. Relative URIs are relative to the base URI of the
application, see getBaseUri()
.
All methods except getBaseUri()
and
getBaseUriBuilder()
throw java.lang.IllegalStateException
if called outside the scope of a request (e.g. from a provider constructor).
Context
Method Summary | |
---|---|
java.net.URI |
getAbsolutePath()
Get the absolute path of the request. |
UriBuilder |
getAbsolutePathBuilder()
Get the absolute path of the request in the form of a UriBuilder. |
java.util.List<java.lang.Object> |
getAncestorResources()
Get a read-only list of ancestor resource class instances. |
java.util.List<java.lang.String> |
getAncestorResourceURIs()
Get a read-only list of URIs for ancestor resources. |
java.util.List<java.lang.String> |
getAncestorResourceURIs(boolean decode)
Get a read-only list of URIs for ancestor resources. |
java.net.URI |
getBaseUri()
Get the base URI of the application. |
UriBuilder |
getBaseUriBuilder()
Get the base URI of the application in the form of a UriBuilder. |
java.lang.String |
getPath()
Get the path of the current request relative to the base URI as a string. |
java.lang.String |
getPath(boolean decode)
Get the path of the current request relative to the base URI as a string. |
java.lang.String |
getPathExtension()
Get the request URI extension, this includes everything following the first "." in the final path segment of the URI excluding any matrix parameters that might be present after the extension). |
MultivaluedMap<java.lang.String,java.lang.String> |
getPathParameters()
Get the values of any embedded URI template parameters. |
MultivaluedMap<java.lang.String,java.lang.String> |
getPathParameters(boolean decode)
Get the values of any embedded URI template parameters. |
java.util.List<PathSegment> |
getPathSegments()
Get the path of the current request relative to the base URI as a list of PathSegment . |
java.util.List<PathSegment> |
getPathSegments(boolean decode)
Get the path of the current request relative to the base URI as a list of PathSegment . |
UriBuilder |
getPlatonicRequestUriBuilder()
Get the absolute platonic request URI in the form of a UriBuilder. |
MultivaluedMap<java.lang.String,java.lang.String> |
getQueryParameters()
Get the URI query parameters of the current request. |
MultivaluedMap<java.lang.String,java.lang.String> |
getQueryParameters(boolean decode)
Get the URI query parameters of the current request. |
java.net.URI |
getRequestUri()
Get the absolute request URI. |
UriBuilder |
getRequestUriBuilder()
Get the absolute request URI in the form of a UriBuilder. |
Method Detail |
---|
java.lang.String getPath()
getPath(true)
.
java.lang.IllegalStateException
- if called outside the scope of a requestjava.lang.String getPath(boolean decode)
decode
- controls whether sequences of escaped octets are decoded
(true) or not (false).
java.lang.IllegalStateException
- if called outside the scope of a requestjava.util.List<PathSegment> getPathSegments()
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 parmeter names and values are decoded,
equivalent to getPathSegments(true)
.
PathSegment
. The matrix parameter
map of each path segment is also unmodifiable.
java.lang.IllegalStateException
- if called outside the scope of a requestPathSegment
java.util.List<PathSegment> getPathSegments(boolean decode)
PathSegment
. This method is useful when the
path needs to be parsed, particularly when matrix parameters may be
present in the path.
decode
- controls whether sequences of escaped octets in path segments
and matrix parameter names and values are decoded (true) or not (false).
PathSegment
. The matrix parameter
map of each path segment is also unmodifiable.
java.lang.IllegalStateException
- if called outside the scope of a requestPathSegment
java.net.URI getRequestUri()
java.lang.IllegalStateException
- if called outside the scope of a requestUriBuilder getRequestUriBuilder()
java.lang.IllegalStateException
- if called outside the scope of a requestUriBuilder getPlatonicRequestUriBuilder()
http://example.com/resource.xml
and an applications implementation of
ApplicationConfig.getMediaTypeMappings()
returned a map
that included "xml" as a key then the platonic request URI would be:
http://example.com/resource
java.lang.IllegalStateException
- if called outside the scope of a requestjava.net.URI getAbsolutePath()
uriInfo.getBase().resolve(uriInfo.getPath()).
java.lang.IllegalStateException
- if called outside the scope of a requestUriBuilder getAbsolutePathBuilder()
java.lang.IllegalStateException
- if called outside the scope of a requestjava.net.URI getBaseUri()
UriBuilder getBaseUriBuilder()
java.lang.String getPathExtension()
http://example.com/resource.xml.en
this method would return "xml.en" even if an applications
implementation of
ApplicationConfig.getMediaTypeMappings()
returned a map
that included "xml" as a key
MultivaluedMap<java.lang.String,java.lang.String> getPathParameters()
getPathParameters(true)
.
java.lang.IllegalStateException
- if called outside the scope of a requestPath
,
PathParam
MultivaluedMap<java.lang.String,java.lang.String> getPathParameters(boolean decode)
decode
- controls whether sequences of escaped octets are decoded
(true) or not (false).
java.lang.IllegalStateException
- if called outside the scope of a requestPath
,
PathParam
MultivaluedMap<java.lang.String,java.lang.String> getQueryParameters()
getQueryParameters(true)
.
java.lang.IllegalStateException
- if called outside the scope of a requestMultivaluedMap<java.lang.String,java.lang.String> getQueryParameters(boolean decode)
decode
- controls whether sequences of escaped octets in parameter
names and values are decoded (true) or not (false).
java.lang.IllegalStateException
- if called outside the scope of a requestjava.util.List<java.lang.String> getAncestorResourceURIs()
getAncestorResourceURIs(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 root resource URI last. E.g.:
@Path("foo") public class FooResource { @GET public String getFoo() {...} @Path("bar") @GET public String getFooBar() {...} }
A request GET /foo
would return an empty list since
FooResource
is a root resource.
A request GET /foo/bar
would return a list with one
entry: "foo".
java.util.List<java.lang.String> getAncestorResourceURIs(boolean decode)
@Path("foo") public class FooResource { @GET public String getFoo() {...} @Path("bar") @GET public String getFooBar() {...} }
A request GET /foo
would return an empty list since
FooResource
is a root resource.
A request GET /foo/bar
would return a list with one
entry: "foo".
decode
- controls whether sequences of escaped octets are decoded
(true) or not (false).
java.util.List<java.lang.Object> getAncestorResources()
@Path("foo") public class FooResource { @GET public String getFoo() {...} @Path("bar") @GET public String getFooBar() {...} }
A request GET /foo
would return an empty list since
FooResource
is a root resource.
A request GET /foo/bar
would return a list with one
entry: an instance of
FooResource
.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |