public interface RequestRequestContextAddon<R extends RequestContext<?>>
request.| Modifier and Type | Method and Description |
|---|---|
byte[] |
getBodyAsByteArray()
The bytes of the request's body.
|
InputStream |
getBodyAsInputStream()
The raw InputStream of the request's body.
|
String |
getBodyAsString()
The request's body as a String, using the
UTF-8 encoding. |
String |
getContentType()
The Content-Type of the request, if any.
|
ContentTypeDefaults |
getContentTypeBestMatch()
Finds the best
Content-Type to use for a response
using the "Accept" header of the request. |
Map<String,String> |
getCookiesValues()
Gets the the request cookies values as a Map,
using the names of the cookies as the keys.
|
String |
getCookieValue(String name)
Gets the value of a request cookie by name.
|
Date |
getDateFromIfModifiedSinceHeader()
Return the value of the
If-Modified-Since
header as a Date or null if it doesn't
exist. |
Date |
getDateFromIfUnmodifiedSinceHeader()
Return the value of the
If-Unmodified-Since
header as a Date or null if it doesn't
exist. |
List<ETag> |
getEtagsFromIfMatchHeader()
Returns the
ETags from
the If-Match header, if any. |
List<ETag> |
getEtagsFromIfNoneMatchHeader()
Returns the
ETags from
the If-None-Match header, if any. |
FlashMessage |
getFlashMessage()
Gets the Flash message, if any.
|
Form |
getForm(String rootKey)
Gets the part of the submitted
FORM body
that is scoped by the specified root key. |
JsonObject |
getFormBodyAsJsonObject()
The data submitted as a
FORM body
(in general via a POST method),
as an immutable JsonObject. |
Map<String,List<String>> |
getFormBodyRaw()
The data submitted as a
FORM body
(in general via a POST method),
as a Map. |
Form |
getFormOrCreate(String rootKey)
Gets the part of the submitted
FORM body
that is scoped by the specified root key. |
String |
getFullUrl()
Returns the current full URL, including the queryString, if any.
|
String |
getFullUrl(boolean keepCacheBusters)
Returns the current full URL, including the queryString, if any.
|
String |
getFullUrlOriginal()
If the request has been forwarded, this is going to return the original
URL, not the current, forwarded, one.
|
String |
getFullUrlOriginal(boolean keepCacheBusters)
If the request has been forwarded, this is going to return the original
URL, not the current, forwarded, one.
|
String |
getFullUrlProxied()
If a reverse proxy has been used, this URL will contain the
scheme, host and port
as forwarded by the reserve proxy, not as seen by the user. |
String |
getFullUrlProxied(boolean keepCacheBusters)
If a reverse proxy has been used, this URL will contain the
scheme, host and port
as forwarded by the reserve proxy, not as seen by the user. |
List<String> |
getHeader(String name)
Returns the values of the specified header from the current request or
an empty list if not found.
|
String |
getHeaderFirst(String name)
The first value of the specified header from the current request.
|
Map<String,List<String>> |
getHeaders()
Returns all headers of the current request.
|
HttpMethod |
getHttpMethod()
Gets the request's
HTTP method. |
String |
getIp()
Gets the IP of the current request.
|
JsonObject |
getJsonBody()
The request's body deserialized to an immutable
JsonObject. |
<T> T |
getJsonBody(Class<T> clazz)
The request's body deserialized to the specified
class. |
Map<String,Object> |
getJsonBodyAsMap()
The request's body deserialized to a
Map<String, Object>. |
Locale |
getLocaleBestMatch()
Find the best
Locale to use for a response
using the "Accept-Language" header of
the request. |
String |
getPathParam(String name)
A specific value parsed from a dynamic parameter of the route path.
|
Map<String,String> |
getPathParams()
The values parsed from the dynamic parameters of the route path.
|
String |
getQueryString(boolean withQuestionMark)
The queryString of the request.
|
List<String> |
getQueryStringParam(String name)
A specific parameter taken from the queryString of the request.
|
String |
getQueryStringParamFirst(String name)
The first (and often only) value of a specific parameter taken from the
queryString of the request.
|
Map<String,List<String>> |
getQueryStringParams()
The parameters taken from the queryString of the request.
|
String |
getRequestPath()
The path of the request (no querystring).
|
String |
getRequestPath(boolean keepCacheBusters)
The path of the request (no querystring).
|
String |
getStringBody(String encoding)
The request's body as a String, using the specified encoding.
|
UploadedFile |
getUploadedFileFirst(String htmlName)
The uploaded files of the specified HTML's
name attribute. |
Map<String,List<UploadedFile>> |
getUploadedFiles()
The key of the map if the HTML's
name attribute. |
List<UploadedFile> |
getUploadedFiles(String htmlName)
The uploaded files of the specified HTML's
name attribute. |
<T> T |
getXmlBody(Class<T> clazz)
The request's body deserialized to the specified
class. |
JsonObject |
getXmlBodyAsJsonObject()
The request's body deserialized to an immutable
JsonObject. |
Map<String,Object> |
getXmlBodyAsMap()
The request's body deserialized to a
Map<String, Object>. |
boolean |
isCookiesEnabledValidated()
Did we validate that the current user has
cookies enabled?
|
boolean |
isFlashMessageExists()
Is there a Flash message?
|
boolean |
isHTMLShouldBeReturn()
Will return
true if the request specifies
that HTML is the most appropriate format
to return. |
boolean |
isHttps()
Is the request a secure HTTPS one?
|
boolean |
isJsonShouldBeReturn()
Will return
true if the request specifies
that Json is the most appropriate format
to return. |
boolean |
isPlainTextShouldBeReturn()
Will return
true if the request specifies
that plain-text is the most appropriate format
to return. |
boolean |
isXMLShouldBeReturn()
Will return
true if the request specifies
that XML is the most appropriate format
to return. |
HttpMethod getHttpMethod()
HTTP method.ContentTypeDefaults getContentTypeBestMatch()
Content-Type to use for a response
using the "Accept" header of the request. It will
fallback to ContentTypeDefaults.TEXT if nothing more specific
is found.boolean isJsonShouldBeReturn()
true if the request specifies
that Json is the most appropriate format
to return.boolean isHTMLShouldBeReturn()
true if the request specifies
that HTML is the most appropriate format
to return.boolean isXMLShouldBeReturn()
true if the request specifies
that XML is the most appropriate format
to return.boolean isPlainTextShouldBeReturn()
true if the request specifies
that plain-text is the most appropriate format
to return.Locale getLocaleBestMatch()
Locale to use for a response
using the "Accept-Language" header of
the request.
Returns the default Locale (taken from the configurations)
if nothing more specific is found.
Map<String,List<String>> getHeaders()
TreeMap which iscase insensitive for the keys.
The map is immutable.List<String> getHeader(String name)
The name is case insensitive.
The list is immutable.
String getHeaderFirst(String name)
The name is case insensitive.
Returns null if the header is not found.
String getContentType()
Content-Type of the request or null
if none was specified.String getFullUrl()
In case the request has been forwarded, this will be the *new*,
the current URL. Use getFullUrlOriginal()
to get the original URL, before the request was forwarded.
If a reverse proxy has been used, this URL will contain the
scheme, host and port from the
original URL, as seen by the user.
In general, this is what you want to use in your application.
String getFullUrl(boolean keepCacheBusters)
In case the request has been forwarded, this will be the *new*,
the current URL. Use getFullUrlOriginal()
to get the original URL, before the request was forwarded.
If a reverse proxy has been used, this URL will contain the
scheme, host and port from the
original URL, as seen by the user.
In general, this is what you want to use in your application.
keepCacheBusters - if true, the returned URL will contain
the cache buster codes, if there were any. The default behavior is to
automatically remove them.String getFullUrlOriginal()
Use getFullUrl() to get the current, potentially
forwarded URL.
If a reverse proxy has been used, this URL will contain the
scheme, host and port from the
original URL, as seen by the user.
In general, this is what you want to use in your application.
String getFullUrlOriginal(boolean keepCacheBusters)
Use getFullUrl() to get the current, potentially
forwarded URL.
If a reverse proxy has been used, this URL will contain the
scheme, host and port from the
original URL, as seen by the user.
In general, this is what you want to use in your application.
keepCacheBusters - if true, the returned URL will contain
the cache buster codes, if there were any. The default behavior is to
automatically remove them.String getFullUrlProxied()
scheme, host and port
as forwarded by the reserve proxy, not as seen by the user.
Cache buster codes are removed, if there were any.
If the request has been forwarded, this is going to return the original URL, not the current, forwarded, one.
In general, you should probably use getFullUrl()
or getFullUrlOriginal() instead of this
one.
String getFullUrlProxied(boolean keepCacheBusters)
scheme, host and port
as forwarded by the reserve proxy, not as seen by the user.
Cache buster codes are removed, if there were any.
If the request has been forwarded, this is going to return the original URL, not the current, forwarded, one.
In general, you should probably use getFullUrl()
or getFullUrlOriginal() instead of this
one.
keepCacheBusters - if true, the returned URL will contain
the cache buster codes, if there were any. The default behavior is to
automatically remove them.String getRequestPath()
String getRequestPath(boolean keepCacheBusters)
keepCacheBusters - if true, the returned path will contain
the cache buster codes, if there were any. The default behavior is to
automatically remove them.Map<String,String> getPathParams()
String getPathParam(String name)
name is case sensitive, since you have easy control over it.String getQueryString(boolean withQuestionMark)
withQuestionMark - if true and the queryString
is not empty, the result will be prefixed with "?".Map<String,List<String>> getQueryStringParams()
List<String> getQueryStringParam(String name)
String getQueryStringParamFirst(String name)
null if the parameter doesn't exist.InputStream getBodyAsInputStream()
byte[] getBodyAsByteArray()
String getBodyAsString()
UTF-8 encoding.
Note that once part of the InputStream is read, it can't be read again!String getStringBody(String encoding)
JsonObject getJsonBody()
JsonObject.
A valid Json body
is expected.
Note that once part of the InputStream is read, it can't be read again!Map<String,Object> getJsonBodyAsMap()
Map<String, Object>. A valid Json body
is expected.
Note that once part of the InputStream is read, it can't be read again!<T> T getJsonBody(Class<T> clazz)
class. A valid Json body
is expected.
Note that once part of the InputStream is read, it can't be read again!JsonObject getXmlBodyAsJsonObject()
JsonObject.
A valid XML body
is expected.
Note that once part of the InputStream is read, it can't be read again!Map<String,Object> getXmlBodyAsMap()
Map<String, Object>. A valid XML body
is expected.
Note that once part of the InputStream is read, it can't be read again!<T> T getXmlBody(Class<T> clazz)
class. A valid XML body
is expected.
Note that once part of the InputStream is read, it can't be read again!Map<String,List<String>> getFormBodyRaw()
FORM body
(in general via a POST method),
as a Map.
The names are case sensitive.
This returns the keys/values as is, without trying to parse
the keys as JsonPaths.
This returns an immutable object! You won't be able to add or remove elements.
JsonObject getFormBodyAsJsonObject()
FORM body
(in general via a POST method),
as an immutable JsonObject.
The root keys of the field names and are case sensitive.
The root keys will be parsed as JsonPaths to build the final
JsonObject. For example : user.books[1].name
will be converted to a "user" JsonObject with a "books" arrays
with one book at index "1" and this book
has a "name" property.
JsonObject.
If you want to get a mutable instance, you can call .clone(true)
on this object.Form getFormOrCreate(String rootKey)
FORM body
that is scoped by the specified root key.
When an HTML form is submitted, there may be utility fields
(such as a CSRF token, etc.) in addition to
business logic fields.
By using this getFormOrCreate(String)
you only get the fields which names start with the specified
root key. For example, if this HTML form was submitted:
<form> <input type="text" name="csrfToken" value="12345" /> <input type="text" name="myUser.userName" value="Stromgol" /> <input type="text" name="myUser.lastNameName" value="LaPierre" /> ...
... then calling getFormWithRootKey("myUser") would
return a Form object containing the "userName" and the "userName"
fields, but not the "csrfToken".
A Form object is in fact a JsonObject containing the submitted
fields and a ValidationSet to store validations performed on it.
The same field is returned, everytime this method is called
with the same name.
If the root key is not found in the POSTed data, an empty form will be created.
Never returns null.
The key are case sensitive.
Form getForm(String rootKey)
FORM body
that is scoped by the specified root key.
When an HTML form is submitted, there may be utility fields
(such as a CSRF token, etc.) in addition to
business logic fields.
By using this getFormOrCreate(String)
you only get the fields which names start with the specified
root key. For example, if this HTML form was submitted:
<form> <input type="text" name="csrfToken" value="12345" /> <input type="text" name="myUser.userName" value="Stromgol" /> <input type="text" name="myUser.lastNameName" value="LaPierre" /> ...
... then calling getFormWithRootKey("myUser") would
return a Form object containing the "userName" and the "userName"
fields, but not the "csrfToken".
A Form object is in fact a JsonObject containing the submitted
fields and a ValidationSet to store validations performed on it.
The same field is returned, everytime this method is called
with the same name.
If the root key is not found in the POSTed data, an empty form will be created.
The key are case sensitive.
null otherwise.Map<String,List<UploadedFile>> getUploadedFiles()
name attribute.
More than one uploaded file with the same name is possible. The map is immutable.
Returns an empty map if there are no uploadded file.
List<UploadedFile> getUploadedFiles(String htmlName)
name attribute.
More than one uploaded file with the same name is possible.
The list is immutable.
Returns an empty list if no uploaded files of this name exists.
UploadedFile getUploadedFileFirst(String htmlName)
name attribute.
The first (and often only) uploaded file of the specified name.
Returns null if no uploaded file of this name exists.
boolean isHttps()
List<ETag> getEtagsFromIfNoneMatchHeader()
ETags from
the If-None-Match header, if any.If-None-Match ETags or an empty
list if there is none.List<ETag> getEtagsFromIfMatchHeader()
ETags from
the If-Match header, if any.If-Match ETags or an empty list
if there is none.Date getDateFromIfModifiedSinceHeader()
If-Modified-Since
header as a Date or null if it doesn't
exist.Date getDateFromIfUnmodifiedSinceHeader()
If-Unmodified-Since
header as a Date or null if it doesn't
exist.FlashMessage getFlashMessage()
null if there
is none.boolean isFlashMessageExists()
Map<String,String> getCookiesValues()
String getCookieValue(String name)
null if not found.boolean isCookiesEnabledValidated()
String getIp()
Copyright © 2018. All rights reserved.