Opaque object used to hold Transaction information.
Opaque object used to hold Transaction information. Subclasses must pass it back to methods on this class, but not see its internals.
Subclasses can use this to return the current TransactionInfo.
Subclasses can use this to return the current TransactionInfo. Only subclasses that cannot handle all operations in one method, such as an AspectJ aspect involving distinct before and after advice, need to use this mechanism to get at the current TransactionInfo. An around advice such as an AOP Alliance MethodInterceptor can hold a reference to the TransactionInfo throughout the aspect method.
A TransactionInfo will be returned even if no transaction was created.
The TransactionInfo.hasTransaction()
method can be used to query this.
To find out about specific transaction characteristics, consider using
TransactionSynchronizationManager's isSynchronizationActive()
and/or isActualTransactionActive()
methods.
TransactionInfo bound to this thread, or { @code null} if none
TransactionSynchronizationManager#isActualTransactionActive()
TransactionSynchronizationManager#isSynchronizationActive()
TransactionInfo#hasTransaction()
Return the transaction status of the current method invocation.
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.
NoTransactionException
if the transaction info cannot be found,
because the method was invoked outside an AOP invocation context
Base class for transactional functions, such as the SimpleDBApiTransactional.
This enables the underlying Spring transaction infrastructure to be used easily to implement an aspect for any aspect system.
Subclasses are responsible for calling methods in this class in the correct order.
If no transaction name has been specified in the TransactionAttribute, the exposed name will be the
(by default).
Uses the Strategy design pattern. A PlatformTransactionManager implementation will perform the actual transaction management, and a TransactionManagerLookup is used for determining the actual transaction manager.
1.1
#setTransactionManager