Class HandlerResultHandlerSupport

java.lang.Object
org.springframework.web.reactive.result.HandlerResultHandlerSupport
All Implemented Interfaces:
org.springframework.core.Ordered
Direct Known Subclasses:
AbstractMessageWriterResultHandler, ViewResolutionResultHandler

public abstract class HandlerResultHandlerSupport extends Object implements org.springframework.core.Ordered
Base class for HandlerResultHandler with support for content negotiation and access to a ReactiveAdapter registry.
Since:
5.0
Author:
Rossen Stoyanchev
  • Field Details

    • logger

      protected final org.apache.commons.logging.Log logger
  • Constructor Details

    • HandlerResultHandlerSupport

      protected HandlerResultHandlerSupport(RequestedContentTypeResolver contentTypeResolver, org.springframework.core.ReactiveAdapterRegistry adapterRegistry)
  • Method Details

    • getAdapterRegistry

      public org.springframework.core.ReactiveAdapterRegistry getAdapterRegistry()
      Return the configured ReactiveAdapterRegistry.
    • getContentTypeResolver

      public RequestedContentTypeResolver getContentTypeResolver()
      Return the configured RequestedContentTypeResolver.
    • 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 subclasses which may change this default.

      Parameters:
      order - the order
    • getOrder

      public int getOrder()
      Specified by:
      getOrder in interface org.springframework.core.Ordered
    • getAdapter

      @Nullable protected org.springframework.core.ReactiveAdapter getAdapter(HandlerResult result)
      Get a ReactiveAdapter for the top-level return value type.
      Returns:
      the matching adapter, or null if none
    • selectMediaType

      @Nullable protected org.springframework.http.MediaType selectMediaType(org.springframework.web.server.ServerWebExchange exchange, Supplier<List<org.springframework.http.MediaType>> producibleTypesSupplier)
      Select the best media type for the current request through a content negotiation algorithm.
      Parameters:
      exchange - the current request
      producibleTypesSupplier - the media types producible for the request
      Returns:
      the selected media type, or null if none
    • selectMediaType

      @Nullable protected org.springframework.http.MediaType selectMediaType(org.springframework.web.server.ServerWebExchange exchange, Supplier<List<org.springframework.http.MediaType>> producibleTypesSupplier, List<org.springframework.http.MediaType> acceptableTypes)
      Variant of selectMediaType(ServerWebExchange, Supplier) with a given list of requested (acceptable) media types.