public interface ServerWebExchange
Modifier and Type | Interface and Description |
---|---|
static interface |
ServerWebExchange.Builder
Builder for mutating an existing
ServerWebExchange . |
Modifier and Type | Method and Description |
---|---|
boolean |
checkNotModified(java.time.Instant lastModified)
An overloaded variant of
checkNotModified(String, Instant) with
a last-modified timestamp only. |
boolean |
checkNotModified(java.lang.String etag)
An overloaded variant of
checkNotModified(String, Instant) with
an ETag (entity tag) value only. |
boolean |
checkNotModified(java.lang.String etag,
java.time.Instant lastModified)
Check whether the requested resource has been modified given the supplied
ETag (entity tag) and last-modified timestamp as determined by
the application. |
<T> java.util.Optional<T> |
getAttribute(java.lang.String name)
Return the request attribute value if present.
|
java.util.Map<java.lang.String,java.lang.Object> |
getAttributes()
Return a mutable map of request attributes for the current exchange.
|
<any> |
getFormData()
Return the form data from the body of the request if the Content-Type is
"application/x-www-form-urlencoded" or an empty map. |
<T extends java.security.Principal> |
getPrincipal()
Return the authenticated user for the request, if any.
|
ServerHttpRequest |
getRequest()
Return the current HTTP request.
|
<any> |
getRequestParams()
Return a combined map that represents both
ServerHttpRequest.getQueryParams() and getFormData()
or an empty map. |
ServerHttpResponse |
getResponse()
Return the current HTTP response.
|
<any> |
getSession()
Return the web session for the current request.
|
boolean |
isNotModified()
Returns
true if the one of the checkNotModified methods
in this contract were used and they returned true. |
default ServerWebExchange.Builder |
mutate()
Return a builder to mutate properties of this exchange by wrapping it
with
ServerWebExchangeDecorator and returning either mutated
values or delegating back to this instance. |
ServerHttpRequest getRequest()
ServerHttpResponse getResponse()
java.util.Map<java.lang.String,java.lang.Object> getAttributes()
<T> java.util.Optional<T> getAttribute(java.lang.String name)
T
- the attribute typename
- the attribute name<any> getSession()
WebSession
for more details.<T extends java.security.Principal> <any> getPrincipal()
<any> getFormData()
"application/x-www-form-urlencoded"
or an empty map.<any> getRequestParams()
ServerHttpRequest.getQueryParams()
and getFormData()
or an empty map.boolean isNotModified()
true
if the one of the checkNotModified
methods
in this contract were used and they returned true.boolean checkNotModified(java.time.Instant lastModified)
checkNotModified(String, Instant)
with
a last-modified timestamp only.lastModified
- the last-modified timeboolean checkNotModified(java.lang.String etag)
checkNotModified(String, Instant)
with
an ETag
(entity tag) value only.etag
- the entity tag for the underlying resource.boolean checkNotModified(java.lang.String etag, java.time.Instant lastModified)
ETag
(entity tag) and last-modified timestamp as determined by
the application. Also transparently prepares the response, setting HTTP
status, and adding "ETag" and "Last-Modified" headers when applicable.
This method works with conditional GET/HEAD requests as well as with
conditional POST/PUT/DELETE requests.
Note: The HTTP specification recommends setting both
ETag and Last-Modified values, but you can also use
#checkNotModified(String)
or
checkNotModified(Instant)
.
etag
- the entity tag that the application determined for the
underlying resource. This parameter will be padded with quotes (")
if necessary.lastModified
- the last-modified timestamp that the application
determined for the underlying resourcedefault ServerWebExchange.Builder mutate()
ServerWebExchangeDecorator
and returning either mutated
values or delegating back to this instance.