org.springframework.transaction.support
Class TransactionSynchronizationAdapter

java.lang.Object
  extended byorg.springframework.transaction.support.TransactionSynchronizationAdapter
All Implemented Interfaces:
Ordered, TransactionSynchronization

public abstract class TransactionSynchronizationAdapter
extends Object
implements TransactionSynchronization, Ordered

Adapter for the TransactionSynchronization interface. Contains empty implementations of all interface methods, for easy overriding of single methods.

Also implements the Ordered interface to allow for influencing the execution order of synchronizations. Default is Integer.MAX_VALUE, indicating late execution; return a lower value for earlier execution.

Since:
22.01.2004
Author:
Juergen Hoeller

Field Summary
 
Fields inherited from interface org.springframework.transaction.support.TransactionSynchronization
STATUS_COMMITTED, STATUS_ROLLED_BACK, STATUS_UNKNOWN
 
Constructor Summary
TransactionSynchronizationAdapter()
           
 
Method Summary
 void afterCompletion(int status)
          Invoked after transaction commit/rollback.
 void beforeCommit(boolean readOnly)
          Invoked before transaction commit (before "beforeCompletion").
 void beforeCompletion()
          Invoked before transaction commit/rollback (after "beforeCommit", even if beforeCommit threw an exception).
 int getOrder()
          Return the order value of this object, higher value meaning greater in terms of sorting.
 void resume()
          Resume this synchronization.
 void suspend()
          Suspend this synchronization.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TransactionSynchronizationAdapter

public TransactionSynchronizationAdapter()
Method Detail

getOrder

public int getOrder()
Description copied from interface: Ordered
Return the order value of this object, higher value meaning greater in terms of sorting. Normally starting with 0 or 1, Integer.MAX_VALUE indicating greatest. Same order values will result in arbitrary positions for the affected objects.

Higher value can be interpreted as lower priority, consequently the first object has highest priority (somewhat analogous to Servlet "load-on-startup" values).

Specified by:
getOrder in interface Ordered
Returns:
the order value

suspend

public void suspend()
Description copied from interface: TransactionSynchronization
Suspend this synchronization. Supposed to unbind resources from TransactionSynchronizationManager if managing any.

Specified by:
suspend in interface TransactionSynchronization
See Also:
TransactionSynchronizationManager.unbindResource(java.lang.Object)

resume

public void resume()
Description copied from interface: TransactionSynchronization
Resume this synchronization. Supposed to rebind resources to TransactionSynchronizationManager if managing any.

Specified by:
resume in interface TransactionSynchronization
See Also:
TransactionSynchronizationManager.bindResource(java.lang.Object, java.lang.Object)

beforeCommit

public void beforeCommit(boolean readOnly)
Description copied from interface: TransactionSynchronization
Invoked before transaction commit (before "beforeCompletion"). Can e.g. flush transactional sessions to the database.

Note that exceptions will get propagated to the commit caller and cause a rollback of the transaction.

Specified by:
beforeCommit in interface TransactionSynchronization
Parameters:
readOnly - if the transaction is defined as read-only transaction
See Also:
TransactionSynchronization.beforeCompletion()

beforeCompletion

public void beforeCompletion()
Description copied from interface: TransactionSynchronization
Invoked before transaction commit/rollback (after "beforeCommit", even if beforeCommit threw an exception). Can e.g. perform resource cleanup.

Note that exceptions will get propagated to the commit caller and cause a rollback of the transaction.

Specified by:
beforeCompletion in interface TransactionSynchronization
See Also:
TransactionSynchronization.beforeCommit(boolean), TransactionSynchronization.afterCompletion(int)

afterCompletion

public void afterCompletion(int status)
Description copied from interface: TransactionSynchronization
Invoked after transaction commit/rollback. Can e.g. perform resource cleanup, in this case after transaction completion.

Note that exceptions will get propagated to the commit or rollback caller, although they will not influence the outcome of the transaction.

Specified by:
afterCompletion in interface TransactionSynchronization
Parameters:
status - completion status according to the STATUS_* constants
See Also:
TransactionSynchronization.STATUS_COMMITTED, TransactionSynchronization.STATUS_ROLLED_BACK, TransactionSynchronization.STATUS_UNKNOWN, TransactionSynchronization.beforeCompletion()


Copyright (C) 2003-2004 The Spring Framework Project.