blob: 1eed22136fd71588a7ae34d0011eca9e7ed50bc4 [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>BaseContext (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="BaseContext (cayenne-doc: Cayenne Documentation 4.0.2 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":9,"i5":6,"i6":6,"i7":6,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":6,"i18":10,"i19":9,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":6,"i28":10,"i29":6,"i30":6,"i31":6,"i32":6,"i33":10,"i34":6,"i35":6,"i36":10,"i37":10,"i38":6,"i39":6,"i40":6,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":6};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],4:["t3","Abstract 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/BaseContext.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>Prev&nbsp;Class</li>
<li><a href="../../../org/apache/cayenne/Cayenne.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/BaseContext.html" target="_top">Frames</a></li>
<li><a href="BaseContext.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><a href="#field.summary">Field</a>&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><a href="#field.detail">Field</a>&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 BaseContext" class="title">Class BaseContext</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.BaseContext</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/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="../../../org/apache/cayenne/DataChannel.html" title="interface in org.apache.cayenne">DataChannel</a>, <a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../org/apache/cayenne/CayenneContext.html" title="class in org.apache.cayenne">CayenneContext</a>, <a href="../../../org/apache/cayenne/access/DataContext.html" title="class in org.apache.cayenne.access">DataContext</a></dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">BaseContext</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>
implements <a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></pre>
<div class="block">A common base superclass for Cayenne ObjectContext implementors.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../serialized-form.html#org.apache.cayenne.BaseContext">Serialized Form</a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../org/apache/cayenne/DataChannel.html" title="interface in org.apache.cayenne">DataChannel</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#channel">channel</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../org/apache/cayenne/map/EntityResolver.html" title="class in org.apache.cayenne.map">EntityResolver</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#entityResolver">entityResolver</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../org/apache/cayenne/util/ObjectContextGraphAction.html" title="class in org.apache.cayenne.util">ObjectContextGraphAction</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#graphAction">graphAction</a></span></code>
<div class="block">Graph action that handles property changes</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../org/apache/cayenne/cache/QueryCache.html" title="interface in org.apache.cayenne.cache">QueryCache</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#queryCache">queryCache</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static <a href="https://docs.oracle.com/javase/7/docs/api/java/lang/ThreadLocal.html?is-external=true" title="class or interface in java.lang">ThreadLocal</a>&lt;<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#threadObjectContext">threadObjectContext</a></span></code>
<div class="block">A holder of a ObjectContext bound to the current thread.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <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/BaseContext.html#userProperties">userProperties</a></span></code>
<div class="block">Stores user defined properties associated with this DataContext.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#validatingObjectsOnCommit">validatingObjectsOnCommit</a></span></code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.apache.cayenne.DataChannel">
<!-- -->
</a>
<h3>Fields inherited from interface&nbsp;org.apache.cayenne.<a href="../../../org/apache/cayenne/DataChannel.html" title="interface in org.apache.cayenne">DataChannel</a></h3>
<code><a href="../../../org/apache/cayenne/DataChannel.html#FLUSH_CASCADE_SYNC">FLUSH_CASCADE_SYNC</a>, <a href="../../../org/apache/cayenne/DataChannel.html#FLUSH_NOCASCADE_SYNC">FLUSH_NOCASCADE_SYNC</a>, <a href="../../../org/apache/cayenne/DataChannel.html#GRAPH_CHANGED_SUBJECT">GRAPH_CHANGED_SUBJECT</a>, <a href="../../../org/apache/cayenne/DataChannel.html#GRAPH_FLUSHED_SUBJECT">GRAPH_FLUSHED_SUBJECT</a>, <a href="../../../org/apache/cayenne/DataChannel.html#GRAPH_ROLLEDBACK_SUBJECT">GRAPH_ROLLEDBACK_SUBJECT</a>, <a href="../../../org/apache/cayenne/DataChannel.html#ROLLBACK_CASCADE_SYNC">ROLLBACK_CASCADE_SYNC</a></code></li>
</ul>
</li>
</ul>
<!-- ======== 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/BaseContext.html#BaseContext--">BaseContext</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="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><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>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#attachToChannel-org.apache.cayenne.DataChannel-">attachToChannel</a></span>(<a href="../../../org/apache/cayenne/DataChannel.html" title="interface in org.apache.cayenne">DataChannel</a>&nbsp;channel)</code>
<div class="block">Attaches to a provided DataChannel.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#attachToRuntime-org.apache.cayenne.di.Injector-">attachToRuntime</a></span>(<a href="../../../org/apache/cayenne/di/Injector.html" title="interface in org.apache.cayenne.di">Injector</a>&nbsp;injector)</code>
<div class="block">Attaches this context to the CayenneRuntime whose Injector is passed as
an argument to this method.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#attachToRuntimeIfNeeded--">attachToRuntimeIfNeeded</a></span>()</code>
<div class="block">Checks whether this context is attached to Cayenne runtime stack and if
not, attempts to attach itself to the runtime using Injector returned
from the call to <a href="../../../org/apache/cayenne/configuration/CayenneRuntime.html#getThreadInjector--"><code>CayenneRuntime.getThreadInjector()</code></a>.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="../../../org/apache/cayenne/ResultBatchIterator.html" title="class in org.apache.cayenne">ResultBatchIterator</a>&lt;T&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#batchIterator-org.apache.cayenne.query.Select-int-">batchIterator</a></span>(<a href="../../../org/apache/cayenne/query/Select.html" title="interface in org.apache.cayenne.query">Select</a>&lt;T&gt;&nbsp;query,
int&nbsp;size)</code>
<div class="block">Creates a ResultBatchIterator based on the provided query and batch size.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#bindThreadObjectContext-org.apache.cayenne.ObjectContext-">bindThreadObjectContext</a></span>(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context)</code>
<div class="block">Binds a ObjectContext to the current thread.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#commitChanges--">commitChanges</a></span>()</code>
<div class="block">Flushes all changes to objects in this context to the parent DataChannel,
cascading flush operation all the way through the stack, ultimately
saving data in the database.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#commitChangesToParent--">commitChangesToParent</a></span>()</code>
<div class="block">Flushes all changes to objects in this context to the parent DataChannel.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#deletedObjects--">deletedObjects</a></span>()</code>
<div class="block">Returns a collection of objects that are registered with this
ObjectContext and have a state PersistenceState.DELETED</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#deleteObject-java.lang.Object-">deleteObject</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;object)</code>
<div class="block">Schedules deletion of a persistent object.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#deleteObjects-java.util.Collection-">deleteObjects</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;&nbsp;objects)</code>
<div class="block">Schedules deletion of a collection of persistent objects.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#deleteObjects-T...-">deleteObjects</a></span>(T...&nbsp;objects)</code>
<div class="block">Schedules deletion of one or more persistent objects.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#fireDataChannelChanged-java.lang.Object-org.apache.cayenne.graph.GraphDiff-">fireDataChannelChanged</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;postedBy,
<a href="../../../org/apache/cayenne/graph/GraphDiff.html" title="interface in org.apache.cayenne.graph">GraphDiff</a>&nbsp;changes)</code>&nbsp;</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#fireDataChannelCommitted-java.lang.Object-org.apache.cayenne.graph.GraphDiff-">fireDataChannelCommitted</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;postedBy,
<a href="../../../org/apache/cayenne/graph/GraphDiff.html" title="interface in org.apache.cayenne.graph">GraphDiff</a>&nbsp;changes)</code>&nbsp;</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#fireDataChannelRolledback-java.lang.Object-org.apache.cayenne.graph.GraphDiff-">fireDataChannelRolledback</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;postedBy,
<a href="../../../org/apache/cayenne/graph/GraphDiff.html" title="interface in org.apache.cayenne.graph">GraphDiff</a>&nbsp;changes)</code>&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/cayenne/DataChannel.html" title="interface in org.apache.cayenne">DataChannel</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#getChannel--">getChannel</a></span>()</code>
<div class="block">Returns an DataChannel used by this context.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/cayenne/map/EntityResolver.html" title="class in org.apache.cayenne.map">EntityResolver</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#getEntityResolver--">getEntityResolver</a></span>()</code>
<div class="block">Returns EntityResolver that stores all mapping information accessible by
this ObjectContext.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/cayenne/event/EventManager.html" title="interface in org.apache.cayenne.event">EventManager</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#getEventManager--">getEventManager</a></span>()</code>
<div class="block">Returns EventManager associated with the ObjectStore.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../org/apache/cayenne/graph/GraphManager.html" title="interface in org.apache.cayenne.graph">GraphManager</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#getGraphManager--">getGraphManager</a></span>()</code>
<div class="block">Returns GraphManager that manages object graph associated with this
context.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/cayenne/cache/QueryCache.html" title="interface in org.apache.cayenne.cache">QueryCache</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#getQueryCache--">getQueryCache</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>static <a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#getThreadObjectContext--">getThreadObjectContext</a></span>()</code>
<div class="block">Returns the ObjectContext bound to the current thread.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>protected <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/BaseContext.html#getUserProperties--">getUserProperties</a></span>()</code>
<div class="block">Returns a map of user-defined properties associated with this
DataContext.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code><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/BaseContext.html#getUserProperty-java.lang.String-">getUserProperty</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;key)</code>
<div class="block">Returns a user-defined property previously set via 'setUserProperty'.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#injectInitialValue-java.lang.Object-">injectInitialValue</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;obj)</code>
<div class="block">If ObjEntity qualifier is set, asks it to inject initial value to an
object.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#invalidateObjects-java.util.Collection-">invalidateObjects</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;&nbsp;objects)</code>
<div class="block">Invalidates a Collection of persistent objects.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#invalidateObjects-T...-">invalidateObjects</a></span>(T...&nbsp;objects)</code>
<div class="block">Invalidates one or more persistent objects.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#isValidatingObjectsOnCommit--">isValidatingObjectsOnCommit</a></span>()</code>
<div class="block">Returns whether this ObjectContext performs object validation before
commit is executed.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#iterate-org.apache.cayenne.query.Select-org.apache.cayenne.ResultIteratorCallback-">iterate</a></span>(<a href="../../../org/apache/cayenne/query/Select.html" title="interface in org.apache.cayenne.query">Select</a>&lt;T&gt;&nbsp;query,
<a href="../../../org/apache/cayenne/ResultIteratorCallback.html" title="interface in org.apache.cayenne">ResultIteratorCallback</a>&lt;T&gt;&nbsp;callback)</code>
<div class="block">Creates a ResultIterator based on the provided query and passes it to a
callback for processing.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>abstract &lt;T&gt;&nbsp;<a href="../../../org/apache/cayenne/ResultIterator.html" title="interface in org.apache.cayenne">ResultIterator</a>&lt;T&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#iterator-org.apache.cayenne.query.Select-">iterator</a></span>(<a href="../../../org/apache/cayenne/query/Select.html" title="interface in org.apache.cayenne.query">Select</a>&lt;T&gt;&nbsp;query)</code>
<div class="block">Creates a ResultIterator based on the provided query.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>&lt;T extends <a href="../../../org/apache/cayenne/Persistent.html" title="interface in org.apache.cayenne">Persistent</a>&gt;<br>T</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#localObject-T-">localObject</a></span>(T&nbsp;objectFromAnotherContext)</code>
<div class="block">Returns a local copy of 'objectFromAnotherContext' object.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#modifiedObjects--">modifiedObjects</a></span>()</code>
<div class="block">Returns a collection of objects that are registered with this
ObjectContext and have a state PersistenceState.MODIFIED</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>abstract &lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#newObject-java.lang.Class-">newObject</a></span>(<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;persistentClass)</code>
<div class="block">Creates a new persistent object of a given class scheduled to be inserted
to the database on next commit.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#newObjects--">newObjects</a></span>()</code>
<div class="block">Returns a collection of objects that are registered with this
ObjectContext and have a state PersistenceState.NEW</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>protected abstract <a href="../../../org/apache/cayenne/graph/GraphDiff.html" title="interface in org.apache.cayenne.graph">GraphDiff</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#onContextFlush-org.apache.cayenne.ObjectContext-org.apache.cayenne.graph.GraphDiff-boolean-">onContextFlush</a></span>(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;originatingContext,
<a href="../../../org/apache/cayenne/graph/GraphDiff.html" title="interface in org.apache.cayenne.graph">GraphDiff</a>&nbsp;changes,
boolean&nbsp;cascade)</code>&nbsp;</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/cayenne/graph/GraphDiff.html" title="interface in org.apache.cayenne.graph">GraphDiff</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#onSync-org.apache.cayenne.ObjectContext-org.apache.cayenne.graph.GraphDiff-int-">onSync</a></span>(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;originatingContext,
<a href="../../../org/apache/cayenne/graph/GraphDiff.html" title="interface in org.apache.cayenne.graph">GraphDiff</a>&nbsp;changes,
int&nbsp;syncType)</code>
<div class="block">Processes synchronization request from a child ObjectContext, returning a GraphDiff
that describes changes to objects made on the receiving end as a result of
synchronization.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../org/apache/cayenne/QueryResponse.html" title="interface in org.apache.cayenne">QueryResponse</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#performGenericQuery-org.apache.cayenne.query.Query-">performGenericQuery</a></span>(<a href="../../../org/apache/cayenne/query/Query.html" title="interface in org.apache.cayenne.query">Query</a>&nbsp;query)</code>
<div class="block">Executes any kind of query providing the result in a form of
QueryResponse.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#performQuery-org.apache.cayenne.query.Query-">performQuery</a></span>(<a href="../../../org/apache/cayenne/query/Query.html" title="interface in org.apache.cayenne.query">Query</a>&nbsp;query)</code>
<div class="block">Executes a selecting query, returning a list of persistent objects or
data rows.</div>
</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#prepareForAccess-org.apache.cayenne.Persistent-java.lang.String-boolean-">prepareForAccess</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;property,
boolean&nbsp;lazyFaulting)</code>
<div class="block">A callback method that child Persistent objects are expected to call
before accessing property values.</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#propertyChanged-org.apache.cayenne.Persistent-java.lang.String-java.lang.Object-java.lang.Object-">propertyChanged</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;property,
<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;oldValue,
<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;newValue)</code>
<div class="block">A callback method that child Persistent objects are expected to call from
inside the setter after modifying a value of a persistent property,
including "simple" and "arc" properties.</div>
</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#registerNewObject-java.lang.Object-">registerNewObject</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;object)</code>
<div class="block">Registers a transient object with the context.</div>
</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#rollbackChanges--">rollbackChanges</a></span>()</code>
<div class="block">Resets all uncommitted changes made to the objects in this ObjectContext,
cascading rollback operation all the way through the stack.</div>
</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#rollbackChangesLocally--">rollbackChangesLocally</a></span>()</code>
<div class="block">Resets all uncommitted changes made to the objects in this ObjectContext.</div>
</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#select-org.apache.cayenne.query.Select-">select</a></span>(<a href="../../../org/apache/cayenne/query/Select.html" title="interface in org.apache.cayenne.query">Select</a>&lt;T&gt;&nbsp;query)</code>
<div class="block">Executes a selecting query, returning a list of persistent objects or
data rows.</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#selectFirst-org.apache.cayenne.query.Select-">selectFirst</a></span>(<a href="../../../org/apache/cayenne/query/Select.html" title="interface in org.apache.cayenne.query">Select</a>&lt;T&gt;&nbsp;query)</code>
<div class="block">Selects a single object using provided query.</div>
</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#selectOne-org.apache.cayenne.query.Select-">selectOne</a></span>(<a href="../../../org/apache/cayenne/query/Select.html" title="interface in org.apache.cayenne.query">Select</a>&lt;T&gt;&nbsp;query)</code>
<div class="block">Executes a selecting query, returning either NULL if query matched no
objects, or a single object.</div>
</td>
</tr>
<tr id="i44" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#setChannel-org.apache.cayenne.DataChannel-">setChannel</a></span>(<a href="../../../org/apache/cayenne/DataChannel.html" title="interface in org.apache.cayenne">DataChannel</a>&nbsp;channel)</code>
<div class="block">Sets a new DataChannel for this context.</div>
</td>
</tr>
<tr id="i45" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#setEntityResolver-org.apache.cayenne.map.EntityResolver-">setEntityResolver</a></span>(<a href="../../../org/apache/cayenne/map/EntityResolver.html" title="class in org.apache.cayenne.map">EntityResolver</a>&nbsp;entityResolver)</code>&nbsp;</td>
</tr>
<tr id="i46" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#setQueryCache-org.apache.cayenne.cache.QueryCache-">setQueryCache</a></span>(<a href="../../../org/apache/cayenne/cache/QueryCache.html" title="interface in org.apache.cayenne.cache">QueryCache</a>&nbsp;queryCache)</code>
<div class="block">Sets a QueryCache to be used for storing cached query results.</div>
</td>
</tr>
<tr id="i47" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#setUserProperty-java.lang.String-java.lang.Object-">setUserProperty</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;key,
<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;value)</code>
<div class="block">Sets a user-defined property.</div>
</td>
</tr>
<tr id="i48" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#setValidatingObjectsOnCommit-boolean-">setValidatingObjectsOnCommit</a></span>(boolean&nbsp;flag)</code>
<div class="block">Sets the property defining whether this ObjectContext should perform
object validation before commit is executed.</div>
</td>
</tr>
<tr id="i49" class="rowColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/cayenne/BaseContext.html#uncommittedObjects--">uncommittedObjects</a></span>()</code>
<div class="block">Returns a collection of MODIFIED, DELETED or NEW objects.</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>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.cayenne.ObjectContext">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.cayenne.<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></h3>
<code><a href="../../../org/apache/cayenne/ObjectContext.html#hasChanges--">hasChanges</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.cayenne.DataChannel">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.cayenne.<a href="../../../org/apache/cayenne/DataChannel.html" title="interface in org.apache.cayenne">DataChannel</a></h3>
<code><a href="../../../org/apache/cayenne/DataChannel.html#onQuery-org.apache.cayenne.ObjectContext-org.apache.cayenne.query.Query-">onQuery</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="threadObjectContext">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>threadObjectContext</h4>
<pre>protected static final&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/ThreadLocal.html?is-external=true" title="class or interface in java.lang">ThreadLocal</a>&lt;<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&gt; threadObjectContext</pre>
<div class="block">A holder of a ObjectContext bound to the current thread.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.0</dd>
</dl>
</li>
</ul>
<a name="channel">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>channel</h4>
<pre>protected transient&nbsp;<a href="../../../org/apache/cayenne/DataChannel.html" title="interface in org.apache.cayenne">DataChannel</a> channel</pre>
</li>
</ul>
<a name="queryCache">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>queryCache</h4>
<pre>protected transient&nbsp;<a href="../../../org/apache/cayenne/cache/QueryCache.html" title="interface in org.apache.cayenne.cache">QueryCache</a> queryCache</pre>
</li>
</ul>
<a name="entityResolver">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>entityResolver</h4>
<pre>protected transient&nbsp;<a href="../../../org/apache/cayenne/map/EntityResolver.html" title="class in org.apache.cayenne.map">EntityResolver</a> entityResolver</pre>
</li>
</ul>
<a name="validatingObjectsOnCommit">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validatingObjectsOnCommit</h4>
<pre>protected&nbsp;boolean validatingObjectsOnCommit</pre>
</li>
</ul>
<a name="graphAction">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>graphAction</h4>
<pre>protected&nbsp;<a href="../../../org/apache/cayenne/util/ObjectContextGraphAction.html" title="class in org.apache.cayenne.util">ObjectContextGraphAction</a> graphAction</pre>
<div class="block">Graph action that handles property changes</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1</dd>
</dl>
</li>
</ul>
<a name="userProperties">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>userProperties</h4>
<pre>protected volatile&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; userProperties</pre>
<div class="block">Stores user defined properties associated with this DataContext.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.0</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="BaseContext--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>BaseContext</h4>
<pre>protected&nbsp;BaseContext()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getThreadObjectContext--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getThreadObjectContext</h4>
<pre>public static&nbsp;<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;getThreadObjectContext()
throws <a href="https://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></pre>
<div class="block">Returns the ObjectContext bound to the current thread.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the ObjectContext associated with caller thread.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if there is no ObjectContext bound to the current thread.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.0</dd>
</dl>
</li>
</ul>
<a name="bindThreadObjectContext-org.apache.cayenne.ObjectContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>bindThreadObjectContext</h4>
<pre>public static&nbsp;void&nbsp;bindThreadObjectContext(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;context)</pre>
<div class="block">Binds a ObjectContext to the current thread. ObjectContext can later be
retrieved by users in the same thread by calling
<a href="../../../org/apache/cayenne/BaseContext.html#getThreadObjectContext--"><code>getThreadObjectContext()</code></a>. Using null parameter will
unbind currently bound ObjectContext.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.0</dd>
</dl>
</li>
</ul>
<a name="attachToRuntimeIfNeeded--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>attachToRuntimeIfNeeded</h4>
<pre>protected&nbsp;boolean&nbsp;attachToRuntimeIfNeeded()</pre>
<div class="block">Checks whether this context is attached to Cayenne runtime stack and if
not, attempts to attach itself to the runtime using Injector returned
from the call to <a href="../../../org/apache/cayenne/configuration/CayenneRuntime.html#getThreadInjector--"><code>CayenneRuntime.getThreadInjector()</code></a>. If thread
Injector is not available and the context is not attached, throws
CayenneRuntimeException.
<p>
This method is called internally by the context before access to
transient variables to allow the context to attach to the stack lazily
following deserialization.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the context successfully attached to the thread runtime,
false - if it was already attached.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1</dd>
</dl>
</li>
</ul>
<a name="attachToRuntime-org.apache.cayenne.di.Injector-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>attachToRuntime</h4>
<pre>protected&nbsp;void&nbsp;attachToRuntime(<a href="../../../org/apache/cayenne/di/Injector.html" title="interface in org.apache.cayenne.di">Injector</a>&nbsp;injector)</pre>
<div class="block">Attaches this context to the CayenneRuntime whose Injector is passed as
an argument to this method.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1</dd>
</dl>
</li>
</ul>
<a name="attachToChannel-org.apache.cayenne.DataChannel-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>attachToChannel</h4>
<pre>protected&nbsp;void&nbsp;attachToChannel(<a href="../../../org/apache/cayenne/DataChannel.html" title="interface in org.apache.cayenne">DataChannel</a>&nbsp;channel)</pre>
<div class="block">Attaches to a provided DataChannel.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1</dd>
</dl>
</li>
</ul>
<a name="commitChanges--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>commitChanges</h4>
<pre>public abstract&nbsp;void&nbsp;commitChanges()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#commitChanges--">ObjectContext</a></code></span></div>
<div class="block">Flushes all changes to objects in this context to the parent DataChannel,
cascading flush operation all the way through the stack, ultimately
saving data in the database.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#commitChanges--">commitChanges</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="commitChangesToParent--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>commitChangesToParent</h4>
<pre>public abstract&nbsp;void&nbsp;commitChangesToParent()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#commitChangesToParent--">ObjectContext</a></code></span></div>
<div class="block">Flushes all changes to objects in this context to the parent DataChannel.
Same as <a href="../../../org/apache/cayenne/ObjectContext.html#commitChanges--"><code>ObjectContext.commitChanges()</code></a>, but no cascading flush occurs.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#commitChangesToParent--">commitChangesToParent</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="deleteObject-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deleteObject</h4>
<pre>public&nbsp;void&nbsp;deleteObject(<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;object)
throws <a href="../../../org/apache/cayenne/DeleteDenyException.html" title="class in org.apache.cayenne">DeleteDenyException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#deleteObject-java.lang.Object-">ObjectContext</a></code></span></div>
<div class="block">Schedules deletion of a persistent object.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#deleteObject-java.lang.Object-">deleteObject</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/DeleteDenyException.html" title="class in org.apache.cayenne">DeleteDenyException</a></code> - if a <a href="../../../org/apache/cayenne/map/DeleteRule.html#DENY"><code>DeleteRule.DENY</code></a> delete
rule is applicable for object deletion.</dd>
</dl>
</li>
</ul>
<a name="deletedObjects--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deletedObjects</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;&nbsp;deletedObjects()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#deletedObjects--">ObjectContext</a></code></span></div>
<div class="block">Returns a collection of objects that are registered with this
ObjectContext and have a state PersistenceState.DELETED</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#deletedObjects--">deletedObjects</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="getChannel--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getChannel</h4>
<pre>public&nbsp;<a href="../../../org/apache/cayenne/DataChannel.html" title="interface in org.apache.cayenne">DataChannel</a>&nbsp;getChannel()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#getChannel--">ObjectContext</a></code></span></div>
<div class="block">Returns an DataChannel used by this context.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#getChannel--">getChannel</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="setChannel-org.apache.cayenne.DataChannel-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setChannel</h4>
<pre>public&nbsp;void&nbsp;setChannel(<a href="../../../org/apache/cayenne/DataChannel.html" title="interface in org.apache.cayenne">DataChannel</a>&nbsp;channel)</pre>
<div class="block">Sets a new DataChannel for this context.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1</dd>
</dl>
</li>
</ul>
<a name="getEntityResolver--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEntityResolver</h4>
<pre>public&nbsp;<a href="../../../org/apache/cayenne/map/EntityResolver.html" title="class in org.apache.cayenne.map">EntityResolver</a>&nbsp;getEntityResolver()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#getEntityResolver--">ObjectContext</a></code></span></div>
<div class="block">Returns EntityResolver that stores all mapping information accessible by
this ObjectContext.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/DataChannel.html#getEntityResolver--">getEntityResolver</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/DataChannel.html" title="interface in org.apache.cayenne">DataChannel</a></code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#getEntityResolver--">getEntityResolver</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="setEntityResolver-org.apache.cayenne.map.EntityResolver-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setEntityResolver</h4>
<pre>public&nbsp;void&nbsp;setEntityResolver(<a href="../../../org/apache/cayenne/map/EntityResolver.html" title="class in org.apache.cayenne.map">EntityResolver</a>&nbsp;entityResolver)</pre>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1</dd>
</dl>
</li>
</ul>
<a name="isValidatingObjectsOnCommit--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isValidatingObjectsOnCommit</h4>
<pre>public&nbsp;boolean&nbsp;isValidatingObjectsOnCommit()</pre>
<div class="block">Returns whether this ObjectContext performs object validation before
commit is executed.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1</dd>
</dl>
</li>
</ul>
<a name="setValidatingObjectsOnCommit-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setValidatingObjectsOnCommit</h4>
<pre>public&nbsp;void&nbsp;setValidatingObjectsOnCommit(boolean&nbsp;flag)</pre>
<div class="block">Sets the property defining whether this ObjectContext should perform
object validation before commit is executed.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1</dd>
</dl>
</li>
</ul>
<a name="localObject-org.apache.cayenne.Persistent-">
<!-- -->
</a><a name="localObject-T-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localObject</h4>
<pre>public&nbsp;&lt;T extends <a href="../../../org/apache/cayenne/Persistent.html" title="interface in org.apache.cayenne">Persistent</a>&gt;&nbsp;T&nbsp;localObject(T&nbsp;objectFromAnotherContext)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#localObject-T-">ObjectContext</a></code></span></div>
<div class="block">Returns a local copy of 'objectFromAnotherContext' object. "Local" means
that the returned object is registered in this context. If the local
object hasn't been previously cached in this context, a hollow object is
created and returned to the caller. No DB query is performed to resolve
an object.
<p>
Note that passing an object with a non-existing id, may later result in
FaultFailureException on attempt to read returned object properties.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#localObject-T-">localObject</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1</dd>
</dl>
</li>
</ul>
<a name="getGraphManager--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getGraphManager</h4>
<pre>public abstract&nbsp;<a href="../../../org/apache/cayenne/graph/GraphManager.html" title="interface in org.apache.cayenne.graph">GraphManager</a>&nbsp;getGraphManager()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#getGraphManager--">ObjectContext</a></code></span></div>
<div class="block">Returns GraphManager that manages object graph associated with this
context.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#getGraphManager--">getGraphManager</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="modifiedObjects--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>modifiedObjects</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;&nbsp;modifiedObjects()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#modifiedObjects--">ObjectContext</a></code></span></div>
<div class="block">Returns a collection of objects that are registered with this
ObjectContext and have a state PersistenceState.MODIFIED</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#modifiedObjects--">modifiedObjects</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="newObject-java.lang.Class-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newObject</h4>
<pre>public abstract&nbsp;&lt;T&gt;&nbsp;T&nbsp;newObject(<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;persistentClass)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#newObject-java.lang.Class-">ObjectContext</a></code></span></div>
<div class="block">Creates a new persistent object of a given class scheduled to be inserted
to the database on next commit.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#newObject-java.lang.Class-">newObject</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="registerNewObject-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>registerNewObject</h4>
<pre>public abstract&nbsp;void&nbsp;registerNewObject(<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;object)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#registerNewObject-java.lang.Object-">ObjectContext</a></code></span></div>
<div class="block">Registers a transient object with the context. The difference with
<a href="../../../org/apache/cayenne/ObjectContext.html#newObject-java.lang.Class-"><code>ObjectContext.newObject(Class)</code></a> is that a user creates an object herself,
before attaching it to the context, instead of relying on Cayenne to do
that.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#registerNewObject-java.lang.Object-">registerNewObject</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>object</code> - new object that needs to be made persistent.</dd>
</dl>
</li>
</ul>
<a name="newObjects--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newObjects</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;&nbsp;newObjects()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#newObjects--">ObjectContext</a></code></span></div>
<div class="block">Returns a collection of objects that are registered with this
ObjectContext and have a state PersistenceState.NEW</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#newObjects--">newObjects</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="performGenericQuery-org.apache.cayenne.query.Query-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>performGenericQuery</h4>
<pre>public abstract&nbsp;<a href="../../../org/apache/cayenne/QueryResponse.html" title="interface in org.apache.cayenne">QueryResponse</a>&nbsp;performGenericQuery(<a href="../../../org/apache/cayenne/query/Query.html" title="interface in org.apache.cayenne.query">Query</a>&nbsp;query)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#performGenericQuery-org.apache.cayenne.query.Query-">ObjectContext</a></code></span></div>
<div class="block">Executes any kind of query providing the result in a form of
QueryResponse.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#performGenericQuery-org.apache.cayenne.query.Query-">performGenericQuery</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="performQuery-org.apache.cayenne.query.Query-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>performQuery</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&nbsp;performQuery(<a href="../../../org/apache/cayenne/query/Query.html" title="interface in org.apache.cayenne.query">Query</a>&nbsp;query)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#performQuery-org.apache.cayenne.query.Query-">ObjectContext</a></code></span></div>
<div class="block">Executes a selecting query, returning a list of persistent objects or
data rows.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#performQuery-org.apache.cayenne.query.Query-">performQuery</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="select-org.apache.cayenne.query.Select-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>select</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;&nbsp;select(<a href="../../../org/apache/cayenne/query/Select.html" title="interface in org.apache.cayenne.query">Select</a>&lt;T&gt;&nbsp;query)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#select-org.apache.cayenne.query.Select-">ObjectContext</a></code></span></div>
<div class="block">Executes a selecting query, returning a list of persistent objects or
data rows.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#select-org.apache.cayenne.query.Select-">select</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
</dl>
</li>
</ul>
<a name="selectOne-org.apache.cayenne.query.Select-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>selectOne</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;T&nbsp;selectOne(<a href="../../../org/apache/cayenne/query/Select.html" title="interface in org.apache.cayenne.query">Select</a>&lt;T&gt;&nbsp;query)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#selectOne-org.apache.cayenne.query.Select-">ObjectContext</a></code></span></div>
<div class="block">Executes a selecting query, returning either NULL if query matched no
objects, or a single object. If query matches more than one object,
<a href="../../../org/apache/cayenne/CayenneRuntimeException.html" title="class in org.apache.cayenne"><code>CayenneRuntimeException</code></a> is thrown.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#selectOne-org.apache.cayenne.query.Select-">selectOne</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
</dl>
</li>
</ul>
<a name="selectFirst-org.apache.cayenne.query.Select-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>selectFirst</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;T&nbsp;selectFirst(<a href="../../../org/apache/cayenne/query/Select.html" title="interface in org.apache.cayenne.query">Select</a>&lt;T&gt;&nbsp;query)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#selectFirst-org.apache.cayenne.query.Select-">ObjectContext</a></code></span></div>
<div class="block">Selects a single object using provided query. The query itself can
match any number of objects, but will return only the first one. It
returns null if no objects were matched.
<p>
If it matched more than one object, the first object from the list is
returned. This makes 'selectFirst' different from
<a href="../../../org/apache/cayenne/ObjectContext.html#selectOne-org.apache.cayenne.query.Select-"><code>ObjectContext.selectOne(Select)</code></a>, which would throw in this situation.
'selectFirst' is useful e.g. when the query is ordered and we only want
to see the first object (e.g. "most recent news article"), etc.
<p>
Selecting the first object via "Select.selectFirst(ObjectContext)"
is more comprehensible than selecting via "ObjectContext.selectFirst(Select)",
because implementations of "Select" set fetch size limit to one.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#selectFirst-org.apache.cayenne.query.Select-">selectFirst</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
</dl>
</li>
</ul>
<a name="iterate-org.apache.cayenne.query.Select-org.apache.cayenne.ResultIteratorCallback-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>iterate</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;void&nbsp;iterate(<a href="../../../org/apache/cayenne/query/Select.html" title="interface in org.apache.cayenne.query">Select</a>&lt;T&gt;&nbsp;query,
<a href="../../../org/apache/cayenne/ResultIteratorCallback.html" title="interface in org.apache.cayenne">ResultIteratorCallback</a>&lt;T&gt;&nbsp;callback)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#iterate-org.apache.cayenne.query.Select-org.apache.cayenne.ResultIteratorCallback-">ObjectContext</a></code></span></div>
<div class="block">Creates a ResultIterator based on the provided query and passes it to a
callback for processing. The caller does not need to worry about closing
the iterator. This method takes care of it.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#iterate-org.apache.cayenne.query.Select-org.apache.cayenne.ResultIteratorCallback-">iterate</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
</dl>
</li>
</ul>
<a name="iterator-org.apache.cayenne.query.Select-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>iterator</h4>
<pre>public abstract&nbsp;&lt;T&gt;&nbsp;<a href="../../../org/apache/cayenne/ResultIterator.html" title="interface in org.apache.cayenne">ResultIterator</a>&lt;T&gt;&nbsp;iterator(<a href="../../../org/apache/cayenne/query/Select.html" title="interface in org.apache.cayenne.query">Select</a>&lt;T&gt;&nbsp;query)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#iterator-org.apache.cayenne.query.Select-">ObjectContext</a></code></span></div>
<div class="block">Creates a ResultIterator based on the provided query. It is usually
backed by an open result set and is useful for processing of large data
sets, preserving a constant memory footprint. The caller must wrap
iteration in try/finally (or try-with-resources for Java 1.7 and higher) and
close the ResultIterator explicitly.
Or use <a href="../../../org/apache/cayenne/ObjectContext.html#iterate-org.apache.cayenne.query.Select-org.apache.cayenne.ResultIteratorCallback-"><code>ObjectContext.iterate(Select, ResultIteratorCallback)</code></a> as an alternative.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#iterator-org.apache.cayenne.query.Select-">iterator</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="batchIterator-org.apache.cayenne.query.Select-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>batchIterator</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;<a href="../../../org/apache/cayenne/ResultBatchIterator.html" title="class in org.apache.cayenne">ResultBatchIterator</a>&lt;T&gt;&nbsp;batchIterator(<a href="../../../org/apache/cayenne/query/Select.html" title="interface in org.apache.cayenne.query">Select</a>&lt;T&gt;&nbsp;query,
int&nbsp;size)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#batchIterator-org.apache.cayenne.query.Select-int-">ObjectContext</a></code></span></div>
<div class="block">Creates a ResultBatchIterator based on the provided query and batch size. It is usually
backed by an open result set and is useful for processing of large data
sets, preserving a constant memory footprint. The caller must wrap
iteration in try/finally (or try-with-resources for Java 1.7 and higher) and
close the ResultBatchIterator explicitly.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#batchIterator-org.apache.cayenne.query.Select-int-">batchIterator</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="prepareForAccess-org.apache.cayenne.Persistent-java.lang.String-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>prepareForAccess</h4>
<pre>public&nbsp;void&nbsp;prepareForAccess(<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;property,
boolean&nbsp;lazyFaulting)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#prepareForAccess-org.apache.cayenne.Persistent-java.lang.String-boolean-">ObjectContext</a></code></span></div>
<div class="block">A callback method that child Persistent objects are expected to call
before accessing property values. This callback allows ObjectContext to
"inflate" unresolved objects on demand and also resolve properties that
rely on lazy faulting.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#prepareForAccess-org.apache.cayenne.Persistent-java.lang.String-boolean-">prepareForAccess</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="propertyChanged-org.apache.cayenne.Persistent-java.lang.String-java.lang.Object-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>propertyChanged</h4>
<pre>public&nbsp;void&nbsp;propertyChanged(<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;property,
<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;oldValue,
<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;newValue)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#propertyChanged-org.apache.cayenne.Persistent-java.lang.String-java.lang.Object-java.lang.Object-">ObjectContext</a></code></span></div>
<div class="block">A callback method that child Persistent objects are expected to call from
inside the setter after modifying a value of a persistent property,
including "simple" and "arc" properties.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#propertyChanged-org.apache.cayenne.Persistent-java.lang.String-java.lang.Object-java.lang.Object-">propertyChanged</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="rollbackChanges--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rollbackChanges</h4>
<pre>public abstract&nbsp;void&nbsp;rollbackChanges()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#rollbackChanges--">ObjectContext</a></code></span></div>
<div class="block">Resets all uncommitted changes made to the objects in this ObjectContext,
cascading rollback operation all the way through the stack.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#rollbackChanges--">rollbackChanges</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="rollbackChangesLocally--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rollbackChangesLocally</h4>
<pre>public abstract&nbsp;void&nbsp;rollbackChangesLocally()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#rollbackChangesLocally--">ObjectContext</a></code></span></div>
<div class="block">Resets all uncommitted changes made to the objects in this ObjectContext.
Same as <a href="../../../org/apache/cayenne/ObjectContext.html#rollbackChanges--"><code>ObjectContext.rollbackChanges()</code></a>, but rollback is local to this
context and no cascading changes undoing occurs.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#rollbackChangesLocally--">rollbackChangesLocally</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="uncommittedObjects--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>uncommittedObjects</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;&nbsp;uncommittedObjects()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#uncommittedObjects--">ObjectContext</a></code></span></div>
<div class="block">Returns a collection of MODIFIED, DELETED or NEW objects.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#uncommittedObjects--">uncommittedObjects</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="getQueryCache--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQueryCache</h4>
<pre>public&nbsp;<a href="../../../org/apache/cayenne/cache/QueryCache.html" title="interface in org.apache.cayenne.cache">QueryCache</a>&nbsp;getQueryCache()</pre>
</li>
</ul>
<a name="setQueryCache-org.apache.cayenne.cache.QueryCache-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setQueryCache</h4>
<pre>public&nbsp;void&nbsp;setQueryCache(<a href="../../../org/apache/cayenne/cache/QueryCache.html" title="interface in org.apache.cayenne.cache">QueryCache</a>&nbsp;queryCache)</pre>
<div class="block">Sets a QueryCache to be used for storing cached query results.</div>
</li>
</ul>
<a name="getEventManager--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEventManager</h4>
<pre>public&nbsp;<a href="../../../org/apache/cayenne/event/EventManager.html" title="interface in org.apache.cayenne.event">EventManager</a>&nbsp;getEventManager()</pre>
<div class="block">Returns EventManager associated with the ObjectStore.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/DataChannel.html#getEventManager--">getEventManager</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/DataChannel.html" title="interface in org.apache.cayenne">DataChannel</a></code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.2</dd>
</dl>
</li>
</ul>
<a name="onSync-org.apache.cayenne.ObjectContext-org.apache.cayenne.graph.GraphDiff-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>onSync</h4>
<pre>public&nbsp;<a href="../../../org/apache/cayenne/graph/GraphDiff.html" title="interface in org.apache.cayenne.graph">GraphDiff</a>&nbsp;onSync(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;originatingContext,
<a href="../../../org/apache/cayenne/graph/GraphDiff.html" title="interface in org.apache.cayenne.graph">GraphDiff</a>&nbsp;changes,
int&nbsp;syncType)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/DataChannel.html#onSync-org.apache.cayenne.ObjectContext-org.apache.cayenne.graph.GraphDiff-int-">DataChannel</a></code></span></div>
<div class="block">Processes synchronization request from a child ObjectContext, returning a GraphDiff
that describes changes to objects made on the receiving end as a result of
synchronization.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/DataChannel.html#onSync-org.apache.cayenne.ObjectContext-org.apache.cayenne.graph.GraphDiff-int-">onSync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/DataChannel.html" title="interface in org.apache.cayenne">DataChannel</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>originatingContext</code> - an ObjectContext that initiated the sync. Can be null.</dd>
<dd><code>changes</code> - diff from the context that initiated the sync.</dd>
<dd><code>syncType</code> - One of <a href="../../../org/apache/cayenne/DataChannel.html#FLUSH_NOCASCADE_SYNC"><code>DataChannel.FLUSH_NOCASCADE_SYNC</code></a>, <a href="../../../org/apache/cayenne/DataChannel.html#FLUSH_CASCADE_SYNC"><code>DataChannel.FLUSH_CASCADE_SYNC</code></a>,
<a href="../../../org/apache/cayenne/DataChannel.html#ROLLBACK_CASCADE_SYNC"><code>DataChannel.ROLLBACK_CASCADE_SYNC</code></a>.</dd>
</dl>
</li>
</ul>
<a name="onContextFlush-org.apache.cayenne.ObjectContext-org.apache.cayenne.graph.GraphDiff-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>onContextFlush</h4>
<pre>protected abstract&nbsp;<a href="../../../org/apache/cayenne/graph/GraphDiff.html" title="interface in org.apache.cayenne.graph">GraphDiff</a>&nbsp;onContextFlush(<a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a>&nbsp;originatingContext,
<a href="../../../org/apache/cayenne/graph/GraphDiff.html" title="interface in org.apache.cayenne.graph">GraphDiff</a>&nbsp;changes,
boolean&nbsp;cascade)</pre>
</li>
</ul>
<a name="fireDataChannelCommitted-java.lang.Object-org.apache.cayenne.graph.GraphDiff-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>fireDataChannelCommitted</h4>
<pre>protected&nbsp;void&nbsp;fireDataChannelCommitted(<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;postedBy,
<a href="../../../org/apache/cayenne/graph/GraphDiff.html" title="interface in org.apache.cayenne.graph">GraphDiff</a>&nbsp;changes)</pre>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.2</dd>
</dl>
</li>
</ul>
<a name="fireDataChannelRolledback-java.lang.Object-org.apache.cayenne.graph.GraphDiff-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>fireDataChannelRolledback</h4>
<pre>protected&nbsp;void&nbsp;fireDataChannelRolledback(<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;postedBy,
<a href="../../../org/apache/cayenne/graph/GraphDiff.html" title="interface in org.apache.cayenne.graph">GraphDiff</a>&nbsp;changes)</pre>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.2</dd>
</dl>
</li>
</ul>
<a name="fireDataChannelChanged-java.lang.Object-org.apache.cayenne.graph.GraphDiff-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>fireDataChannelChanged</h4>
<pre>protected&nbsp;void&nbsp;fireDataChannelChanged(<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;postedBy,
<a href="../../../org/apache/cayenne/graph/GraphDiff.html" title="interface in org.apache.cayenne.graph">GraphDiff</a>&nbsp;changes)</pre>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.2</dd>
</dl>
</li>
</ul>
<a name="invalidateObjects-java.util.Collection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invalidateObjects</h4>
<pre>public&nbsp;void&nbsp;invalidateObjects(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;&nbsp;objects)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#invalidateObjects-java.util.Collection-">ObjectContext</a></code></span></div>
<div class="block">Invalidates a Collection of persistent objects. This operation only
applies to the objects already committed to the database and does nothing
to the NEW objects. It would remove each object's snapshot from caches
and change object's state to HOLLOW. On the next access to this object,
the object will be refetched.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#invalidateObjects-java.util.Collection-">invalidateObjects</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
</dl>
</li>
</ul>
<a name="invalidateObjects-java.lang.Object:A-">
<!-- -->
</a><a name="invalidateObjects-T...-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invalidateObjects</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;void&nbsp;invalidateObjects(T...&nbsp;objects)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#invalidateObjects-T...-">ObjectContext</a></code></span></div>
<div class="block">Invalidates one or more persistent objects. Same as
<a href="../../../org/apache/cayenne/ObjectContext.html#invalidateObjects-java.util.Collection-"><code>ObjectContext.invalidateObjects(Collection)</code></a> only with a vararg argument list
for easier invalidation of individual objects. If no arguments are passed
to this method, it does nothing.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#invalidateObjects-T...-">invalidateObjects</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1</dd>
</dl>
</li>
</ul>
<a name="getUserProperties--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUserProperties</h4>
<pre>protected&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;getUserProperties()</pre>
<div class="block">Returns a map of user-defined properties associated with this
DataContext.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.0</dd>
</dl>
</li>
</ul>
<a name="getUserProperty-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUserProperty</h4>
<pre>public&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;getUserProperty(<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;key)</pre>
<div class="block">Returns a user-defined property previously set via 'setUserProperty'.
Note that it is a caller responsibility to synchronize access to
properties.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#getUserProperty-java.lang.String-">getUserProperty</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.0</dd>
</dl>
</li>
</ul>
<a name="setUserProperty-java.lang.String-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUserProperty</h4>
<pre>public&nbsp;void&nbsp;setUserProperty(<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;key,
<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;value)</pre>
<div class="block">Sets a user-defined property. Note that it is a caller responsibility to
synchronize access to properties.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#setUserProperty-java.lang.String-java.lang.Object-">setUserProperty</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.0</dd>
</dl>
</li>
</ul>
<a name="injectInitialValue-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>injectInitialValue</h4>
<pre>protected&nbsp;void&nbsp;injectInitialValue(<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;obj)</pre>
<div class="block">If ObjEntity qualifier is set, asks it to inject initial value to an
object. Also performs all Persistent initialization operations</div>
</li>
</ul>
<a name="deleteObjects-java.lang.Object:A-">
<!-- -->
</a><a name="deleteObjects-T...-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deleteObjects</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;void&nbsp;deleteObjects(T...&nbsp;objects)
throws <a href="../../../org/apache/cayenne/DeleteDenyException.html" title="class in org.apache.cayenne">DeleteDenyException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#deleteObjects-T...-">ObjectContext</a></code></span></div>
<div class="block">Schedules deletion of one or more persistent objects. Same as
<a href="../../../org/apache/cayenne/ObjectContext.html#deleteObjects-java.util.Collection-"><code>ObjectContext.deleteObjects(Collection)</code></a> only with a vararg argument list for
easier deletion of individual objects.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#deleteObjects-T...-">deleteObjects</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/DeleteDenyException.html" title="class in org.apache.cayenne">DeleteDenyException</a></code> - if a <a href="../../../org/apache/cayenne/map/DeleteRule.html#DENY"><code>DeleteRule.DENY</code></a> delete
rule is applicable for object deletion.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1</dd>
</dl>
</li>
</ul>
<a name="deleteObjects-java.util.Collection-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>deleteObjects</h4>
<pre>public&nbsp;void&nbsp;deleteObjects(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;&nbsp;objects)
throws <a href="../../../org/apache/cayenne/DeleteDenyException.html" title="class in org.apache.cayenne">DeleteDenyException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html#deleteObjects-java.util.Collection-">ObjectContext</a></code></span></div>
<div class="block">Schedules deletion of a collection of persistent objects.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/ObjectContext.html#deleteObjects-java.util.Collection-">deleteObjects</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/cayenne/ObjectContext.html" title="interface in org.apache.cayenne">ObjectContext</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/cayenne/DeleteDenyException.html" title="class in org.apache.cayenne">DeleteDenyException</a></code> - if a <a href="../../../org/apache/cayenne/map/DeleteRule.html#DENY"><code>DeleteRule.DENY</code></a> delete
rule is applicable for object deletion.</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/BaseContext.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>Prev&nbsp;Class</li>
<li><a href="../../../org/apache/cayenne/Cayenne.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/BaseContext.html" target="_top">Frames</a></li>
<li><a href="BaseContext.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><a href="#field.summary">Field</a>&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><a href="#field.detail">Field</a>&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>