Package org.springframework.web.method.annotation

# Class AbstractCookieValueMethodArgumentResolver

java.lang.Object
org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver
org.springframework.web.method.annotation.AbstractCookieValueMethodArgumentResolver

All Implemented Interfaces:
  `HandlerMethodArgumentResolver`

public abstract class AbstractCookieValueMethodArgumentResolver extends AbstractNamedValueMethodArgumentResolver
A base abstract class to resolve method arguments annotated with `@CookieValue`. Subclasses extract the cookie value from the request.

An `@CookieValue` is a named value that is resolved from a cookie. It has a required flag and a default value to fall back on when the cookie does not exist.

A `WebDataBinder` may be invoked to apply type conversion to the resolved cookie value.

Since:
  3.1
Author:
  Arjen Poutsma, Rossen Stoyanchev

## Nested Class Summary

## Nested classes/interfaces inherited from class org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver

`AbstractNamedValueMethodArgumentResolver.NamedValueInfo`

## Constructor Summary

Constructors
Constructor
Description
`AbstractCookieValueMethodArgumentResolver(org.springframework.beans.factory.config.ConfigurableBeanFactory beanFactory)`
Crate a new `AbstractCookieValueMethodArgumentResolver` instance.

## Method Summary

Modifier and Type
Method
Description
`protected AbstractNamedValueMethodArgumentResolver.NamedValueInfo`
`createNamedValueInfo(org.springframework.core.MethodParameter parameter)`
Create the `AbstractNamedValueMethodArgumentResolver.NamedValueInfo` object for the given method parameter.
`protected void`
`handleMissingValue(String name, org.springframework.core.MethodParameter parameter)`
Invoked when a named value is required, but `AbstractNamedValueMethodArgumentResolver.resolveName(String, MethodParameter, NativeWebRequest)` returned `null` and there is no default value.
`protected void`
`handleMissingValueAfterConversion(String name, org.springframework.core.MethodParameter parameter, NativeWebRequest request)`
Invoked when a named value is present but becomes `null` after conversion.
`boolean`
`supportsParameter(org.springframework.core.MethodParameter parameter)`
Whether the given method parameter is supported by this resolver.

### Methods inherited from class org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver

`handleMissingValue, handleResolvedValue, resolveArgument, resolveName`

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

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

## Constructor Details

### AbstractCookieValueMethodArgumentResolver

public AbstractCookieValueMethodArgumentResolver(@Nullable org.springframework.beans.factory.config.ConfigurableBeanFactory beanFactory)
Crate a new `AbstractCookieValueMethodArgumentResolver` instance.

Parameters:
  `beanFactory` - a bean factory to use for resolving ${...} placeholder and #{...} SpEL expressions in default values; or `null` if default values are not expected to contain expressions

## Method Details

### supportsParameter

public boolean supportsParameter(org.springframework.core.MethodParameter parameter)
Description copied from interface: `HandlerMethodArgumentResolver`
Whether the given method parameter is supported by this resolver.

Parameters:
  `parameter` - the method parameter to check
Returns:
  `true` if this resolver supports the supplied parameter; `false` otherwise

### createNamedValueInfo

protected AbstractNamedValueMethodArgumentResolver.NamedValueInfo createNamedValueInfo(org.springframework.core.MethodParameter parameter)
Description copied from class: `AbstractNamedValueMethodArgumentResolver`
Create the `AbstractNamedValueMethodArgumentResolver.NamedValueInfo` object for the given method parameter. Implementations typically retrieve the method annotation by means of `MethodParameter.getParameterAnnotation(Class)`.

Specified by:
  `createNamedValueInfo` in class `AbstractNamedValueMethodArgumentResolver`
Parameters:
  `parameter` - the method parameter
Returns:
  the named value information

### handleMissingValue

protected void handleMissingValue(String name, org.springframework.core.MethodParameter parameter) throws ServletRequestBindingException
Description copied from class: `AbstractNamedValueMethodArgumentResolver`
Invoked when a named value is required, but `AbstractNamedValueMethodArgumentResolver.resolveName(String, MethodParameter, NativeWebRequest)` returned `null` and there is no default value. Subclasses typically throw an exception in this case.

Overrides:
  `handleMissingValue` in class `AbstractNamedValueMethodArgumentResolver`
Parameters:
  `name` - the name for the value
  `parameter` - the method parameter
Throws:
  `ServletRequestBindingException`

### handleMissingValueAfterConversion

protected void handleMissingValueAfterConversion(String name, org.springframework.core.MethodParameter parameter, NativeWebRequest request) throws Exception
Description copied from class: `AbstractNamedValueMethodArgumentResolver`
Invoked when a named value is present but becomes `null` after conversion.

Overrides:
  `handleMissingValueAfterConversion` in class `AbstractNamedValueMethodArgumentResolver`
Parameters:
  `name` - the name for the value
  `parameter` - the method parameter
  `request` - the current request
Throws:
  `Exception`