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
- Direct Known Subclasses:
- ServletCookieValueMethodArgumentResolver
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
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
AbstractCookieValueMethodArgumentResolver
public AbstractCookieValueMethodArgumentResolver(ConfigurableBeanFactory beanFactory)
- 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
supportsParameter
public boolean supportsParameter(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(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 cookieName,
MethodParameter param)
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.
- Specified by:
handleMissingValue
in class AbstractNamedValueMethodArgumentResolver
- Parameters:
cookieName
- the name for the valueparam
- the method parameter
- Throws:
ServletRequestBindingException