Class TransactionUtil


  • public class TransactionUtil
    extends Object
    Transaction utilities for Jakarta Persistence
    Author:
    Scott Marlow (forked from code by Gavin King)
    • Constructor Detail

      • TransactionUtil

        public TransactionUtil()
    • Method Detail

      • isInTx

        public static boolean isInTx​(javax.transaction.TransactionManager transactionManager)
      • getTransactionScopedEntityManager

        public static javax.persistence.EntityManager getTransactionScopedEntityManager​(String puScopedName,
                                                                                        javax.transaction.TransactionSynchronizationRegistry tsr)
        Get current persistence context. Only call while a transaction is active in the current thread.
        Parameters:
        puScopedName -
        Returns:
      • registerSynchronization

        public static void registerSynchronization​(javax.persistence.EntityManager entityManager,
                                                   String puScopedName,
                                                   javax.transaction.TransactionSynchronizationRegistry tsr,
                                                   javax.transaction.TransactionManager transactionManager)
      • getTransaction

        public static javax.transaction.Transaction getTransaction​(javax.transaction.TransactionManager transactionManager)
      • getEntityManagerDetails

        public static String getEntityManagerDetails​(javax.persistence.EntityManager manager,
                                                     String scopedPuName)
      • putEntityManagerInTransactionRegistry

        public static void putEntityManagerInTransactionRegistry​(String scopedPuName,
                                                                 javax.persistence.EntityManager entityManager,
                                                                 javax.transaction.TransactionSynchronizationRegistry tsr)
        Save the specified EntityManager in the local threads active transaction. The TransactionSynchronizationRegistry will clear the reference to the EntityManager when the transaction completes.
        Parameters:
        scopedPuName -
        entityManager -