|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jpox.store.rdbms.scostore.BaseContainerStore
org.jpox.store.rdbms.scostore.ElementContainerStore
org.jpox.store.rdbms.scostore.AbstractCollectionStore
org.jpox.store.rdbms.scostore.AbstractSetStore
org.jpox.store.rdbms.scostore.MapKeySetStore
Representation of the backing store for a MapKey Set. This is used where the user calls Map.keySet() and then wants to perform some operation on the resulting Collection. The keys for a Map can be stored in several ways. There are four possibilities
Nested Class Summary |
Nested classes inherited from class org.jpox.store.rdbms.scostore.ElementContainerStore |
ElementContainerStore.ElementInfo |
Field Summary | |
protected java.lang.String |
addStmt
|
protected java.lang.String |
removeStmt
|
protected java.lang.String |
setName
|
Fields inherited from class org.jpox.store.rdbms.scostore.AbstractCollectionStore |
containsStmt |
Fields inherited from class org.jpox.store.rdbms.scostore.ElementContainerStore |
clearStmt, clr, containerTable, dba, elementInfo, elementMapping, elementsAreEmbedded, elementsAreSerialised, elementType, elmIdentifier, emd, iterateUsingDiscriminator, LOCALISER, orderMapping, ownerFieldMetaData, ownerMapping, relationDiscriminatorMapping, relationDiscriminatorValue, sizeStmt, storeMgr, thisIdentifier |
Constructor Summary | |
MapKeySetStore(DatastoreContainerObject valueTable,
JavaTypeMapping ownerMapping,
JavaTypeMapping keyMapping,
ClassLoaderResolver clr)
Constructor. |
|
MapKeySetStore(MapTable mapTable,
ClassLoaderResolver clr)
Constructor. |
Method Summary | |
boolean |
add(StateManager sm,
java.lang.Object element)
Method to add an element. |
boolean |
addAll(StateManager sm,
java.util.Collection elements)
Adds all elements from a collection to the association owner vs elements |
void |
clear(StateManager sm)
Method to clear the collection. |
protected QueryExpression |
getIteratorStatement(StateManager ownerSM)
Method to create an iterator for the map keys. |
protected java.lang.String |
getRemoveStmt()
Generate statement for deleting an item from the Set. |
protected void |
initialiseStatements()
Method to initialise the statements being used. |
java.util.Iterator |
iterator(StateManager ownerSM)
Accessor for an iterator for the set. |
ScalarExpression |
joinElementsTo(QueryExpression stmt,
QueryExpression qs,
JavaTypeMapping ownerMapping,
LogicSetExpression te,
DatastoreIdentifier setRangeVar,
java.lang.Class filteredElementType,
ScalarExpression elmExpr,
DatastoreIdentifier elementRangeVar)
Method used in queries when contains() has been invoked. |
QueryExpression |
newQueryStatement(StateManager sm,
java.lang.String candidateClass)
Method to return a new Query Statement containing the candidate class. |
boolean |
remove(StateManager sm,
java.lang.Object element)
Method to remove an element. |
boolean |
removeAll(StateManager sm,
java.util.Collection elements)
Remove all elements from a collection from the association owner vs elements. |
Methods inherited from class org.jpox.store.rdbms.scostore.AbstractCollectionStore |
contains, getContainsStmt, getExistsSubquery, getSizeSubquery, getUpdateEmbeddedElementStmt, updateEmbeddedElement |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.jpox.store.scostore.CollectionStore |
contains, getElementType, getExistsSubquery, getSizeSubquery, hasOrderMapping, newResultObjectFactory, size, updateEmbeddedElement |
Methods inherited from interface org.jpox.store.scostore.Store |
getOwnerMapping, getStoreManager |
Field Detail |
protected java.lang.String setName
protected java.lang.String addStmt
protected java.lang.String removeStmt
Constructor Detail |
public MapKeySetStore(MapTable mapTable, ClassLoaderResolver clr)
mapTable
- The table for the map (join table)clr
- The ClassLoaderResolverpublic MapKeySetStore(DatastoreContainerObject valueTable, JavaTypeMapping ownerMapping, JavaTypeMapping keyMapping, ClassLoaderResolver clr)
valueTable
- The table for the "value" of the mapownerMapping
- The mapping for this table to the owner tablekeyMapping
- The mapping for this table to the key tableclr
- The ClassLoaderResolverMethod Detail |
protected QueryExpression getIteratorStatement(StateManager ownerSM)
ownerSM
- StateManager for the map
public boolean add(StateManager sm, java.lang.Object element)
sm
- State Manager of collection.element
- Element to add.
public boolean remove(StateManager sm, java.lang.Object element)
sm
- State Manager of collection.element
- Element to remove.
public void clear(StateManager sm)
clear
in interface CollectionStore
clear
in class ElementContainerStore
sm
- State Manager of collection.public ScalarExpression joinElementsTo(QueryExpression stmt, QueryExpression qs, JavaTypeMapping ownerMapping, LogicSetExpression te, DatastoreIdentifier setRangeVar, java.lang.Class filteredElementType, ScalarExpression elmExpr, DatastoreIdentifier elementRangeVar)
CollectionStore
stmt
- The Query Statementqs
- the parent Query Statement. If there is no parent, parentStmt
must be equals to stmt
ownerMapping
- the mapping for the owner.te
- Table Expression for the ownersetRangeVar
- The range variable for the "Collection" table.filteredElementType
- The Class Type for the filtered elementelmExpr
- The Expression for the elementelementRangeVar
- The SQL alias, or "range variable", to assign to the
expression or to the element table.
public QueryExpression newQueryStatement(StateManager sm, java.lang.String candidateClass)
CollectionStore
sm
- State Manager for the collection.candidateClass
- Class of the elements.
protected void initialiseStatements()
initialiseStatements
in class AbstractCollectionStore
public java.util.Iterator iterator(StateManager ownerSM)
iterator
in interface CollectionStore
iterator
in class ElementContainerStore
ownerSM
- State Manager for the set.
public boolean addAll(StateManager sm, java.util.Collection elements)
addAll
in interface CollectionStore
sm
- State Manager for the containerelements
- The elements to add
public boolean removeAll(StateManager sm, java.util.Collection elements)
removeAll
in interface CollectionStore
sm
- State Manager for the containerelements
- Collection of elements to remove
protected java.lang.String getRemoveStmt()
DELETE FROM SETTABLE WHERE OWNERCOL=? AND ELEMENTCOL = ? [AND DISCRIM = ?]
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |