Class ChainedMessageHandlerInterceptorMember<T>

java.lang.Object
org.axonframework.messaging.annotation.ChainedMessageHandlerInterceptorMember<T>
Type Parameters:
T - The type that declares the handlers in this chain.
All Implemented Interfaces:
MessageHandlerInterceptorMemberChain<T>

public class ChainedMessageHandlerInterceptorMember<T> extends Object implements MessageHandlerInterceptorMemberChain<T>
A MessageHandlerInterceptorMemberChain implementation that constructs a chain of instances of itself based on a given iterator of MessageHandlingMembers.
Since:
4.4.0
Author:
Allard Buijze
  • Constructor Details

    • ChainedMessageHandlerInterceptorMember

      public ChainedMessageHandlerInterceptorMember(Class<?> handlerType, Iterator<MessageHandlingMember<? super T>> iterator)
      Constructs a chained message handling interceptor for the given handlerType, constructing a chain from the given iterator.

      The iterator should at least> have a single MessageHandlingMember. If there are more MessageHandlingMembers present in the given iterator, this constructor will be invoked again.

      Parameters:
      handlerType - The type for which to construct a message handler interceptor chain.
      iterator - The MessageHandlingMembers from which to construct the chain.
  • Method Details

    • handle

      public Object handle(@Nonnull Message<?> message, @Nonnull T target, @Nonnull MessageHandlingMember<? super T> handler) throws Exception
      Description copied from interface: MessageHandlerInterceptorMemberChain
      Handle the given message by passing it through the interceptors and ultimately to the given handler on the given target instance. The result of this invocation is the result as given by the handler, possibly modified by any of the interceptors in this chain.
      Specified by:
      handle in interface MessageHandlerInterceptorMemberChain<T>
      Parameters:
      message - The message to pass through the interceptor chain
      target - The target instance to invoke the interceptors and handlers on
      handler - The actual handler to invoke once all interceptors have received the message
      Returns:
      the result as returned by the handlers or interceptors
      Throws:
      Exception - any exception thrown by the handler or any of the interceptors