|
||||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||||
java.lang.Objectorg.objectweb.speedo.mim.lib.BasicSpeedoAccessor
org.objectweb.speedo.genclass.GenClassAccessor
This class represents an accessor of a genclass structure. This accessor is used in case of the generic class is persistent.
| Field Summary | |
|---|---|
java.util.List |
deltaForMerge
|
java.util.List |
elements
The ArrayList used to store the indexed elements of the genclass. |
SpeedoGenClassProxy |
jdoProxy
The SpeedoProxy attached to this state representation. |
protected org.objectweb.util.monolog.api.Logger |
logger
|
boolean |
supportDelta
Indicates if this accessor support the dela mode |
protected GenClassElement |
tmpelem
A temporary variable which is used to search an element into the "elements" list. |
| Fields inherited from class org.objectweb.speedo.mim.lib.BasicSpeedoAccessor |
|---|
detachedStatus, hasBeenFlush, isToMerge, jdoStatus, proxy |
| Constructor Summary | |
|---|---|
GenClassAccessor(SpeedoGenClassProxy _jdoProxy)
|
|
| Method Summary | |
|---|---|
abstract void |
attachCopy(ProxyManager pm,
java.util.Map map,
SpeedoAccessor fieldsClone,
boolean makeTransactional)
This method is used during the attach operation. |
org.objectweb.jorm.api.PIndexedElem |
createPIndexedElem()
|
abstract org.objectweb.jorm.api.PIndexedElem |
createPIndexedElem(GenClassAccessor gca)
|
abstract void |
deletePersistent(ProxyManager pm)
Deletes persistent all inner elements of the persistent instance. |
abstract void |
detachCopy(ProxyManager pm,
java.util.Map map,
SpeedoAccessor fieldsClone,
java.util.Collection fgHints)
This method is used during the detach operation. |
org.objectweb.util.monolog.api.Logger |
getLogger()
|
java.lang.Object |
getMemoryInstance()
|
void |
loadFields(ProxyManager pm,
long[] fields)
Askes the loading of the some fields identified by the long array. |
abstract void |
loadFieldsFromAccessor(SpeedoAccessor sa)
|
abstract void |
makePersistent(ProxyManager pm)
Makes persistent all inner elements of the persistent instance. |
void |
makeToMerge(java.lang.Object thinLock)
Mark the current state with the flag 'toMerge'. |
org.objectweb.perseus.persistence.api.State |
merge(org.objectweb.perseus.persistence.api.State oldState)
This action updates the old state with the change (delta) done in the transaction on this state. |
void |
paAdd(org.objectweb.jorm.api.PIndexedElem elem,
java.lang.Object conn)
|
boolean |
paDeltaSupported()
|
int |
paGetNbElem()
|
java.util.Iterator |
paIterator()
|
void |
paSetNbElem(int nbelem)
|
abstract void |
refresh(ProxyManager pm,
java.util.Map map,
java.util.Collection fgHints)
This method is used during the refresh operation. |
abstract void |
retrieve(ProxyManager pm,
java.util.Map map,
java.util.Collection fgHints)
This method is used during the retrieve operation. |
abstract void |
setElements(java.lang.Object o)
|
void |
setFlushed(boolean val)
When the gen class is flushed to the data support (parameter = true), the internal structure is clean: - really remove the deleted element - mark the genclass as supporting the delta |
abstract boolean |
speedoAdd(java.lang.Object elemToAdd,
java.lang.Object hints)
Askes the adding of an element into a generic class. |
abstract boolean |
speedoRemove(java.lang.Object elemToRemove,
java.lang.Object hints)
Askes the removing of an element from a generic class. |
void |
unSwizzle()
|
void |
workingSetClosed()
At the end of the working set, the writing mode is initialized (deltaSupported), and the reference to the persistent are unswilled |
| Methods inherited from class org.objectweb.speedo.mim.lib.BasicSpeedoAccessor |
|---|
changeVersion, checkVersion, getCacheEntry, getDetachedStatus, getSpeedoProxy, getUserKey, getVersion, hasBeenFlush, indexFieldModified, isToMerge, jdoChangeStatus, jdoGetStatus, jdoSetStatus, prepareWrite, setDetachedStatus, setSpeedoProxy |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.objectweb.speedo.mim.api.SpeedoAccessor |
|---|
forceDetachedDirty, restoreDetachedNone |
| Field Detail |
public SpeedoGenClassProxy jdoProxy
public boolean supportDelta
protected GenClassElement tmpelem
protected org.objectweb.util.monolog.api.Logger logger
public java.util.List elements
public java.util.List deltaForMerge
| Constructor Detail |
public GenClassAccessor(SpeedoGenClassProxy _jdoProxy)
| Method Detail |
public abstract void loadFieldsFromAccessor(SpeedoAccessor sa)
public abstract org.objectweb.jorm.api.PIndexedElem createPIndexedElem(GenClassAccessor gca)
public abstract void setElements(java.lang.Object o)
public org.objectweb.util.monolog.api.Logger getLogger()
public void setFlushed(boolean val)
setFlushed in interface SpeedoAccessorsetFlushed in class BasicSpeedoAccessorpublic void workingSetClosed()
workingSetClosed in interface SpeedoAccessorworkingSetClosed in class BasicSpeedoAccessorpublic void unSwizzle()
unSwizzle in interface SpeedoAccessorpublic org.objectweb.perseus.persistence.api.State merge(org.objectweb.perseus.persistence.api.State oldState)
SpeedoAccessor
merge in interface SpeedoAccessormerge in class BasicSpeedoAccessorpublic void makeToMerge(java.lang.Object thinLock)
SpeedoAccessor
makeToMerge in interface SpeedoAccessormakeToMerge in class BasicSpeedoAccessor
public void loadFields(ProxyManager pm,
long[] fields)
SpeedoAccessor
loadFields in interface SpeedoAccessorpm - is the Proxy manager to use to load referencesfields - is an array of long. Each long is a bit mask indicating
fields to load. As a long is stored over 64 bits, each long of the array
can represent only 64 persistent fields. If the class has 70 persistent
field, the parameter could be a long array size is 2. This parameter
can be null if no field loading is required.public abstract void deletePersistent(ProxyManager pm)
SpeedoAccessor
deletePersistent in interface SpeedoAccessorpm - is the proxy manager for making persistent inner element.public abstract void makePersistent(ProxyManager pm)
SpeedoAccessor
makePersistent in interface SpeedoAccessorpm - is the proxy manager for making persistent inner element.
public abstract void detachCopy(ProxyManager pm,
java.util.Map map,
SpeedoAccessor fieldsClone,
java.util.Collection fgHints)
SpeedoAccessor
detachCopy in interface SpeedoAccessorpm - is the proxy manager used during the detach operationmap - is the map of the detached object. The use of this map permits
to support cycle in the object graph.fieldsClone - is a clone of the current statefgHints - represents the fetch plan.
public abstract void attachCopy(ProxyManager pm,
java.util.Map map,
SpeedoAccessor fieldsClone,
boolean makeTransactional)
SpeedoAccessor
attachCopy in interface SpeedoAccessorpm - is the proxy manager used during the attach operationmap - is the map of the atttached object. The use of this map permits
to support cycle in the object graph.fieldsClone - is the detached state used to update the current statemakeTransactional - ??? TODO comment the parameter
public abstract void refresh(ProxyManager pm,
java.util.Map map,
java.util.Collection fgHints)
SpeedoAccessor
refresh in interface SpeedoAccessorpm - is the proxy manager used during the refresh operationmap - is the map of the refreshed object. The use of this map permits
to support cycle in the object graph.fgHints - represents the fetch plan.
public abstract void retrieve(ProxyManager pm,
java.util.Map map,
java.util.Collection fgHints)
SpeedoAccessor
retrieve in interface SpeedoAccessorpm - is the proxy manager used during the retrieve operationmap - is the map of the retrieved object. The use of this map permits
to support cycle in the object graph.fgHints - represents the fetch plan.
public abstract boolean speedoAdd(java.lang.Object elemToAdd,
java.lang.Object hints)
SpeedoGenClassCoherence
speedoAdd in interface SpeedoGenClassCoherenceelemToAdd - is the element to add
public abstract boolean speedoRemove(java.lang.Object elemToRemove,
java.lang.Object hints)
SpeedoGenClassCoherence
speedoRemove in interface SpeedoGenClassCoherenceelemToRemove - is the element to removepublic org.objectweb.jorm.api.PIndexedElem createPIndexedElem()
createPIndexedElem in interface org.objectweb.jorm.api.PIndexedElemFactorypublic java.lang.Object getMemoryInstance()
getMemoryInstance in interface org.objectweb.jorm.api.PAccessorgetMemoryInstance in class BasicSpeedoAccessor
public void paAdd(org.objectweb.jorm.api.PIndexedElem elem,
java.lang.Object conn)
throws org.objectweb.jorm.api.PExceptionIO
paAdd in interface org.objectweb.jorm.api.PGenClassAccessororg.objectweb.jorm.api.PExceptionIOpublic int paGetNbElem()
paGetNbElem in interface org.objectweb.jorm.api.PGenClassAccessorpublic java.util.Iterator paIterator()
paIterator in interface org.objectweb.jorm.api.PGenClassAccessorpublic boolean paDeltaSupported()
paDeltaSupported in interface org.objectweb.jorm.api.PGenClassAccessorpublic void paSetNbElem(int nbelem)
paSetNbElem in interface org.objectweb.jorm.api.PGenClassAccessor
|
||||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||||