Class TransactionManagingInterceptor<T extends Message<?>>

java.lang.Object
org.axonframework.messaging.interceptors.TransactionManagingInterceptor<T>
All Implemented Interfaces:
MessageHandlerInterceptor<T>

public class TransactionManagingInterceptor<T extends Message<?>> extends Object implements MessageHandlerInterceptor<T>
Interceptor that uses a TransactionManager to start a new transaction before a Message is handled. When the Unit of Work is committed or rolled back this Interceptor also completes the Transaction.
Author:
Rene de Waele
  • Constructor Details

    • TransactionManagingInterceptor

      public TransactionManagingInterceptor(TransactionManager transactionManager)
      Initializes a TransactionManagingInterceptor that uses the given transactionManager.
      Parameters:
      transactionManager - the transaction manager that is used set up a new transaction
  • Method Details

    • handle

      public Object handle(@Nonnull UnitOfWork<? extends T> unitOfWork, @Nonnull InterceptorChain interceptorChain) throws Exception
      Description copied from interface: MessageHandlerInterceptor
      Invoked before a Message is handled by a designated MessageHandler.

      The interceptor is responsible for the continuation of the handling process by invoking the InterceptorChain.proceed() method on the given interceptorChain.

      The given unitOfWork contains contextual information. Any information gathered by interceptors may be attached to the unitOfWork.

      Interceptors are highly recommended not to change the type of the message handling result, as the dispatching component might expect a result of a specific type.

      Specified by:
      handle in interface MessageHandlerInterceptor<T extends Message<?>>
      Parameters:
      unitOfWork - The UnitOfWork that is processing the message
      interceptorChain - The interceptor chain that allows this interceptor to proceed the dispatch process
      Returns:
      the result of the message handler. May have been modified by interceptors.
      Throws:
      Exception - any exception that occurs while handling the message