stomp.enhance
Class EnhancedTransaction

java.lang.Object
  |
  +--stomp.jdo.TransactionWrapper
        |
        +--stomp.enhance.EnhancedTransaction
All Implemented Interfaces:
javax.jdo.Transaction

public class EnhancedTransaction
extends TransactionWrapper

Solves problem of fixing state for defunct transactional objects, making them usable ( readable, up-to-date with the database ) even after the transaction they were created in is closed.

Author:
Eric Lindauer

Constructor Summary
EnhancedTransaction(PMWrapper pm)
           
 
Method Summary
protected  void fixState(java.lang.Object object)
          called when the PM for a transactional object is closed.
 
Methods inherited from class stomp.jdo.TransactionWrapper
begin, commit, getNontransactionalRead, getNontransactionalWrite, getOptimistic, getPersistenceManager, getRestoreValues, getRetainValues, getSynchronization, isActive, reallyBegin, reallyCommit, rollback, setNontransactionalRead, setNontransactionalWrite, setOptimistic, setRestoreValues, setRetainValues, setSynchronization
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EnhancedTransaction

public EnhancedTransaction(PMWrapper pm)
Method Detail

fixState

protected void fixState(java.lang.Object object)
called when the PM for a transactional object is closed. This gives the Transaction the opportunity to save this object and make it usable. For enhanced objects, this is accomplished by making the old proxy discard the (now defunct) transactional object, and instead point to the read-only version of the same object.

Overrides:
fixState in class TransactionWrapper