|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.castor.persist.ObjectTracker
public final class ObjectTracker
A transaction records all objects accessed during the lifetime of the transaction in this record (queries and created). This information, stored on a per-object basis within the ObjectTracker, covers the database engine used to persist the object, the object's OID, the object itself, and whether the object has been deleted in this transaction, created in this transaction. Sidenote: Objects identified as read only are not updated when the transaction commits.
Constructor Summary | |
---|---|
ObjectTracker()
|
Method Summary | |
---|---|
java.lang.String |
allObjectStates()
|
void |
clear()
|
LockEngine |
getLockEngineForObject(java.lang.Object o)
|
ClassMolder |
getMolderForObject(java.lang.Object o)
Retrieve the ClassMolder associated with a specific object. |
java.lang.Object |
getObjectForOID(LockEngine engine,
OID oid,
boolean allowReadOnly)
Retrieve the object for a given OID. |
java.util.Collection |
getObjectsWithCreatingStateSortedByLowestMolderPriority()
Retrieve the list of creating objects, sorted in the order they should be created. |
java.util.Collection |
getObjectsWithDeletedStateSortedByHighestMolderPriority()
Retrieve the list of deleted objects, sorted in the order they should be deleted. |
java.util.Collection |
getObjectsWithUpdateCacheNeededState()
|
OID |
getOIDForObject(java.lang.Object o)
|
java.util.Collection |
getReadOnlyObjects()
Retrieve the list of all read-only objects being tracked. |
java.util.Collection |
getReadWriteObjects()
Retrieve the list of all read-write objects being tracked. |
boolean |
isCreated(java.lang.Object o)
|
boolean |
isCreating(java.lang.Object o)
|
boolean |
isDeleted(java.lang.Object o)
|
boolean |
isReadOnly(java.lang.Object o)
|
boolean |
isReadWrite(java.lang.Object object)
|
boolean |
isTracking(java.lang.Object object)
Determine whether an object is being tracked within this tracking manager. |
boolean |
isUpdateCacheNeeded(java.lang.Object object)
|
boolean |
isUpdatePersistNeeded(java.lang.Object object)
|
void |
markCreated(java.lang.Object object)
|
void |
markCreating(java.lang.Object object)
|
void |
markDeleted(java.lang.Object object)
|
void |
markReadOnly(java.lang.Object o)
|
void |
markUpdateCacheNeeded(java.lang.Object object)
|
void |
markUpdatePersistNeeded(java.lang.Object object)
|
java.lang.String |
objectStateToString(java.lang.Object obj)
|
int |
readOnlySize()
|
int |
readWriteSize()
|
void |
removeOIDForObject(LockEngine engine,
OID oid)
For a given lockengine and OID, remove references to an object in the maps. |
void |
setLockEngineForObject(java.lang.Object obj,
LockEngine engine)
|
void |
setOIDForObject(java.lang.Object obj,
LockEngine engine,
OID oid)
For a given lockengine and OID, set the object in the maps. |
void |
trackObject(LockEngine engine,
ClassMolder molder,
OID oid,
java.lang.Object object)
|
void |
trackOIDChange(java.lang.Object obj,
LockEngine engine,
OID oldoid,
OID newoid)
Record changes to an OID by re-tracking the OID information. |
void |
unmarkAllDeleted()
|
void |
unmarkDeleted(java.lang.Object object)
|
void |
unmarkReadOnly(java.lang.Object o)
|
void |
unmarkUpdateCacheNeeded(java.lang.Object object)
|
void |
unmarkUpdatePersistNeeded(java.lang.Object object)
|
void |
untrackObject(java.lang.Object object)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ObjectTracker()
Method Detail |
---|
public java.lang.Object getObjectForOID(LockEngine engine, OID oid, boolean allowReadOnly)
allowReadOnly
- Allow (or ignore, if false) read-only objects to be returned.
public boolean isReadWrite(java.lang.Object object)
public void unmarkAllDeleted()
public void clear()
public boolean isUpdateCacheNeeded(java.lang.Object object)
public boolean isUpdatePersistNeeded(java.lang.Object object)
public void markUpdateCacheNeeded(java.lang.Object object)
public void unmarkUpdateCacheNeeded(java.lang.Object object)
public java.util.Collection getObjectsWithUpdateCacheNeededState()
public void markUpdatePersistNeeded(java.lang.Object object)
public void unmarkUpdatePersistNeeded(java.lang.Object object)
public void markCreating(java.lang.Object object) throws PersistenceException
PersistenceException
public void markCreated(java.lang.Object object)
public void markDeleted(java.lang.Object object)
public void unmarkDeleted(java.lang.Object object)
public boolean isTracking(java.lang.Object object)
object
-
public void trackOIDChange(java.lang.Object obj, LockEngine engine, OID oldoid, OID newoid)
obj
- The object to record a tracking change for.engine
- The engine which is responsible for the old and new OIDoldoid
- The old oid.newoid
- The new oid.public void setOIDForObject(java.lang.Object obj, LockEngine engine, OID oid)
obj
- The object to trackengine
- The engine to which the OID belongsoid
- The OID of the object to trackpublic void removeOIDForObject(LockEngine engine, OID oid)
obj
- The object to stop tracking onengine
- The engine to stop tracking the OID foroid
- The oid of the object to stop tracking on.public boolean isCreating(java.lang.Object o)
public boolean isCreated(java.lang.Object o)
public boolean isDeleted(java.lang.Object o)
public ClassMolder getMolderForObject(java.lang.Object o)
public LockEngine getLockEngineForObject(java.lang.Object o)
public void setLockEngineForObject(java.lang.Object obj, LockEngine engine)
public java.util.Collection getReadWriteObjects()
public java.util.Collection getReadOnlyObjects()
public java.util.Collection getObjectsWithCreatingStateSortedByLowestMolderPriority()
public java.util.Collection getObjectsWithDeletedStateSortedByHighestMolderPriority()
public void trackObject(LockEngine engine, ClassMolder molder, OID oid, java.lang.Object object)
public void untrackObject(java.lang.Object object)
public OID getOIDForObject(java.lang.Object o)
public boolean isReadOnly(java.lang.Object o)
public void markReadOnly(java.lang.Object o)
public void unmarkReadOnly(java.lang.Object o)
public int readOnlySize()
public int readWriteSize()
public java.lang.String allObjectStates()
public java.lang.String objectStateToString(java.lang.Object obj)
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |