org.springframework.web.method.support

## Interface HandlerMethodReturnValueHandler

- All Known Implementing Classes:
    AbstractMessageConverterMethodProcessor, AsyncTaskMethodReturnValueHandler, CallableMethodReturnValueHandler, DeferredResultMethodReturnValueHandler, HandlerMethodReturnValueHandlerComposite, HttpEntityMethodProcessor, MapMethodProcessor, ModelAndViewMethodReturnValueHandler, ModelAndViewResolverMethodReturnValueHandler, ModelAttributeMethodProcessor, ModelMethodProcessor, RequestResponseBodyMethodProcessor, ServletModelAttributeMethodProcessor, ViewMethodReturnValueHandler, ViewNameMethodReturnValueHandler

      public interface HandlerMethodReturnValueHandler

  Strategy interface to handle the value returned from the invocation of a handler method .
  Since:
    3.1
  Author:
    Arjen Poutsma

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)` Handle the given return value by adding attributes to the model and setting a view or setting the `ModelAndViewContainer.setRequestHandled(boolean)` flag to `true` to indicate the response has been handled directly.
    `boolean` | `supportsReturnType(MethodParameter returnType)` Whether the given method return type is supported by this handler.

- - ### Method Detail

    - #### supportsReturnType

          boolean supportsReturnType(MethodParameter returnType)

      Whether the given method return type is supported by this handler.
      Parameters:
        `returnType` - the method return type to check
      Returns:
        `true` if this handler supports the supplied return type; `false` otherwise

    - #### handleReturnValue

          void handleReturnValue(Object returnValue,
                               MethodParameter returnType,
                               ModelAndViewContainer mavContainer,
                               NativeWebRequest webRequest)
                                 throws Exception

      Handle the given return value by adding attributes to the model and setting a view or setting the `ModelAndViewContainer.setRequestHandled(boolean)` flag to `true` to indicate the response has been handled directly.
      Parameters:
        `returnValue` - the value returned from the handler method
        `returnType` - the type of the return value. This type must have previously been passed to `supportsReturnType(org.springframework.core.MethodParameter)` and it must have returned `true`
        `mavContainer` - the ModelAndViewContainer for the current request
        `webRequest` - the current request
      Throws:
        `Exception` - if the return value handling results in an error