|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.datanucleus.store.rdbms.scostore.BaseContainerStore
org.datanucleus.store.rdbms.scostore.ElementContainerStore
org.datanucleus.store.rdbms.scostore.AbstractCollectionStore
org.datanucleus.store.rdbms.scostore.AbstractSetStore
org.datanucleus.store.rdbms.scostore.RDBMSJoinSetStore
public class RDBMSJoinSetStore
RDBMS-specific implementation of a SetStore using join table.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class org.datanucleus.store.rdbms.scostore.ElementContainerStore |
|---|
ElementContainerStore.ElementInfo |
| Field Summary | |
|---|---|
protected String |
locateStmt
Statement to check the existence of an owner-element relation. |
protected String |
maxOrderColumnIdStmt
Statement to get the maximum order column id so we can set the next insert value. |
| Fields inherited from class org.datanucleus.store.rdbms.scostore.AbstractCollectionStore |
|---|
containsStmt |
| Fields inherited from class org.datanucleus.store.rdbms.scostore.ElementContainerStore |
|---|
addStmt, clearStmt, clr, containerTable, elementInfo, elementIsPersistentInterface, elementMapping, elementsAreEmbedded, elementsAreSerialised, elementType, emd, iterateUsingDiscriminator, orderMapping, relationDiscriminatorMapping, relationDiscriminatorValue, removeStmt, sizeStmt, usingDiscriminatorInSizeStmt |
| Fields inherited from class org.datanucleus.store.rdbms.scostore.BaseContainerStore |
|---|
allowNulls, dba, LOCALISER, ownerMapping, ownerMemberMetaData, relationType, storeMgr |
| Constructor Summary | |
|---|---|
RDBMSJoinSetStore(org.datanucleus.metadata.AbstractMemberMetaData mmd,
CollectionTable joinTable,
org.datanucleus.ClassLoaderResolver clr)
Constructor for a join set store for RDBMS. |
|
| Method Summary | |
|---|---|
boolean |
add(org.datanucleus.store.ObjectProvider sm,
Object element,
int size)
Adds one element to the association owner vs elements. |
boolean |
addAll(org.datanucleus.store.ObjectProvider sm,
Collection elements,
int size)
Adds all elements from a collection to the association container. |
protected int[] |
doInternalAdd(org.datanucleus.store.ObjectProvider sm,
Object element,
org.datanucleus.store.connection.ManagedConnection conn,
boolean batched,
int orderId,
boolean executeNow)
|
protected int |
getNextIDForOrderColumn(org.datanucleus.store.ObjectProvider sm)
|
protected String |
getRemoveAllStmt(org.datanucleus.store.ObjectProvider op,
Collection elements)
Generate statement for removing a collection of items from the Set. |
protected String |
getRemoveStmt(Object element)
Generate statement for deleting items from the Set. |
protected SQLStatement |
getSQLStatementForIterator(org.datanucleus.store.ObjectProvider ownerSM)
Method to generate an SQLStatement for iterating through elements of the set. |
Iterator |
iterator(org.datanucleus.store.ObjectProvider ownerSM)
Accessor for an iterator for the set. |
boolean |
locate(org.datanucleus.store.ObjectProvider sm,
Object element)
|
protected void |
preGetNextIDForOrderColumn(org.datanucleus.store.connection.ManagedConnection mconn)
|
boolean |
removeAll(org.datanucleus.store.ObjectProvider sm,
Collection elements,
int size)
Remove all elements from a collection from the association owner vs elements. |
protected boolean |
removeAllInternal(org.datanucleus.store.ObjectProvider sm,
Collection elements,
int size)
|
void |
update(org.datanucleus.store.ObjectProvider sm,
Collection coll)
Method to update the collection to be the supplied collection of elements. |
| Methods inherited from class org.datanucleus.store.rdbms.scostore.AbstractSetStore |
|---|
internalAdd, internalRemove, remove, remove |
| Methods inherited from class org.datanucleus.store.rdbms.scostore.AbstractCollectionStore |
|---|
contains, containsInternal, getUpdateEmbeddedElementStmt, updateEmbeddedElement, updateEmbeddedElement |
| Methods inherited from class org.datanucleus.store.rdbms.scostore.ElementContainerStore |
|---|
clear, executeClear, getAddStmt, getClearStmt, getContainerTable, getElementInfo, getElementInformationForClass, getElementMapping, getEmd, getOrderMapping, getRelationDiscriminatorMapping, getRelationDiscriminatorValue, getSize, getSizeStmt, hasOrderMapping, invalidateAddStmt, isElementsAreEmbedded, isElementsAreSerialised, size, validateElementForReading, validateElementForWriting, validateElementType |
| Methods inherited from class org.datanucleus.store.rdbms.scostore.BaseContainerStore |
|---|
allowsBatching, getDatastoreAdapter, getOwnerMapping, getOwnerMemberMetaData, getRelationType, getStateManagerForEmbeddedPCObject, getStoreManager, isEmbeddedMapping, setOwner |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.datanucleus.store.scostore.CollectionStore |
|---|
clear, contains, hasOrderMapping, size, updateEmbeddedElement |
| Methods inherited from interface org.datanucleus.store.scostore.Store |
|---|
getStoreManager |
| Field Detail |
|---|
protected String locateStmt
protected String maxOrderColumnIdStmt
| Constructor Detail |
|---|
public RDBMSJoinSetStore(org.datanucleus.metadata.AbstractMemberMetaData mmd,
CollectionTable joinTable,
org.datanucleus.ClassLoaderResolver clr)
mmd - owner member metadatajoinTable - The join tableclr - The ClassLoaderResolver| Method Detail |
|---|
public void update(org.datanucleus.store.ObjectProvider sm,
Collection coll)
update in interface org.datanucleus.store.scostore.CollectionStoreupdate in class AbstractCollectionStoresm - StateManager of the objectcoll - The collection to use
public boolean removeAll(org.datanucleus.store.ObjectProvider sm,
Collection elements,
int size)
removeAll in interface org.datanucleus.store.scostore.CollectionStoreremoveAll in class AbstractSetStoresm - State Manager for the containerelements - Collection of elements to remove
public boolean add(org.datanucleus.store.ObjectProvider sm,
Object element,
int size)
add in interface org.datanucleus.store.scostore.CollectionStoreadd in class AbstractSetStoresm - State Manager for the container.element - Element to add
public boolean addAll(org.datanucleus.store.ObjectProvider sm,
Collection elements,
int size)
addAll in interface org.datanucleus.store.scostore.CollectionStoreaddAll in class AbstractSetStoresm - State Manager for the container.elements - Collection of elements to addsize - Current size of set (if known). Not used by sets
protected boolean removeAllInternal(org.datanucleus.store.ObjectProvider sm,
Collection elements,
int size)
protected String getRemoveStmt(Object element)
DELETE FROM SETTABLE WHERE OWNERCOL=? AND ELEMENTCOL = ? [AND EMBEDDEDFIELD1 = ? AND EMBEDDEDFIELD2 = ? AND EMBEDDEDFIELD3 = ?] [AND RELATION_DISCRIM = ?]
getRemoveStmt in class AbstractCollectionStore
protected String getRemoveAllStmt(org.datanucleus.store.ObjectProvider op,
Collection elements)
DELETE FROM SETTABLE
WHERE (OWNERCOL=? AND ELEMENTCOL=?) OR
(OWNERCOL=? AND ELEMENTCOL=?) OR
(OWNERCOL=? AND ELEMENTCOL=?)
op - ObjectProvider for the ownerelements - Collection of elements to remove
public boolean locate(org.datanucleus.store.ObjectProvider sm,
Object element)
protected int[] doInternalAdd(org.datanucleus.store.ObjectProvider sm,
Object element,
org.datanucleus.store.connection.ManagedConnection conn,
boolean batched,
int orderId,
boolean executeNow)
throws org.datanucleus.store.mapped.exceptions.MappedDatastoreException
org.datanucleus.store.mapped.exceptions.MappedDatastoreException
protected void preGetNextIDForOrderColumn(org.datanucleus.store.connection.ManagedConnection mconn)
throws org.datanucleus.store.mapped.exceptions.MappedDatastoreException
org.datanucleus.store.mapped.exceptions.MappedDatastoreExceptionprotected int getNextIDForOrderColumn(org.datanucleus.store.ObjectProvider sm)
public Iterator iterator(org.datanucleus.store.ObjectProvider ownerSM)
iterator in interface org.datanucleus.store.scostore.CollectionStoreiterator in class AbstractSetStoreownerSM - State Manager for the set.
protected SQLStatement getSQLStatementForIterator(org.datanucleus.store.ObjectProvider ownerSM)
ownerSM - StateManager for the owner object
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||