<!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.6.0_11) on Wed Jul 20 09:13:41 CDT 2011 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
SelectImpl.SelectResult (OpenJPA Parent POM 2.1.1 API)
</TITLE>

<META NAME="date" CONTENT="2011-07-20">

<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="SelectImpl.SelectResult (OpenJPA Parent POM 2.1.1 API)";
    }
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">
<HR>


<!-- ========= 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/SelectImpl.SelectResult.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/sql/SelectImpl.html" title="class in org.apache.openjpa.jdbc.sql"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.Selects.html" title="class in org.apache.openjpa.jdbc.sql"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../index.html?org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="SelectImpl.SelectResult.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;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&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.sql</FONT>
<BR>
Class SelectImpl.SelectResult</H2>
<PRE>
<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
  <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html" title="class in org.apache.openjpa.jdbc.sql">org.apache.openjpa.jdbc.sql.AbstractResult</A>
      <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html" title="class in org.apache.openjpa.jdbc.sql">org.apache.openjpa.jdbc.sql.ResultSetResult</A>
          <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.openjpa.jdbc.sql.SelectImpl.SelectResult</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html" title="interface in org.apache.openjpa.jdbc.sql">PathJoins</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html" title="interface in org.apache.openjpa.jdbc.sql">Result</A>, <A HREF="../../../../../org/apache/openjpa/lib/util/Closeable.html" title="interface in org.apache.openjpa.lib.util">Closeable</A></DD>
</DL>
<DL>
<DT><B>Enclosing class:</B><DD><A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.html" title="class in org.apache.openjpa.jdbc.sql">SelectImpl</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public static class <B>SelectImpl.SelectResult</B><DT>extends <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html" title="class in org.apache.openjpa.jdbc.sql">ResultSetResult</A><DT>implements <A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html" title="interface in org.apache.openjpa.jdbc.sql">PathJoins</A></DL>
</PRE>

<P>
A <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html" title="interface in org.apache.openjpa.jdbc.sql"><CODE>Result</CODE></A> implementation wrapped around this select.
<P>

<P>
<HR>

<P>

<!-- ======== CONSTRUCTOR SUMMARY ======== -->

<A NAME="constructor_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>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html#SelectImpl.SelectResult(java.sql.Connection, java.sql.Statement, java.sql.ResultSet, org.apache.openjpa.jdbc.sql.DBDictionary)">SelectImpl.SelectResult</A></B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/Connection.html?is-external=true" title="class or interface in java.sql">Connection</A>&nbsp;conn,
                        <A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/Statement.html?is-external=true" title="class or interface in java.sql">Statement</A>&nbsp;stmnt,
                        <A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/ResultSet.html?is-external=true" title="class or interface in java.sql">ResultSet</A>&nbsp;rs,
                        <A HREF="../../../../../org/apache/openjpa/jdbc/sql/DBDictionary.html" title="class in org.apache.openjpa.jdbc.sql">DBDictionary</A>&nbsp;dict)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructor.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== 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>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html#absoluteInternal(int)">absoluteInternal</A></B>(int&nbsp;row)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Throws an exception by default.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html#containsAllInternal(java.lang.Object[], org.apache.openjpa.jdbc.sql.Joins)">containsAllInternal</A></B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>[]&nbsp;objs,
                    <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A>&nbsp;joins)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return whether this result contains data for all the given ids or
 columns.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html#containsInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">containsInternal</A></B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;obj,
                 <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A>&nbsp;joins)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return whether this result contains data for the given id or column.</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/sql/SelectImpl.SelectResult.html#crossJoin(org.apache.openjpa.jdbc.schema.Table, org.apache.openjpa.jdbc.schema.Table)">crossJoin</A></B>(<A HREF="../../../../../org/apache/openjpa/jdbc/schema/Table.html" title="class in org.apache.openjpa.jdbc.schema">Table</A>&nbsp;localTable,
          <A HREF="../../../../../org/apache/openjpa/jdbc/schema/Table.html" title="class in org.apache.openjpa.jdbc.schema">Table</A>&nbsp;foreignTable)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Perform a cross join on the given tables.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html#findObject(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">findObject</A></B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;obj,
           <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A>&nbsp;joins)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the 1-based result set index for the given column or id, or a
 non-positive number if the column is not contained in this result.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html#getCorrelatedVariable()">getCorrelatedVariable</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return correlated variable name</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html#getEager(org.apache.openjpa.jdbc.meta.FieldMapping)">getEager</A></B>(<A HREF="../../../../../org/apache/openjpa/jdbc/meta/FieldMapping.html" title="class in org.apache.openjpa.jdbc.meta">FieldMapping</A>&nbsp;key)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The eager result for the given key, or null if none.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html#getPathStr()">getPathStr</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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/SelectImpl.html" title="class in org.apache.openjpa.jdbc.sql">SelectImpl</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html#getSelect()">getSelect</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Select for this result.</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/sql/SelectImpl.SelectResult.html#isDirty()">isDirty</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return true if this instance has a path, any joins, or a variable.</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/sql/SelectImpl.SelectResult.html#isEmpty()">isEmpty</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether we have any joins.</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/sql/SelectImpl.SelectResult.html#isOuter()">isOuter</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether this joins path results in outer joins.</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/sql/SelectImpl.SelectResult.html#join(org.apache.openjpa.jdbc.schema.ForeignKey, boolean, boolean)">join</A></B>(<A HREF="../../../../../org/apache/openjpa/jdbc/schema/ForeignKey.html" title="class in org.apache.openjpa.jdbc.schema">ForeignKey</A>&nbsp;fk,
     boolean&nbsp;inverse,
     boolean&nbsp;toMany)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Join the columns of the given foreign key.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html#joinCount()">joinCount</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the maximum number of joins contained in this instance at any
 time.</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/sql/SelectImpl.SelectResult.html#joinRelation(java.lang.String, org.apache.openjpa.jdbc.schema.ForeignKey, org.apache.openjpa.jdbc.meta.ClassMapping, int, boolean, boolean)">joinRelation</A></B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;name,
             <A HREF="../../../../../org/apache/openjpa/jdbc/schema/ForeignKey.html" title="class in org.apache.openjpa.jdbc.schema">ForeignKey</A>&nbsp;fk,
             <A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassMapping.html" title="class in org.apache.openjpa.jdbc.meta">ClassMapping</A>&nbsp;target,
             int&nbsp;subs,
             boolean&nbsp;inverse,
             boolean&nbsp;toMany)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Join the columns of the given foreign key, which represents a relation
 via the given field name.</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/JoinSet.html" title="class in org.apache.openjpa.jdbc.sql">JoinSet</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html#joins()">joins</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the set of <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Join.html" title="class in org.apache.openjpa.jdbc.sql"><CODE>Join</CODE></A> elements, or null if none.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html#load(org.apache.openjpa.jdbc.meta.ClassMapping, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.jdbc.kernel.JDBCFetchConfiguration, org.apache.openjpa.jdbc.sql.Joins)">load</A></B>(<A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassMapping.html" title="class in org.apache.openjpa.jdbc.meta">ClassMapping</A>&nbsp;mapping,
     <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/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A>&nbsp;joins)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Load a pc object using the given store manager.</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/sql/SelectImpl.SelectResult.html#moveJoinsToParent()">moveJoinsToParent</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Move joins that belong to subquery's parent</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/sql/SelectImpl.SelectResult.html#newJoins()">newJoins</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a no-op joins object by default.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html#nextInternal()">nextInternal</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Advance this row.</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/sql/SelectImpl.SelectResult.html#nullJoins()">nullJoins</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Null the set of <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Join.html" title="class in org.apache.openjpa.jdbc.sql"><CODE>Join</CODE></A> elements.</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/sql/SelectImpl.SelectResult.html#outerJoin(org.apache.openjpa.jdbc.schema.ForeignKey, boolean, boolean)">outerJoin</A></B>(<A HREF="../../../../../org/apache/openjpa/jdbc/schema/ForeignKey.html" title="class in org.apache.openjpa.jdbc.schema">ForeignKey</A>&nbsp;fk,
          boolean&nbsp;inverse,
          boolean&nbsp;toMany)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Join the columns of the given foreign key.</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/sql/SelectImpl.SelectResult.html#outerJoinRelation(java.lang.String, org.apache.openjpa.jdbc.schema.ForeignKey, org.apache.openjpa.jdbc.meta.ClassMapping, int, boolean, boolean)">outerJoinRelation</A></B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;name,
                  <A HREF="../../../../../org/apache/openjpa/jdbc/schema/ForeignKey.html" title="class in org.apache.openjpa.jdbc.schema">ForeignKey</A>&nbsp;fk,
                  <A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassMapping.html" title="class in org.apache.openjpa.jdbc.meta">ClassMapping</A>&nbsp;target,
                  int&nbsp;subs,
                  boolean&nbsp;inverse,
                  boolean&nbsp;toMany)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Join the columns of the given foreign key, which represents a relation
 via the given field name.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/StringBuilder.html?is-external=true" title="class or interface in java.lang">StringBuilder</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html#path()">path</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the relation path traversed by these joins, or null if none.</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/sql/SelectImpl.SelectResult.html#pushBack()">pushBack</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Push back the last result.</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/sql/SelectImpl.SelectResult.html#putEager(org.apache.openjpa.jdbc.meta.FieldMapping, java.lang.Object)">putEager</A></B>(<A HREF="../../../../../org/apache/openjpa/jdbc/meta/FieldMapping.html" title="class in org.apache.openjpa.jdbc.meta">FieldMapping</A>&nbsp;key,
         <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;res)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The eager result for the given key, or null if none.</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/sql/SelectImpl.SelectResult.html#setCorrelatedVariable(java.lang.String)">setCorrelatedVariable</A></B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;var)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the correlated variable name being traversed into
 with the next join.</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/sql/SelectImpl.SelectResult.html#setJoinContext(org.apache.openjpa.kernel.exps.Context)">setJoinContext</A></B>(<A HREF="../../../../../org/apache/openjpa/kernel/exps/Context.html" title="class in org.apache.openjpa.kernel.exps">Context</A>&nbsp;ctx)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set subquery context when traversing into the next join is
 in transition from parent context to subquery.</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/PathJoins.html" title="interface in org.apache.openjpa.jdbc.sql">PathJoins</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html#setOuter(boolean)">setOuter</A></B>(boolean&nbsp;outer)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mark this as an outer joins set.</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/sql/SelectImpl.SelectResult.html#setSelect(org.apache.openjpa.jdbc.sql.SelectImpl)">setSelect</A></B>(<A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.html" title="class in org.apache.openjpa.jdbc.sql">SelectImpl</A>&nbsp;sel)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Select for this result.</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/sql/SelectImpl.SelectResult.html#setSubselect(java.lang.String)">setSubselect</A></B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;alias)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the subquery alias.</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/sql/SelectImpl.SelectResult.html#setVariable(java.lang.String)">setVariable</A></B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;var)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the variable name being traversed into with the next join.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.openjpa.jdbc.sql.ResultSetResult"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.openjpa.jdbc.sql.<A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html" title="class in org.apache.openjpa.jdbc.sql">ResultSetResult</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#close()">close</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getArrayInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getArrayInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getAsciiStreamInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getAsciiStreamInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getBigDecimalInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getBigDecimalInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getBigIntegerInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getBigIntegerInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getBinaryStreamInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getBinaryStreamInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getBlobInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getBlobInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getBooleanInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getBooleanInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getByteInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getByteInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getBytesInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getBytesInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getCalendarInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getCalendarInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getCharacterStreamInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getCharacterStreamInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getCharInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getCharInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getClobInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getClobInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getCloseConnection()">getCloseConnection</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getDateInternal(java.lang.Object, java.util.Calendar, org.apache.openjpa.jdbc.sql.Joins)">getDateInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getDateInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getDateInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getDBDictionary()">getDBDictionary</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getDoubleInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getDoubleInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getFloatInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getFloatInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getIntInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getIntInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getLOBStreamInternal(org.apache.openjpa.jdbc.kernel.JDBCStore, java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getLOBStreamInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getLocaleInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getLocaleInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getLongInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getLongInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getNumberInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getNumberInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getObjectInternal(java.lang.Object, int, java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getObjectInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getRefInternal(java.lang.Object, java.util.Map, org.apache.openjpa.jdbc.sql.Joins)">getRefInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getResultSet()">getResultSet</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getShortInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getShortInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getSQLObjectInternal(java.lang.Object, java.util.Map, org.apache.openjpa.jdbc.sql.Joins)">getSQLObjectInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getStatement()">getStatement</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getStore()">getStore</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getStreamInternal(org.apache.openjpa.jdbc.kernel.JDBCStore, java.lang.Object, int, java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getStreamInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getStringInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins, boolean)">getStringInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getTimeInternal(java.lang.Object, java.util.Calendar, org.apache.openjpa.jdbc.sql.Joins)">getTimeInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#getTimestampInternal(java.lang.Object, java.util.Calendar, org.apache.openjpa.jdbc.sql.Joins)">getTimestampInternal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#setCloseConnection(boolean)">setCloseConnection</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#setStore(org.apache.openjpa.jdbc.kernel.JDBCStore)">setStore</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#size()">size</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#supportsRandomAccess()">supportsRandomAccess</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#translate(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">translate</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#wasNull()">wasNull</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.openjpa.jdbc.sql.AbstractResult"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.openjpa.jdbc.sql.<A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html" title="class in org.apache.openjpa.jdbc.sql">AbstractResult</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#absolute(int)">absolute</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#checkNull(java.lang.Object)">checkNull</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#closeEagerMap(java.util.Map)">closeEagerMap</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#contains(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">contains</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#contains(java.lang.Object)">contains</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#containsAll(org.apache.openjpa.jdbc.schema.Column[], org.apache.openjpa.jdbc.sql.Joins)">containsAll</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#containsAll(java.lang.Object[])">containsAll</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#endDataRequest()">endDataRequest</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getArray(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getArray</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getArray(java.lang.Object)">getArray</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getAsciiStream(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getAsciiStream</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getAsciiStream(java.lang.Object)">getAsciiStream</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getBaseMapping()">getBaseMapping</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getBigDecimal(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getBigDecimal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getBigDecimal(java.lang.Object)">getBigDecimal</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getBigInteger(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getBigInteger</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getBigInteger(java.lang.Object)">getBigInteger</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getBinaryStream(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getBinaryStream</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getBinaryStream(java.lang.Object)">getBinaryStream</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getBlob(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getBlob</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getBlob(java.lang.Object)">getBlob</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getBoolean(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getBoolean</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getBoolean(java.lang.Object)">getBoolean</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getByte(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getByte</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getByte(java.lang.Object)">getByte</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getBytes(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getBytes</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getBytes(java.lang.Object)">getBytes</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getCalendar(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getCalendar</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getCalendar(java.lang.Object)">getCalendar</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getChar(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getChar</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getChar(java.lang.Object)">getChar</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getCharacterStream(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getCharacterStream</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getCharacterStream(java.lang.Object)">getCharacterStream</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getClob(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getClob</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getClob(java.lang.Object)">getClob</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getDate(org.apache.openjpa.jdbc.schema.Column, java.util.Calendar, org.apache.openjpa.jdbc.sql.Joins)">getDate</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getDate(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getDate</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getDate(java.lang.Object)">getDate</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getDate(java.lang.Object, java.util.Calendar)">getDate</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getDouble(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getDouble</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getDouble(java.lang.Object)">getDouble</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getEagerMap(boolean)">getEagerMap</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getFloat(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getFloat</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getFloat(java.lang.Object)">getFloat</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getInt(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getInt</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getInt(java.lang.Object)">getInt</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getLOBStream(org.apache.openjpa.jdbc.kernel.JDBCStore, java.lang.Object)">getLOBStream</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getLocale(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getLocale</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getLocale(java.lang.Object)">getLocale</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getLong(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getLong</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getLong(java.lang.Object)">getLong</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getMappedByFieldMapping()">getMappedByFieldMapping</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getMappedByValue()">getMappedByValue</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getNumber(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getNumber</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getNumber(java.lang.Object)">getNumber</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getObject(org.apache.openjpa.jdbc.schema.Column, java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">getObject</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getObject(java.lang.Object, int, java.lang.Object)">getObject</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getRef(org.apache.openjpa.jdbc.schema.Column, java.util.Map, org.apache.openjpa.jdbc.sql.Joins)">getRef</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getRef(java.lang.Object, java.util.Map)">getRef</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getShort(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getShort</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getShort(java.lang.Object)">getShort</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getSQLObject(org.apache.openjpa.jdbc.schema.Column, java.util.Map, org.apache.openjpa.jdbc.sql.Joins)">getSQLObject</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getSQLObject(java.lang.Object, java.util.Map)">getSQLObject</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getString(org.apache.openjpa.jdbc.schema.Column, org.apache.openjpa.jdbc.sql.Joins)">getString</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getString(java.lang.Object)">getString</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getTime(org.apache.openjpa.jdbc.schema.Column, java.util.Calendar, org.apache.openjpa.jdbc.sql.Joins)">getTime</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getTime(java.lang.Object, java.util.Calendar)">getTime</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getTimestamp(org.apache.openjpa.jdbc.schema.Column, java.util.Calendar, org.apache.openjpa.jdbc.sql.Joins)">getTimestamp</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getTimestamp(java.lang.Object, java.util.Calendar)">getTimestamp</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#indexOf()">indexOf</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#isLocking()">isLocking</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#load(org.apache.openjpa.jdbc.meta.ClassMapping, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.jdbc.kernel.JDBCFetchConfiguration)">load</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#next()">next</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#setBaseMapping(org.apache.openjpa.jdbc.meta.ClassMapping)">setBaseMapping</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#setEagerMap(java.util.Map)">setEagerMap</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#setIndexOf(int)">setIndexOf</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#setLocking(boolean)">setLocking</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#setMappedByFieldMapping(org.apache.openjpa.jdbc.meta.FieldMapping)">setMappedByFieldMapping</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#setMappedByValue(java.lang.Object)">setMappedByValue</A>, <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#startDataRequest(java.lang.Object)">startDataRequest</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ========= CONSTRUCTOR DETAIL ======== -->

<A NAME="constructor_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>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="SelectImpl.SelectResult(java.sql.Connection, java.sql.Statement, java.sql.ResultSet, org.apache.openjpa.jdbc.sql.DBDictionary)"><!-- --></A><H3>
SelectImpl.SelectResult</H3>
<PRE>
public <B>SelectImpl.SelectResult</B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/Connection.html?is-external=true" title="class or interface in java.sql">Connection</A>&nbsp;conn,
                               <A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/Statement.html?is-external=true" title="class or interface in java.sql">Statement</A>&nbsp;stmnt,
                               <A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/ResultSet.html?is-external=true" title="class or interface in java.sql">ResultSet</A>&nbsp;rs,
                               <A HREF="../../../../../org/apache/openjpa/jdbc/sql/DBDictionary.html" title="class in org.apache.openjpa.jdbc.sql">DBDictionary</A>&nbsp;dict)</PRE>
<DL>
<DD>Constructor.
<P>
</DL>

<!-- ============ 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="getSelect()"><!-- --></A><H3>
getSelect</H3>
<PRE>
public <A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.html" title="class in org.apache.openjpa.jdbc.sql">SelectImpl</A> <B>getSelect</B>()</PRE>
<DL>
<DD>Select for this result.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html#getSelect()">getSelect</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html" title="interface in org.apache.openjpa.jdbc.sql">PathJoins</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD></DL>
</DD>
</DL>
<HR>

<A NAME="setSelect(org.apache.openjpa.jdbc.sql.SelectImpl)"><!-- --></A><H3>
setSelect</H3>
<PRE>
public void <B>setSelect</B>(<A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.html" title="class in org.apache.openjpa.jdbc.sql">SelectImpl</A>&nbsp;sel)</PRE>
<DL>
<DD>Select for this result.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getEager(org.apache.openjpa.jdbc.meta.FieldMapping)"><!-- --></A><H3>
getEager</H3>
<PRE>
public <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A> <B>getEager</B>(<A HREF="../../../../../org/apache/openjpa/jdbc/meta/FieldMapping.html" title="class in org.apache.openjpa.jdbc.meta">FieldMapping</A>&nbsp;key)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html#getEager(org.apache.openjpa.jdbc.meta.FieldMapping)">Result</A></CODE></B></DD>
<DD>The eager result for the given key, or null if none.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html#getEager(org.apache.openjpa.jdbc.meta.FieldMapping)">getEager</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html" title="interface in org.apache.openjpa.jdbc.sql">Result</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#getEager(org.apache.openjpa.jdbc.meta.FieldMapping)">getEager</A></CODE> in class <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html" title="class in org.apache.openjpa.jdbc.sql">AbstractResult</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="putEager(org.apache.openjpa.jdbc.meta.FieldMapping, java.lang.Object)"><!-- --></A><H3>
putEager</H3>
<PRE>
public void <B>putEager</B>(<A HREF="../../../../../org/apache/openjpa/jdbc/meta/FieldMapping.html" title="class in org.apache.openjpa.jdbc.meta">FieldMapping</A>&nbsp;key,
                     <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;res)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html#putEager(org.apache.openjpa.jdbc.meta.FieldMapping, java.lang.Object)">Result</A></CODE></B></DD>
<DD>The eager result for the given key, or null if none.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html#putEager(org.apache.openjpa.jdbc.meta.FieldMapping, java.lang.Object)">putEager</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html" title="interface in org.apache.openjpa.jdbc.sql">Result</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#putEager(org.apache.openjpa.jdbc.meta.FieldMapping, java.lang.Object)">putEager</A></CODE> in class <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html" title="class in org.apache.openjpa.jdbc.sql">AbstractResult</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="load(org.apache.openjpa.jdbc.meta.ClassMapping, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.jdbc.kernel.JDBCFetchConfiguration, org.apache.openjpa.jdbc.sql.Joins)"><!-- --></A><H3>
load</H3>
<PRE>
public <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A> <B>load</B>(<A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassMapping.html" title="class in org.apache.openjpa.jdbc.meta">ClassMapping</A>&nbsp;mapping,
                   <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/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A>&nbsp;joins)
            throws <A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</A></PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html#load(org.apache.openjpa.jdbc.meta.ClassMapping, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.jdbc.kernel.JDBCFetchConfiguration, org.apache.openjpa.jdbc.sql.Joins)">Result</A></CODE></B></DD>
<DD>Load a pc object using the given store manager.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html#load(org.apache.openjpa.jdbc.meta.ClassMapping, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.jdbc.kernel.JDBCFetchConfiguration, org.apache.openjpa.jdbc.sql.Joins)">load</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html" title="interface in org.apache.openjpa.jdbc.sql">Result</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#load(org.apache.openjpa.jdbc.meta.ClassMapping, org.apache.openjpa.jdbc.kernel.JDBCStore, org.apache.openjpa.jdbc.kernel.JDBCFetchConfiguration, org.apache.openjpa.jdbc.sql.Joins)">load</A></CODE> in class <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html" title="class in org.apache.openjpa.jdbc.sql">AbstractResult</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</A></CODE></DL>
</DD>
</DL>
<HR>

<A NAME="newJoins()"><!-- --></A><H3>
newJoins</H3>
<PRE>
public <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A> <B>newJoins</B>()</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#newJoins()">AbstractResult</A></CODE></B></DD>
<DD>Returns a no-op joins object by default.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html#newJoins()">newJoins</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html" title="interface in org.apache.openjpa.jdbc.sql">Result</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#newJoins()">newJoins</A></CODE> in class <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html" title="class in org.apache.openjpa.jdbc.sql">AbstractResult</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="containsInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)"><!-- --></A><H3>
containsInternal</H3>
<PRE>
protected boolean <B>containsInternal</B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;obj,
                                   <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A>&nbsp;joins)</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#containsInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">AbstractResult</A></CODE></B></DD>
<DD>Return whether this result contains data for the given id or column.
 The id or column has not beed passed through <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#translate(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)"><CODE>AbstractResult.translate(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)</CODE></A>.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#containsInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">containsInternal</A></CODE> in class <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html" title="class in org.apache.openjpa.jdbc.sql">ResultSetResult</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="containsAllInternal(java.lang.Object[], org.apache.openjpa.jdbc.sql.Joins)"><!-- --></A><H3>
containsAllInternal</H3>
<PRE>
protected boolean <B>containsAllInternal</B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>[]&nbsp;objs,
                                      <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A>&nbsp;joins)
                               throws <A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</A></PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#containsAllInternal(java.lang.Object[], org.apache.openjpa.jdbc.sql.Joins)">AbstractResult</A></CODE></B></DD>
<DD>Return whether this result contains data for all the given ids or
 columns. The ids or columns have not been passed through
 <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#translate(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)"><CODE>AbstractResult.translate(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)</CODE></A>. Delegates to <A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#containsInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)"><CODE>AbstractResult.containsInternal(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)</CODE></A> by default.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#containsAllInternal(java.lang.Object[], org.apache.openjpa.jdbc.sql.Joins)">containsAllInternal</A></CODE> in class <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html" title="class in org.apache.openjpa.jdbc.sql">AbstractResult</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</A></CODE></DL>
</DD>
</DL>
<HR>

<A NAME="pushBack()"><!-- --></A><H3>
pushBack</H3>
<PRE>
public void <B>pushBack</B>()
              throws <A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</A></PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html#pushBack()">Result</A></CODE></B></DD>
<DD>Push back the last result. In other words, just ignore the next call
 to <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html#next()"><CODE>Result.next()</CODE></A>. After the first time this method is called,
 additional calls before a call to <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html#next()"><CODE>Result.next()</CODE></A> or <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html#absolute(int)"><CODE>Result.absolute(int)</CODE></A>
 should have no further affect.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html#pushBack()">pushBack</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Result.html" title="interface in org.apache.openjpa.jdbc.sql">Result</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#pushBack()">pushBack</A></CODE> in class <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html" title="class in org.apache.openjpa.jdbc.sql">AbstractResult</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</A></CODE></DL>
</DD>
</DL>
<HR>

<A NAME="absoluteInternal(int)"><!-- --></A><H3>
absoluteInternal</H3>
<PRE>
protected boolean <B>absoluteInternal</B>(int&nbsp;row)
                            throws <A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</A></PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#absoluteInternal(int)">AbstractResult</A></CODE></B></DD>
<DD>Throws an exception by default.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#absoluteInternal(int)">absoluteInternal</A></CODE> in class <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html" title="class in org.apache.openjpa.jdbc.sql">ResultSetResult</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</A></CODE></DL>
</DD>
</DL>
<HR>

<A NAME="nextInternal()"><!-- --></A><H3>
nextInternal</H3>
<PRE>
protected boolean <B>nextInternal</B>()
                        throws <A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</A></PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/AbstractResult.html#nextInternal()">AbstractResult</A></CODE></B></DD>
<DD>Advance this row.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#nextInternal()">nextInternal</A></CODE> in class <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html" title="class in org.apache.openjpa.jdbc.sql">ResultSetResult</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</A></CODE></DL>
</DD>
</DL>
<HR>

<A NAME="findObject(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)"><!-- --></A><H3>
findObject</H3>
<PRE>
protected int <B>findObject</B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;obj,
                         <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A>&nbsp;joins)
                  throws <A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</A></PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#findObject(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">ResultSetResult</A></CODE></B></DD>
<DD>Return the 1-based result set index for the given column or id, or a
 non-positive number if the column is not contained in this result.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html#findObject(java.lang.Object, org.apache.openjpa.jdbc.sql.Joins)">findObject</A></CODE> in class <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/ResultSetResult.html" title="class in org.apache.openjpa.jdbc.sql">ResultSetResult</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/6/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</A></CODE></DL>
</DD>
</DL>
<HR>

<A NAME="isOuter()"><!-- --></A><H3>
isOuter</H3>
<PRE>
public boolean <B>isOuter</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#isOuter()">Joins</A></CODE></B></DD>
<DD>Whether this joins path results in outer joins.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#isOuter()">isOuter</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setOuter(boolean)"><!-- --></A><H3>
setOuter</H3>
<PRE>
public <A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html" title="interface in org.apache.openjpa.jdbc.sql">PathJoins</A> <B>setOuter</B>(boolean&nbsp;outer)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html#setOuter(boolean)">PathJoins</A></CODE></B></DD>
<DD>Mark this as an outer joins set.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html#setOuter(boolean)">setOuter</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html" title="interface in org.apache.openjpa.jdbc.sql">PathJoins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="isDirty()"><!-- --></A><H3>
isDirty</H3>
<PRE>
public boolean <B>isDirty</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html#isDirty()">PathJoins</A></CODE></B></DD>
<DD>Return true if this instance has a path, any joins, or a variable.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html#isDirty()">isDirty</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html" title="interface in org.apache.openjpa.jdbc.sql">PathJoins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="path()"><!-- --></A><H3>
path</H3>
<PRE>
public <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/StringBuilder.html?is-external=true" title="class or interface in java.lang">StringBuilder</A> <B>path</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html#path()">PathJoins</A></CODE></B></DD>
<DD>Return the relation path traversed by these joins, or null if none.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html#path()">path</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html" title="interface in org.apache.openjpa.jdbc.sql">PathJoins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getPathStr()"><!-- --></A><H3>
getPathStr</H3>
<PRE>
public <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>getPathStr</B>()</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html#getPathStr()">getPathStr</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html" title="interface in org.apache.openjpa.jdbc.sql">PathJoins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="joins()"><!-- --></A><H3>
joins</H3>
<PRE>
public <A HREF="../../../../../org/apache/openjpa/jdbc/sql/JoinSet.html" title="class in org.apache.openjpa.jdbc.sql">JoinSet</A> <B>joins</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html#joins()">PathJoins</A></CODE></B></DD>
<DD>Return the set of <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Join.html" title="class in org.apache.openjpa.jdbc.sql"><CODE>Join</CODE></A> elements, or null if none.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html#joins()">joins</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html" title="interface in org.apache.openjpa.jdbc.sql">PathJoins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="joinCount()"><!-- --></A><H3>
joinCount</H3>
<PRE>
public int <B>joinCount</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html#joinCount()">PathJoins</A></CODE></B></DD>
<DD>Return the maximum number of joins contained in this instance at any
 time.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html#joinCount()">joinCount</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html" title="interface in org.apache.openjpa.jdbc.sql">PathJoins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="nullJoins()"><!-- --></A><H3>
nullJoins</H3>
<PRE>
public void <B>nullJoins</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html#nullJoins()">PathJoins</A></CODE></B></DD>
<DD>Null the set of <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Join.html" title="class in org.apache.openjpa.jdbc.sql"><CODE>Join</CODE></A> elements.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html#nullJoins()">nullJoins</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/PathJoins.html" title="interface in org.apache.openjpa.jdbc.sql">PathJoins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="isEmpty()"><!-- --></A><H3>
isEmpty</H3>
<PRE>
public boolean <B>isEmpty</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#isEmpty()">Joins</A></CODE></B></DD>
<DD>Whether we have any joins.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#isEmpty()">isEmpty</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="crossJoin(org.apache.openjpa.jdbc.schema.Table, org.apache.openjpa.jdbc.schema.Table)"><!-- --></A><H3>
crossJoin</H3>
<PRE>
public <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A> <B>crossJoin</B>(<A HREF="../../../../../org/apache/openjpa/jdbc/schema/Table.html" title="class in org.apache.openjpa.jdbc.schema">Table</A>&nbsp;localTable,
                       <A HREF="../../../../../org/apache/openjpa/jdbc/schema/Table.html" title="class in org.apache.openjpa.jdbc.schema">Table</A>&nbsp;foreignTable)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#crossJoin(org.apache.openjpa.jdbc.schema.Table, org.apache.openjpa.jdbc.schema.Table)">Joins</A></CODE></B></DD>
<DD>Perform a cross join on the given tables.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#crossJoin(org.apache.openjpa.jdbc.schema.Table, org.apache.openjpa.jdbc.schema.Table)">crossJoin</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="join(org.apache.openjpa.jdbc.schema.ForeignKey, boolean, boolean)"><!-- --></A><H3>
join</H3>
<PRE>
public <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A> <B>join</B>(<A HREF="../../../../../org/apache/openjpa/jdbc/schema/ForeignKey.html" title="class in org.apache.openjpa.jdbc.schema">ForeignKey</A>&nbsp;fk,
                  boolean&nbsp;inverse,
                  boolean&nbsp;toMany)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#join(org.apache.openjpa.jdbc.schema.ForeignKey, boolean, boolean)">Joins</A></CODE></B></DD>
<DD>Join the columns of the given foreign key.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#join(org.apache.openjpa.jdbc.schema.ForeignKey, boolean, boolean)">join</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="outerJoin(org.apache.openjpa.jdbc.schema.ForeignKey, boolean, boolean)"><!-- --></A><H3>
outerJoin</H3>
<PRE>
public <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A> <B>outerJoin</B>(<A HREF="../../../../../org/apache/openjpa/jdbc/schema/ForeignKey.html" title="class in org.apache.openjpa.jdbc.schema">ForeignKey</A>&nbsp;fk,
                       boolean&nbsp;inverse,
                       boolean&nbsp;toMany)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#outerJoin(org.apache.openjpa.jdbc.schema.ForeignKey, boolean, boolean)">Joins</A></CODE></B></DD>
<DD>Join the columns of the given foreign key.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#outerJoin(org.apache.openjpa.jdbc.schema.ForeignKey, boolean, boolean)">outerJoin</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="joinRelation(java.lang.String, org.apache.openjpa.jdbc.schema.ForeignKey, org.apache.openjpa.jdbc.meta.ClassMapping, int, boolean, boolean)"><!-- --></A><H3>
joinRelation</H3>
<PRE>
public <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A> <B>joinRelation</B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;name,
                          <A HREF="../../../../../org/apache/openjpa/jdbc/schema/ForeignKey.html" title="class in org.apache.openjpa.jdbc.schema">ForeignKey</A>&nbsp;fk,
                          <A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassMapping.html" title="class in org.apache.openjpa.jdbc.meta">ClassMapping</A>&nbsp;target,
                          int&nbsp;subs,
                          boolean&nbsp;inverse,
                          boolean&nbsp;toMany)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#joinRelation(java.lang.String, org.apache.openjpa.jdbc.schema.ForeignKey, org.apache.openjpa.jdbc.meta.ClassMapping, int, boolean, boolean)">Joins</A></CODE></B></DD>
<DD>Join the columns of the given foreign key, which represents a relation
 via the given field name.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#joinRelation(java.lang.String, org.apache.openjpa.jdbc.schema.ForeignKey, org.apache.openjpa.jdbc.meta.ClassMapping, int, boolean, boolean)">joinRelation</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="outerJoinRelation(java.lang.String, org.apache.openjpa.jdbc.schema.ForeignKey, org.apache.openjpa.jdbc.meta.ClassMapping, int, boolean, boolean)"><!-- --></A><H3>
outerJoinRelation</H3>
<PRE>
public <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A> <B>outerJoinRelation</B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;name,
                               <A HREF="../../../../../org/apache/openjpa/jdbc/schema/ForeignKey.html" title="class in org.apache.openjpa.jdbc.schema">ForeignKey</A>&nbsp;fk,
                               <A HREF="../../../../../org/apache/openjpa/jdbc/meta/ClassMapping.html" title="class in org.apache.openjpa.jdbc.meta">ClassMapping</A>&nbsp;target,
                               int&nbsp;subs,
                               boolean&nbsp;inverse,
                               boolean&nbsp;toMany)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#outerJoinRelation(java.lang.String, org.apache.openjpa.jdbc.schema.ForeignKey, org.apache.openjpa.jdbc.meta.ClassMapping, int, boolean, boolean)">Joins</A></CODE></B></DD>
<DD>Join the columns of the given foreign key, which represents a relation
 via the given field name.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#outerJoinRelation(java.lang.String, org.apache.openjpa.jdbc.schema.ForeignKey, org.apache.openjpa.jdbc.meta.ClassMapping, int, boolean, boolean)">outerJoinRelation</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setVariable(java.lang.String)"><!-- --></A><H3>
setVariable</H3>
<PRE>
public <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A> <B>setVariable</B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;var)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#setVariable(java.lang.String)">Joins</A></CODE></B></DD>
<DD>Set the variable name being traversed into with the next join.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#setVariable(java.lang.String)">setVariable</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setSubselect(java.lang.String)"><!-- --></A><H3>
setSubselect</H3>
<PRE>
public <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A> <B>setSubselect</B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;alias)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#setSubselect(java.lang.String)">Joins</A></CODE></B></DD>
<DD>Set the subquery alias.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#setSubselect(java.lang.String)">setSubselect</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setCorrelatedVariable(java.lang.String)"><!-- --></A><H3>
setCorrelatedVariable</H3>
<PRE>
public <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A> <B>setCorrelatedVariable</B>(<A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;var)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#setCorrelatedVariable(java.lang.String)">Joins</A></CODE></B></DD>
<DD>Set the correlated variable name being traversed into
 with the next join.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#setCorrelatedVariable(java.lang.String)">setCorrelatedVariable</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setJoinContext(org.apache.openjpa.kernel.exps.Context)"><!-- --></A><H3>
setJoinContext</H3>
<PRE>
public <A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A> <B>setJoinContext</B>(<A HREF="../../../../../org/apache/openjpa/kernel/exps/Context.html" title="class in org.apache.openjpa.kernel.exps">Context</A>&nbsp;ctx)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#setJoinContext(org.apache.openjpa.kernel.exps.Context)">Joins</A></CODE></B></DD>
<DD>Set subquery context when traversing into the next join is
 in transition from parent context to subquery.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#setJoinContext(org.apache.openjpa.kernel.exps.Context)">setJoinContext</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getCorrelatedVariable()"><!-- --></A><H3>
getCorrelatedVariable</H3>
<PRE>
public <A HREF="http://java.sun.com/j2se/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>getCorrelatedVariable</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#getCorrelatedVariable()">Joins</A></CODE></B></DD>
<DD>Return correlated variable name
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#getCorrelatedVariable()">getCorrelatedVariable</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD></DL>
</DD>
</DL>
<HR>

<A NAME="moveJoinsToParent()"><!-- --></A><H3>
moveJoinsToParent</H3>
<PRE>
public void <B>moveJoinsToParent</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#moveJoinsToParent()">Joins</A></CODE></B></DD>
<DD>Move joins that belong to subquery's parent
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html#moveJoinsToParent()">moveJoinsToParent</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/openjpa/jdbc/sql/Joins.html" title="interface in org.apache.openjpa.jdbc.sql">Joins</A></CODE></DL>
</DD>
<DD><DL>
</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/SelectImpl.SelectResult.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/sql/SelectImpl.html" title="class in org.apache.openjpa.jdbc.sql"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/openjpa/jdbc/sql/SelectImpl.Selects.html" title="class in org.apache.openjpa.jdbc.sql"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../index.html?org/apache/openjpa/jdbc/sql/SelectImpl.SelectResult.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="SelectImpl.SelectResult.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;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>
Copyright &#169; 2006-2011 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>
