public class HandlerMethodArgumentResolverComposite extends java.lang.Object implements HandlerMethodArgumentResolver
HandlerMethodArgumentResolvers
.
Previously resolved method parameters are cached for faster lookups.Modifier and Type | Field and Description |
---|---|
private java.util.Map<MethodParameter,HandlerMethodArgumentResolver> |
argumentResolverCache |
private java.util.List<HandlerMethodArgumentResolver> |
argumentResolvers |
protected Log |
logger
Deprecated.
|
Constructor and Description |
---|
HandlerMethodArgumentResolverComposite() |
@Deprecated protected final Log logger
private final java.util.List<HandlerMethodArgumentResolver> argumentResolvers
private final java.util.Map<MethodParameter,HandlerMethodArgumentResolver> argumentResolverCache
public HandlerMethodArgumentResolverComposite()
public HandlerMethodArgumentResolverComposite addResolver(HandlerMethodArgumentResolver resolver)
HandlerMethodArgumentResolver
.public HandlerMethodArgumentResolverComposite addResolvers(@Nullable HandlerMethodArgumentResolver... resolvers)
HandlerMethodArgumentResolvers
.public HandlerMethodArgumentResolverComposite addResolvers(@Nullable java.util.List<? extends HandlerMethodArgumentResolver> resolvers)
HandlerMethodArgumentResolvers
.public java.util.List<HandlerMethodArgumentResolver> getResolvers()
public void clear()
public boolean supportsParameter(MethodParameter parameter)
HandlerMethodArgumentResolver
.supportsParameter
in interface HandlerMethodArgumentResolver
parameter
- the method parameter to checktrue
if this resolver supports the supplied parameter;
false
otherwise@Nullable public java.lang.Object resolveArgument(MethodParameter parameter, @Nullable ModelAndViewContainer mavContainer, NativeWebRequest webRequest, @Nullable WebDataBinderFactory binderFactory) throws java.lang.Exception
HandlerMethodArgumentResolvers
and invoke the one that supports it.resolveArgument
in interface HandlerMethodArgumentResolver
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 requestwebRequest
- the current requestbinderFactory
- a factory for creating WebDataBinder
instancesnull
if not resolvablejava.lang.IllegalArgumentException
- if no suitable argument resolver is foundjava.lang.Exception
- in case of errors with the preparation of argument values@Nullable private HandlerMethodArgumentResolver getArgumentResolver(MethodParameter parameter)
HandlerMethodArgumentResolver
that supports
the given method parameter.