blob: 892b59ff5369340c461b06a76426b58c75694f4e [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_11) on Mon May 19 19:21:13 PDT 2008 -->
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<TITLE>
ClassStrategy (OpenJPA 1.1.0 API)
</TITLE>
<META NAME="keywords" CONTENT="org.apache.openjpa.jdbc.meta.ClassStrategy interface">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="ClassStrategy (OpenJPA 1.1.0 API)";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/ClassStrategy.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassMappingInfo.html" title="class in org.apache.openjpa.jdbc.meta"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/openjpa/jdbc/meta/DelegatingJoinable.html" title="class in org.apache.openjpa.jdbc.meta"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?org/apache/openjpa/jdbc/meta/ClassStrategy.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="ClassStrategy.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.openjpa.jdbc.meta</FONT>
<BR>
Interface ClassStrategy</H2>
<DL>
<DT><B>All Superinterfaces:</B> <DD><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/io/Serializable.html" title="class or interface in java.io">Serializable</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/Strategy.html" title="interface in org.apache.openjpa.jdbc.meta">Strategy</A></DD>
</DL>
<DL>
<DT><B>All Known Implementing Classes:</B> <DD><A HREF="../../../../../org/apache/openjpa/jdbc/meta/strats/AbstractClassStrategy.html" title="class in org.apache.openjpa.jdbc.meta.strats">AbstractClassStrategy</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassMapping.html" title="class in org.apache.openjpa.jdbc.meta">ClassMapping</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/strats/EmbeddedClassStrategy.html" title="class in org.apache.openjpa.jdbc.meta.strats">EmbeddedClassStrategy</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/strats/FlatClassStrategy.html" title="class in org.apache.openjpa.jdbc.meta.strats">FlatClassStrategy</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/strats/FullClassStrategy.html" title="class in org.apache.openjpa.jdbc.meta.strats">FullClassStrategy</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/strats/NoneClassStrategy.html" title="class in org.apache.openjpa.jdbc.meta.strats">NoneClassStrategy</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/strats/ObjectIdClassStrategy.html" title="class in org.apache.openjpa.jdbc.meta.strats">ObjectIdClassStrategy</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/strats/VerticalClassStrategy.html" title="class in org.apache.openjpa.jdbc.meta.strats">VerticalClassStrategy</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public interface <B>ClassStrategy</B><DT>extends <A HREF="../../../../../org/apache/openjpa/jdbc/meta/Strategy.html" title="interface in org.apache.openjpa.jdbc.meta">Strategy</A></DL>
</PRE>
<P>
Mapping from a class to a relational schema.
<P>
<P>
<DL>
<DT><B>Since:</B></DT>
<DD>0.4.0</DD>
<DT><B>Author:</B></DT>
<DD>Abe White</DD>
</DL>
<HR>
<P>
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/openjpa/lib/rop/ResultObjectProvider.html" title="interface in org.apache.openjpa.lib.rop">ResultObjectProvider</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassStrategy.html#customLoad(org.apache.openjpa.jdbc.kernel.JDBCStore, boolean, org.apache.openjpa.jdbc.kernel.JDBCFetchConfiguration, long, long)">customLoad</A></B>(<A HREF="../../../../../org/apache/openjpa/jdbc/kernel/JDBCStore.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCStore</A>&nbsp;store,
boolean&nbsp;subclasses,
<A HREF="../../../../../org/apache/openjpa/jdbc/kernel/JDBCFetchConfiguration.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCFetchConfiguration</A>&nbsp;fetch,
long&nbsp;startIdx,
long&nbsp;endIdx)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Implement this method to customize obtaining a result containing all
instances of this class.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassStrategy.html#customLoad(org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.jdbc.kernel.JDBCFetchConfiguration, org.apache.openjpa.jdbc.sql.Result)">customLoad</A></B>(<A HREF="../../../../../org/apache/openjpa/kernel/OpenJPAStateManager.html" title="interface in org.apache.openjpa.kernel">OpenJPAStateManager</A>&nbsp;sm,
<A HREF="../../../../../org/apache/openjpa/jdbc/kernel/JDBCStore.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCStore</A>&nbsp;store,
<A HREF="../../../../../org/apache/openjpa/jdbc/kernel/JDBCFetchConfiguration.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCFetchConfiguration</A>&nbsp;fetch,
<A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html" title="interface in org.apache.openjpa.jdbc.sql">Result</A>&nbsp;result)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Implement this method to customize loading from a <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html" title="interface in org.apache.openjpa.jdbc.sql"><CODE>Result</CODE></A>
into an instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassStrategy.html#customLoad(org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.kernel.PCState, org.apache.openjpa.jdbc.kernel.JDBCFetchConfiguration)">customLoad</A></B>(<A HREF="../../../../../org/apache/openjpa/kernel/OpenJPAStateManager.html" title="interface in org.apache.openjpa.kernel">OpenJPAStateManager</A>&nbsp;sm,
<A HREF="../../../../../org/apache/openjpa/jdbc/kernel/JDBCStore.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCStore</A>&nbsp;store,
<A HREF="../../../../../org/apache/openjpa/kernel/PCState.html" title="class in org.apache.openjpa.kernel">PCState</A>&nbsp;state,
<A HREF="../../../../../org/apache/openjpa/jdbc/kernel/JDBCFetchConfiguration.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCFetchConfiguration</A>&nbsp;fetch)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Implement this method to load the state of a given object, without
a previous <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html" title="interface in org.apache.openjpa.jdbc.sql"><CODE>Result</CODE></A>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassStrategy.html#isPrimaryKeyObjectId(boolean)">isPrimaryKeyObjectId</A></B>(boolean&nbsp;hasAll)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return true if the this class' primary key columns correspond to the
base class' primary key columns used to construct oid values.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassStrategy.html#joinSuperclass(org.apache.openjpa.jdbc.sql.Joins, boolean)">joinSuperclass</A></B>(<A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A>&nbsp;joins,
boolean&nbsp;toThis)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Join the mapping and its superclass.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassStrategy.html#setClassMapping(org.apache.openjpa.jdbc.meta.ClassMapping)">setClassMapping</A></B>(<A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassMapping.html" title="class in org.apache.openjpa.jdbc.meta">ClassMapping</A>&nbsp;owner)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the class mapping using this strategy.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassStrategy.html#supportsEagerSelect(org.apache.openjpa.jdbc.sql.Select, org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.jdbc.meta.ClassMapping, org.apache.openjpa.jdbc.kernel.JDBCFetchConfiguration)">supportsEagerSelect</A></B>(<A HREF="../../../../../org/apache/openjpa/jdbc/sql/Select.html" title="interface in org.apache.openjpa.jdbc.sql">Select</A>&nbsp;sel,
<A HREF="../../../../../org/apache/openjpa/kernel/OpenJPAStateManager.html" title="interface in org.apache.openjpa.kernel">OpenJPAStateManager</A>&nbsp;sm,
<A HREF="../../../../../org/apache/openjpa/jdbc/kernel/JDBCStore.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCStore</A>&nbsp;store,
<A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassMapping.html" title="class in org.apache.openjpa.jdbc.meta">ClassMapping</A>&nbsp;base,
<A HREF="../../../../../org/apache/openjpa/jdbc/kernel/JDBCFetchConfiguration.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCFetchConfiguration</A>&nbsp;fetch)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return true if this strategy can perform the given select from
the given <code>base</code> mapping.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.openjpa.jdbc.meta.Strategy"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from interface org.apache.openjpa.jdbc.meta.<A HREF="../../../../../org/apache/openjpa/jdbc/meta/Strategy.html" title="interface in org.apache.openjpa.jdbc.meta">Strategy</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/meta/Strategy.html#customDelete(org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore)">customDelete</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/Strategy.html#customInsert(org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore)">customInsert</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/Strategy.html#customUpdate(org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore)">customUpdate</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/Strategy.html#delete(org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.jdbc.sql.RowManager)">delete</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/Strategy.html#getAlias()">getAlias</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/Strategy.html#initialize()">initialize</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/Strategy.html#insert(org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.jdbc.sql.RowManager)">insert</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/Strategy.html#isCustomDelete(org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore)">isCustomDelete</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/Strategy.html#isCustomInsert(org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore)">isCustomInsert</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/Strategy.html#isCustomUpdate(org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore)">isCustomUpdate</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/Strategy.html#map(boolean)">map</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/meta/Strategy.html#update(org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.jdbc.sql.RowManager)">update</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="setClassMapping(org.apache.openjpa.jdbc.meta.ClassMapping)"><!-- --></A><H3>
setClassMapping</H3>
<PRE>
void <B>setClassMapping</B>(<A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassMapping.html" title="class in org.apache.openjpa.jdbc.meta">ClassMapping</A>&nbsp;owner)</PRE>
<DL>
<DD>Set the class mapping using this strategy. This will be called before
use.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="isPrimaryKeyObjectId(boolean)"><!-- --></A><H3>
isPrimaryKeyObjectId</H3>
<PRE>
boolean <B>isPrimaryKeyObjectId</B>(boolean&nbsp;hasAll)</PRE>
<DL>
<DD>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.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>hasAll</CODE> - 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</DL>
</DD>
</DL>
<HR>
<A NAME="joinSuperclass(org.apache.openjpa.jdbc.sql.Joins, boolean)"><!-- --></A><H3>
joinSuperclass</H3>
<PRE>
<A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A> <B>joinSuperclass</B>(<A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A>&nbsp;joins,
boolean&nbsp;toThis)</PRE>
<DL>
<DD>Join the mapping and its superclass.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>toThis</CODE> - if false, inner join to the superclass table; if
true, outer join from the superclass table to this table</DL>
</DD>
</DL>
<HR>
<A NAME="supportsEagerSelect(org.apache.openjpa.jdbc.sql.Select, org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.jdbc.meta.ClassMapping, org.apache.openjpa.jdbc.kernel.JDBCFetchConfiguration)"><!-- --></A><H3>
supportsEagerSelect</H3>
<PRE>
boolean <B>supportsEagerSelect</B>(<A HREF="../../../../../org/apache/openjpa/jdbc/sql/Select.html" title="interface in org.apache.openjpa.jdbc.sql">Select</A>&nbsp;sel,
<A HREF="../../../../../org/apache/openjpa/kernel/OpenJPAStateManager.html" title="interface in org.apache.openjpa.kernel">OpenJPAStateManager</A>&nbsp;sm,
<A HREF="../../../../../org/apache/openjpa/jdbc/kernel/JDBCStore.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCStore</A>&nbsp;store,
<A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassMapping.html" title="class in org.apache.openjpa.jdbc.meta">ClassMapping</A>&nbsp;base,
<A HREF="../../../../../org/apache/openjpa/jdbc/kernel/JDBCFetchConfiguration.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCFetchConfiguration</A>&nbsp;fetch)</PRE>
<DL>
<DD>Return true if this strategy can perform the given select from
the given <code>base</code> mapping.
The given state manager may be null if selecting multiple instances.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="customLoad(org.apache.openjpa.jdbc.kernel.JDBCStore, boolean, org.apache.openjpa.jdbc.kernel.JDBCFetchConfiguration, long, long)"><!-- --></A><H3>
customLoad</H3>
<PRE>
<A HREF="../../../../../org/apache/openjpa/lib/rop/ResultObjectProvider.html" title="interface in org.apache.openjpa.lib.rop">ResultObjectProvider</A> <B>customLoad</B>(<A HREF="../../../../../org/apache/openjpa/jdbc/kernel/JDBCStore.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCStore</A>&nbsp;store,
boolean&nbsp;subclasses,
<A HREF="../../../../../org/apache/openjpa/jdbc/kernel/JDBCFetchConfiguration.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCFetchConfiguration</A>&nbsp;fetch,
long&nbsp;startIdx,
long&nbsp;endIdx)
throws <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/sql/SQLException.html" title="class or interface in java.sql">SQLException</A></PRE>
<DL>
<DD>Implement this method to customize obtaining a result containing all
instances of this class. Return null for standard loading.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/sql/SQLException.html" title="class or interface in java.sql">SQLException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="customLoad(org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.kernel.PCState, org.apache.openjpa.jdbc.kernel.JDBCFetchConfiguration)"><!-- --></A><H3>
customLoad</H3>
<PRE>
boolean <B>customLoad</B>(<A HREF="../../../../../org/apache/openjpa/kernel/OpenJPAStateManager.html" title="interface in org.apache.openjpa.kernel">OpenJPAStateManager</A>&nbsp;sm,
<A HREF="../../../../../org/apache/openjpa/jdbc/kernel/JDBCStore.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCStore</A>&nbsp;store,
<A HREF="../../../../../org/apache/openjpa/kernel/PCState.html" title="class in org.apache.openjpa.kernel">PCState</A>&nbsp;state,
<A HREF="../../../../../org/apache/openjpa/jdbc/kernel/JDBCFetchConfiguration.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCFetchConfiguration</A>&nbsp;fetch)
throws <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/sql/SQLException.html" title="class or interface in java.sql">SQLException</A>,
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/ClassNotFoundException.html" title="class or interface in java.lang">ClassNotFoundException</A></PRE>
<DL>
<DD>Implement this method to load the state of a given object, without
a previous <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html" title="interface in org.apache.openjpa.jdbc.sql"><CODE>Result</CODE></A>. Return true if this method handles the
load. If the object does not exist in the data store, simply take no
action on it (but still return true). Return false to use default
loading.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>state</CODE> - if non-null, then you must initialize the state
and persistent object of the given state manager
(after determining the actual class of the object
from the database, if there are possible persistent
subclasses); initialization looks like this: <code>
sm.initialize (pcClass, state)</code>
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/sql/SQLException.html" title="class or interface in java.sql">SQLException</A></CODE>
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/ClassNotFoundException.html" title="class or interface in java.lang">ClassNotFoundException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="customLoad(org.apache.openjpa.kernel.OpenJPAStateManager, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.jdbc.kernel.JDBCFetchConfiguration, org.apache.openjpa.jdbc.sql.Result)"><!-- --></A><H3>
customLoad</H3>
<PRE>
boolean <B>customLoad</B>(<A HREF="../../../../../org/apache/openjpa/kernel/OpenJPAStateManager.html" title="interface in org.apache.openjpa.kernel">OpenJPAStateManager</A>&nbsp;sm,
<A HREF="../../../../../org/apache/openjpa/jdbc/kernel/JDBCStore.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCStore</A>&nbsp;store,
<A HREF="../../../../../org/apache/openjpa/jdbc/kernel/JDBCFetchConfiguration.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCFetchConfiguration</A>&nbsp;fetch,
<A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html" title="interface in org.apache.openjpa.jdbc.sql">Result</A>&nbsp;result)
throws <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/sql/SQLException.html" title="class or interface in java.sql">SQLException</A></PRE>
<DL>
<DD>Implement this method to customize loading from a <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html" title="interface in org.apache.openjpa.jdbc.sql"><CODE>Result</CODE></A>
into an instance. Return true if this mapping handles the
load; false if normal loading should procede after calling this method.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/sql/SQLException.html" title="class or interface in java.sql">SQLException</A></CODE></DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/ClassStrategy.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassMappingInfo.html" title="class in org.apache.openjpa.jdbc.meta"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/openjpa/jdbc/meta/DelegatingJoinable.html" title="class in org.apache.openjpa.jdbc.meta"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?org/apache/openjpa/jdbc/meta/ClassStrategy.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="ClassStrategy.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
Copyright &copy; 2006-2008 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>