org.springframework.orm.jdo
Class PersistenceManagerFactoryUtils.PersistenceManagerSynchronization

java.lang.Object
  extended by org.springframework.transaction.support.ResourceHolderSynchronization<PersistenceManagerHolder,PersistenceManagerFactory>
      extended by org.springframework.orm.jdo.PersistenceManagerFactoryUtils.PersistenceManagerSynchronization
All Implemented Interfaces:
Ordered, TransactionSynchronization
Enclosing class:
PersistenceManagerFactoryUtils

private static class PersistenceManagerFactoryUtils.PersistenceManagerSynchronization
extends ResourceHolderSynchronization<PersistenceManagerHolder,PersistenceManagerFactory>
implements Ordered

Callback for resource cleanup at the end of a non-JDO transaction (e.g. when participating in a JtaTransactionManager transaction).

See Also:
JtaTransactionManager

Field Summary
private  boolean newPersistenceManager
           
 
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
 
Fields inherited from interface org.springframework.transaction.support.TransactionSynchronization
STATUS_COMMITTED, STATUS_ROLLED_BACK, STATUS_UNKNOWN
 
Constructor Summary
PersistenceManagerFactoryUtils.PersistenceManagerSynchronization(PersistenceManagerHolder pmHolder, PersistenceManagerFactory pmf, boolean newPersistenceManager)
           
 
Method Summary
 void flushResource(PersistenceManagerHolder resourceHolder)
          Flush callback for the given resource holder.
 int getOrder()
          Return the order value of this object, with a higher value meaning greater in terms of sorting.
protected  void releaseResource(PersistenceManagerHolder resourceHolder, PersistenceManagerFactory resourceKey)
          Release the given resource (after it has been unbound from the thread).
protected  boolean shouldUnbindAtCompletion()
          Return whether this holder should be unbound at completion (or should rather be left bound to the thread after the transaction).
 
Methods inherited from class org.springframework.transaction.support.ResourceHolderSynchronization
afterCommit, afterCompletion, beforeCommit, beforeCompletion, cleanupResource, flush, processResourceAfterCommit, resume, shouldReleaseBeforeCompletion, suspend
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

newPersistenceManager

private final boolean newPersistenceManager
Constructor Detail

PersistenceManagerFactoryUtils.PersistenceManagerSynchronization

public PersistenceManagerFactoryUtils.PersistenceManagerSynchronization(PersistenceManagerHolder pmHolder,
                                                                        PersistenceManagerFactory pmf,
                                                                        boolean newPersistenceManager)
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, with Integer.MAX_VALUE indicating the greatest value. Same order values will result in arbitrary positions for the affected objects.

Higher values can be interpreted as lower priority. As a consequence, the object with the lowest value has highest priority (somewhat analogous to Servlet "load-on-startup" values).

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

flushResource

public void flushResource(PersistenceManagerHolder resourceHolder)
Description copied from class: ResourceHolderSynchronization
Flush callback for the given resource holder.

Overrides:
flushResource in class ResourceHolderSynchronization<PersistenceManagerHolder,PersistenceManagerFactory>
Parameters:
resourceHolder - the resource holder to flush

shouldUnbindAtCompletion

protected boolean shouldUnbindAtCompletion()
Description copied from class: ResourceHolderSynchronization
Return whether this holder should be unbound at completion (or should rather be left bound to the thread after the transaction).

The default implementation returns true.

Overrides:
shouldUnbindAtCompletion in class ResourceHolderSynchronization<PersistenceManagerHolder,PersistenceManagerFactory>

releaseResource

protected void releaseResource(PersistenceManagerHolder resourceHolder,
                               PersistenceManagerFactory resourceKey)
Description copied from class: ResourceHolderSynchronization
Release the given resource (after it has been unbound from the thread).

Overrides:
releaseResource in class ResourceHolderSynchronization<PersistenceManagerHolder,PersistenceManagerFactory>
Parameters:
resourceHolder - the resource holder to process
resourceKey - the key that the ResourceHolder was bound for