## Uses of Class
org.springframework.web.method.support.ModelAndViewContainer

- Packages that use ModelAndViewContainer
  Package | Description
  --- | ---
  org.springframework.web.method.annotation | Support classes for annotation-based handler method processing.
  org.springframework.web.method.support | Generic support classes for handler method processing.
  org.springframework.web.servlet.mvc.method.annotation | MVC infrastructure for annotation-based handler method processing, building on the `org.springframework.web.method.annotation` package.

- - ### Uses of ModelAndViewContainer in org.springframework.web.method.annotation

    Methods in org.springframework.web.method.annotation with parameters of type ModelAndViewContainer
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | AbstractNamedValueMethodArgumentResolver.`handleResolvedValue(Object arg, String name, MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)` Invoked after a value is resolved.
    `void` | MapMethodProcessor.`handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
    `void` | ModelMethodProcessor.`handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
    `void` | ModelAttributeMethodProcessor.`handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)` Add non-null return values to the `ModelAndViewContainer`.
    `void` | ModelFactory.`initModel(NativeWebRequest request, ModelAndViewContainer container, HandlerMethod handlerMethod)` Populate the model in the following order: Retrieve "known" session attributes listed as `@SessionAttributes`.
    `Object` | MapMethodProcessor.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
    `Object` | SessionStatusMethodArgumentResolver.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
    `Object` | ModelMethodProcessor.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
    `Object` | RequestHeaderMapMethodArgumentResolver.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
    `Object` | RequestParamMapMethodArgumentResolver.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
    `Object` | ModelAttributeMethodProcessor.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)` Resolve the argument from the model or if not found instantiate it with its default if it is available.
    `Object` | AbstractWebArgumentResolverAdapter.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)` Delegate to the `WebArgumentResolver` instance.
    `Object` | AbstractNamedValueMethodArgumentResolver.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
    `Object` | ErrorsMethodArgumentResolver.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
    `void` | ModelFactory.`updateModel(NativeWebRequest request, ModelAndViewContainer container)` Promote model attributes listed as `@SessionAttributes` to the session.

  - ### Uses of ModelAndViewContainer in org.springframework.web.method.support

    Methods in org.springframework.web.method.support that return ModelAndViewContainer
    Modifier and Type | Method and Description
    --- | ---
    `ModelAndViewContainer` | ModelAndViewContainer.`addAllAttributes(Map<String,?> attributes)` Copy all attributes to the underlying model.
    `ModelAndViewContainer` | ModelAndViewContainer.`addAttribute(Object value)` Add the supplied attribute to the underlying model.
    `ModelAndViewContainer` | ModelAndViewContainer.`addAttribute(String name, Object value)` Add the supplied attribute to the underlying model.
    `ModelAndViewContainer` | ModelAndViewContainer.`mergeAttributes(Map<String,?> attributes)` Copy attributes in the supplied `Map` with existing objects of the same name taking precedence (i.e.
    `ModelAndViewContainer` | ModelAndViewContainer.`removeAttributes(Map<String,?> attributes)` Remove the given attributes from the model.

    Methods in org.springframework.web.method.support with parameters of type ModelAndViewContainer
    Modifier and Type | Method and Description
    --- | ---
    `protected Object[]` | InvocableHandlerMethod.`getMethodArgumentValues(NativeWebRequest request, ModelAndViewContainer mavContainer, Object... providedArgs)` Get the method argument values for the current request, checking the provided argument values and falling back to the configured argument resolvers.
    `void` | HandlerMethodReturnValueHandler.`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 `setRequestHandled(boolean)` flag to `true` to indicate the response has been handled directly.
    `void` | HandlerMethodReturnValueHandlerComposite.`handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)` Iterate over registered `HandlerMethodReturnValueHandlers` and invoke the one that supports it.
    `Object` | InvocableHandlerMethod.`invokeForRequest(NativeWebRequest request, ModelAndViewContainer mavContainer, Object... providedArgs)` Invoke the method after resolving its argument values in the context of the given request.
    `Object` | HandlerMethodArgumentResolverComposite.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)` Iterate over registered `HandlerMethodArgumentResolvers` and invoke the one that supports it.
    `Object` | HandlerMethodArgumentResolver.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)` Resolves a method parameter into an argument value from a given request.

  - ### Uses of ModelAndViewContainer in org.springframework.web.servlet.mvc.method.annotation

    Methods in org.springframework.web.servlet.mvc.method.annotation with parameters of type ModelAndViewContainer
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | PathVariableMethodArgumentResolver.`handleResolvedValue(Object arg, String name, MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest request)`
    `void` | RequestResponseBodyMethodProcessor.`handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
    `void` | HttpHeadersReturnValueHandler.`handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
    `void` | ViewNameMethodReturnValueHandler.`handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
    `void` | AsyncTaskMethodReturnValueHandler.`handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
    `void` | ResponseBodyEmitterReturnValueHandler.`handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
    `void` | HttpEntityMethodProcessor.`handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
    `void` | CallableMethodReturnValueHandler.`handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
    `void` | StreamingResponseBodyReturnValueHandler.`handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
    `void` | ModelAndViewMethodReturnValueHandler.`handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
    `void` | ViewMethodReturnValueHandler.`handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
    `void` | DeferredResultMethodReturnValueHandler.`handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
    `void` | ModelAndViewResolverMethodReturnValueHandler.`handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)`
    `void` | ServletInvocableHandlerMethod.`invokeAndHandle(ServletWebRequest webRequest, ModelAndViewContainer mavContainer, Object... providedArgs)` Invoke the method and handle the return value through one of the configured `HandlerMethodReturnValueHandlers`.
    `Object` | RequestResponseBodyMethodProcessor.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)` Throws MethodArgumentNotValidException if validation fails.
    `Object` | UriComponentsBuilderMethodArgumentResolver.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
    `Object` | PrincipalMethodArgumentResolver.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
    `Object` | MatrixVariableMapMethodArgumentResolver.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest request, WebDataBinderFactory binderFactory)`
    `Object` | HttpEntityMethodProcessor.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
    `Object` | ContinuationHandlerMethodArgumentResolver.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
    `Object` | ServletRequestMethodArgumentResolver.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`
    `Object` | RequestPartMethodArgumentResolver.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest request, WebDataBinderFactory binderFactory)`
    `Object` | ServletResponseMethodArgumentResolver.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)` Set `setRequestHandled(boolean)` to `false` to indicate that the method signature provides access to the response.
    `Object` | PathVariableMapMethodArgumentResolver.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)` Return a Map with all URI template variables or an empty map.
    `Object` | RedirectAttributesMethodArgumentResolver.`resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)`