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
`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