blob: ac28556103b02d2106412c3e55f5dcc89d65ac32 [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_112) on Mon Oct 14 11:36:19 MSK 2019 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Cayenne (cayenne-doc: Cayenne Documentation 4.0.2 API)</title>
<meta name="date" content="2019-10-14">
<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="Cayenne (cayenne-doc: Cayenne Documentation 4.0.2 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9,"i11":9,"i12":9,"i13":9,"i14":9,"i15":9,"i16":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static 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/Cayenne.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/cayenne/BaseContext.html" title="class in org.apache.cayenne"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../org/apache/cayenne/CayenneContext.html" title="class in org.apache.cayenne"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?org/apache/cayenne/Cayenne.html" target="_top">Frames</a></li>
<li><a href="Cayenne.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.cayenne</div>
<h2 title="Class Cayenne" class="title">Class Cayenne</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/7/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.cayenne.Cayenne</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="typeNameLabel">Cayenne</span>
extends <a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
<div class="block">Various utils for processing persistent objects and their properties
<p>
<i>DataObjects and Primary Keys: All methods that allow to extract primary
key values or use primary keys to find objects are provided for convenience.
Still the author's belief is that integer sequential primary keys are
meaningless in the object model and are pure database artifacts. Therefore
relying heavily on direct access to PK provided via this class (or other such
Cayenne API) is not a clean design practice in many cases, and sometimes may
actually lead to security issues. </i>
</p></div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1 its predecessor was called DataObjectUtils</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="colFirst" scope="col">Modifier</th>
<th class="colLast" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#Cayenne--">Cayenne</a></span>()</code>&nbsp;</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="t1" class="tableTab"><span><a href="javascript:show(1);">Static 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>static <a href="https://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#compoundPKForObject-org.apache.cayenne.Persistent-">compoundPKForObject</a></span>(<a href="../../../org/apache/cayenne/Persistent.html" title="interface in org.apache.cayenne">Persistent</a>&nbsp;dataObject)</code>
<div class="block">Returns a primary key map for a persistent object.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>static <a href="../../../org/apache/cayenne/reflect/ClassDescriptor.html" title="interface in org.apache.cayenne.reflect">ClassDescriptor</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#getClassDescriptor-org.apache.cayenne.Persistent-">getClassDescriptor</a></span>(<a href="../../../org/apache/cayenne/Persistent.html" title="interface in org.apache.cayenne">Persistent</a>&nbsp;object)</code>
<div class="block">Returns class descriptor for the object or null if the object is not
registered with an ObjectContext or descriptor was not found.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>static <a href="../../../org/apache/cayenne/map/ObjEntity.html" title="class in org.apache.cayenne.map">ObjEntity</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#getObjEntity-org.apache.cayenne.Persistent-">getObjEntity</a></span>(<a href="../../../org/apache/cayenne/Persistent.html" title="interface in org.apache.cayenne">Persistent</a>&nbsp;p)</code>
<div class="block">Returns mapped ObjEntity for object.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>static <a href="../../../org/apache/cayenne/reflect/PropertyDescriptor.html" title="interface in org.apache.cayenne.reflect">PropertyDescriptor</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#getProperty-org.apache.cayenne.Persistent-java.lang.String-">getProperty</a></span>(<a href="../../../org/apache/cayenne/Persistent.html" title="interface in org.apache.cayenne">Persistent</a>&nbsp;object,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;properyName)</code>
<div class="block">Returns property descriptor for specified property.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#intPKForObject-org.apache.cayenne.Persistent-">intPKForObject</a></span>(<a href="../../../org/apache/cayenne/Persistent.html" title="interface in org.apache.cayenne">Persistent</a>&nbsp;dataObject)</code>
<div class="block">Returns an int primary key value for a persistent object.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>static long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#longPKForObject-org.apache.cayenne.Persistent-">longPKForObject</a></span>(<a href="../../../org/apache/cayenne/Persistent.html" title="interface in org.apache.cayenne">Persistent</a>&nbsp;dataObject)</code>
<div class="block">Returns an int primary key value for a persistent object.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/7/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/cayenne/Cayenne.html#makePath-java.lang.String...-">makePath</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;pathParts)</code>
<div class="block">Constructs a dotted path from a list of strings.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>static &lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#objectForPK-org.apache.cayenne.ObjectContext-java.lang.Class-int-">objectForPK</a></span>(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;dataObjectClass,
int&nbsp;pk)</code>
<div class="block">Returns an object matching an int primary key.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>static &lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#objectForPK-org.apache.cayenne.ObjectContext-java.lang.Class-java.util.Map-">objectForPK</a></span>(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;dataObjectClass,
<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,?&gt;&nbsp;pk)</code>
<div class="block">Returns an object matching a primary key.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>static &lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#objectForPK-org.apache.cayenne.ObjectContext-java.lang.Class-java.lang.Object-">objectForPK</a></span>(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;dataObjectClass,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;pk)</code>
<div class="block">Returns an object matching an Object primary key.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#objectForPK-org.apache.cayenne.ObjectContext-org.apache.cayenne.ObjectId-">objectForPK</a></span>(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context,
<a href="../../../org/apache/cayenne/ObjectId.html" title="class in org.apache.cayenne">ObjectId</a>&nbsp;id)</code>
<div class="block">Returns an object matching ObjectId.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#objectForPK-org.apache.cayenne.ObjectContext-java.lang.String-int-">objectForPK</a></span>(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;objEntityName,
int&nbsp;pk)</code>
<div class="block">Returns an object matching an int primary key.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#objectForPK-org.apache.cayenne.ObjectContext-java.lang.String-java.util.Map-">objectForPK</a></span>(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;objEntityName,
<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,?&gt;&nbsp;pk)</code>
<div class="block">Returns an object matching a primary key.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#objectForPK-org.apache.cayenne.ObjectContext-java.lang.String-java.lang.Object-">objectForPK</a></span>(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;objEntityName,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;pk)</code>
<div class="block">Returns an object matching an Object primary key.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#objectForQuery-org.apache.cayenne.ObjectContext-org.apache.cayenne.query.Query-">objectForQuery</a></span>(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context,
<a href="../../../org/apache/cayenne/query/Query.html" title="interface in org.apache.cayenne.query">Query</a>&nbsp;query)</code>
<div class="block">Returns an object or a DataRow that is a result of a given query.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#pkForObject-org.apache.cayenne.Persistent-">pkForObject</a></span>(<a href="../../../org/apache/cayenne/Persistent.html" title="interface in org.apache.cayenne">Persistent</a>&nbsp;dataObject)</code>
<div class="block">Returns a primary key value for a persistent object.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/Cayenne.html#readNestedProperty-java.lang.Object-java.lang.String-">readNestedProperty</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;path)</code>
<div class="block">Returns a value of the property identified by a property path.</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/7/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/7/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/7/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/7/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/7/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/7/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/7/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/7/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/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/7/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/7/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/7/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="Cayenne--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>Cayenne</h4>
<pre>protected&nbsp;Cayenne()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getObjEntity-org.apache.cayenne.Persistent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getObjEntity</h4>
<pre>public static&nbsp;<a href="../../../org/apache/cayenne/map/ObjEntity.html" title="class in org.apache.cayenne.map">ObjEntity</a>&nbsp;getObjEntity(<a href="../../../org/apache/cayenne/Persistent.html" title="interface in org.apache.cayenne">Persistent</a>&nbsp;p)</pre>
<div class="block">Returns mapped ObjEntity for object. If an object is transient or is not
mapped returns null.</div>
</li>
</ul>
<a name="getClassDescriptor-org.apache.cayenne.Persistent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getClassDescriptor</h4>
<pre>public static&nbsp;<a href="../../../org/apache/cayenne/reflect/ClassDescriptor.html" title="interface in org.apache.cayenne.reflect">ClassDescriptor</a>&nbsp;getClassDescriptor(<a href="../../../org/apache/cayenne/Persistent.html" title="interface in org.apache.cayenne">Persistent</a>&nbsp;object)</pre>
<div class="block">Returns class descriptor for the object or null if the object is not
registered with an ObjectContext or descriptor was not found.</div>
</li>
</ul>
<a name="getProperty-org.apache.cayenne.Persistent-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getProperty</h4>
<pre>public static&nbsp;<a href="../../../org/apache/cayenne/reflect/PropertyDescriptor.html" title="interface in org.apache.cayenne.reflect">PropertyDescriptor</a>&nbsp;getProperty(<a href="../../../org/apache/cayenne/Persistent.html" title="interface in org.apache.cayenne">Persistent</a>&nbsp;object,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;properyName)</pre>
<div class="block">Returns property descriptor for specified property.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>properyName</code> - path to the property</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>property descriptor, <code>null</code> if not found</dd>
</dl>
</li>
</ul>
<a name="readNestedProperty-java.lang.Object-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>readNestedProperty</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;readNestedProperty(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;path)</pre>
<div class="block">Returns a value of the property identified by a property path. Supports
reading both mapped and unmapped properties. Unmapped properties are
accessed in a manner consistent with JavaBeans specification.
<p>
Property path (or nested property) is a dot-separated path used to
traverse object relationships until the final object is found. If a null
object found while traversing path, null is returned. If a list is
encountered in the middle of the path, CayenneRuntimeException is thrown.
Unlike <a href="../../../org/apache/cayenne/DataObject.html#readPropertyDirectly-java.lang.String-"><code>DataObject.readPropertyDirectly(String)</code></a>, this method will resolve an
object if it is HOLLOW.
<p>
Examples:
</p>
<ul>
<li>Read this object property:<br>
<code>String name = (String)Cayenne.readNestedProperty(artist, "name");</code>
<br>
<br>
</li>
<li>Read an object related to this object:<br>
<code>Gallery g = (Gallery)Cayenne.readNestedProperty(paintingInfo, "toPainting.toGallery");</code>
<br>
<br>
</li>
<li>Read a property of an object related to this object: <br>
<code>String name = (String)Cayenne.readNestedProperty(painting, "toArtist.artistName");</code>
<br>
<br>
</li>
<li>Read to-many relationship list:<br>
<code>List exhibits = (List)Cayenne.readNestedProperty(painting, "toGallery.exhibitArray");</code>
<br>
<br>
</li>
<li>Read to-many relationship in the middle of the path:<br>
<code>List&lt;String&gt; names = (List&lt;String&gt;)Cayenne.readNestedProperty(artist, "paintingArray.paintingName");</code>
<br>
<br>
</li>
</ul></div>
</li>
</ul>
<a name="makePath-java.lang.String...-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>makePath</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;makePath(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;pathParts)</pre>
<div class="block">Constructs a dotted path from a list of strings. Useful for creating more
complex paths while preserving compilation safety. For example, instead
of saying:
<p>
<pre>
orderings.add(new Ordering(&quot;department.name&quot;, SortOrder.ASCENDING));
</pre>
<p>
You can use makePath() with the constants generated by Cayenne Modeler:
<p>
<pre>
orderings.add(new Ordering(Cayenne.makePath(USER.DEPARTMENT_PROPERTY, Department.NAME_PROPERTY), SortOrder.ASCENDING));
</pre>
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>pathParts</code> - The varargs list of paths to join.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string of all the paths joined by a "." (used by Cayenne in
queries and orderings).
<p></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1</dd>
</dl>
</li>
</ul>
<a name="longPKForObject-org.apache.cayenne.Persistent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>longPKForObject</h4>
<pre>public static&nbsp;long&nbsp;longPKForObject(<a href="../../../org/apache/cayenne/Persistent.html" title="interface in org.apache.cayenne">Persistent</a>&nbsp;dataObject)</pre>
<div class="block">Returns an int primary key value for a persistent object. Only works for
single column numeric primary keys. If an object is transient or has an
ObjectId that can not be converted to an int PK, an exception is thrown.</div>
</li>
</ul>
<a name="intPKForObject-org.apache.cayenne.Persistent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>intPKForObject</h4>
<pre>public static&nbsp;int&nbsp;intPKForObject(<a href="../../../org/apache/cayenne/Persistent.html" title="interface in org.apache.cayenne">Persistent</a>&nbsp;dataObject)</pre>
<div class="block">Returns an int primary key value for a persistent object. Only works for
single column numeric primary keys. If an object is transient or has an
ObjectId that can not be converted to an int PK, an exception is thrown.</div>
</li>
</ul>
<a name="pkForObject-org.apache.cayenne.Persistent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>pkForObject</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;pkForObject(<a href="../../../org/apache/cayenne/Persistent.html" title="interface in org.apache.cayenne">Persistent</a>&nbsp;dataObject)</pre>
<div class="block">Returns a primary key value for a persistent object. Only works for
single column primary keys. If an object is transient or has a compound
ObjectId, an exception is thrown.</div>
</li>
</ul>
<a name="compoundPKForObject-org.apache.cayenne.Persistent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>compoundPKForObject</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;compoundPKForObject(<a href="../../../org/apache/cayenne/Persistent.html" title="interface in org.apache.cayenne">Persistent</a>&nbsp;dataObject)</pre>
<div class="block">Returns a primary key map for a persistent object. This method is the
most generic out of all methods for primary key retrieval. It will work
for all possible types of primary keys. If an object is transient, an
exception is thrown.</div>
</li>
</ul>
<a name="objectForPK-org.apache.cayenne.ObjectContext-java.lang.Class-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>objectForPK</h4>
<pre>public static&nbsp;&lt;T&gt;&nbsp;T&nbsp;objectForPK(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;dataObjectClass,
int&nbsp;pk)</pre>
<div class="block">Returns an object matching an int primary key. If the object is mapped to
use non-integer PK or a compound PK, CayenneRuntimeException is thrown.
<p>
If this object is already cached in the ObjectStore, it is returned
without a query. Otherwise a query is built and executed against the
database.
</p></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/cayenne/Cayenne.html#objectForPK-org.apache.cayenne.ObjectContext-org.apache.cayenne.ObjectId-"><code>objectForPK(ObjectContext, ObjectId)</code></a></dd>
</dl>
</li>
</ul>
<a name="objectForPK-org.apache.cayenne.ObjectContext-java.lang.Class-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>objectForPK</h4>
<pre>public static&nbsp;&lt;T&gt;&nbsp;T&nbsp;objectForPK(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;dataObjectClass,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;pk)</pre>
<div class="block">Returns an object matching an Object primary key. If the object is mapped
to use a compound PK, CayenneRuntimeException is thrown.
<p>
If this object is already cached in the ObjectStore, it is returned
without a query. Otherwise a query is built and executed against the
database.
</p></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/cayenne/Cayenne.html#objectForPK-org.apache.cayenne.ObjectContext-org.apache.cayenne.ObjectId-"><code>objectForPK(ObjectContext, ObjectId)</code></a></dd>
</dl>
</li>
</ul>
<a name="objectForPK-org.apache.cayenne.ObjectContext-java.lang.Class-java.util.Map-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>objectForPK</h4>
<pre>public static&nbsp;&lt;T&gt;&nbsp;T&nbsp;objectForPK(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;dataObjectClass,
<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,?&gt;&nbsp;pk)</pre>
<div class="block">Returns an object matching a primary key. PK map parameter should use
database PK column names as keys.
<p>
If this object is already cached in the ObjectStore, it is returned
without a query. Otherwise a query is built and executed against the
database.
</p></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/cayenne/Cayenne.html#objectForPK-org.apache.cayenne.ObjectContext-org.apache.cayenne.ObjectId-"><code>objectForPK(ObjectContext, ObjectId)</code></a></dd>
</dl>
</li>
</ul>
<a name="objectForPK-org.apache.cayenne.ObjectContext-java.lang.String-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>objectForPK</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;objectForPK(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;objEntityName,
int&nbsp;pk)</pre>
<div class="block">Returns an object matching an int primary key. If the object is mapped to
use non-integer PK or a compound PK, CayenneRuntimeException is thrown.
<p>
If this object is already cached in the ObjectStore, it is returned
without a query. Otherwise a query is built and executed against the
database.
</p></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/cayenne/Cayenne.html#objectForPK-org.apache.cayenne.ObjectContext-org.apache.cayenne.ObjectId-"><code>objectForPK(ObjectContext, ObjectId)</code></a></dd>
</dl>
</li>
</ul>
<a name="objectForPK-org.apache.cayenne.ObjectContext-java.lang.String-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>objectForPK</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;objectForPK(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;objEntityName,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;pk)</pre>
<div class="block">Returns an object matching an Object primary key. If the object is mapped
to use a compound PK, CayenneRuntimeException is thrown.
<p>
If this object is already cached in the ObjectStore, it is returned
without a query. Otherwise a query is built and executed against the
database.
</p></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/cayenne/Cayenne.html#objectForPK-org.apache.cayenne.ObjectContext-org.apache.cayenne.ObjectId-"><code>objectForPK(ObjectContext, ObjectId)</code></a></dd>
</dl>
</li>
</ul>
<a name="objectForPK-org.apache.cayenne.ObjectContext-java.lang.String-java.util.Map-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>objectForPK</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;objectForPK(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;objEntityName,
<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,?&gt;&nbsp;pk)</pre>
<div class="block">Returns an object matching a primary key. PK map parameter should use
database PK column names as keys.
<p>
If this object is already cached in the ObjectStore, it is returned
without a query. Otherwise a query is built and executed against the
database.
</p></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/cayenne/Cayenne.html#objectForPK-org.apache.cayenne.ObjectContext-org.apache.cayenne.ObjectId-"><code>objectForPK(ObjectContext, ObjectId)</code></a></dd>
</dl>
</li>
</ul>
<a name="objectForPK-org.apache.cayenne.ObjectContext-org.apache.cayenne.ObjectId-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>objectForPK</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;objectForPK(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context,
<a href="../../../org/apache/cayenne/ObjectId.html" title="class in org.apache.cayenne">ObjectId</a>&nbsp;id)</pre>
<div class="block">Returns an object matching ObjectId. If this object is already cached in
the ObjectStore, it is returned without a query. Otherwise a query is
built and executed against the database.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A persistent object that matched the id, null if no matching
objects were found</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/CayenneRuntimeException.html" title="class in org.apache.cayenne">CayenneRuntimeException</a></code> - if more than one object matched ObjectId.</dd>
</dl>
</li>
</ul>
<a name="objectForQuery-org.apache.cayenne.ObjectContext-org.apache.cayenne.query.Query-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>objectForQuery</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;objectForQuery(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context,
<a href="../../../org/apache/cayenne/query/Query.html" title="interface in org.apache.cayenne.query">Query</a>&nbsp;query)</pre>
<div class="block">Returns an object or a DataRow that is a result of a given query. If
query returns more than one object, an exception is thrown. If query
returns no objects, null is returned.</div>
</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/Cayenne.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/cayenne/BaseContext.html" title="class in org.apache.cayenne"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../org/apache/cayenne/CayenneContext.html" title="class in org.apache.cayenne"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?org/apache/cayenne/Cayenne.html" target="_top">Frames</a></li>
<li><a href="Cayenne.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; 2001&#x2013;2019 <a href="http://cayenne.apache.org/">Apache Cayenne</a>. All rights reserved.</small></p>
</body>
</html>