Class SuperclassDiscriminatorStrategy
- java.lang.Object
-
- org.apache.openjpa.jdbc.meta.strats.AbstractStrategy
-
- org.apache.openjpa.jdbc.meta.strats.AbstractDiscriminatorStrategy
-
- org.apache.openjpa.jdbc.meta.strats.SuperclassDiscriminatorStrategy
-
- All Implemented Interfaces:
java.io.Serializable
,DiscriminatorStrategy
,Strategy
public class SuperclassDiscriminatorStrategy extends AbstractDiscriminatorStrategy
Discriminator strategy that delegates to superclass discriminator.- Author:
- Abe White
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.apache.openjpa.jdbc.meta.strats.AbstractDiscriminatorStrategy
disc, isFinal
-
-
Constructor Summary
Constructors Constructor Description SuperclassDiscriminatorStrategy()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Class
getClass(JDBCStore store, ClassMapping base, Result res)
Return the class for the current result row.SQLBuffer
getClassConditions(Select sel, Joins joins, ClassMapping base, boolean subclasses)
Return SQL to limit the classes selected as much as possible to the given base class, and optionally its subclasses.boolean
hasClassConditions(ClassMapping base, boolean subclasses)
Whether any class conditions are necessary.void
loadSubclasses(JDBCStore store)
By default, logs a warning that this discriminator cannot calculate its list of subclasses on its own.void
map(boolean adapt)
Map the owning mapping using this strategy.-
Methods inherited from class org.apache.openjpa.jdbc.meta.strats.AbstractDiscriminatorStrategy
select, setDiscriminator
-
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
-
-
-
-
Method Detail
-
map
public void map(boolean adapt)
Description copied from interface:Strategy
Map the owning mapping using this strategy.- Specified by:
map
in interfaceStrategy
- Overrides:
map
in classAbstractStrategy
- 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
-
loadSubclasses
public void loadSubclasses(JDBCStore store) throws java.sql.SQLException, java.lang.ClassNotFoundException
Description copied from class:AbstractDiscriminatorStrategy
By default, logs a warning that this discriminator cannot calculate its list of subclasses on its own.- Specified by:
loadSubclasses
in interfaceDiscriminatorStrategy
- Overrides:
loadSubclasses
in classAbstractDiscriminatorStrategy
- Throws:
java.sql.SQLException
java.lang.ClassNotFoundException
-
getClass
public java.lang.Class getClass(JDBCStore store, ClassMapping base, Result res) throws java.sql.SQLException, java.lang.ClassNotFoundException
Description copied from interface:DiscriminatorStrategy
Return the class for the current result row.- Specified by:
getClass
in interfaceDiscriminatorStrategy
- Overrides:
getClass
in classAbstractDiscriminatorStrategy
- Throws:
java.sql.SQLException
java.lang.ClassNotFoundException
-
hasClassConditions
public boolean hasClassConditions(ClassMapping base, boolean subclasses)
Description copied from interface:DiscriminatorStrategy
Whether any class conditions are necessary.- Specified by:
hasClassConditions
in interfaceDiscriminatorStrategy
- Overrides:
hasClassConditions
in classAbstractDiscriminatorStrategy
- See Also:
DiscriminatorStrategy.getClassConditions(org.apache.openjpa.jdbc.sql.Select, org.apache.openjpa.jdbc.sql.Joins, org.apache.openjpa.jdbc.meta.ClassMapping, boolean)
-
getClassConditions
public SQLBuffer getClassConditions(Select sel, Joins joins, ClassMapping base, boolean subclasses)
Description copied from interface:DiscriminatorStrategy
Return SQL to limit the classes selected as much as possible to the given base class, and optionally its subclasses. The select and joins instances are supplied in order to get column aliases.- Specified by:
getClassConditions
in interfaceDiscriminatorStrategy
- Overrides:
getClassConditions
in classAbstractDiscriminatorStrategy
-
-