Package org.apache.openjpa.ee
Class RegistryManagedRuntime
java.lang.Object
org.apache.openjpa.ee.RegistryManagedRuntime
- All Implemented Interfaces:
ManagedRuntime
- Direct Known Subclasses:
WASRegistryManagedRuntime
Implementation of the
ManagedRuntime interface that uses
the TransactionSynchronizationRegistry interface (new in JTA 1.1)
to create a TransactionManager facade for controlling transactions.- Since:
- 1.0.0
- Author:
- Marc Prud'hommeaux
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionclassATransactionManagerandTransactionfacade that delegates the appropriate methods to the internally-heldTransactionSynchronizationRegistry. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoiddoNonTransactionalWork(Runnable runnable) RegistryManagedRuntime cannot suspend transactions.Returns the Throwable that caused the current transaction to be marked for rollback, provided that any exists.Returns a transaction key that can be used to associate transactions and Brokers.jakarta.transaction.TransactionManagerReturn the cached TransactionManager instance.voidsetRegistryName(String registryName) voidsetRollbackOnly(Throwable cause) Sets the rollback only flag on the current transaction.
-
Constructor Details
-
RegistryManagedRuntime
public RegistryManagedRuntime()
-
-
Method Details
-
getTransactionManager
Return the cached TransactionManager instance.- Specified by:
getTransactionManagerin interfaceManagedRuntime- Throws:
Exception
-
setRollbackOnly
Description copied from interface:ManagedRuntimeSets the rollback only flag on the current transaction. If the TransactionManager is capable of tracking the cause of the rollback-only flag, it will also pass along cause information.- Specified by:
setRollbackOnlyin interfaceManagedRuntime- Parameters:
cause- the Throwable that caused the transaction to be marked for rollback, or null of none is known- Throws:
Exception
-
getRollbackCause
Description copied from interface:ManagedRuntimeReturns the Throwable that caused the current transaction to be marked for rollback, provided that any exists.- Specified by:
getRollbackCausein interfaceManagedRuntime- Returns:
- the Throwable cause, or null if none
- Throws:
Exception
-
setRegistryName
-
getRegistryName
-
getTransactionKey
Description copied from interface:ManagedRuntimeReturns a transaction key that can be used to associate transactions and Brokers.- Specified by:
getTransactionKeyin interfaceManagedRuntime- Returns:
- the transaction key
- Throws:
Exceptionjakarta.transaction.SystemException
-
doNonTransactionalWork
public void doNonTransactionalWork(Runnable runnable) throws jakarta.transaction.NotSupportedException RegistryManagedRuntime cannot suspend transactions.
- Specified by:
doNonTransactionalWorkin interfaceManagedRuntime- Parameters:
runnable- The runnable wrapper for the work that will be done. The runnable object should be fully initialized with any state needed to execute.- Throws:
jakarta.transaction.NotSupportedException- if the transaction can not be suspended.
-