Class HttpWebHandlerAdapter
java.lang.Object
org.springframework.web.server.handler.WebHandlerDecorator
org.springframework.web.server.adapter.HttpWebHandlerAdapter
- All Implemented Interfaces:
HttpHandler
,WebHandler
Default adapter of
WebHandler
to the HttpHandler
contract.
By default creates and configures a DefaultServerWebExchange
and
then invokes the target WebHandler
.
- Since:
- 5.0
- Author:
- Rossen Stoyanchev, Sebastien Deleuze, Brian Clozel
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
This method must be invoked after all properties have been set to complete initialization.protected ServerWebExchange
createExchange
(ServerHttpRequest request, ServerHttpResponse response) protected String
formatRequest
(ServerHttpRequest request) Format the request for logging purposes including HTTP method and URL.Return the configuredApplicationContext
, if any.Return the configuredServerCodecConfigurer
.Return the configuredForwardedHeaderTransformer
.Return the configuredLocaleContextResolver
.Return the Observation convention configured for server exchanges observations.io.micrometer.observation.ObservationRegistry
Return the configuredObservationRegistry
.Return the configuredWebSessionManager
.reactor.core.publisher.Mono<Void>
handle
(ServerHttpRequest request, ServerHttpResponse response) Handle the given request and write to the response.void
setApplicationContext
(ApplicationContext applicationContext) Configure theApplicationContext
associated with the web application, if it was initialized with one viaWebHttpHandlerBuilder.applicationContext(ApplicationContext)
.void
setCodecConfigurer
(ServerCodecConfigurer codecConfigurer) Configure a customServerCodecConfigurer
.void
setForwardedHeaderTransformer
(ForwardedHeaderTransformer transformer) Enable processing of forwarded headers, either extracting and removing, or remove only.void
Configure a customLocaleContextResolver
.void
setObservationConvention
(ServerRequestObservationConvention observationConvention) Configure aServerRequestObservationConvention
for server exchanges observations.void
setObservationRegistry
(io.micrometer.observation.ObservationRegistry observationRegistry) Configure anObservationRegistry
for recording server exchange observations.void
setSessionManager
(WebSessionManager sessionManager) Configure a customWebSessionManager
to use for managing web sessions.Methods inherited from class org.springframework.web.server.handler.WebHandlerDecorator
getDelegate, handle, toString
-
Constructor Details
-
HttpWebHandlerAdapter
-
-
Method Details
-
setSessionManager
Configure a customWebSessionManager
to use for managing web sessions. The provided instance is set on each createdDefaultServerWebExchange
.By default this is set to
DefaultWebSessionManager
.- Parameters:
sessionManager
- the session manager to use
-
getSessionManager
Return the configuredWebSessionManager
. -
setCodecConfigurer
Configure a customServerCodecConfigurer
. The provided instance is set on each createdDefaultServerWebExchange
.By default this is set to
ServerCodecConfigurer.create()
.- Parameters:
codecConfigurer
- the codec configurer to use
-
getCodecConfigurer
Return the configuredServerCodecConfigurer
. -
setLocaleContextResolver
Configure a customLocaleContextResolver
. The provided instance is set on each createdDefaultServerWebExchange
.By default this is set to
AcceptHeaderLocaleContextResolver
.- Parameters:
resolver
- the locale context resolver to use
-
getLocaleContextResolver
Return the configuredLocaleContextResolver
. -
setForwardedHeaderTransformer
Enable processing of forwarded headers, either extracting and removing, or remove only.By default this is not set.
- Parameters:
transformer
- the transformer to use- Since:
- 5.1
-
getForwardedHeaderTransformer
Return the configuredForwardedHeaderTransformer
.- Since:
- 5.1
-
setObservationRegistry
public void setObservationRegistry(io.micrometer.observation.ObservationRegistry observationRegistry) Configure anObservationRegistry
for recording server exchange observations. By default, ano-op
instance will be used.- Parameters:
observationRegistry
- the observation registry to use- Since:
- 6.1
-
getObservationRegistry
public io.micrometer.observation.ObservationRegistry getObservationRegistry()Return the configuredObservationRegistry
.- Since:
- 6.1
-
setObservationConvention
Configure aServerRequestObservationConvention
for server exchanges observations. By default, aDefaultServerRequestObservationConvention
instance will be used.- Parameters:
observationConvention
- the observation convention to use- Since:
- 6.1
-
getObservationConvention
Return the Observation convention configured for server exchanges observations.- Since:
- 6.1
-
setApplicationContext
Configure theApplicationContext
associated with the web application, if it was initialized with one viaWebHttpHandlerBuilder.applicationContext(ApplicationContext)
.- Parameters:
applicationContext
- the context- Since:
- 5.0.3
-
getApplicationContext
Return the configuredApplicationContext
, if any.- Since:
- 5.0.3
-
afterPropertiesSet
public void afterPropertiesSet()This method must be invoked after all properties have been set to complete initialization. -
handle
public reactor.core.publisher.Mono<Void> handle(ServerHttpRequest request, ServerHttpResponse response) Description copied from interface:HttpHandler
Handle the given request and write to the response.- Specified by:
handle
in interfaceHttpHandler
- Parameters:
request
- current requestresponse
- current response- Returns:
- indicates completion of request handling
-
createExchange
-
formatRequest
Format the request for logging purposes including HTTP method and URL.By default this prints the HTTP method, the URL path, and the query.
- Parameters:
request
- the request to format- Returns:
- the String to display, never empty or
null
-