Class TransactionalInterceptor

  • All Implemented Interfaces:
    io.micronaut.aop.Interceptor<java.lang.Object,​java.lang.Object>, io.micronaut.aop.MethodInterceptor<java.lang.Object,​java.lang.Object>, io.micronaut.core.order.Ordered

    @Singleton
    @Internal
    public final class TransactionalInterceptor
    extends java.lang.Object
    implements io.micronaut.aop.MethodInterceptor<java.lang.Object,​java.lang.Object>
    Default implementation of TransactionalAdvice. Forked from the reflection based code in Spring.
    Since:
    1.0
    Author:
    graemerocher, Denis stepanov
    • Field Summary

      • Fields inherited from interface io.micronaut.aop.Interceptor

        ARGUMENT, CACHEABLE_LAZY_TARGET, HOTSWAP, LAZY, PROXY_TARGET
      • Fields inherited from interface io.micronaut.core.order.Ordered

        HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static <T> TransactionStatus<T> currentTransactionStatus()
      Return the transaction status of the current method invocation.
      int getOrder()  
      java.lang.Object intercept​(io.micronaut.aop.MethodInvocationContext<java.lang.Object,​java.lang.Object> context)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface io.micronaut.aop.MethodInterceptor

        intercept
    • Method Detail

      • getOrder

        public int getOrder()
        Specified by:
        getOrder in interface io.micronaut.core.order.Ordered
      • intercept

        public java.lang.Object intercept​(io.micronaut.aop.MethodInvocationContext<java.lang.Object,​java.lang.Object> context)
        Specified by:
        intercept in interface io.micronaut.aop.MethodInterceptor<java.lang.Object,​java.lang.Object>
      • currentTransactionStatus

        public static <T> TransactionStatus<T> currentTransactionStatus()
                                                                 throws NoTransactionException
        Return the transaction status of the current method invocation. Mainly intended for code that wants to set the current transaction rollback-only but not throw an application exception.
        Type Parameters:
        T - The connection type
        Returns:
        The current status
        Throws:
        NoTransactionException - if the transaction info cannot be found, because the method was invoked outside an AOP invocation context