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

## Class RedirectAttributesMethodArgumentResolver

- java.lang.Object
- - org.springframework.web.servlet.mvc.method.annotation.RedirectAttributesMethodArgumentResolver

- All Implemented Interfaces:
    HandlerMethodArgumentResolver

      public class RedirectAttributesMethodArgumentResolver
      extends Object
      implements HandlerMethodArgumentResolver

  Resolves method arguments of type `RedirectAttributes`.

  This resolver must be listed ahead of `ModelMethodProcessor` and `MapMethodProcessor`, which support `Map` and `Model` arguments both of which are "super" types of `RedirectAttributes` and would also attempt to resolve a `RedirectAttributes` argument.

  Since:
    3.1
  Author:
    Rossen Stoyanchev

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `RedirectAttributesMethodArgumentResolver()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Object` | `resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)` Resolves a method parameter into an argument value from a given request.
    `boolean` | `supportsParameter(MethodParameter parameter)` Whether the given method parameter is supported by this resolver.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### RedirectAttributesMethodArgumentResolver

          public RedirectAttributesMethodArgumentResolver()

  - ### Method Detail

    - #### supportsParameter

          public boolean supportsParameter(MethodParameter parameter)

      Description copied from interface: `HandlerMethodArgumentResolver`
      Whether the given method parameter is supported by this resolver.
      Specified by:
        `supportsParameter` in interface `HandlerMethodArgumentResolver`
      Parameters:
        `parameter` - the method parameter to check
      Returns:
        `true` if this resolver supports the supplied parameter; `false` otherwise

    - #### resolveArgument

          public Object resolveArgument(MethodParameter parameter,
                                        @Nullable
                                        ModelAndViewContainer mavContainer,
                                        NativeWebRequest webRequest,
                                        @Nullable
                                        WebDataBinderFactory binderFactory)
                                 throws Exception

      Description copied from interface: `HandlerMethodArgumentResolver`
      Resolves a method parameter into an argument value from a given request. A `ModelAndViewContainer` provides access to the model for the request. A `WebDataBinderFactory` provides a way to create a `WebDataBinder` instance when needed for data binding and type conversion purposes.
      Specified by:
        `resolveArgument` in interface `HandlerMethodArgumentResolver`
      Parameters:
        `parameter` - the method parameter to resolve. This parameter must have previously been passed to `HandlerMethodArgumentResolver.supportsParameter(org.springframework.core.MethodParameter)` which must have returned `true`.
        `mavContainer` - the ModelAndViewContainer for the current request
        `webRequest` - the current request
        `binderFactory` - a factory for creating `WebDataBinder` instances
      Returns:
        the resolved argument value, or `null` if not resolvable
      Throws:
        `Exception` - in case of errors with the preparation of argument values