站内搜索: 请输入搜索关键词
当前页面: 在线文档首页 > Spring Framework 2.1.0 API 文档英文版

SpringLobCreatorSynchronization (Spring Framework API 2.1) - Spring Framework 2.1.0 API 文档英文版


The Spring Framework

org.springframework.jdbc.support.lob
Class SpringLobCreatorSynchronization

java.lang.Object
  extended by org.springframework.transaction.support.TransactionSynchronizationAdapter
      extended by org.springframework.jdbc.support.lob.SpringLobCreatorSynchronization
All Implemented Interfaces:
Ordered, TransactionSynchronization

public class SpringLobCreatorSynchronization
extends TransactionSynchronizationAdapter

Callback for resource cleanup at the end of a Spring transaction. Invokes LobCreator.close() to clean up temporary LOBs that might have been created.

Since:
2.0
Author:
Juergen Hoeller
See Also:
LobCreator.close()

Field Summary
static int LOB_CREATOR_SYNCHRONIZATION_ORDER
          Order value for TransactionSynchronization objects that clean up LobCreators.
 
Fields inherited from interface org.springframework.transaction.support.TransactionSynchronization
STATUS_COMMITTED, STATUS_ROLLED_BACK, STATUS_UNKNOWN
 
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
 
Constructor Summary
SpringLobCreatorSynchronization(LobCreator lobCreator)
          Create a SpringLobCreatorSynchronization for the given LobCreator.
 
Method Summary
 void afterCompletion(int status)
          Invoked after transaction commit/rollback.
 void beforeCompletion()
          Invoked before transaction commit/rollback.
 int getOrder()
          Return the order value of this object, with a higher value meaning greater in terms of sorting.
 
Methods inherited from class org.springframework.transaction.support.TransactionSynchronizationAdapter
afterCommit, beforeCommit, resume, suspend
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOB_CREATOR_SYNCHRONIZATION_ORDER

public static final int LOB_CREATOR_SYNCHRONIZATION_ORDER
Order value for TransactionSynchronization objects that clean up LobCreators. Return CONNECTION_SYNCHRONIZATION_ORDER - 200 to execute LobCreator cleanup before Hibernate Session (- 100) and JDBC Connection cleanup, if any.

See Also:
DataSourceUtils.CONNECTION_SYNCHRONIZATION_ORDER, Constant Field Values
Constructor Detail

SpringLobCreatorSynchronization

public SpringLobCreatorSynchronization(LobCreator lobCreator)
Create a SpringLobCreatorSynchronization for the given LobCreator.

Parameters:
lobCreator - the LobCreator to close after transaction completion
Method Detail

getOrder

public int getOrder()
Description copied from interface: Ordered
Return the order value of this object, with a higher value meaning greater in terms of sorting.

Normally starting with 0 or 1, with Ordered.LOWEST_PRECEDENCE 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).

Note that order values below 0 are reserved for framework purposes. Application-specified values should always be 0 or greater, with only framework components (internal or third-party) supposed to use lower values.

Specified by:
getOrder in interface Ordered
Overrides:
getOrder in class TransactionSynchronizationAdapter
Returns:
the order value
See Also:
Ordered.LOWEST_PRECEDENCE

beforeCompletion

public void beforeCompletion()
Description copied from interface: TransactionSynchronization
Invoked before transaction commit/rollback. Can perform resource cleanup before transaction completion.

This method will be invoked after beforeCommit, even when beforeCommit threw an exception. This callback allows for closing resources before transaction completion, for any outcome.

Specified by:
beforeCompletion in interface TransactionSynchronization
Overrides:
beforeCompletion in class TransactionSynchronizationAdapter
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 perform resource cleanup after transaction completion.

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.

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

The Spring Framework

Copyright © 2002-2007 The Spring Framework.