Class DestinationVariableMethodArgumentResolver
java.lang.Object
org.springframework.messaging.handler.annotation.reactive.AbstractNamedValueMethodArgumentResolver
org.springframework.messaging.handler.annotation.reactive.DestinationVariableMethodArgumentResolver
- All Implemented Interfaces:
HandlerMethodArgumentResolver, SyncHandlerMethodArgumentResolver
public class DestinationVariableMethodArgumentResolver
extends AbstractNamedValueMethodArgumentResolver
Resolve for
@DestinationVariable method parameters.- Since:
- 5.2
- Author:
- Rossen Stoyanchev
-
Nested Class Summary
Nested classes/interfaces inherited from class AbstractNamedValueMethodArgumentResolver
AbstractNamedValueMethodArgumentResolver.NamedValueInfo -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe name of the header used to for template variables. -
Constructor Summary
ConstructorsConstructorDescriptionDestinationVariableMethodArgumentResolver(ConversionService conversionService) -
Method Summary
Modifier and TypeMethodDescriptioncreateNamedValueInfo(MethodParameter parameter) Create theAbstractNamedValueMethodArgumentResolver.NamedValueInfoobject for the given method parameter.protected voidhandleMissingValue(String name, MethodParameter parameter, Message<?> message) Invoked when a value is required, butAbstractNamedValueMethodArgumentResolver.resolveArgumentInternal(MethodParameter, Message, String)returnednulland there is no default value.resolveArgumentInternal(MethodParameter parameter, Message<?> message, String name) Resolves the given parameter type and value name into an argument value.booleansupportsParameter(MethodParameter parameter) Whether the given method parameter is supported by this resolver.Methods inherited from class AbstractNamedValueMethodArgumentResolver
resolveArgumentValueMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface SyncHandlerMethodArgumentResolver
resolveArgument
-
Field Details
-
DESTINATION_TEMPLATE_VARIABLES_HEADER
The name of the header used to for template variables.
-
-
Constructor Details
-
DestinationVariableMethodArgumentResolver
-
-
Method Details
-
supportsParameter
Description copied from interface:HandlerMethodArgumentResolverWhether the given method parameter is supported by this resolver.- Parameters:
parameter- the method parameter to check- Returns:
trueif this resolver supports the supplied parameter;falseotherwise
-
createNamedValueInfo
protected AbstractNamedValueMethodArgumentResolver.NamedValueInfo createNamedValueInfo(MethodParameter parameter) Description copied from class:AbstractNamedValueMethodArgumentResolverCreate theAbstractNamedValueMethodArgumentResolver.NamedValueInfoobject for the given method parameter. Implementations typically retrieve the method annotation by means ofMethodParameter.getParameterAnnotation(Class).- Specified by:
createNamedValueInfoin classAbstractNamedValueMethodArgumentResolver- Parameters:
parameter- the method parameter- Returns:
- the named value information
-
resolveArgumentInternal
protected @Nullable Object resolveArgumentInternal(MethodParameter parameter, Message<?> message, String name) Description copied from class:AbstractNamedValueMethodArgumentResolverResolves the given parameter type and value name into an argument value.- Specified by:
resolveArgumentInternalin classAbstractNamedValueMethodArgumentResolver- Parameters:
parameter- the method parameter to resolve to an argument valuemessage- the current requestname- the name of the value being resolved- Returns:
- the resolved argument. May be
null
-
handleMissingValue
Description copied from class:AbstractNamedValueMethodArgumentResolverInvoked when a value is required, butAbstractNamedValueMethodArgumentResolver.resolveArgumentInternal(MethodParameter, Message, String)returnednulland there is no default value. Subclasses can throw an appropriate exception for this case.- Specified by:
handleMissingValuein classAbstractNamedValueMethodArgumentResolver- Parameters:
name- the name for the valueparameter- the target method parametermessage- the message being processed
-