Class ResponseBodyResultHandler
- java.lang.Object
- org.springframework.web.reactive.result.HandlerResultHandlerSupport
- org.springframework.web.reactive.result.method.annotation.AbstractMessageWriterResultHandler
- org.springframework.web.reactive.result.method.annotation.ResponseBodyResultHandler
- All Implemented Interfaces:
Ordered,HandlerResultHandler
public class ResponseBodyResultHandler extends AbstractMessageWriterResultHandler implements HandlerResultHandler
HandlerResultHandlerthat handles return values from methods annotated with@ResponseBodywriting to the body of the request or response with anHttpMessageWriter.By default the order for this result handler is set to 100. As it detects the presence of
@ResponseBodyit should be ordered after result handlers that look for a specific return type. Note however that this handler does recognize and explicitly ignores theResponseEntityreturn type.- Since:
- 5.0
- Author:
- Rossen Stoyanchev, Stephane Maldini, Sebastien Deleuze, Arjen Poutsma
Field Summary
Fields inherited from class org.springframework.web.reactive.result.HandlerResultHandlerSupport
logger
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
Constructor Summary
Constructors Constructor Description ResponseBodyResultHandler(List<HttpMessageWriter<?>> writers, RequestedContentTypeResolver resolver)Basic constructor with a defaultReactiveAdapterRegistry.ResponseBodyResultHandler(List<HttpMessageWriter<?>> writers, RequestedContentTypeResolver resolver, ReactiveAdapterRegistry registry)Constructor with anReactiveAdapterRegistryinstance.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description reactor.core.publisher.Mono<Void>handleResult(ServerWebExchange exchange, HandlerResult result)Process the given result modifying response headers and/or writing data to the response.booleansupports(HandlerResult result)Whether this handler supports the givenHandlerResult.Methods inherited from class org.springframework.web.reactive.result.method.annotation.AbstractMessageWriterResultHandler
getMessageWriters, writeBody, writeBody
Methods inherited from class org.springframework.web.reactive.result.HandlerResultHandlerSupport
getAdapter, getAdapterRegistry, getContentTypeResolver, getOrder, selectMediaType, setOrder
Constructor Detail
ResponseBodyResultHandler
public ResponseBodyResultHandler(List<HttpMessageWriter<?>> writers, RequestedContentTypeResolver resolver)
Basic constructor with a defaultReactiveAdapterRegistry.- Parameters:
writers- the writers for serializing to the response bodyresolver- to determine the requested content type
ResponseBodyResultHandler
public ResponseBodyResultHandler(List<HttpMessageWriter<?>> writers, RequestedContentTypeResolver resolver, ReactiveAdapterRegistry registry)
Constructor with anReactiveAdapterRegistryinstance.- Parameters:
writers- the writers for serializing to the response bodyresolver- to determine the requested content typeregistry- for adaptation to reactive types
Method Detail
supports
public boolean supports(HandlerResult result)
Description copied from interface:HandlerResultHandlerWhether this handler supports the givenHandlerResult.- Specified by:
supportsin interfaceHandlerResultHandler- Parameters:
result- the result object to check- Returns:
- whether or not this object can use the given result
handleResult
public reactor.core.publisher.Mono<Void> handleResult(ServerWebExchange exchange, HandlerResult result)
Description copied from interface:HandlerResultHandlerProcess the given result modifying response headers and/or writing data to the response.- Specified by:
handleResultin interfaceHandlerResultHandler- Parameters:
exchange- current server exchangeresult- the result from the handling- Returns:
Mono<Void>to indicate when request handling is complete.