Package org.exolab.castor.persist.spi
Interface CallbackInterceptor
-
- All Known Implementing Classes:
JDOCallback
,JPACallbackHandler
public interface CallbackInterceptor
A callback interceptor informs objects about changes to their state. Different callbacks can cause different methods to be called on the objects.- 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
created(java.lang.Object object)
Called to indicate that an object has been created.void
creating(java.lang.Object object, Database db)
Called to indicate that an object is to be created in persistent storage.java.lang.Class<?>
loaded(java.lang.Object object, AccessMode accessMode)
Called to indicate that the object has been loaded from persistent storage.void
modifying(java.lang.Object object)
Called to indicate that an object has been modified and is up to storing.void
releasing(java.lang.Object object, boolean committed)
Called to indicate that an object has been made transient.void
removed(java.lang.Object object)
Called to indicate that an object has been deleted.void
removing(java.lang.Object object)
Called to indicate that an object is to be deleted.void
storing(java.lang.Object object, boolean modified)
Called to indicate that an object is to be stored in persistent storage.void
updated(java.lang.Object object)
Called to indicate that an object has been updated at the end of a "long" transaction.void
using(java.lang.Object object, Database db)
Called to indicate that an object has been made persistent.
-
-
-
Method Detail
-
loaded
java.lang.Class<?> loaded(java.lang.Object object, AccessMode accessMode) throws java.lang.Exception
Called to indicate that the object has been loaded from persistent storage.- Parameters:
object
- The object- Returns:
- null or the extending Class. In the latter case Castor will reload the object of the given class with the same identity.
- Throws:
java.lang.Exception
- An exception occured, the object cannot be loaded
-
modifying
void modifying(java.lang.Object object) throws java.lang.Exception
Called to indicate that an object has been modified and is up to storing.- Parameters:
object
- The object- Throws:
java.lang.Exception
- An exception occured, the object cannot be stored
-
storing
void storing(java.lang.Object object, boolean modified) throws java.lang.Exception
Called to indicate that an object is to be stored in persistent storage.- Parameters:
object
- The objectmodified
- Is the object modified?- Throws:
java.lang.Exception
- An exception occured, the object cannot be stored
-
creating
void creating(java.lang.Object object, Database db) throws java.lang.Exception
Called to indicate that an object is to be created in persistent storage.- Parameters:
object
- The objectdb
- The database in which this object will be created- Throws:
java.lang.Exception
-
created
void created(java.lang.Object object) throws java.lang.Exception
Called to indicate that an object has been created.- Parameters:
object
- The object- Throws:
java.lang.Exception
-
removing
void removing(java.lang.Object object) throws java.lang.Exception
Called to indicate that an object is to be deleted.This method is made at commit time on objects deleted during the transaction before setting their fields to null.
- Parameters:
object
- The object- Throws:
java.lang.Exception
-
removed
void removed(java.lang.Object object) throws java.lang.Exception
Called to indicate that an object has been deleted.This method is called during db.remove().
- Parameters:
object
- The object- Throws:
java.lang.Exception
-
releasing
void releasing(java.lang.Object object, boolean committed)
Called to indicate that an object has been made transient.This method is made at commit or rollback time on all objects that were presistent during the life time of the transaction.
- Parameters:
object
- The objectcommitted
- True if the object has been commited, false if rollback or otherwise cancelled
-
using
void using(java.lang.Object object, Database db)
Called to indicate that an object has been made persistent.- Parameters:
object
- The objectdb
- The database to which this object belongs
-
updated
void updated(java.lang.Object object) throws java.lang.Exception
Called to indicate that an object has been updated at the end of a "long" transaction.- Parameters:
object
- The object- Throws:
java.lang.Exception
-
-