类 ReturnValueHandlerManager

java.lang.Object
cn.taketoday.context.support.ApplicationObjectSupport
cn.taketoday.web.handler.ReturnValueHandlerManager
所有已实现的接口:
cn.taketoday.beans.factory.Aware, cn.taketoday.context.ApplicationContextAware, cn.taketoday.core.ArraySizeTrimmer, ReturnValueHandler

public class ReturnValueHandlerManager extends cn.taketoday.context.support.ApplicationObjectSupport implements cn.taketoday.core.ArraySizeTrimmer, ReturnValueHandler
return-value handler manager
作者:
TODAY 2019-12-28 13:47
  • 字段详细资料

  • 构造器详细资料

    • ReturnValueHandlerManager

      public ReturnValueHandlerManager()
    • ReturnValueHandlerManager

      public ReturnValueHandlerManager(List<HttpMessageConverter<?>> messageConverters)
  • 方法详细资料

    • setReactiveAdapterRegistry

      public void setReactiveAdapterRegistry(@Nullable cn.taketoday.core.ReactiveAdapterRegistry reactiveAdapterRegistry)
      Configure the registry for reactive library types to be supported as return values from controller methods.
    • getReactiveAdapterRegistry

      public cn.taketoday.core.ReactiveAdapterRegistry getReactiveAdapterRegistry()
      Return the configured reactive type registry of adapters.
    • addHandlers

      public void addHandlers(ReturnValueHandler... handlers)
    • addHandlers

      public void addHandlers(List<ReturnValueHandler> handlers)
    • setHandlers

      public void setHandlers(List<ReturnValueHandler> handlers)
    • getHandlers

      public List<ReturnValueHandler> getHandlers()
    • asSelectable

      public SelectableReturnValueHandler asSelectable()
      返回:
      Returns SelectableReturnValueHandler
    • getHandler

      @Nullable public ReturnValueHandler getHandler(Object handler)
    • getByReturnValue

      @Nullable public ReturnValueHandler getByReturnValue(@Nullable Object returnValue)
      search by returnValue
      参数:
      returnValue - returnValue
      返回:
      ReturnValueHandler maybe null
    • obtainHandler

      public ReturnValueHandler obtainHandler(Object handler)
      Get correspond view resolver, If there isn't a suitable resolver will be throws ReturnValueHandlerNotFoundException
      返回:
      A suitable ReturnValueHandler
    • findHandler

      @Nullable public ReturnValueHandler findHandler(Object handler, @Nullable Object returnValue)
    • obtainHandler

      public ReturnValueHandler obtainHandler(Object handler, @Nullable Object returnValue)
      Get correspond view resolver, If there isn't a suitable resolver will be throws ReturnValueHandlerNotFoundException
      返回:
      A suitable ReturnValueHandler
    • selectHandler

      @Nullable public ReturnValueHandler selectHandler(@Nullable Object handler, @Nullable Object returnValue)
      参数:
      returnValue - if returnValue is ReturnValueHandler.NONE_RETURN_VALUE match handler only
      返回:
      null if returnValue is ReturnValueHandler.NONE_RETURN_VALUE or no one matched
    • handleReturnValue

      public void handleReturnValue(RequestContext context, @Nullable Object handler, @Nullable Object returnValue) throws Exception
      从接口复制的说明: ReturnValueHandler
      Handle result of the handler
      指定者:
      handleReturnValue 在接口中 ReturnValueHandler
      参数:
      context - Current HTTP request context
      handler - Target HTTP handler
      returnValue - Handler execution result
      抛出:
      ReturnValueHandlerNotFoundException - not found ReturnValueHandler
      Exception - throws when write data to response
    • supportsHandler

      public boolean supportsHandler(Object handler)
      从接口复制的说明: ReturnValueHandler
      If this ReturnValueHandler supports the target handler

      This method can test this ReturnValueHandler supports the target handler in application startup time , static match

      指定者:
      supportsHandler 在接口中 ReturnValueHandler
      参数:
      handler - Target HTTP handler
      返回:
      If this ReturnValueHandler supports the target handler
    • supportsReturnValue

      public boolean supportsReturnValue(@Nullable Object returnValue)
      从接口复制的说明: ReturnValueHandler
      If this ReturnValueHandler supports the target handler's result

      This method can test this ReturnValueHandler supports the target handler in application runtime

      指定者:
      supportsReturnValue 在接口中 ReturnValueHandler
      参数:
      returnValue - Target handler's return-value or result
      返回:
      If this ReturnValueHandler supports the target handler's result
    • registerDefaultHandlers

      public void registerDefaultHandlers()
      register default return-value handlers
    • obtainViewHandler

      private ViewReturnValueHandler obtainViewHandler()
    • getObjectHandler

      private ObjectHandlerMethodReturnValueHandler getObjectHandler(SelectableReturnValueHandler compositeHandler)
    • getRenderedImageHandler

      private RenderedImageReturnValueHandler getRenderedImageHandler()
    • removeIf

      public boolean removeIf(Predicate<ReturnValueHandler> filter)
      从以下版本开始:
      4.0
    • contains

      public boolean contains(@Nullable Class<?> handlerClass)
      从以下版本开始:
      4.0
    • contains

      protected boolean contains(Class<?> handlerClass, List<ReturnValueHandler> handlers)
      从以下版本开始:
      4.0
    • get

      @Nullable public <T> T get(@Nullable Class<T> handlerClass)
      从以下版本开始:
      4.0
    • get

      @Nullable protected final <T> T get(Class<T> handlerClass, List<ReturnValueHandler> handlers)
      从以下版本开始:
      4.0
    • trimToSize

      public void trimToSize()
      指定者:
      trimToSize 在接口中 cn.taketoday.core.ArraySizeTrimmer
      从以下版本开始:
      4.0
    • setViewResolver

      public void setViewResolver(@Nullable ViewResolver webViewResolver)
    • setRedirectModelManager

      public void setRedirectModelManager(@Nullable RedirectModelManager redirectModelManager)
    • getRedirectModelManager

      @Nullable public RedirectModelManager getRedirectModelManager()
    • setObjectHandler

      public void setObjectHandler(@Nullable ObjectHandlerMethodReturnValueHandler objectHandler)
    • getObjectHandler

      @Nullable public ObjectHandlerMethodReturnValueHandler getObjectHandler()
    • setImageFormatName

      public void setImageFormatName(String imageFormatName)
    • getImageFormatName

      public String getImageFormatName()
    • setContentNegotiationManager

      public void setContentNegotiationManager(@Nullable ContentNegotiationManager contentNegotiationManager)
      Set the ContentNegotiationManager to use to determine requested media types. If not set, the default constructor is used.
      从以下版本开始:
      4.0
    • setMessageConverters

      public void setMessageConverters(List<HttpMessageConverter<?>> messageConverters)
      Provide the converters to use in argument resolvers and return value handlers that support reading and/or writing to the body of the request and response.
      从以下版本开始:
      4.0
    • getMessageConverters

      public List<HttpMessageConverter<?>> getMessageConverters()
      Return the configured message body converters.
      从以下版本开始:
      4.0
    • addRequestResponseBodyAdvice

      public void addRequestResponseBodyAdvice(@Nullable List<Object> list)
      Add one or more RequestBodyAdvice ResponseBodyAdvice
      从以下版本开始:
      4.0
      另请参阅:
    • setRequestResponseBodyAdvice

      public void setRequestResponseBodyAdvice(@Nullable List<Object> list)
      Set one or more RequestBodyAdvice ResponseBodyAdvice

      clear all and add all

      从以下版本开始:
      4.0
      另请参阅:
    • getRequestResponseBodyAdvice

      public List<Object> getRequestResponseBodyAdvice()
      从以下版本开始:
      4.0
    • setViewReturnValueHandler

      public void setViewReturnValueHandler(@Nullable ViewReturnValueHandler viewReturnValueHandler)
    • setTaskExecutor

      public void setTaskExecutor(cn.taketoday.core.task.AsyncTaskExecutor taskExecutor)
      Set the default AsyncTaskExecutor to use when a controller method return a Callable. Controller methods can override this default on a per-request basis by returning an WebAsyncTask.

      By default a SimpleAsyncTaskExecutor instance is used. It's recommended to change that default in production as the simple executor does not re-use threads.

      从以下版本开始:
      4.0
    • equals

      public boolean equals(Object o)
      覆盖:
      equals 在类中 Object
    • hashCode

      public int hashCode()
      覆盖:
      hashCode 在类中 Object
    • toString

      public String toString()
      覆盖:
      toString 在类中 Object