org.springframework.messaging.handler.invocation.reactive

## Interface SyncHandlerMethodArgumentResolver

All Superinterfaces:
  HandlerMethodArgumentResolver

All Known Implementing Classes:
  AbstractNamedValueMethodArgumentResolver, DestinationVariableMethodArgumentResolver, HeaderMethodArgumentResolver, HeadersMethodArgumentResolver

    public interface SyncHandlerMethodArgumentResolver
    extends HandlerMethodArgumentResolver

An extension of `HandlerMethodArgumentResolver` for implementations that are synchronous in nature and do not block to resolve values.

Since:
  5.2
Author:
  Rossen Stoyanchev

### Method Summary

All Methods Instance Methods Abstract Methods Default Methods
`default reactor.core.publisher.Mono<Object>` `resolveArgument(org.springframework.core.MethodParameter parameter, Message<?> message)` Resolves a method parameter into an argument value from a given message.
`Object` `resolveArgumentValue(org.springframework.core.MethodParameter parameter, Message<?> message)` Resolve the value for the method parameter synchronously.

### Methods inherited from interface org.springframework.messaging.handler.invocation.reactive.HandlerMethodArgumentResolver

`supportsParameter`

### Method Detail

#### resolveArgument

    default reactor.core.publisher.Mono<Object> resolveArgument(org.springframework.core.MethodParameter parameter,
                                                                Message<?> message)

Resolves a method parameter into an argument value from a given message.

By default this simply delegates to `resolveArgumentValue(org.springframework.core.MethodParameter, org.springframework.messaging.Message<?>)` for synchronous resolution.

Specified by:
  `resolveArgument` in interface `HandlerMethodArgumentResolver`
Parameters:
  `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`.
  `message` - the currently processed message
Returns:
  `Mono` for the argument value, possibly empty

#### resolveArgumentValue

    @Nullable
    Object resolveArgumentValue(org.springframework.core.MethodParameter parameter,
                                          Message<?> message)

Resolve the value for the method parameter synchronously.

Parameters:
  `parameter` - the method parameter
  `message` - the currently processed message
Returns:
  the resolved value, if any