Package org.exolab.castor.jdo
Interface Persistent
-
public interface Persistent
A callback informs objects about changes to their state.- Version:
- $Revision: 8623 $ $Date: 2005-04-17 04:29:33 -0600 (Sun, 17 Apr 2005) $
- Author:
- Assaf Arkin
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
jdoAfterCreate()
Called to indicate that an object has been created in persistent storage.void
jdoAfterRemove()
Called to indicate that an object has been removed from persistent storage.void
jdoBeforeCreate(Database db)
Called to indicate that an object is to be created in persistent storage.void
jdoBeforeRemove()
Called to indicate that an object is to be removed from persistent storage.java.lang.Class
jdoLoad(AccessMode accessMode)
Called to indicate that the object has been loaded from persistent storage.void
jdoModify()
Called to indicate that an object has been modified and is to be stored in persistent storage.void
jdoPersistent(Database db)
Called to set the database to which this object belongs when this object becomes persistent.void
jdoStore(boolean modified)
Called to indicate that an object is to be stored in persistent storage.void
jdoTransient()
Called to indicate the object is now transient.void
jdoUpdate()
Called to indicate that an object has been included to the current transaction by means of db.update() method (at the end of a "long " transaction).
-
-
-
Method Detail
-
jdoPersistent
void jdoPersistent(Database db)
Called to set the database to which this object belongs when this object becomes persistent. The object may use the database to load/create/delete related objects.Called when the object is first created as the result of a query, perior to calling
jdoLoad(org.exolab.castor.mapping.AccessMode)
, or afterDatabase.create(java.lang.Object)
has been called on the object, prior to callingjdoStore(boolean)
.- Parameters:
db
- The database to which this object belongs
-
jdoTransient
void jdoTransient()
Called to indicate the object is now transient. The object may no longer use the database object assigned to it, and will become hollow with various fields set to null.Called when the object #setFacetscompletes following any call to
jdoStore(boolean)
or when the object is deleted from the database.
-
jdoLoad
java.lang.Class jdoLoad(AccessMode accessMode) throws java.lang.Exception
Called to indicate that the object has been loaded from persistent storage. This method is called immediately after synchronizing an object with the database.- Parameters:
accessMode
- The access mode that was specified for this object either inQuery.execute(AccessMode accessMode)
, or inDatabase.load(Class type, Object identity, AccessMode accessMode)
. The constants are defined inDatabase
.- Returns:
- the return value is discarded
- Throws:
java.lang.Exception
- An exception occured, the object cannot be loaded
-
jdoModify
void jdoModify() throws java.lang.Exception
Called to indicate that an object has been modified and is to be stored in persistent storage.- Throws:
java.lang.Exception
- An exception occurred, the object cannot be modified
-
jdoStore
void jdoStore(boolean modified) throws java.lang.Exception
Called to indicate that an object is to be stored in persistent storage. This method is called at commit time on all persistent objects in this transaction. Managed fields may not necessarily be persisted if the object has not been identified as modified.- Parameters:
modified
- Is the object modified?- Throws:
java.lang.Exception
- An exception occured, the object cannot be stored
-
jdoBeforeCreate
void jdoBeforeCreate(Database db) throws java.lang.Exception
Called to indicate that an object is to be created in persistent storage. This method is called during db.create().- Parameters:
db
- The database in which this object will be created- Throws:
java.lang.Exception
-
jdoAfterCreate
void jdoAfterCreate() throws java.lang.Exception
Called to indicate that an object has been created in persistent storage. This method is called during db.create().- Throws:
java.lang.Exception
-
jdoBeforeRemove
void jdoBeforeRemove() throws java.lang.Exception
Called to indicate that an object is to be removed from persistent storage. This method is called during db.remove().- Throws:
java.lang.Exception
-
jdoAfterRemove
void jdoAfterRemove() throws java.lang.Exception
Called to indicate that an object has been removed from persistent storage. This method is called during db.remove().- Throws:
java.lang.Exception
-
jdoUpdate
void jdoUpdate() throws java.lang.Exception
Called to indicate that an object has been included to the current transaction by means of db.update() method (at the end of a "long " transaction).- Throws:
java.lang.Exception
- An exception occured, the object cannot be stored
-
-