org.apache.openjpa.jdbc.meta.strats
Class EmbeddedClassStrategy

java.lang.Object
  extended by org.apache.openjpa.jdbc.meta.strats.AbstractStrategy
      extended by org.apache.openjpa.jdbc.meta.strats.AbstractClassStrategy
          extended by org.apache.openjpa.jdbc.meta.strats.EmbeddedClassStrategy
All Implemented Interfaces:
Serializable, ClassStrategy, Strategy

public class EmbeddedClassStrategy
extends AbstractClassStrategy

Class mapping for embedded objects.

Author:
Abe White
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.apache.openjpa.jdbc.meta.strats.AbstractClassStrategy
cls
 
Constructor Summary
EmbeddedClassStrategy()
           
 
Method Summary
 Object getNullIndicatorValue(OpenJPAStateManager sm)
          Return the proper synthetic null indicator value for the given instance.
 boolean indicatesNull(Object val)
          Return whether the given null indicator value means the object is null.
 boolean isPrimaryKeyObjectId(boolean hasAll)
          Return true if the this class' primary key columns correspond to the base class' primary key columns used to construct oid values.
 void map(boolean adapt)
          Map the owning mapping using this strategy.
 
Methods inherited from class org.apache.openjpa.jdbc.meta.strats.AbstractClassStrategy
customLoad, customLoad, customLoad, joinSuperclass, setClassMapping, supportsEagerSelect
 
Methods inherited from class org.apache.openjpa.jdbc.meta.strats.AbstractStrategy
customDelete, customInsert, customUpdate, delete, getAlias, initialize, insert, isCustomDelete, isCustomInsert, isCustomUpdate, update
 
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, delete, getAlias, initialize, insert, isCustomDelete, isCustomInsert, isCustomUpdate, update
 

Constructor Detail

EmbeddedClassStrategy

public EmbeddedClassStrategy()
Method Detail

map

public void map(boolean adapt)
Description copied from interface: Strategy
Map the owning mapping using this strategy.

Specified by:
map in interface Strategy
Overrides:
map in class AbstractStrategy
Parameters:
adapt - if true, use the owning mapping's raw mapping info to set its ORM data; if false, ORM data will already be set

getNullIndicatorValue

public Object getNullIndicatorValue(OpenJPAStateManager sm)
Return the proper synthetic null indicator value for the given instance.


indicatesNull

public boolean indicatesNull(Object val)
Return whether the given null indicator value means the object is null.


isPrimaryKeyObjectId

public boolean isPrimaryKeyObjectId(boolean hasAll)
Description copied from interface: ClassStrategy
Return true if the this class' primary key columns correspond to the base class' primary key columns used to construct oid values. Base classes always return true. Classes that join to the base class table, though, may not always join using the same columns the base class uses for oid values, or may not use all the columns. When performing a select, we will join down to the most-derived class that is identified by oid values. We cannot use non-primary key field values for joining during selects, because the field values to join on might be the ones we're trying to select! Similarly, we can only reconstruct oid values for selected objects using classes whose primary keys store oid values.

Specified by:
isPrimaryKeyObjectId in interface ClassStrategy
Overrides:
isPrimaryKeyObjectId in class AbstractClassStrategy
Parameters:
hasAll - if true, there must be a primary key column for every base class primary key column; if false the primary key must only match a subset of the base class primary key columns


Copyright © 2006-2008 Apache Software Foundation. All Rights Reserved.