Class InvocableHandlerMethod

java.lang.Object
org.springframework.core.annotation.AnnotatedMethod
org.springframework.messaging.handler.HandlerMethod
org.springframework.messaging.handler.invocation.reactive.InvocableHandlerMethod

public class InvocableHandlerMethod extends HandlerMethod
Extension of HandlerMethod that invokes the underlying method with argument values resolved from the current HTTP request through a list of HandlerMethodArgumentResolver.
Since:
5.2
Author:
Rossen Stoyanchev
  • Constructor Details

    • InvocableHandlerMethod

      public InvocableHandlerMethod(HandlerMethod handlerMethod)
      Create an instance from a HandlerMethod.
    • InvocableHandlerMethod

      public InvocableHandlerMethod(Object bean, Method method)
      Create an instance from a bean instance and a method.
  • Method Details

    • setArgumentResolvers

      public void setArgumentResolvers(List<HandlerMethodArgumentResolver> resolvers)
      Configure the argument resolvers to use for resolving method argument values against a ServerWebExchange.
    • getResolvers

      public List<HandlerMethodArgumentResolver> getResolvers()
      Return the configured argument resolvers.
    • setParameterNameDiscoverer

      public void setParameterNameDiscoverer(ParameterNameDiscoverer nameDiscoverer)
      Set the ParameterNameDiscoverer for resolving parameter names when needed (e.g. default request attribute name).

      Default is a DefaultParameterNameDiscoverer.

    • getParameterNameDiscoverer

      public ParameterNameDiscoverer getParameterNameDiscoverer()
      Return the configured parameter name discoverer.
    • setReactiveAdapterRegistry

      public void setReactiveAdapterRegistry(ReactiveAdapterRegistry registry)
      Configure a reactive adapter registry. This is needed for async return values.

      By default this is a ReactiveAdapterRegistry with default settings.

    • invoke

      public reactor.core.publisher.Mono<Object> invoke(Message<?> message, Object... providedArgs)
      Invoke the method for the given exchange.
      Parameters:
      message - the current message
      providedArgs - optional list of argument values to match by type
      Returns:
      a Mono with the result from the invocation