public abstract class AbstractNamedValueMethodArgumentResolver extends Object implements SyncHandlerMethodArgumentResolver
Subclasses only need to define specific steps such as how to obtain named value details from a method parameter, how to resolve to argument values, or how to handle missing values.
A default value string can contain ${...} placeholders and Spring
 Expression Language #{...} expressions which will be resolved if a
 ConfigurableBeanFactory is supplied to the class constructor.
 
A ConversionService is used to convert a resolved String argument
 value to the expected target method parameter type.
| Modifier and Type | Class and Description | 
|---|---|
| protected static class  | AbstractNamedValueMethodArgumentResolver.NamedValueInfoRepresents a named value declaration. | 
| Modifier | Constructor and Description | 
|---|---|
| protected  | AbstractNamedValueMethodArgumentResolver(ConversionService conversionService,
                                        ConfigurableBeanFactory beanFactory)Constructor with a  ConversionServiceand aBeanFactory. | 
| Modifier and Type | Method and Description | 
|---|---|
| protected abstract AbstractNamedValueMethodArgumentResolver.NamedValueInfo | createNamedValueInfo(MethodParameter parameter)Create the  AbstractNamedValueMethodArgumentResolver.NamedValueInfoobject for the given method parameter. | 
| protected abstract void | handleMissingValue(String name,
                  MethodParameter parameter,
                  Message<?> message)Invoked when a value is required, but  resolveArgumentInternal(org.springframework.core.MethodParameter, org.springframework.messaging.Message<?>, java.lang.String)returnednulland there is no default value. | 
| protected abstract Object | resolveArgumentInternal(MethodParameter parameter,
                       Message<?> message,
                       String name)Resolves the given parameter type and value name into an argument value. | 
| Object | resolveArgumentValue(MethodParameter parameter,
                    Message<?> message)Resolve the value for the method parameter synchronously. | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitresolveArgumentsupportsParameterprotected AbstractNamedValueMethodArgumentResolver(ConversionService conversionService, @Nullable ConfigurableBeanFactory beanFactory)
ConversionService and a BeanFactory.conversionService - conversion service for converting String values
 to the target method parameter typebeanFactory - a bean factory for resolving ${...}
 placeholders and #{...} SpEL expressions in default valuespublic Object resolveArgumentValue(MethodParameter parameter, Message<?> message)
SyncHandlerMethodArgumentResolverresolveArgumentValue in interface SyncHandlerMethodArgumentResolverparameter - the method parametermessage - the currently processed messageprotected abstract AbstractNamedValueMethodArgumentResolver.NamedValueInfo createNamedValueInfo(MethodParameter parameter)
AbstractNamedValueMethodArgumentResolver.NamedValueInfo object for the given method parameter.
 Implementations typically retrieve the method annotation by means of
 MethodParameter.getParameterAnnotation(Class).parameter - the method parameter@Nullable protected abstract Object resolveArgumentInternal(MethodParameter parameter, Message<?> message, String name)
parameter - the method parameter to resolve to an argument valuemessage - the current requestname - the name of the value being resolvednullprotected abstract void handleMissingValue(String name, MethodParameter parameter, Message<?> message)
resolveArgumentInternal(org.springframework.core.MethodParameter, org.springframework.messaging.Message<?>, java.lang.String)
 returned null and there is no default value. Subclasses can
 throw an appropriate exception for this case.name - the name for the valueparameter - the target method parametermessage - the message being processed