The caller takes full responsibility to assure integrity of transactions and object caching and only relies on the engine to assist in assuring that through the mechanisms available to it.
All method calls provide an open connection into the persistence storage. The connection is opened by and maintained in the context of a transaction. The type of the connection depends on the persistence engine (JDBC, JNDI, etc).
All method calls provide the object fields and the object identity. The engine must always use the identity passed in the method call and never the identity contained in the object itself.
The stamp is an arbitrary object that is returned on object creation and loading and passed when performing a dirty check. The stamp can be used to detect object dirtyness in a more efficient manner in database that support a stamping mechanism (e.g. Oracle RAWID, Sybase TIMESTAMP).
An implementation of this object must be re-entrant and thread safe. It must depend on the connection passed in each method call and never hold a reference to a connection. @author Assaf Arkin @version $Revision: 7932 $ $Date: 2006-04-26 16:24:34 -0600 (Wed, 26 Apr 2006) $ @see org.castor.persist.TransactionContext @see org.exolab.castor.persist.spi.PersistenceQuery
|
|
|
|
|
|
|
|
|
|