<!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>
