blob: 8668432c981020c88aa42f62e6bf60665b8ae261 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_252) on Fri Jul 16 09:39:03 UTC 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JPQLQueryDeclaration (EclipseLink 3.0.2, API Reference)</title>
<meta name="date" content="2021-07-16">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="JPQLQueryDeclaration (EclipseLink 3.0.2, API Reference)";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage">EclipseLink 3.0.2, API Reference</div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/eclipse/persistence/jpa/jpql/JPAVersion.html" title="enum in org.eclipse.persistence.jpa.jpql"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/eclipse/persistence/jpa/jpql/JPQLQueryDeclaration.Type.html" title="enum in org.eclipse.persistence.jpa.jpql"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/eclipse/persistence/jpa/jpql/JPQLQueryDeclaration.html" target="_top">Frames</a></li>
<li><a href="JPQLQueryDeclaration.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.eclipse.persistence.jpa.jpql</div>
<h2 title="Interface JPQLQueryDeclaration" class="title">Interface JPQLQueryDeclaration</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public interface <span class="typeNameLabel">JPQLQueryDeclaration</span></pre>
<div class="block">A <code>JPQLQueryDeclaration</code> represents either an identification variable declaration or a
collection member declaration. For a subquery, the declaration can be a derived path expression.
<p>
Provisional API: This interface is part of an interim API that is still under development and
expected to change significantly before reaching stability. It is available at this early stage
to solicit feedback from pioneering adopters on the understanding that any code that uses this
API will almost certainly be broken (repeatedly) as the API evolves.</div>
<dl>
<dt><span class="simpleTagLabel">Version:</span></dt>
<dd>2.5</dd>
<dt><span class="simpleTagLabel">Author:</span></dt>
<dd>Pascal Filion</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.4</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Interface and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/jpa/jpql/JPQLQueryDeclaration.Type.html" title="enum in org.eclipse.persistence.jpa.jpql">JPQLQueryDeclaration.Type</a></span></code>
<div class="block">This enum type defines the various types of declarations supported by both the JPA functional
specification and EclipseLink.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/jpa/jpql/JPQLQueryDeclaration.html#getBaseExpression--">getBaseExpression</a></span>()</code>
<div class="block">Returns the range variable declaration if this is a range declaration otherwise the
collection-valued path expression when this is a collection member declaration.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/jpa/jpql/JPQLQueryDeclaration.html#getDeclarationExpression--">getDeclarationExpression</a></span>()</code>
<div class="block">Returns the declaration expression, which is either an <a href="../../../../../org/eclipse/persistence/jpa/jpql/parser/IdentificationVariableDeclaration.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>IdentificationVariableDeclaration</code></a>
or a <a href="../../../../../org/eclipse/persistence/jpa/jpql/parser/CollectionMemberDeclaration.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>CollectionMemberDeclaration</code></a>
when part of a <b>FROM</b> clause, otherwise it's either the <a href="../../../../../org/eclipse/persistence/jpa/jpql/parser/DeleteClause.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>DeleteClause</code></a> or the <a href="../../../../../org/eclipse/persistence/jpa/jpql/parser/UpdateClause.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>UpdateClause</code></a>.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/eclipse/persistence/jpa/jpql/parser/Join.html" title="class in org.eclipse.persistence.jpa.jpql.parser">Join</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/jpa/jpql/JPQLQueryDeclaration.html#getJoins--">getJoins</a></span>()</code>
<div class="block">Returns the <code><b>JOIN</b></code> expressions defined with this declaration, if supported.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/eclipse/persistence/jpa/jpql/JPQLQueryDeclaration.Type.html" title="enum in org.eclipse.persistence.jpa.jpql">JPQLQueryDeclaration.Type</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/jpa/jpql/JPQLQueryDeclaration.html#getType--">getType</a></span>()</code>
<div class="block">Determines the type this declaration represents.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/jpa/jpql/JPQLQueryDeclaration.html#getVariableName--">getVariableName</a></span>()</code>
<div class="block">Returns the identification variable name that is defining either the abstract schema name
or the collection-valued path expression</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/jpa/jpql/JPQLQueryDeclaration.html#hasJoins--">hasJoins</a></span>()</code>
<div class="block">Determines whether the declaration contains <b>JOIN</b> expressions.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getBaseExpression--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBaseExpression</h4>
<pre><a href="../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&nbsp;getBaseExpression()</pre>
<div class="block">Returns the range variable declaration if this is a range declaration otherwise the
collection-valued path expression when this is a collection member declaration.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Either the range variable declaration or the collection-valued path expression</dd>
</dl>
</li>
</ul>
<a name="getDeclarationExpression--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDeclarationExpression</h4>
<pre><a href="../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&nbsp;getDeclarationExpression()</pre>
<div class="block">Returns the declaration expression, which is either an <a href="../../../../../org/eclipse/persistence/jpa/jpql/parser/IdentificationVariableDeclaration.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>IdentificationVariableDeclaration</code></a>
or a <a href="../../../../../org/eclipse/persistence/jpa/jpql/parser/CollectionMemberDeclaration.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>CollectionMemberDeclaration</code></a>
when part of a <b>FROM</b> clause, otherwise it's either the <a href="../../../../../org/eclipse/persistence/jpa/jpql/parser/DeleteClause.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>DeleteClause</code></a> or the <a href="../../../../../org/eclipse/persistence/jpa/jpql/parser/UpdateClause.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>UpdateClause</code></a>.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The root of the declaration expression</dd>
</dl>
</li>
</ul>
<a name="getJoins--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getJoins</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/eclipse/persistence/jpa/jpql/parser/Join.html" title="class in org.eclipse.persistence.jpa.jpql.parser">Join</a>&gt;&nbsp;getJoins()</pre>
<div class="block">Returns the <code><b>JOIN</b></code> expressions defined with this declaration, if supported.
The list contains the <code><b>JOIN</b></code> expressions in ordered they were declared.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The <b>JOIN</b> expressions defined with this declaration or an empty list if this
declaration does not support it</dd>
</dl>
</li>
</ul>
<a name="getType--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getType</h4>
<pre><a href="../../../../../org/eclipse/persistence/jpa/jpql/JPQLQueryDeclaration.Type.html" title="enum in org.eclipse.persistence.jpa.jpql">JPQLQueryDeclaration.Type</a>&nbsp;getType()</pre>
<div class="block">Determines the type this declaration represents.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>One of the possible types</dd>
</dl>
</li>
</ul>
<a name="getVariableName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getVariableName</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getVariableName()</pre>
<div class="block">Returns the identification variable name that is defining either the abstract schema name
or the collection-valued path expression</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The identification variable or an empty string if none was defined</dd>
</dl>
</li>
</ul>
<a name="hasJoins--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>hasJoins</h4>
<pre>boolean&nbsp;hasJoins()</pre>
<div class="block">Determines whether the declaration contains <b>JOIN</b> expressions. This can be
<code>true</code> only when <a href="../../../../../org/eclipse/persistence/jpa/jpql/JPQLQueryDeclaration.Type.html#isRange--"><code>JPQLQueryDeclaration.Type.isRange()</code></a> returns <code>true</code>. A collection
member declaration does not have <b>JOIN</b> expressions.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if at least one <b>JOIN</b> expression was parsed;
otherwise <code>false</code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage">EclipseLink 3.0.2, API Reference</div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/eclipse/persistence/jpa/jpql/JPAVersion.html" title="enum in org.eclipse.persistence.jpa.jpql"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/eclipse/persistence/jpa/jpql/JPQLQueryDeclaration.Type.html" title="enum in org.eclipse.persistence.jpa.jpql"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/eclipse/persistence/jpa/jpql/JPQLQueryDeclaration.html" target="_top">Frames</a></li>
<li><a href="JPQLQueryDeclaration.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2021 <a href="http://www.eclipse.org/eclipselink">Eclipse.org - EclipseLink Project</a>. All rights reserved.</small></p>
</body>
</html>