Class LocalTransactionInterceptor

  • All Implemented Interfaces:
    java.io.Serializable
    Direct Known Subclasses:
    JtaTransactionInterceptor

    @Interceptor
    public class LocalTransactionInterceptor
    extends java.lang.Object
    implements java.io.Serializable
    Best-effort interceptor for local transactions. It locates all the instances of SqlSssionManager and starts transactions on all them. It cannot guarantee atomiticy if there is more than one SqlSssionManager. Use XA drivers, a JTA container and the JtaTransactionInterceptor in that case.
    Author:
    Frank David Martínez
    See Also:
    JtaTransactionInterceptor, Serialized Form
    • Constructor Detail

      • LocalTransactionInterceptor

        public LocalTransactionInterceptor()
    • Method Detail

      • invoke

        public java.lang.Object invoke​(javax.interceptor.InvocationContext ctx)
                                throws java.lang.Exception
        Invoke.
        Parameters:
        ctx - the ctx
        Returns:
        the object
        Throws:
        java.lang.Exception - the exception
      • isTransactionActive

        protected boolean isTransactionActive()
                                       throws javax.transaction.SystemException
        Throws:
        javax.transaction.SystemException
      • beginJta

        protected void beginJta()
                         throws javax.transaction.NotSupportedException,
                                javax.transaction.SystemException
        Throws:
        javax.transaction.NotSupportedException
        javax.transaction.SystemException
      • endJta

        protected void endJta​(boolean isExternaTransaction,
                              boolean commit)
                       throws javax.transaction.SystemException,
                              javax.transaction.RollbackException,
                              javax.transaction.HeuristicMixedException,
                              javax.transaction.HeuristicRollbackException
        Throws:
        javax.transaction.SystemException
        javax.transaction.RollbackException
        javax.transaction.HeuristicMixedException
        javax.transaction.HeuristicRollbackException
      • getTransactionalAnnotation

        protected Transactional getTransactionalAnnotation​(javax.interceptor.InvocationContext ctx)