blob: 9f4df56b67a9346a80581ad6f2bf7c2d68eea4f7 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_252) on Thu Sep 03 11:54:24 CEST 2020 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ResultShape (OpenJPA Parent POM 3.1.2 API)</title>
<meta name="date" content="2020-09-03">
<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="ResultShape (OpenJPA Parent POM 3.1.2 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete 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="class-use/ResultShape.html">Use</a></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>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/openjpa/kernel/ResultPacker.html" title="class in org.apache.openjpa.kernel"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/openjpa/kernel/ResultShapePacker.html" title="class in org.apache.openjpa.kernel"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/openjpa/kernel/ResultShape.html" target="_top">Frames</a></li>
<li><a href="ResultShape.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>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&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><a href="#constructor.detail">Constr</a>&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.apache.openjpa.kernel</div>
<h2 title="Class ResultShape" class="title">Class ResultShape&lt;T&gt;</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.openjpa.kernel.ResultShape&lt;T&gt;</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">ResultShape&lt;T&gt;</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
implements <a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a></pre>
<div class="block">Describes the shape of a query result.
<br>
A shape is described as a Java class by the generic type argument T. A shape may contain zero or more shapes.
A shape is categorized as follows:
<LI>A <em>primitive</em> shape can not have child shapes e.g. Foo or float.
<LI>A <em>compound</em> shape has zero or more child shapes e.g. Foo{} or Foo{String, int} or
Foo{String,Bar{Double},int}.
<LI>A <em>nesting</em> shape has one or more compound child shape(s).
For example, Foo{String,Bar{Double},int}. On the other hand, Foo{String, int} is a compound shape but is not
nesting because all its child shapes are primitive.
<br>
A primitive category shape is declared during construction and immutable.
The category of a non-primitive shape is mutable.
<br>
Notice that all nested shapes are compound shapes but not all compound shapes are nesting.
<br>
A compound shape can <em>add</em> other primitive shapes or <em>nest</em> other shapes to any arbitrary depth.
However, a shape does not allow recursive nesting of shapes.
<br>
<B>Usage</B>:
The purpose of a shape is to populate an instance of T from an array of input values where each
array element is further specified with a type and an alias. FillStrategy determines how a shape
populates an instance of T by consuming the input array element values.
The input data is presented as an Object[] with a parallel array of types because the primitive
types (short, float etc.) are not preserved in the input array. For certain FillStrategy such as
MAP or BEAN, the alias of the input array element are used to identify the Map key or setter
methods respectively.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0.0</dd>
<dt><span class="simpleTagLabel">Author:</span></dt>
<dd>Pinaki Poddar</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../serialized-form.html#org.apache.openjpa.kernel.ResultShape">Serialized Form</a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#ResultShape-java.lang.Class-">ResultShape</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;cls)</code>
<div class="block">Construct a non-primitive shape with ASSIGN or ARRAY fill strategy.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#ResultShape-java.lang.Class-boolean-">ResultShape</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;cls,
boolean&nbsp;primitive)</code>
<div class="block">Construct a primitive or non-primitive shape with ASSIGN or ARRAY fill strategy.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#ResultShape-java.lang.Class-org.apache.openjpa.kernel.FillStrategy-">ResultShape</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;cls,
<a href="../../../../org/apache/openjpa/kernel/FillStrategy.html" title="interface in org.apache.openjpa.kernel">FillStrategy</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;strategy)</code>
<div class="block">Construct a non-primitive shape with the given fill strategy.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#ResultShape-java.lang.Class-org.apache.openjpa.kernel.FillStrategy-boolean-">ResultShape</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;cls,
<a href="../../../../org/apache/openjpa/kernel/FillStrategy.html" title="interface in org.apache.openjpa.kernel">FillStrategy</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;strategy,
boolean&nbsp;primitive)</code>
<div class="block">Construct a shape with the given fill strategy.</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="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete 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/apache/openjpa/kernel/ResultShape.html" title="class in org.apache.openjpa.kernel">ResultShape</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#add-java.lang.Class...-">add</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;...&nbsp;classes)</code>
<div class="block">Adds the given classes as child shapes of this shape.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#argLength--">argLength</a></span>()</code>
<div class="block">Total number of arguments required to populate the shape and all its child shapes.</div>
</td>
</tr>
<tr id="i2" 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/apache/openjpa/kernel/ResultShape.html#getAlias--">getAlias</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<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/apache/openjpa/kernel/ResultShape.html" title="class in org.apache.openjpa.kernel">ResultShape</a>&lt;?&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#getChildren--">getChildren</a></span>()</code>
<div class="block">Gets all the child shapes.</div>
</td>
</tr>
<tr id="i4" 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="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#getCompositeTypes--">getCompositeTypes</a></span>()</code>
<div class="block">Gets the list of classes to compose this shape and all its children.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="class in org.apache.openjpa.kernel">ResultShape</a>&lt;?&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#getParents--">getParents</a></span>()</code>
<div class="block">Gets the immediate parents of this shape.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/openjpa/kernel/FillStrategy.html" title="interface in org.apache.openjpa.kernel">FillStrategy</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#getStrategy--">getStrategy</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#getType--">getType</a></span>()</code>
<div class="block">Gets the type of instance populated by this shape.</div>
</td>
</tr>
<tr id="i8" 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="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#getTypes--">getTypes</a></span>()</code>
<div class="block">Gets the list of classes to compose this shape only i.e. without expanding the children's shape.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#isCompound--">isCompound</a></span>()</code>
<div class="block">Affirms if this shape can have child shapes.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#isNested--">isNested</a></span>()</code>
<div class="block">Affirms if this shape is nested within other shapes.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#isNesting--">isNesting</a></span>()</code>
<div class="block">Affirms if at least one child shape of this shape is a compound shape.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#isParent-org.apache.openjpa.kernel.ResultShape-">isParent</a></span>(<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="class in org.apache.openjpa.kernel">ResultShape</a>&lt;?&gt;&nbsp;p)</code>
<div class="block">Affirms if the given shape is a parent (or grandparent) of this shape.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#isPrimitive--">isPrimitive</a></span>()</code>
<div class="block">Affirms if this shape can not have any child shape.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#length--">length</a></span>()</code>
<div class="block">Number of arguments to populate this shape only.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>&lt;X&gt;&nbsp;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="class in org.apache.openjpa.kernel">ResultShape</a>&lt;X&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#nest-java.lang.Class-org.apache.openjpa.kernel.FillStrategy-java.lang.Class...-">nest</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;X&gt;&nbsp;cls,
<a href="../../../../org/apache/openjpa/kernel/FillStrategy.html" title="interface in org.apache.openjpa.kernel">FillStrategy</a>&nbsp;strategy,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;...&nbsp;classes)</code>
<div class="block">Creates a new shape of type X with the given class arguments and nests
the new shape within this shape.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="class in org.apache.openjpa.kernel">ResultShape</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#nest-org.apache.openjpa.kernel.ResultShape-">nest</a></span>(<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="class in org.apache.openjpa.kernel">ResultShape</a>&lt;?&gt;&nbsp;shape)</code>
<div class="block">Nest the given shape.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#pack-java.lang.Object:A-java.lang.Class:A-java.lang.String:A-">pack</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;values,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;[]&nbsp;types,
<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;aliases)</code>
<div class="block">Fill this shape and its children with the given array element values.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="class in org.apache.openjpa.kernel">ResultShape</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/kernel/ResultShape.html#setAlias-java.lang.String-">setAlias</a></span>(<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;alias)</code>&nbsp;</td>
</tr>
<tr id="i19" class="rowColor">
<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/apache/openjpa/kernel/ResultShape.html#toString--">toString</a></span>()</code>
<div class="block">Gets a human-readable representation of this shape.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="ResultShape-java.lang.Class-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ResultShape</h4>
<pre>public&nbsp;ResultShape(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;cls)</pre>
<div class="block">Construct a non-primitive shape with ASSIGN or ARRAY fill strategy.</div>
</li>
</ul>
<a name="ResultShape-java.lang.Class-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ResultShape</h4>
<pre>public&nbsp;ResultShape(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;cls,
boolean&nbsp;primitive)</pre>
<div class="block">Construct a primitive or non-primitive shape with ASSIGN or ARRAY fill strategy.
If the shape is declared as primitive then the given class can not be an array.</div>
</li>
</ul>
<a name="ResultShape-java.lang.Class-org.apache.openjpa.kernel.FillStrategy-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ResultShape</h4>
<pre>public&nbsp;ResultShape(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;cls,
<a href="../../../../org/apache/openjpa/kernel/FillStrategy.html" title="interface in org.apache.openjpa.kernel">FillStrategy</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;strategy)</pre>
<div class="block">Construct a non-primitive shape with the given fill strategy.</div>
</li>
</ul>
<a name="ResultShape-java.lang.Class-org.apache.openjpa.kernel.FillStrategy-boolean-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ResultShape</h4>
<pre>public&nbsp;ResultShape(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;cls,
<a href="../../../../org/apache/openjpa/kernel/FillStrategy.html" title="interface in org.apache.openjpa.kernel">FillStrategy</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;strategy,
boolean&nbsp;primitive)</pre>
<div class="block">Construct a shape with the given fill strategy.</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getType--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getType</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;getType()</pre>
<div class="block">Gets the type of instance populated by this shape.</div>
</li>
</ul>
<a name="getStrategy--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStrategy</h4>
<pre>public&nbsp;<a href="../../../../org/apache/openjpa/kernel/FillStrategy.html" title="interface in org.apache.openjpa.kernel">FillStrategy</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;getStrategy()</pre>
</li>
</ul>
<a name="setAlias-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAlias</h4>
<pre>public&nbsp;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="class in org.apache.openjpa.kernel">ResultShape</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;setAlias(<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;alias)</pre>
</li>
</ul>
<a name="getAlias--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAlias</h4>
<pre>public&nbsp;<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;getAlias()</pre>
</li>
</ul>
<a name="getCompositeTypes--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCompositeTypes</h4>
<pre>public&nbsp;<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="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&gt;&nbsp;getCompositeTypes()</pre>
<div class="block">Gets the list of classes to compose this shape and all its children.
For example, a shape Foo{String,Bar{int, Date}, Double} will return
{String, int, Date, Double}</div>
</li>
</ul>
<a name="getTypes--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTypes</h4>
<pre>public&nbsp;<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="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&gt;&nbsp;getTypes()</pre>
<div class="block">Gets the list of classes to compose this shape only i.e. without expanding the children's shape.
For example, a shape Foo{String,Bar{int, Date}, Double} will return {String, Bar, Double}</div>
</li>
</ul>
<a name="nest-java.lang.Class-org.apache.openjpa.kernel.FillStrategy-java.lang.Class...-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nest</h4>
<pre>public&nbsp;&lt;X&gt;&nbsp;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="class in org.apache.openjpa.kernel">ResultShape</a>&lt;X&gt;&nbsp;nest(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;X&gt;&nbsp;cls,
<a href="../../../../org/apache/openjpa/kernel/FillStrategy.html" title="interface in org.apache.openjpa.kernel">FillStrategy</a>&nbsp;strategy,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;...&nbsp;classes)</pre>
<div class="block">Creates a new shape of type X with the given class arguments and nests
the new shape within this shape.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>newly created nested shape</dd>
</dl>
</li>
</ul>
<a name="nest-org.apache.openjpa.kernel.ResultShape-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nest</h4>
<pre>public&nbsp;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="class in org.apache.openjpa.kernel">ResultShape</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;nest(<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="class in org.apache.openjpa.kernel">ResultShape</a>&lt;?&gt;&nbsp;shape)</pre>
<div class="block">Nest the given shape.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>shape</code> - The given shape can not be a parent of this shape
to prohibit recursive nesting.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this shape itself</dd>
</dl>
</li>
</ul>
<a name="add-java.lang.Class...-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>add</h4>
<pre>public&nbsp;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="class in org.apache.openjpa.kernel">ResultShape</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&gt;&nbsp;add(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;...&nbsp;classes)</pre>
<div class="block">Adds the given classes as child shapes of this shape.
The child shapes are primitive shapes.</div>
</li>
</ul>
<a name="getChildren--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getChildren</h4>
<pre>public&nbsp;<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/apache/openjpa/kernel/ResultShape.html" title="class in org.apache.openjpa.kernel">ResultShape</a>&lt;?&gt;&gt;&nbsp;getChildren()</pre>
<div class="block">Gets all the child shapes.</div>
</li>
</ul>
<a name="isCompound--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCompound</h4>
<pre>public&nbsp;boolean&nbsp;isCompound()</pre>
<div class="block">Affirms if this shape can have child shapes.</div>
</li>
</ul>
<a name="isPrimitive--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPrimitive</h4>
<pre>public&nbsp;boolean&nbsp;isPrimitive()</pre>
<div class="block">Affirms if this shape can not have any child shape.
A primitive shape uses ASSIGN strategy.</div>
</li>
</ul>
<a name="isNesting--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isNesting</h4>
<pre>public&nbsp;boolean&nbsp;isNesting()</pre>
<div class="block">Affirms if at least one child shape of this shape is a compound shape.</div>
</li>
</ul>
<a name="isNested--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isNested</h4>
<pre>public&nbsp;boolean&nbsp;isNested()</pre>
<div class="block">Affirms if this shape is nested within other shapes.</div>
</li>
</ul>
<a name="isParent-org.apache.openjpa.kernel.ResultShape-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isParent</h4>
<pre>public&nbsp;boolean&nbsp;isParent(<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="class in org.apache.openjpa.kernel">ResultShape</a>&lt;?&gt;&nbsp;p)</pre>
<div class="block">Affirms if the given shape is a parent (or grandparent) of this shape.</div>
</li>
</ul>
<a name="getParents--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getParents</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="class in org.apache.openjpa.kernel">ResultShape</a>&lt;?&gt;&gt;&nbsp;getParents()</pre>
<div class="block">Gets the immediate parents of this shape.</div>
</li>
</ul>
<a name="argLength--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>argLength</h4>
<pre>public&nbsp;int&nbsp;argLength()</pre>
<div class="block">Total number of arguments required to populate the shape and all its child shapes.</div>
</li>
</ul>
<a name="length--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>length</h4>
<pre>public&nbsp;int&nbsp;length()</pre>
<div class="block">Number of arguments to populate this shape only.</div>
</li>
</ul>
<a name="pack-java.lang.Object:A-java.lang.Class:A-java.lang.String:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>pack</h4>
<pre>public&nbsp;<a href="../../../../org/apache/openjpa/kernel/ResultShape.html" title="type parameter in ResultShape">T</a>&nbsp;pack(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;values,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;[]&nbsp;types,
<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;aliases)</pre>
<div class="block">Fill this shape and its children with the given array element values.
The parallel arrays contain the actual values, the types of these values and aliases.
The type and alias information are used for packing Map or invoking constructor.
The type can be different from what can be determined from array elements because
of boxing of primitive types.
The actual constructor argument types are sourced from types[] array.</div>
</li>
</ul>
<a name="toString--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toString</h4>
<pre>public&nbsp;<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;toString()</pre>
<div class="block">Gets a human-readable representation of this shape.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></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="class-use/ResultShape.html">Use</a></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>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/openjpa/kernel/ResultPacker.html" title="class in org.apache.openjpa.kernel"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/openjpa/kernel/ResultShapePacker.html" title="class in org.apache.openjpa.kernel"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/openjpa/kernel/ResultShape.html" target="_top">Frames</a></li>
<li><a href="ResultShape.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>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&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><a href="#constructor.detail">Constr</a>&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; 2006&#x2013;2020 <a href="http://www.apache.org">Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>