Class HandlerResultHandlerSupport
- java.lang.Object
- org.springframework.web.reactive.result.HandlerResultHandlerSupport
- All Implemented Interfaces:
Ordered
- Direct Known Subclasses:
AbstractMessageWriterResultHandler,ViewResolutionResultHandler
public abstract class HandlerResultHandlerSupport extends Object implements Ordered
Base class forHandlerResultHandlerwith support for content negotiation and access to aReactiveAdapterregistry.- Since:
- 5.0
- Author:
- Rossen Stoyanchev
Field Summary
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
Constructor Summary
Constructors Modifier Constructor Description protectedHandlerResultHandlerSupport(RequestedContentTypeResolver contentTypeResolver, ReactiveAdapterRegistry adapterRegistry)
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ReactiveAdaptergetAdapter(HandlerResult result)Get aReactiveAdapterfor the top-level return value type.ReactiveAdapterRegistrygetAdapterRegistry()Return the configuredReactiveAdapterRegistry.RequestedContentTypeResolvergetContentTypeResolver()Return the configuredRequestedContentTypeResolver.intgetOrder()Get the order value of this object.protected MediaTypeselectMediaType(ServerWebExchange exchange, Supplier<List<MediaType>> producibleTypesSupplier)Select the best media type for the current request through a content negotiation algorithm.voidsetOrder(int order)Set the order for this result handler relative to others.
Constructor Detail
HandlerResultHandlerSupport
protected HandlerResultHandlerSupport(RequestedContentTypeResolver contentTypeResolver, ReactiveAdapterRegistry adapterRegistry)
Method Detail
getAdapterRegistry
public ReactiveAdapterRegistry getAdapterRegistry()
Return the configuredReactiveAdapterRegistry.
getContentTypeResolver
public RequestedContentTypeResolver getContentTypeResolver()
Return the configuredRequestedContentTypeResolver.
setOrder
public void setOrder(int order)
Set the order for this result handler relative to others.By default set to
Ordered.LOWEST_PRECEDENCE, however see Javadoc of sub-classes which may change this default.- Parameters:
order- the order
getOrder
public int getOrder()
Description copied from interface:OrderedGet the order value of this object.Higher values are interpreted as lower priority. As a consequence, the object with the lowest value has the highest priority (somewhat analogous to Servlet
load-on-startupvalues).Same order values will result in arbitrary sort positions for the affected objects.
- Specified by:
getOrderin interfaceOrdered- Returns:
- the order value
- See Also:
Ordered.HIGHEST_PRECEDENCE,Ordered.LOWEST_PRECEDENCE
getAdapter
@Nullable protected ReactiveAdapter getAdapter(HandlerResult result)
Get aReactiveAdapterfor the top-level return value type.- Returns:
- the matching adapter, or
nullif none
selectMediaType
@Nullable protected MediaType selectMediaType(ServerWebExchange exchange, Supplier<List<MediaType>> producibleTypesSupplier)
Select the best media type for the current request through a content negotiation algorithm.- Parameters:
exchange- the current requestproducibleTypesSupplier- the media types that can be produced for the current request- Returns:
- the selected media type, or
nullif none