org.objectweb.speedo.genclass.collection
Class CollectionAccessor

java.lang.Object
  extended byorg.objectweb.speedo.mim.lib.BasicSpeedoAccessor
      extended byorg.objectweb.speedo.genclass.GenClassAccessor
          extended byorg.objectweb.speedo.genclass.collection.CollectionAccessor
All Implemented Interfaces:
java.util.Collection, java.io.Serializable, SpeedoAccessor, SpeedoGenClassCoherence
Direct Known Subclasses:
ListAccessor, SetAccessor

public class CollectionAccessor
extends GenClassAccessor
implements java.util.Collection

Author:
S.Chassande-Barrioz
See Also:
Serialized Form

Field Summary
protected  java.util.Collection collection
          is the internal collection used when the gen class is not active.
 
Fields inherited from class org.objectweb.speedo.genclass.GenClassAccessor
elements, jdoProxy, logger, supportDelta, tmpelem
 
Fields inherited from class org.objectweb.speedo.mim.lib.BasicSpeedoAccessor
detachedStatus, hasBeenFlush, jdoStatus, proxy
 
Constructor Summary
CollectionAccessor(SpeedoGenClassProxy _jdoProxy)
          Instanciates and initializes a new collection with an initial size.
 
Method Summary
 boolean add(java.lang.Object o)
           
 boolean addAll(java.util.Collection c)
           
 void attachCopy(ProxyManager pm, java.util.Map map, SpeedoAccessor fieldsClone, boolean makeTransactional)
           
 void clear()
           
 boolean contains(java.lang.Object o)
           
 boolean containsAll(java.util.Collection c)
           
 PIndexedElem createPIndexedElem(GenClassAccessor gca)
           
 void deletePersistent(ProxyManager pm)
           
 void detachCopy(ProxyManager pm, java.util.Map map, SpeedoAccessor fieldsClone, java.util.Collection fgHints)
           
protected  boolean duplicatAllowed()
           
 boolean equals(java.lang.Object o)
           
 boolean isEmpty()
           
 java.util.Iterator iterator()
           
 void loadFieldsFromAccessor(SpeedoAccessor sa)
           
 void makePersistent(ProxyManager pm)
           
 void refresh(ProxyManager pm, java.util.Map map, java.util.Collection fgHints)
           
 boolean remove(java.lang.Object o)
           
 boolean removeAll(java.util.Collection c)
           
 boolean retainAll(java.util.Collection c)
           
 void retrieve(ProxyManager pm, java.util.Map map, java.util.Collection fgHints)
           
 void setElements(java.lang.Object o)
           
 int size()
           
protected  GenClassElement speedoAdd(java.lang.Object o, boolean allowDuplicates)
           
 boolean speedoAdd(java.lang.Object o, java.lang.Object hints)
          Askes the adding of an element into a generic class.
 boolean speedoRemove(java.lang.Object o, java.lang.Object hints)
          Askes the removing of an element from a generic class.
 GenClassElement speedoRemove2(java.lang.Object o)
           
 java.lang.Object[] toArray()
           
 java.lang.Object[] toArray(java.lang.Object[] a)
           
 java.lang.String toString()
           
 
Methods inherited from class org.objectweb.speedo.genclass.GenClassAccessor
createPIndexedElem, getLogger, getMemoryInstance, loadFields, makePersistent, makePersistent, paAdd, paDeltaSupported, paGetNbElem, paIterator, paSetNbElem, setFlushed, workingSetClosed
 
Methods inherited from class org.objectweb.speedo.mim.lib.BasicSpeedoAccessor
getCacheEntry, getDetachedStatus, getSpeedoProxy, getTimeStamp, hasBeenFlush, jdoChangeStatus, jdoGetStatus, jdoSetStatus, prepareWrite, setDetachedStatus, setSpeedoProxy, setTimeStamp
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Collection
hashCode
 

Field Detail

collection

protected java.util.Collection collection
is the internal collection used when the gen class is not active. When the proxy is active the 'elements' field is used.

Constructor Detail

CollectionAccessor

public CollectionAccessor(SpeedoGenClassProxy _jdoProxy)
Instanciates and initializes a new collection with an initial size.

Method Detail

toString

public java.lang.String toString()

duplicatAllowed

protected boolean duplicatAllowed()

speedoRemove2

public GenClassElement speedoRemove2(java.lang.Object o)

makePersistent

public void makePersistent(ProxyManager pm)
Specified by:
makePersistent in interface SpeedoAccessor
Specified by:
makePersistent in class GenClassAccessor

deletePersistent

public void deletePersistent(ProxyManager pm)
Specified by:
deletePersistent in interface SpeedoAccessor
Specified by:
deletePersistent in class GenClassAccessor

setElements

public void setElements(java.lang.Object o)
Specified by:
setElements in class GenClassAccessor

loadFieldsFromAccessor

public void loadFieldsFromAccessor(SpeedoAccessor sa)
Specified by:
loadFieldsFromAccessor in class GenClassAccessor

detachCopy

public void detachCopy(ProxyManager pm,
                       java.util.Map map,
                       SpeedoAccessor fieldsClone,
                       java.util.Collection fgHints)
Specified by:
detachCopy in interface SpeedoAccessor
Specified by:
detachCopy in class GenClassAccessor

attachCopy

public void attachCopy(ProxyManager pm,
                       java.util.Map map,
                       SpeedoAccessor fieldsClone,
                       boolean makeTransactional)
Specified by:
attachCopy in interface SpeedoAccessor
Specified by:
attachCopy in class GenClassAccessor

refresh

public void refresh(ProxyManager pm,
                    java.util.Map map,
                    java.util.Collection fgHints)
Specified by:
refresh in interface SpeedoAccessor
Specified by:
refresh in class GenClassAccessor

retrieve

public void retrieve(ProxyManager pm,
                     java.util.Map map,
                     java.util.Collection fgHints)
Specified by:
retrieve in interface SpeedoAccessor
Specified by:
retrieve in class GenClassAccessor

add

public boolean add(java.lang.Object o)
Specified by:
add in interface java.util.Collection

addAll

public boolean addAll(java.util.Collection c)
Specified by:
addAll in interface java.util.Collection

clear

public void clear()
Specified by:
clear in interface java.util.Collection

contains

public boolean contains(java.lang.Object o)
Specified by:
contains in interface java.util.Collection

containsAll

public boolean containsAll(java.util.Collection c)
Specified by:
containsAll in interface java.util.Collection

equals

public boolean equals(java.lang.Object o)
Specified by:
equals in interface java.util.Collection

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface java.util.Collection

iterator

public java.util.Iterator iterator()
Specified by:
iterator in interface java.util.Collection

remove

public boolean remove(java.lang.Object o)
Specified by:
remove in interface java.util.Collection

removeAll

public boolean removeAll(java.util.Collection c)
Specified by:
removeAll in interface java.util.Collection

retainAll

public boolean retainAll(java.util.Collection c)
Specified by:
retainAll in interface java.util.Collection

size

public int size()
Specified by:
size in interface java.util.Collection

toArray

public java.lang.Object[] toArray()
Specified by:
toArray in interface java.util.Collection

toArray

public java.lang.Object[] toArray(java.lang.Object[] a)
Specified by:
toArray in interface java.util.Collection

createPIndexedElem

public PIndexedElem createPIndexedElem(GenClassAccessor gca)
Specified by:
createPIndexedElem in class GenClassAccessor

speedoAdd

public boolean speedoAdd(java.lang.Object o,
                         java.lang.Object hints)
Description copied from interface: SpeedoGenClassCoherence
Askes the adding of an element into a generic class. The consistency of relations must not be managed: this is done by the caller of this method.

Specified by:
speedoAdd in interface SpeedoGenClassCoherence
Specified by:
speedoAdd in class GenClassAccessor

speedoAdd

protected GenClassElement speedoAdd(java.lang.Object o,
                                    boolean allowDuplicates)

speedoRemove

public boolean speedoRemove(java.lang.Object o,
                            java.lang.Object hints)
Description copied from interface: SpeedoGenClassCoherence
Askes the removing of an element from a generic class. The consistency of relations must not be managed: this is done by the caller of this method.

Specified by:
speedoRemove in interface SpeedoGenClassCoherence
Specified by:
speedoRemove in class GenClassAccessor