|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.sun.jersey.spi.container.ContainerRequest
public class ContainerRequest
An in-bound HTTP request to be processed by the web application.
Containers instantiate, or inherit, and provide an instance to theWebApplication.
By default the implementation of SecurityContext will throw
UnsupportedOperationException if the methods are invoked.
Containers SHOULD use the method setSecurityContext(javax.ws.rs.core.SecurityContext)
to define security context behaviour rather than extending from this class
and overriding the methods.
| Field Summary | |
|---|---|
static java.lang.String |
VARY_HEADER
|
| Fields inherited from interface javax.ws.rs.core.HttpHeaders |
|---|
ACCEPT, ACCEPT_CHARSET, ACCEPT_ENCODING, ACCEPT_LANGUAGE, AUTHORIZATION, CACHE_CONTROL, CONTENT_ENCODING, CONTENT_LANGUAGE, CONTENT_LENGTH, CONTENT_LOCATION, CONTENT_TYPE, COOKIE, DATE, ETAG, EXPIRES, HOST, IF_MATCH, IF_MODIFIED_SINCE, IF_NONE_MATCH, IF_UNMODIFIED_SINCE, LAST_MODIFIED, LOCATION, SET_COOKIE, USER_AGENT, VARY, WWW_AUTHENTICATE |
| Fields inherited from interface javax.ws.rs.core.SecurityContext |
|---|
BASIC_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH, FORM_AUTH |
| Constructor Summary | |
|---|---|
ContainerRequest(WebApplication wa,
java.lang.String method,
java.net.URI baseUri,
java.net.URI requestUri,
InBoundHeaders headers,
java.io.InputStream entity)
Create a new container request. |
|
| Method Summary | ||
|---|---|---|
Response.ResponseBuilder |
evaluatePreconditions()
Evaluate request preconditions for a resource that does not currently exist. |
|
Response.ResponseBuilder |
evaluatePreconditions(java.util.Date lastModified)
Evaluate request preconditions based on the passed in value. |
|
Response.ResponseBuilder |
evaluatePreconditions(java.util.Date lastModified,
EntityTag eTag)
Evaluate request preconditions based on the passed in value. |
|
Response.ResponseBuilder |
evaluatePreconditions(EntityTag eTag)
Evaluate request preconditions based on the passed in value. |
|
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.util.Locale> |
getAcceptableLanguages()
Get a list of languages that are acceptable for the response. |
|
MediaType |
getAcceptableMediaType(java.util.List<MediaType> mediaTypes)
Select the first media type, from a list of media types, that is most acceptable according to the requested acceptable media types. |
|
java.util.List<MediaType> |
getAcceptableMediaTypes()
Get a list of media types that are acceptable for the response. |
|
java.util.List<MediaType> |
getAcceptableMediaTypes(java.util.List<QualitySourceMediaType> priorityMediaTypes)
Get a list of media types that are acceptable for the response. |
|
java.lang.String |
getAuthenticationScheme()
Returns the string value of the authentication scheme used to protect the resource. |
|
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. |
|
MultivaluedMap<java.lang.String,java.lang.String> |
getCookieNameValueMap()
Get the cookie name value map. |
|
java.util.Map<java.lang.String,Cookie> |
getCookies()
Get any cookies that accompanied the request. |
|
|
getEntity(java.lang.Class<T> type)
Get the request entity, returns null if the request does not contain an entity body. |
|
|
getEntity(java.lang.Class<T> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] as)
Get the request entity, returns null if the request does not contain an entity body. |
|
java.io.InputStream |
getEntityInputStream()
Get the input stream of the entity. |
|
Form |
getFormParameters()
Get the form parameters of the request entity. |
|
java.lang.String |
getHeaderValue(java.lang.String name)
Get a HTTP header value. |
|
java.util.Locale |
getLanguage()
Get the language of the request entity |
|
MediaType |
getMediaType()
Get the media type of the request entity |
|
MessageBodyWorkers |
getMessageBodyWorkers()
Get the message body workers. |
|
java.lang.String |
getMethod()
Get the request method, e.g. |
|
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.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. |
|
java.util.Map<java.lang.String,java.lang.Object> |
getProperties()
Get the mutable properties. |
|
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.util.List<java.lang.String> |
getRequestHeader(java.lang.String name)
Get the values of a HTTP request header. |
|
MultivaluedMap<java.lang.String,java.lang.String> |
getRequestHeaders()
Get the values of HTTP request headers. |
|
java.net.URI |
getRequestUri()
Get the absolute request URI. |
|
UriBuilder |
getRequestUriBuilder()
Get the absolute request URI in the form of a UriBuilder. |
|
SecurityContext |
getSecurityContext()
Get the security context. |
|
java.security.Principal |
getUserPrincipal()
Returns a java.security.Principal object containing the
name of the current authenticated user. |
|
boolean |
isSecure()
Returns a boolean indicating whether this request was made using a secure channel, such as HTTPS. |
|
boolean |
isTracingEnabled()
Check if tracing is enabled. |
|
boolean |
isUserInRole(java.lang.String role)
Returns a boolean indicating whether the authenticated user is included in the specified logical "role". |
|
Variant |
selectVariant(java.util.List<Variant> variants)
Select the representation variant that best matches the request. |
|
|
setEntity(java.lang.Class<T> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
MediaType mediaType,
MultivaluedMap<java.lang.String,java.lang.Object> httpHeaders,
T entity)
Set the request entity. |
|
void |
setEntityInputStream(java.io.InputStream entity)
Set the input stream of the entity. |
|
void |
setHeaders(InBoundHeaders headers)
Set the request headers. |
|
void |
setMethod(java.lang.String method)
Set the HTTP method. |
|
void |
setSecurityContext(SecurityContext securityContext)
Set the security context. |
|
void |
setUris(java.net.URI baseUri,
java.net.URI requestUri)
Set the base and request URI. |
|
void |
trace(java.lang.String message)
Add a trace message. |
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final java.lang.String VARY_HEADER
| Constructor Detail |
|---|
public ContainerRequest(WebApplication wa,
java.lang.String method,
java.net.URI baseUri,
java.net.URI requestUri,
InBoundHeaders headers,
java.io.InputStream entity)
wa - the web applicationmethod - the HTTP methodbaseUri - the base URI of the requestrequestUri - the request URIheaders - the request headersentity - the InputStream of the request entity| Method Detail |
|---|
public java.util.Map<java.lang.String,java.lang.Object> getProperties()
public void setMethod(java.lang.String method)
method - the method.
public void setUris(java.net.URI baseUri,
java.net.URI requestUri)
baseUri - the base URI.requestUri - the (complete) request URI.public java.io.InputStream getEntityInputStream()
public void setEntityInputStream(java.io.InputStream entity)
entity - the input stream of the entity.public void setHeaders(InBoundHeaders headers)
headers - the request headers.public void setSecurityContext(SecurityContext securityContext)
securityContext - the security context.public SecurityContext getSecurityContext()
public MessageBodyWorkers getMessageBodyWorkers()
public boolean isTracingEnabled()
Traceable
isTracingEnabled in interface Traceablepublic void trace(java.lang.String message)
Traceable
A trace message will be added if Traceable.isTracingEnabled() returns
true and tracing contraints are satisfied.
trace in interface Traceablemessage - the trace message to add.public java.net.URI getBaseUri()
HttpRequestContext
getBaseUri in interface HttpRequestContextpublic UriBuilder getBaseUriBuilder()
HttpRequestContext
getBaseUriBuilder in interface HttpRequestContextpublic java.net.URI getRequestUri()
HttpRequestContext
getRequestUri in interface HttpRequestContextpublic UriBuilder getRequestUriBuilder()
HttpRequestContext
getRequestUriBuilder in interface HttpRequestContextpublic java.net.URI getAbsolutePath()
HttpRequestContexturiInfo.getBase().resolve(uriInfo.getPath()).
getAbsolutePath in interface HttpRequestContextpublic UriBuilder getAbsolutePathBuilder()
HttpRequestContext
getAbsolutePathBuilder in interface HttpRequestContextpublic java.lang.String getPath()
HttpRequestContextgetPath(true).
getPath in interface HttpRequestContextpublic java.lang.String getPath(boolean decode)
HttpRequestContext
getPath in interface HttpRequestContextdecode - controls whether sequences of escaped octets are decoded
(true) or not (false).
public java.util.List<PathSegment> getPathSegments()
HttpRequestContextPathSegment. 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 names and values are decoded,
equivalent to getPathSegments(true).
getPathSegments in interface HttpRequestContextPathSegment. The matrix parameter
map of each path segment is also unmodifiable.PathSegment,
Matrix URIspublic java.util.List<PathSegment> getPathSegments(boolean decode)
HttpRequestContextPathSegment. This method is useful when the
path needs to be parsed, particularly when matrix parameters may be
present in the path.
getPathSegments in interface HttpRequestContextdecode - 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.PathSegment,
Matrix URIspublic MultivaluedMap<java.lang.String,java.lang.String> getQueryParameters()
HttpRequestContextgetQueryParameters(true).
getQueryParameters in interface HttpRequestContextpublic MultivaluedMap<java.lang.String,java.lang.String> getQueryParameters(boolean decode)
HttpRequestContext
getQueryParameters in interface HttpRequestContextdecode - controls whether sequences of escaped octets in parameter
names and values are decoded (true) or not (false).
public java.lang.String getHeaderValue(java.lang.String name)
HttpRequestContext
getHeaderValue in interface HttpRequestContextname - the HTTP header
public <T> T getEntity(java.lang.Class<T> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] as)
HttpRequestContext
getEntity in interface HttpRequestContexttype - the type of entitygenericType - type the generic type of entity, it is the responsibility
of the callee to ensure that the type and generic type are
consistent otherwise the behaviour of this method is undefined.as - the annotations associated with the type
public <T> void setEntity(java.lang.Class<T> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
MediaType mediaType,
MultivaluedMap<java.lang.String,java.lang.Object> httpHeaders,
T entity)
type - the class of object that is to be written.genericType - the type of object to be written, obtained either
by reflection of a resource method return type or by inspection
of the returned instance. GenericEntity
provides a way to specify this information at runtime.annotations - an array of the annotations on the resource
method that returns the object.mediaType - the media type of the HTTP entity.httpHeaders - a mutable map of the HTTP response headers.entity - the entity instance to write.
MappableContainerException - encapsulates exceptions thrown while
serializing the entity.public <T> T getEntity(java.lang.Class<T> type)
HttpRequestContext
getEntity in interface HttpRequestContexttype - the type of entity
public MediaType getAcceptableMediaType(java.util.List<MediaType> mediaTypes)
HttpRequestContext
getAcceptableMediaType in interface HttpRequestContextmediaTypes - the list of media types
public java.util.List<MediaType> getAcceptableMediaTypes(java.util.List<QualitySourceMediaType> priorityMediaTypes)
HttpRequestContext
getAcceptableMediaTypes in interface HttpRequestContextpriorityMediaTypes - the list of media types that take priority,
ordered according to the quality source parameter, "qs" as the
primary key.
public MultivaluedMap<java.lang.String,java.lang.String> getCookieNameValueMap()
HttpRequestContext
getCookieNameValueMap in interface HttpRequestContextpublic Form getFormParameters()
HttpRequestContextThis method will ensure that the request entity is buffered such that it may be consumed by the application.
getFormParameters in interface HttpRequestContextpublic MultivaluedMap<java.lang.String,java.lang.String> getRequestHeaders()
HttpHeaders
getRequestHeaders in interface HttpHeaderspublic java.util.List<java.lang.String> getRequestHeader(java.lang.String name)
HttpHeadersgetRequestHeaders().get(name).
getRequestHeader in interface HttpHeadersname - the header name, case insensitive
public java.util.List<MediaType> getAcceptableMediaTypes()
HttpHeaders
getAcceptableMediaTypes in interface HttpHeaderspublic java.util.List<java.util.Locale> getAcceptableLanguages()
HttpHeaders
getAcceptableLanguages in interface HttpHeaderspublic MediaType getMediaType()
HttpHeaders
getMediaType in interface HttpHeaderspublic java.util.Locale getLanguage()
HttpHeaders
getLanguage in interface HttpHeaderspublic java.util.Map<java.lang.String,Cookie> getCookies()
HttpHeaders
getCookies in interface HttpHeaderspublic java.lang.String getMethod()
Request
getMethod in interface RequestHttpMethodpublic Variant selectVariant(java.util.List<Variant> variants)
Request
selectVariant in interface Requestvariants - a list of Variant that describe all of the
available representation variants.
Variant.VariantListBuilderpublic Response.ResponseBuilder evaluatePreconditions()
RequestNote that both preconditions If-None-Match: * and
If-None-Match: something will always be considered to
have been met and it is the applications responsibility
to enforce any additional method-specific semantics. E.g. a
PUT on a resource that does not exist might succeed whereas
a GET on a resource that does not exist would likely result
in a 404 response. It would be the responsibility of the application to
generate the 404 response.
evaluatePreconditions in interface Requestpublic Response.ResponseBuilder evaluatePreconditions(EntityTag eTag)
Request
evaluatePreconditions in interface RequesteTag - an ETag for the current state of the resource
public Response.ResponseBuilder evaluatePreconditions(java.util.Date lastModified)
Request
evaluatePreconditions in interface RequestlastModified - a date that specifies the modification date of the resource
public Response.ResponseBuilder evaluatePreconditions(java.util.Date lastModified,
EntityTag eTag)
Request
evaluatePreconditions in interface RequestlastModified - a date that specifies the modification date of the resourceeTag - an ETag for the current state of the resource
public java.security.Principal getUserPrincipal()
SecurityContextjava.security.Principal object containing the
name of the current authenticated user. If the user
has not been authenticated, the method returns null.
getUserPrincipal in interface SecurityContextjava.security.Principal containing the name
of the user making this request; null if the user has not been
authenticatedpublic boolean isUserInRole(java.lang.String role)
SecurityContextfalse.
isUserInRole in interface SecurityContextrole - a String specifying the name of the role
boolean indicating whether the user making
the request belongs to a given role; false if the user
has not been authenticatedpublic boolean isSecure()
SecurityContext
isSecure in interface SecurityContexttrue if the request was made using a secure
channel, false otherwisepublic java.lang.String getAuthenticationScheme()
SecurityContext
getAuthenticationScheme in interface SecurityContext
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||