spring-webmvc

org.springframework.web.servlet.mvc.method.annotation
Class HttpEntityMethodProcessor

java.lang.Object
  extended by org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver
      extended by org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor
          extended by org.springframework.web.servlet.mvc.method.annotation.HttpEntityMethodProcessor
All Implemented Interfaces:
org.springframework.web.method.support.HandlerMethodArgumentResolver, org.springframework.web.method.support.HandlerMethodReturnValueHandler

public class HttpEntityMethodProcessor
extends AbstractMessageConverterMethodProcessor

Resolves HttpEntity method argument values and also handles both HttpEntity and ResponseEntity return values.

An HttpEntity return type has a set purpose. Therefore this handler should be configured ahead of handlers that support any return value type annotated with @ModelAttribute or @ResponseBody to ensure they don't take over.

Since:
3.1
Author:
Arjen Poutsma, Rossen Stoyanchev

Field Summary
 
Fields inherited from class org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver
allSupportedMediaTypes, logger, messageConverters
 
Constructor Summary
HttpEntityMethodProcessor(java.util.List<org.springframework.http.converter.HttpMessageConverter<?>> messageConverters)
           
 
Method Summary
 void handleReturnValue(java.lang.Object returnValue, org.springframework.core.MethodParameter returnType, org.springframework.web.method.support.ModelAndViewContainer mavContainer, org.springframework.web.context.request.NativeWebRequest webRequest)
           
 java.lang.Object resolveArgument(org.springframework.core.MethodParameter parameter, org.springframework.web.method.support.ModelAndViewContainer mavContainer, org.springframework.web.context.request.NativeWebRequest webRequest, org.springframework.web.bind.support.WebDataBinderFactory binderFactory)
           
 boolean supportsParameter(org.springframework.core.MethodParameter parameter)
           
 boolean supportsReturnType(org.springframework.core.MethodParameter returnType)
           
 
Methods inherited from class org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor
createOutputMessage, getProducibleMediaTypes, writeWithMessageConverters, writeWithMessageConverters
 
Methods inherited from class org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver
createInputMessage, readWithMessageConverters, readWithMessageConverters
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HttpEntityMethodProcessor

public HttpEntityMethodProcessor(java.util.List<org.springframework.http.converter.HttpMessageConverter<?>> messageConverters)
Method Detail

supportsParameter

public boolean supportsParameter(org.springframework.core.MethodParameter parameter)

supportsReturnType

public boolean supportsReturnType(org.springframework.core.MethodParameter returnType)

resolveArgument

public java.lang.Object resolveArgument(org.springframework.core.MethodParameter parameter,
                                        org.springframework.web.method.support.ModelAndViewContainer mavContainer,
                                        org.springframework.web.context.request.NativeWebRequest webRequest,
                                        org.springframework.web.bind.support.WebDataBinderFactory binderFactory)
                                 throws java.io.IOException,
                                        org.springframework.web.HttpMediaTypeNotSupportedException
Throws:
java.io.IOException
org.springframework.web.HttpMediaTypeNotSupportedException

handleReturnValue

public void handleReturnValue(java.lang.Object returnValue,
                              org.springframework.core.MethodParameter returnType,
                              org.springframework.web.method.support.ModelAndViewContainer mavContainer,
                              org.springframework.web.context.request.NativeWebRequest webRequest)
                       throws java.lang.Exception
Throws:
java.lang.Exception

spring-webmvc