private class SimpleTransactionScope.CleanupSynchronization extends TransactionSynchronizationAdapter
Modifier and Type | Field and Description |
---|---|
private SimpleTransactionScope.ScopedObjectsHolder |
scopedObjects |
STATUS_COMMITTED, STATUS_ROLLED_BACK, STATUS_UNKNOWN
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
Constructor and Description |
---|
CleanupSynchronization(SimpleTransactionScope.ScopedObjectsHolder scopedObjects) |
Modifier and Type | Method and Description |
---|---|
void |
afterCompletion(int status)
Invoked after transaction commit/rollback.
|
void |
resume()
Resume this synchronization.
|
void |
suspend()
Suspend this synchronization.
|
afterCommit, beforeCommit, beforeCompletion, flush, getOrder
private final SimpleTransactionScope.ScopedObjectsHolder scopedObjects
public CleanupSynchronization(SimpleTransactionScope.ScopedObjectsHolder scopedObjects)
public void suspend()
TransactionSynchronization
suspend
in interface TransactionSynchronization
suspend
in class TransactionSynchronizationAdapter
TransactionSynchronizationManager.unbindResource(java.lang.Object)
public void resume()
TransactionSynchronization
resume
in interface TransactionSynchronization
resume
in class TransactionSynchronizationAdapter
TransactionSynchronizationManager.bindResource(java.lang.Object, java.lang.Object)
public void afterCompletion(int status)
TransactionSynchronization
NOTE: The transaction will have been committed or rolled back already,
but the transactional resources might still be active and accessible. As a
consequence, any data access code triggered at this point will still "participate"
in the original transaction, allowing to perform some cleanup (with no commit
following anymore!), unless it explicitly declares that it needs to run in a
separate transaction. Hence: Use PROPAGATION_REQUIRES_NEW
for any transactional operation that is called from here.
afterCompletion
in interface TransactionSynchronization
afterCompletion
in class TransactionSynchronizationAdapter
status
- completion status according to the STATUS_*
constantsTransactionSynchronization.STATUS_COMMITTED
,
TransactionSynchronization.STATUS_ROLLED_BACK
,
TransactionSynchronization.STATUS_UNKNOWN
,
TransactionSynchronization.beforeCompletion()