|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.openjpa.jdbc.meta.strats.AbstractStrategy
org.apache.openjpa.jdbc.meta.strats.AbstractFieldStrategy
org.apache.openjpa.jdbc.meta.strats.ContainerFieldStrategy
org.apache.openjpa.jdbc.meta.strats.StoreCollectionFieldStrategy
org.apache.openjpa.jdbc.meta.strats.RelationToManyInverseKeyFieldStrategy
public abstract class RelationToManyInverseKeyFieldStrategy
Maps a relation to a set of other objects using an inverse foreign key in the related object table.
Field Summary |
---|
Fields inherited from class org.apache.openjpa.jdbc.meta.strats.AbstractFieldStrategy |
---|
field |
Constructor Summary | |
---|---|
RelationToManyInverseKeyFieldStrategy()
|
Method Summary | |
---|---|
void |
delete(org.apache.openjpa.kernel.OpenJPAStateManager sm,
JDBCStore store,
RowManager rm)
Set the where values appropriately to delete the proper instance, and set all relations on non-secondary tables as updates. |
protected ClassMapping[] |
getIndependentElementMappings(boolean traverse)
Return all independent mappings to which this strategy must join in order to access collection elements, or empty array if none. |
protected ForeignKey |
getJoinForeignKey(ClassMapping elem)
Return the foreign key used to join to the owning field for the given element mapping from ContainerFieldStrategy.getIndependentElementMappings(boolean) (or null). |
void |
initialize()
Perform caching and other initialization operations. |
void |
insert(org.apache.openjpa.kernel.OpenJPAStateManager sm,
JDBCStore store,
RowManager rm)
Set values for the mapping into the proper rows. |
Joins |
join(Joins joins,
boolean forceOuter)
Join this value to the class table. |
protected Joins |
join(Joins joins,
ClassMapping elem)
Join to the owning field table for the given element mapping from ContainerFieldStrategy.getIndependentElementMappings(boolean) (or null). |
protected Joins |
joinElementRelation(Joins joins,
ClassMapping elem)
Join this value's table to the table for the given element mapping from ContainerFieldStrategy.getIndependentElementMappings(boolean) (or null). |
protected java.lang.Object |
loadElement(org.apache.openjpa.kernel.OpenJPAStateManager sm,
JDBCStore store,
JDBCFetchConfiguration fetch,
Result res,
Joins joins)
Load an element of the collection. |
void |
map(boolean adapt)
Map the owning mapping using this strategy. |
protected void |
selectElement(Select sel,
ClassMapping elem,
JDBCStore store,
JDBCFetchConfiguration fetch,
int eagerMode,
Joins joins)
Implement this method to select the elements of this field for the given element mapping from ContainerFieldStrategy.getIndependentElementMappings(boolean)
(or null). |
java.lang.Object |
toDataStoreValue(java.lang.Object val,
JDBCStore store)
Translate the given external field value to its datastore equivalent. |
void |
update(org.apache.openjpa.kernel.OpenJPAStateManager sm,
JDBCStore store,
RowManager rm)
Set values for the mapping into the proper rows. |
Methods inherited from class org.apache.openjpa.jdbc.meta.strats.StoreCollectionFieldStrategy |
---|
add, getJoinForeignKey, isEagerSelectToMany, load, loadEagerJoin, loadEagerParallel, loadProjection, newLRSProxy, selectAll, selectEagerJoin, selectEagerParallel, supportsSelect, toCollection |
Methods inherited from class org.apache.openjpa.jdbc.meta.strats.ContainerFieldStrategy |
---|
appendIsEmpty, appendIsNotEmpty, appendIsNotNull, appendIsNull, appendJoinCount, appendSize |
Methods inherited from class org.apache.openjpa.jdbc.meta.strats.AbstractFieldStrategy |
---|
assertNotMappedBy, isVersionable, joinKey, joinKeyRelation, joinRelation, load, loadKeyProjection, select, setFieldMapping, toKeyDataStoreValue, where |
Methods inherited from class org.apache.openjpa.jdbc.meta.strats.AbstractStrategy |
---|
customDelete, customInsert, customUpdate, getAlias, isCustomDelete, isCustomInsert, isCustomUpdate |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.apache.openjpa.jdbc.meta.Strategy |
---|
customDelete, customInsert, customUpdate, getAlias, isCustomDelete, isCustomInsert, isCustomUpdate |
Constructor Detail |
---|
public RelationToManyInverseKeyFieldStrategy()
Method Detail |
---|
protected ClassMapping[] getIndependentElementMappings(boolean traverse)
ContainerFieldStrategy
getIndependentElementMappings
in class ContainerFieldStrategy
traverse
- whether we're traversing through to the related typeValueMapping.getIndependentTypeMappings()
,
ClassMapping.EMPTY_MAPPINGS
protected ForeignKey getJoinForeignKey(ClassMapping elem)
StoreCollectionFieldStrategy
ContainerFieldStrategy.getIndependentElementMappings(boolean)
(or null).
getJoinForeignKey
in class StoreCollectionFieldStrategy
protected void selectElement(Select sel, ClassMapping elem, JDBCStore store, JDBCFetchConfiguration fetch, int eagerMode, Joins joins)
StoreCollectionFieldStrategy
ContainerFieldStrategy.getIndependentElementMappings(boolean)
(or null). Elements of the result will be loaded with
StoreCollectionFieldStrategy.loadElement(org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.jdbc.kernel.JDBCFetchConfiguration, org.apache.openjpa.jdbc.sql.Result, org.apache.openjpa.jdbc.sql.Joins)
.
selectElement
in class StoreCollectionFieldStrategy
protected java.lang.Object loadElement(org.apache.openjpa.kernel.OpenJPAStateManager sm, JDBCStore store, JDBCFetchConfiguration fetch, Result res, Joins joins) throws java.sql.SQLException
StoreCollectionFieldStrategy
loadElement
in class StoreCollectionFieldStrategy
java.sql.SQLException
protected Joins join(Joins joins, ClassMapping elem)
StoreCollectionFieldStrategy
ContainerFieldStrategy.getIndependentElementMappings(boolean)
(or null).
join
in class StoreCollectionFieldStrategy
protected Joins joinElementRelation(Joins joins, ClassMapping elem)
StoreCollectionFieldStrategy
ContainerFieldStrategy.getIndependentElementMappings(boolean)
(or null).
joinElementRelation
in class StoreCollectionFieldStrategy
FieldMapping.joinRelation(org.apache.openjpa.jdbc.sql.Joins, boolean, boolean)
public void map(boolean adapt)
Strategy
map
in interface Strategy
map
in class AbstractStrategy
adapt
- if true, use the owning mapping's raw mapping info
to set its ORM data; if false, ORM data will already be setpublic void initialize()
Strategy
Strategy.map(boolean)
, and after all related components have been
mapped as well.
initialize
in interface Strategy
initialize
in class AbstractStrategy
public void insert(org.apache.openjpa.kernel.OpenJPAStateManager sm, JDBCStore store, RowManager rm) throws java.sql.SQLException
Strategy
insert
in interface Strategy
insert
in class AbstractStrategy
java.sql.SQLException
public void update(org.apache.openjpa.kernel.OpenJPAStateManager sm, JDBCStore store, RowManager rm) throws java.sql.SQLException
Strategy
update
in interface Strategy
update
in class AbstractStrategy
java.sql.SQLException
Strategy.insert(org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.jdbc.sql.RowManager)
public void delete(org.apache.openjpa.kernel.OpenJPAStateManager sm, JDBCStore store, RowManager rm) throws java.sql.SQLException
Strategy
delete
in interface Strategy
delete
in class AbstractStrategy
java.sql.SQLException
Strategy.insert(org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.jdbc.sql.RowManager)
public java.lang.Object toDataStoreValue(java.lang.Object val, JDBCStore store)
FieldStrategy
toDataStoreValue
in interface FieldStrategy
toDataStoreValue
in class AbstractFieldStrategy
public Joins join(Joins joins, boolean forceOuter)
FieldStrategy
join
in interface FieldStrategy
join
in class AbstractFieldStrategy
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |