Class DelegatingInvocableHandler


  • public class DelegatingInvocableHandler
    extends Object
    Delegates to an InvocableHandlerMethod based on the message payload type. Matches a single, non-annotated parameter or one that is annotated with Payload. Matches must be unambiguous.
    Since:
    1.5
    Author:
    Gary Russell, Artem Bilan
    • Method Detail

      • getBean

        public Object getBean()
        Returns:
        the bean
      • isAsyncReplies

        public boolean isAsyncReplies()
        Return true if any handler method has an async reply type.
        Returns:
        the asyncReply.
        Since:
        2.2.21
      • invoke

        public InvocationResult invoke​(Message<?> message,
                                       Object... providedArgs)
                                throws Exception
        Invoke the method with the given message.
        Parameters:
        message - the message.
        providedArgs - additional arguments.
        Returns:
        the result of the invocation.
        Throws:
        Exception - raised if no suitable argument resolver can be found, or the method raised an exception.
      • getHandlerForPayload

        protected InvocableHandlerMethod getHandlerForPayload​(Class<? extends Object> payloadClass)
        Parameters:
        payloadClass - the payload class.
        Returns:
        the handler.
      • getMethodNameFor

        public String getMethodNameFor​(Object payload)
        Return a string representation of the method that will be invoked for this payload.
        Parameters:
        payload - the payload.
        Returns:
        the method name.
      • getMethodFor

        public Method getMethodFor​(Object payload)
        Return the method that will be invoked for this payload.
        Parameters:
        payload - the payload.
        Returns:
        the method.
        Since:
        2.0
      • hasDefaultHandler

        public boolean hasDefaultHandler()