<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_252) on Fri Jul 16 09:38:47 UTC 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ClassDescriptor (EclipseLink 3.0.2, API Reference)</title>
<meta name="date" content="2021-07-16">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="ClassDescriptor (EclipseLink 3.0.2, API Reference)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10,"i51":10,"i52":10,"i53":10,"i54":10,"i55":10,"i56":10,"i57":10,"i58":10,"i59":10,"i60":10,"i61":10,"i62":10,"i63":10,"i64":10,"i65":10,"i66":10,"i67":10,"i68":10,"i69":10,"i70":10,"i71":10,"i72":10,"i73":10,"i74":10,"i75":10,"i76":10,"i77":10,"i78":10,"i79":10,"i80":10,"i81":10,"i82":10,"i83":10,"i84":10,"i85":10,"i86":10,"i87":10,"i88":10,"i89":10,"i90":10,"i91":10,"i92":10,"i93":10,"i94":10,"i95":10,"i96":10,"i97":10,"i98":10,"i99":10,"i100":10,"i101":10,"i102":10,"i103":10,"i104":10,"i105":10,"i106":10,"i107":10,"i108":10,"i109":10,"i110":10,"i111":10,"i112":10,"i113":10,"i114":10,"i115":10,"i116":10,"i117":10,"i118":10,"i119":10,"i120":10,"i121":10,"i122":10,"i123":10,"i124":10,"i125":10,"i126":10,"i127":10,"i128":10,"i129":10,"i130":10,"i131":10,"i132":10,"i133":10,"i134":10,"i135":10,"i136":10,"i137":10,"i138":10,"i139":10,"i140":10,"i141":10,"i142":10,"i143":10,"i144":10,"i145":10,"i146":10,"i147":10,"i148":10,"i149":10,"i150":10,"i151":10,"i152":10,"i153":10,"i154":10,"i155":10,"i156":10,"i157":10,"i158":10,"i159":10,"i160":10,"i161":10,"i162":10,"i163":10,"i164":10,"i165":10,"i166":10,"i167":10,"i168":10,"i169":10,"i170":10,"i171":10,"i172":10,"i173":10,"i174":10,"i175":10,"i176":10,"i177":10,"i178":10,"i179":10,"i180":10,"i181":10,"i182":10,"i183":10,"i184":10,"i185":10,"i186":10,"i187":10,"i188":10,"i189":10,"i190":10,"i191":10,"i192":10,"i193":10,"i194":10,"i195":10,"i196":10,"i197":10,"i198":10,"i199":10,"i200":10,"i201":10,"i202":10,"i203":10,"i204":10,"i205":10,"i206":10,"i207":10,"i208":10,"i209":10,"i210":10,"i211":10,"i212":10,"i213":10,"i214":10,"i215":10,"i216":10,"i217":10,"i218":10,"i219":10,"i220":10,"i221":10,"i222":10,"i223":10,"i224":10,"i225":10,"i226":10,"i227":10,"i228":10,"i229":10,"i230":10,"i231":10,"i232":10,"i233":10,"i234":10,"i235":10,"i236":10,"i237":10,"i238":10,"i239":10,"i240":10,"i241":10,"i242":10,"i243":10,"i244":10,"i245":10,"i246":10,"i247":10,"i248":10,"i249":10,"i250":10,"i251":10,"i252":10,"i253":10,"i254":10,"i255":10,"i256":10,"i257":10,"i258":10,"i259":10,"i260":10,"i261":10,"i262":10,"i263":10,"i264":10,"i265":10,"i266":10,"i267":10,"i268":10,"i269":10,"i270":10,"i271":10,"i272":10,"i273":10,"i274":10,"i275":10,"i276":10,"i277":10,"i278":10,"i279":10,"i280":10,"i281":10,"i282":10,"i283":10,"i284":10,"i285":10,"i286":10,"i287":10,"i288":10,"i289":10,"i290":10,"i291":10,"i292":10,"i293":10,"i294":10,"i295":10,"i296":10,"i297":10,"i298":10,"i299":10,"i300":10,"i301":10,"i302":10,"i303":10,"i304":10,"i305":10,"i306":10,"i307":10,"i308":10,"i309":10,"i310":10,"i311":10,"i312":10,"i313":10,"i314":10,"i315":10,"i316":10,"i317":10,"i318":10,"i319":10,"i320":10,"i321":10,"i322":10,"i323":10,"i324":10,"i325":10,"i326":10,"i327":10,"i328":10,"i329":10,"i330":10,"i331":10,"i332":10,"i333":10,"i334":10,"i335":10,"i336":10,"i337":10,"i338":10,"i339":10,"i340":10,"i341":10,"i342":10,"i343":10,"i344":10,"i345":10,"i346":10,"i347":10,"i348":10,"i349":10,"i350":10,"i351":10,"i352":10,"i353":10,"i354":10,"i355":10,"i356":10,"i357":10,"i358":10,"i359":10,"i360":10,"i361":10,"i362":10,"i363":10,"i364":10,"i365":10,"i366":10,"i367":10,"i368":10,"i369":10,"i370":10,"i371":10,"i372":10,"i373":10,"i374":10,"i375":10,"i376":10,"i377":10,"i378":10,"i379":10,"i380":10,"i381":10,"i382":10,"i383":10,"i384":10,"i385":10,"i386":10,"i387":10,"i388":10,"i389":10,"i390":10,"i391":10,"i392":10,"i393":10,"i394":10,"i395":10,"i396":10,"i397":10,"i398":10,"i399":10,"i400":10,"i401":10,"i402":10,"i403":10,"i404":10,"i405":10,"i406":10,"i407":10,"i408":10,"i409":10,"i410":10,"i411":10,"i412":10,"i413":10,"i414":10,"i415":10,"i416":10,"i417":10,"i418":10,"i419":10,"i420":10,"i421":10,"i422":10,"i423":10,"i424":10,"i425":10,"i426":10,"i427":10,"i428":10,"i429":10,"i430":10,"i431":10,"i432":10,"i433":10,"i434":10,"i435":10,"i436":10,"i437":10,"i438":10,"i439":10,"i440":10,"i441":10,"i442":10,"i443":10,"i444":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage">EclipseLink 3.0.2, API Reference</div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/eclipse/persistence/descriptors/ChangedFieldsLockingPolicy.html" title="class in org.eclipse.persistence.descriptors"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/eclipse/persistence/descriptors/ClassExtractor.html" title="class in org.eclipse.persistence.descriptors"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/eclipse/persistence/descriptors/ClassDescriptor.html" target="_top">Frames</a></li>
<li><a href="ClassDescriptor.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.eclipse.persistence.descriptors</div>
<h2 title="Class ClassDescriptor" class="title">Class ClassDescriptor</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">org.eclipse.persistence.core.descriptors.CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</li>
<li>
<ul class="inheritance">
<li>org.eclipse.persistence.descriptors.ClassDescriptor</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Cloneable.html?is-external=true" title="class or interface in java.lang">Cloneable</a></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../org/eclipse/persistence/eis/EISDescriptor.html" title="class in org.eclipse.persistence.eis">EISDescriptor</a>, <a href="../../../../org/eclipse/persistence/descriptors/RelationalDescriptor.html" title="class in org.eclipse.persistence.descriptors">RelationalDescriptor</a>, <a href="../../../../org/eclipse/persistence/oxm/XMLDescriptor.html" title="class in org.eclipse.persistence.oxm">XMLDescriptor</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">ClassDescriptor</span>
extends <a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;
implements <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Cloneable.html?is-external=true" title="class or interface in java.lang">Cloneable</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a></pre>
<div class="block"><p><b>Purpose</b>:
 Abstract descriptor class for defining persistence information on a class.
 This class provides the data independent behavior and is subclassed,
 for relational, object-relational, EIS, XML, etc.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/RelationalDescriptor.html" title="class in org.eclipse.persistence.descriptors"><code>RelationalDescriptor</code></a>, 
<a href="../../../../org/eclipse/persistence/mappings/structures/ObjectRelationalDataTypeDescriptor.html" title="class in org.eclipse.persistence.mappings.structures"><code>ObjectRelationalDataTypeDescriptor</code></a>, 
<a href="../../../../org/eclipse/persistence/eis/EISDescriptor.html" title="class in org.eclipse.persistence.eis"><code>EISDescriptor</code></a>, 
<a href="../../../../org/eclipse/persistence/oxm/XMLDescriptor.html" title="class in org.eclipse.persistence.oxm"><code>XMLDescriptor</code></a>, 
<a href="../../../../serialized-form.html#org.eclipse.persistence.descriptors.ClassDescriptor">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="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/AttributeAccessor.html" title="class in org.eclipse.persistence.mappings">AttributeAccessor</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#accessorTree">accessorTree</a></span></code>
<div class="block">A list of AttributeAccessors in order of access from root to leaf to arrive at current AggregateDescriptor.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#additionalAggregateCollectionKeyFields">additionalAggregateCollectionKeyFields</a></span></code>
<div class="block">used by aggregate descriptors to hold additional fields needed when they are stored in an AggregatateCollection
  These fields are generally foreign key fields that are required in addition to the fields in the descriptor's
  mappings to uniquely identify the Aggregate</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField,org.eclipse.persistence.internal.helper.DatabaseField&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#additionalTablePrimaryKeyFields">additionalTablePrimaryKeyFields</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#additionalWritableMapKeyFields">additionalWritableMapKeyFields</a></span></code>
<div class="block">stores fields that are written by Map key mappings so they can be checked for multiple writable mappings</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#AGGREGATE">AGGREGATE</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#AGGREGATE_COLLECTION">AGGREGATE_COLLECTION</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alias">alias</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#allFields">allFields</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#allSelectionFields">allSelectionFields</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#amendmentClass">amendmentClass</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#amendmentClassName">amendmentClassName</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#amendmentMethodName">amendmentMethodName</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/descriptors/invalidation/CacheInvalidationPolicy.html" title="class in org.eclipse.persistence.descriptors.invalidation">CacheInvalidationPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#cacheInvalidationPolicy">cacheInvalidationPolicy</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/descriptors/CachePolicy.html" title="class in org.eclipse.persistence.descriptors">CachePolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#cachePolicy">cachePolicy</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#cascadedLockingInitialized">cascadedLockingInitialized</a></span></code>
<div class="block">INTERNAL: flag to indicate the initialization state of cascade locking for this descriptor</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.descriptors.CascadeLockingPolicy&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#cascadeLockingPolicies">cascadeLockingPolicies</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/descriptors/changetracking/ObjectChangePolicy.html" title="interface in org.eclipse.persistence.descriptors.changetracking">ObjectChangePolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#changePolicy">changePolicy</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/descriptors/CMPPolicy.html" title="class in org.eclipse.persistence.descriptors">CMPPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#cmpPolicy">cmpPolicy</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#constraintDependencies">constraintDependencies</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/descriptors/copying/CopyPolicy.html" title="interface in org.eclipse.persistence.descriptors.copying">CopyPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#copyPolicy">copyPolicy</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#copyPolicyClassName">copyPolicyClassName</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#defaultDeleteObjectQueryRedirector">defaultDeleteObjectQueryRedirector</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#defaultDeleteObjectQueryRedirectorClassName">defaultDeleteObjectQueryRedirectorClassName</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#defaultInsertObjectQueryRedirector">defaultInsertObjectQueryRedirector</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#defaultInsertObjectQueryRedirectorClassName">defaultInsertObjectQueryRedirectorClassName</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#defaultQueryRedirector">defaultQueryRedirector</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#defaultQueryRedirectorClassName">defaultQueryRedirectorClassName</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#defaultReadAllQueryRedirector">defaultReadAllQueryRedirector</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#defaultReadAllQueryRedirectorClassName">defaultReadAllQueryRedirectorClassName</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#defaultReadObjectQueryRedirector">defaultReadObjectQueryRedirector</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#defaultReadObjectQueryRedirectorClassName">defaultReadObjectQueryRedirectorClassName</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#defaultReportQueryRedirector">defaultReportQueryRedirector</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#defaultReportQueryRedirectorClassName">defaultReportQueryRedirectorClassName</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected org.eclipse.persistence.internal.helper.DatabaseTable</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#defaultTable">defaultTable</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#defaultUpdateObjectQueryRedirector">defaultUpdateObjectQueryRedirector</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#defaultUpdateObjectQueryRedirectorClassName">defaultUpdateObjectQueryRedirectorClassName</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/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/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#derivesIdMappings">derivesIdMappings</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#descriptorCustomizerClassName">descriptorCustomizerClassName</a></span></code>
<div class="block">JPA DescriptorCustomizer list stored here to preserve it when caching the project</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#descriptorType">descriptorType</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#DO_NOT_SEND_CHANGES">DO_NOT_SEND_CHANGES</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#ERROR">ERROR</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/descriptors/FetchGroupManager.html" title="class in org.eclipse.persistence.descriptors">FetchGroupManager</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#fetchGroupManager">fetchGroupManager</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#fields">fields</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#foreignKeyValuesForCaching">foreignKeyValuesForCaching</a></span></code>
<div class="block">Stores a set of FK fields that will be cached to later retrieve noncacheable mappings</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasMultipleTableConstraintDependecy">hasMultipleTableConstraintDependecy</a></span></code>
<div class="block">Defines if any mapping reference a field in a secondary table.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasNoncacheableMappings">hasNoncacheableMappings</a></span></code>
<div class="block">caches if this descriptor has any non cacheable mappings</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasRelationships">hasRelationships</a></span></code>
<div class="block">whether this descriptor has any relationships through its mappings, through inheritance, or through aggregates</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasSimplePrimaryKey">hasSimplePrimaryKey</a></span></code>
<div class="block">PERF: Compute and store if the primary key is simple (direct-mapped) to allow fast extraction.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/history/HistoryPolicy.html" title="class in org.eclipse.persistence.history">HistoryPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#historyPolicy">historyPolicy</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/annotations/IdValidation.html" title="enum in org.eclipse.persistence.annotations">IdValidation</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#idValidation">idValidation</a></span></code>
<div class="block">Allow zero primary key validation to be configured.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#initializationStage">initializationStage</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#INITIALIZED">INITIALIZED</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#INTERFACE">INTERFACE</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#interfaceInitializationStage">interfaceInitializationStage</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/descriptors/InterfacePolicy.html" title="class in org.eclipse.persistence.descriptors">InterfacePolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#interfacePolicy">interfacePolicy</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#INVALIDATE_CHANGED_OBJECTS">INVALIDATE_CHANGED_OBJECTS</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isCascadeOnDeleteSetOnDatabaseOnSecondaryTables">isCascadeOnDeleteSetOnDatabaseOnSecondaryTables</a></span></code>
<div class="block">Support delete cascading on the database for multiple and inheritance tables.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isNativeConnectionRequired">isNativeConnectionRequired</a></span></code>
<div class="block">Allow connection unwrapping to be configured.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#ISOLATE_CACHE_AFTER_TRANSACTION">ISOLATE_CACHE_AFTER_TRANSACTION</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#ISOLATE_CACHE_ALWAYS">ISOLATE_CACHE_ALWAYS</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#ISOLATE_FROM_CLIENT_SESSION">ISOLATE_FROM_CLIENT_SESSION</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#ISOLATE_NEW_DATA_AFTER_TRANSACTION">ISOLATE_NEW_DATA_AFTER_TRANSACTION</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#javaClass">javaClass</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#javaClassName">javaClassName</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#lockableMappings">lockableMappings</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#mappings">mappings</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#mappingsPostCalculateChanges">mappingsPostCalculateChanges</a></span></code>
<div class="block">Mappings that require postCalculateChanges method to be called</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#mappingsPostCalculateChangesOnDeleted">mappingsPostCalculateChangesOnDeleted</a></span></code>
<div class="block">Mappings that require postCalculateChangesOnDeleted method to be called</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#multipleTableForeignKeys">multipleTableForeignKeys</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#multipleTableInsertOrder">multipleTableInsertOrder</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/descriptors/MultitenantPolicy.html" title="interface in org.eclipse.persistence.descriptors">MultitenantPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#multitenantPolicy">multitenantPolicy</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#NORMAL">NORMAL</a></span></code>
<div class="block">Define valid descriptor types.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected org.eclipse.persistence.internal.descriptors.OptimisticLockingPolicy</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#optimisticLockingPolicy">optimisticLockingPolicy</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/descriptors/partitioning/PartitioningPolicy.html" title="class in org.eclipse.persistence.descriptors.partitioning">PartitioningPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#partitioningPolicy">partitioningPolicy</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#partitioningPolicyName">partitioningPolicyName</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#POST_INITIALIZED">POST_INITIALIZED</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#preDeleteMappings">preDeleteMappings</a></span></code>
<div class="block">stores a list of mappings that require preDelete as a group prior to the delete individually</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#PREINITIALIZED">PREINITIALIZED</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#primaryKeyFields">primaryKeyFields</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/annotations/IdValidation.html" title="enum in org.eclipse.persistence.annotations">IdValidation</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#primaryKeyIdValidations">primaryKeyIdValidations</a></span></code>
<div class="block">Allow zero primary key validation to be configured per field.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#properties">properties</a></span></code>
<div class="block">Additional properties may be added.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/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/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../org/eclipse/persistence/mappings/querykeys/QueryKey.html" title="class in org.eclipse.persistence.mappings.querykeys">QueryKey</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#queryKeys">queryKeys</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/descriptors/DescriptorQueryManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorQueryManager</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#queryManager">queryManager</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html" title="class in org.eclipse.persistence.descriptors">ClassDescriptor</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#referencingClasses">referencingClasses</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#returnFieldsToGenerateInsert">returnFieldsToGenerateInsert</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#returnFieldsToGenerateUpdate">returnFieldsToGenerateUpdate</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#returnFieldsToMergeInsert">returnFieldsToMergeInsert</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#returnFieldsToMergeUpdate">returnFieldsToMergeUpdate</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/descriptors/ReturningPolicy.html" title="class in org.eclipse.persistence.descriptors">ReturningPolicy</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#returningPolicies">returningPolicies</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/descriptors/ReturningPolicy.html" title="class in org.eclipse.persistence.descriptors">ReturningPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#returningPolicy">returningPolicy</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#selectionFields">selectionFields</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#SEND_NEW_OBJECTS_WITH_CHANGES">SEND_NEW_OBJECTS_WITH_CHANGES</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#SEND_OBJECT_CHANGES">SEND_OBJECT_CHANGES</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/sequencing/Sequence.html" title="class in org.eclipse.persistence.sequencing">Sequence</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#sequence">sequence</a></span></code>
<div class="block">Store the Sequence used for the descriptor.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected org.eclipse.persistence.internal.helper.DatabaseField</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#sequenceNumberField">sequenceNumberField</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#sequenceNumberName">sequenceNumberName</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/descriptors/SerializedObjectPolicy.html" title="interface in org.eclipse.persistence.descriptors">SerializedObjectPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#serializedObjectPolicy">serializedObjectPolicy</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#sessionName">sessionName</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldAcquireCascadedLocks">shouldAcquireCascadedLocks</a></span></code>
<div class="block">PERF: Used to optimize cache locking to only acquire deferred locks when required (no-indirection).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldAlwaysConformResultsInUnitOfWork">shouldAlwaysConformResultsInUnitOfWork</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldBeReadOnly">shouldBeReadOnly</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldLockForClone">shouldLockForClone</a></span></code>
<div class="block">This flag controls if a UOW should acquire locks for clone or simple clone the instance passed to registerExistingObject.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldOrderMappings">shouldOrderMappings</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldRegisterResultsInUnitOfWork">shouldRegisterResultsInUnitOfWork</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseFullChangeSetsForNewObjects">shouldUseFullChangeSetsForNewObjects</a></span></code>
<div class="block">INTERNAL: Backdoor for using changes sets for new objects.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#tables">tables</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/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/8/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/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#unconvertedProperties">unconvertedProperties</a></span></code>
<div class="block">Allow the user to defined un-converted properties which will be initialized at runtime.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#UNDEFINED_ISOLATATION">UNDEFINED_ISOLATATION</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#UNDEFINED_OBJECT_CHANGE_BEHAVIOR">UNDEFINED_OBJECT_CHANGE_BEHAVIOR</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#UNINITIALIZED">UNINITIALIZED</a></span></code>
<div class="block">The following are the [initializationStage] states the descriptor passes through during the initialization.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#USE_SESSION_CACHE_AFTER_TRANSACTION">USE_SESSION_CACHE_AFTER_TRANSACTION</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.descriptors.VirtualAttributeMethodInfo&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#virtualAttributeMethods">virtualAttributeMethods</a></span></code>
<div class="block">A list of methods that are used by virtual mappings.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#weavingUsesPropertyAccess">weavingUsesPropertyAccess</a></span></code>
<div class="block">This flag stores whether this descriptor is using Property access based on JPA semantics.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/persistence/descriptors/WrapperPolicy.html" title="interface in org.eclipse.persistence.descriptors">WrapperPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#wrapperPolicy">wrapperPolicy</a></span></code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.eclipse.persistence.core.descriptors.CoreDescriptor">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.persistence.core.descriptors.<a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a></h3>
<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#attributeGroups">attributeGroups</a>, <a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#eventManager">eventManager</a>, <a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#field">field</a>, <a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#inheritancePolicy">inheritancePolicy</a>, <a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#instantiationPolicy">instantiationPolicy</a>, <a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#objectBuilder">objectBuilder</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="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#ClassDescriptor--">ClassDescriptor</a></span>()</code>
<div class="block">PUBLIC:
 Return a new descriptor.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addAbstractQueryKey-java.lang.String-">addAbstractQueryKey</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queryKeyName)</code>
<div class="block">PUBLIC:
 This method should only be used for interface descriptors.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addCascadeLockingPolicy-org.eclipse.persistence.internal.descriptors.CascadeLockingPolicy-">addCascadeLockingPolicy</a></span>(org.eclipse.persistence.internal.descriptors.CascadeLockingPolicy&nbsp;policy)</code>
<div class="block">INTERNAL:
 Add the cascade locking policy to all children that have a relationship to this descriptor
 either by inheritance or by encapsulation/aggregation.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addConstraintDependencies-java.lang.Class-">addConstraintDependencies</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;dependencies)</code>
<div class="block">ADVANCED:
 EclipseLink automatically orders database access through the foreign key information provided in 1:1 and 1:m mappings.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addConstraintDependency-java.lang.Class-">addConstraintDependency</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;dependencies)</code>
<div class="block">ADVANCED:
 EclipseLink automatically orders database access through the foreign key information provided in 1:1 and 1:m mappings.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addDirectMapping-java.lang.String-java.lang.String-">addDirectMapping</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;attributeName,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fieldName)</code>
<div class="block">PUBLIC:
 Add a direct to field mapping to the receiver.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addDirectMapping-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">addDirectMapping</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;attributeName,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getMethodName,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;setMethodName,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fieldName)</code>
<div class="block">PUBLIC:
 Add a direct to field mapping to the receiver.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addDirectQueryKey-java.lang.String-java.lang.String-">addDirectQueryKey</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queryKeyName,
                 <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fieldName)</code>
<div class="block">PUBLIC:
 Add a query key to the descriptor.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addForeignKeyFieldForMultipleTable-org.eclipse.persistence.internal.helper.DatabaseField-org.eclipse.persistence.internal.helper.DatabaseField-">addForeignKeyFieldForMultipleTable</a></span>(org.eclipse.persistence.internal.helper.DatabaseField&nbsp;sourceForeignKeyField,
                                  org.eclipse.persistence.internal.helper.DatabaseField&nbsp;targetPrimaryKeyField)</code>
<div class="block">PUBLIC:
 This protocol can be used to associate multiple tables with foreign key
 information.</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/eclipse/persistence/descriptors/ClassDescriptor.html#addForeignKeyFieldNameForMultipleTable-java.lang.String-java.lang.String-">addForeignKeyFieldNameForMultipleTable</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;sourceForeignKeyFieldName,
                                      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;targetPrimaryKeyFieldName)</code>
<div class="block">PUBLIC:
 This protocol can be used to associate multiple tables with foreign key
 information.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addMapping-org.eclipse.persistence.mappings.DatabaseMapping-">addMapping</a></span>(<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;mapping)</code>
<div class="block">PUBLIC:
 Add a database mapping to the receiver.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addMappingsPostCalculateChanges-org.eclipse.persistence.mappings.DatabaseMapping-">addMappingsPostCalculateChanges</a></span>(<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;mapping)</code>
<div class="block">Add a mapping to the list of mappings that require postCalculateChanges method to be called.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addMappingsPostCalculateChangesOnDeleted-org.eclipse.persistence.mappings.DatabaseMapping-">addMappingsPostCalculateChangesOnDeleted</a></span>(<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;mapping)</code>
<div class="block">Add a mapping to the list of mappings that require mappingsPostCalculateChangesOnDeleted method to be called.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addPreDeleteMapping-org.eclipse.persistence.mappings.DatabaseMapping-">addPreDeleteMapping</a></span>(<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;mapping)</code>
<div class="block">INTERNAL:
 Add the mapping to be notified before deletion.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addPrimaryKeyField-org.eclipse.persistence.internal.helper.DatabaseField-">addPrimaryKeyField</a></span>(org.eclipse.persistence.internal.helper.DatabaseField&nbsp;field)</code>
<div class="block">ADVANCED:
 Specify the primary key field of the descriptors table.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addPrimaryKeyFieldName-java.lang.String-">addPrimaryKeyFieldName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fieldName)</code>
<div class="block">PUBLIC:
 Specify the primary key field of the descriptors table.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addQueryKey-org.eclipse.persistence.mappings.querykeys.QueryKey-">addQueryKey</a></span>(<a href="../../../../org/eclipse/persistence/mappings/querykeys/QueryKey.html" title="class in org.eclipse.persistence.mappings.querykeys">QueryKey</a>&nbsp;queryKey)</code>
<div class="block">PUBLIC:
 Add a query key to the descriptor.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addTable-org.eclipse.persistence.internal.helper.DatabaseTable-">addTable</a></span>(org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;table)</code>
<div class="block">PUBLIC:
 Specify the table for the class of objects the receiver describes.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addTableName-java.lang.String-">addTableName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tableName)</code>
<div class="block">PUBLIC:
 Specify the table name for the class of objects the receiver describes.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addUnconvertedProperty-java.lang.String-java.lang.String-java.lang.String-">addUnconvertedProperty</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;propertyName,
                      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;propertyValue,
                      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;propertyType)</code>
<div class="block">PUBLIC:
 Add an unconverted property (to be initialiazed at runtime)</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#adjustMultipleTableInsertOrder--">adjustMultipleTableInsertOrder</a></span>()</code>
<div class="block">INTERNAL:
 Adjust the order of the tables in the multipleTableInsertOrder Vector according to the FK
 relationship if one (or more) were previously specified.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysConformResultsInUnitOfWork--">alwaysConformResultsInUnitOfWork</a></span>()</code>
<div class="block">PUBLIC:
 Used to set the descriptor to always conform in any unit of work query.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCache--">alwaysRefreshCache</a></span>()</code>
<div class="block">PUBLIC:
 This method is the equivalent of calling <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldAlwaysRefreshCache-boolean-"><code>setShouldAlwaysRefreshCache(boolean)</code></a> with an argument of <CODE>true</CODE>:
 it configures a <CODE>ClassDescriptor</CODE> to always refresh the cache if data is received from the database by any query.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCacheOnRemote--">alwaysRefreshCacheOnRemote</a></span>()</code>
<div class="block">PUBLIC:
 This method is the equivalent of calling <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldAlwaysRefreshCacheOnRemote-boolean-"><code>setShouldAlwaysRefreshCacheOnRemote(boolean)</code></a> with an argument of <CODE>true</CODE>:
 it configures a <CODE>ClassDescriptor</CODE> to always remotely refresh the cache if data is received from the database by any
 query in a <a href="../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html" title="class in org.eclipse.persistence.sessions.remote"><code>RemoteSession</code></a>.</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/eclipse/persistence/descriptors/ClassDescriptor.html#applyAmendmentMethod--">applyAmendmentMethod</a></span>()</code>
<div class="block">ADVANCED:
 Call the descriptor amendment method.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#applyAmendmentMethod-org.eclipse.persistence.descriptors.DescriptorEvent-">applyAmendmentMethod</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEvent.html" title="class in org.eclipse.persistence.descriptors">DescriptorEvent</a>&nbsp;event)</code>
<div class="block">INTERNAL:
 Call the descriptor amendment method.</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/eclipse/persistence/descriptors/ClassDescriptor.html#arePrimaryKeyFields-java.util.Vector-">arePrimaryKeyFields</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;fields)</code>
<div class="block">INTERNAL:
 Used to determine if a foreign key references the primary key.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#assignDefaultValues-org.eclipse.persistence.internal.sessions.AbstractSession-">assignDefaultValues</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Some attributes have default values defined in Project.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/expressions/Expression.html" title="class in org.eclipse.persistence.expressions">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#buildBatchCriteriaByPK-org.eclipse.persistence.expressions.ExpressionBuilder-org.eclipse.persistence.queries.ObjectLevelReadQuery-">buildBatchCriteriaByPK</a></span>(<a href="../../../../org/eclipse/persistence/expressions/ExpressionBuilder.html" title="class in org.eclipse.persistence.expressions">ExpressionBuilder</a>&nbsp;builder,
                      <a href="../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html" title="class in org.eclipse.persistence.queries">ObjectLevelReadQuery</a>&nbsp;query)</code>
<div class="block">INTERNAL:
 Return the selection criteria used to IN batch fetching.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.databaseaccess.DatasourceCall</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#buildCallFromStatement-org.eclipse.persistence.internal.expressions.SQLStatement-org.eclipse.persistence.queries.DatabaseQuery-org.eclipse.persistence.internal.sessions.AbstractSession-">buildCallFromStatement</a></span>(org.eclipse.persistence.internal.expressions.SQLStatement&nbsp;statement,
                      <a href="../../../../org/eclipse/persistence/queries/DatabaseQuery.html" title="class in org.eclipse.persistence.queries">DatabaseQuery</a>&nbsp;query,
                      org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Return a call built from a statement.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#buildDirectValuesFromFieldValue-java.lang.Object-">buildDirectValuesFromFieldValue</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;fieldValue)</code>
<div class="block">INTERNAL:
 Extract the direct values from the specified field value.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.helper.DatabaseField</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#buildField-org.eclipse.persistence.internal.helper.DatabaseField-">buildField</a></span>(org.eclipse.persistence.internal.helper.DatabaseField&nbsp;field)</code>
<div class="block">INTERNAL:
 The table of the field is ensured to be unique from the descriptor's tables.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.helper.DatabaseField</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#buildField-org.eclipse.persistence.internal.helper.DatabaseField-org.eclipse.persistence.internal.helper.DatabaseTable-">buildField</a></span>(org.eclipse.persistence.internal.helper.DatabaseField&nbsp;field,
          org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;relationTable)</code>&nbsp;</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.helper.DatabaseField</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#buildField-java.lang.String-">buildField</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fieldName)</code>
<div class="block">INTERNAL:
 A DatabaseField is built from the given field name.</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#buildFieldValueFromDirectValues-java.util.Vector-java.lang.String-org.eclipse.persistence.internal.sessions.AbstractSession-">buildFieldValueFromDirectValues</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;directValues,
                               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;elementDataTypeName,
                               org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Build the appropriate field value for the specified
 set of direct values.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#buildFieldValueFromForeignKeys-java.util.Vector-java.lang.String-org.eclipse.persistence.internal.sessions.AbstractSession-">buildFieldValueFromForeignKeys</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;foreignKeys,
                              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;referenceDataTypeName,
                              org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Build and return the appropriate field value for the specified
 set of foreign keys (i.e.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#buildFieldValueFromNestedRow-org.eclipse.persistence.internal.sessions.AbstractRecord-org.eclipse.persistence.internal.sessions.AbstractSession-">buildFieldValueFromNestedRow</a></span>(org.eclipse.persistence.internal.sessions.AbstractRecord&nbsp;nestedRow,
                            org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Build and return the field value from the specified nested database row.</div>
</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#buildFieldValueFromNestedRows-java.util.Vector-java.lang.String-org.eclipse.persistence.internal.sessions.AbstractSession-">buildFieldValueFromNestedRows</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;nestedRows,
                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;structureName,
                             org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Build and return the appropriate field value for the specified
 set of nested rows.</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.sessions.AbstractRecord</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#buildNestedRowFromFieldValue-java.lang.Object-">buildNestedRowFromFieldValue</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;fieldValue)</code>
<div class="block">INTERNAL:
 Build and return the nested database row from the specified field value.</div>
</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#buildNestedRowsFromFieldValue-java.lang.Object-org.eclipse.persistence.internal.sessions.AbstractSession-">buildNestedRowsFromFieldValue</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;fieldValue,
                             org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Build and return the nested rows from the specified field value.</div>
</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#checkDatabase-org.eclipse.persistence.internal.sessions.AbstractSession-">checkDatabase</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">To check that tables and fields are present in database</div>
</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#checkInheritanceTreeAggregateSettings-org.eclipse.persistence.internal.sessions.AbstractSession-org.eclipse.persistence.mappings.AggregateMapping-">checkInheritanceTreeAggregateSettings</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session,
                                     <a href="../../../../org/eclipse/persistence/mappings/AggregateMapping.html" title="class in org.eclipse.persistence.mappings">AggregateMapping</a>&nbsp;mapping)</code>
<div class="block">INTERNAL:
 Verify that an aggregate descriptor's inheritance tree
 is full of aggregate descriptors.</div>
</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#clearReferencingClasses--">clearReferencingClasses</a></span>()</code>
<div class="block">INTERNAL:
 Cleans referencingClasses set.</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#clone--">clone</a></span>()</code>
<div class="block">INTERNAL:
 Clones the descriptor</div>
</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#convertClassNamesToClasses-java.lang.ClassLoader-">convertClassNamesToClasses</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html?is-external=true" title="class or interface in java.lang">ClassLoader</a>&nbsp;classLoader)</code>
<div class="block">INTERNAL:
 Convert all the class-name-based settings in this Descriptor to actual class-based
 settings.</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/eclipse/persistence/descriptors/ClassDescriptor.html#createCopyPolicy-java.lang.String-">createCopyPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;policyType)</code>
<div class="block">PUBLIC:
 Create a copy policy of the type passed in as a string.</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/eclipse/persistence/descriptors/ClassDescriptor.html#createInstantiationPolicy-java.lang.String-">createInstantiationPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;policyType)</code>
<div class="block">PUBLIC:
 Create a instantiation policy of the type passed in as a string.</div>
</td>
</tr>
<tr id="i46" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#createMultipleTableInsertOrder--">createMultipleTableInsertOrder</a></span>()</code>
<div class="block">INTERNAL:
 Create multiple table insert order.</div>
</td>
</tr>
<tr id="i47" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#createMultipleTableInsertOrderFromComparison-int:A:A-int-">createMultipleTableInsertOrderFromComparison</a></span>(int[][]&nbsp;tableComparison,
                                            int&nbsp;nStart)</code>
<div class="block">INTERNAL:
 This helper method creates multipleTableInsertOrderFromComparison using comparison matrix
 created by createTableComparison(getTables()) method call.</div>
</td>
</tr>
<tr id="i48" class="altColor">
<td class="colFirst"><code>protected int[][]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#createTableComparison-java.util.List-int-">createTableComparison</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;&nbsp;tables,
                     int&nbsp;nStart)</code>
<div class="block">INTERNAL:
 This helper method creates a matrix that contains insertion order comparison for the tables.</div>
</td>
</tr>
<tr id="i49" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#createTableOrder-int-int-int:A-int:A:A-">createTableOrder</a></span>(int&nbsp;k,
                int&nbsp;nTables,
                int[]&nbsp;tableOrder,
                int[][]&nbsp;tableComparison)</code>
<div class="block">INTERNAL:
 This helper method recursively puts indexes from 0 to nTables-1 into tableOrder according to tableComparison 2 dim array.</div>
</td>
</tr>
<tr id="i50" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#descriptorIsAggregate--">descriptorIsAggregate</a></span>()</code>
<div class="block">PUBLIC:
 Sets the descriptor to be an aggregate.</div>
</td>
</tr>
<tr id="i51" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#descriptorIsAggregateCollection--">descriptorIsAggregateCollection</a></span>()</code>
<div class="block">PUBLIC:
 Sets the descriptor to be part of an aggregate collection.</div>
</td>
</tr>
<tr id="i52" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#descriptorIsForInterface--">descriptorIsForInterface</a></span>()</code>
<div class="block">PUBLIC:
 Sets the descriptor to be for an interface.</div>
</td>
</tr>
<tr id="i53" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#descriptorIsNormal--">descriptorIsNormal</a></span>()</code>
<div class="block">PUBLIC:
 Sets the descriptor to be normal.</div>
</td>
</tr>
<tr id="i54" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#disableCacheHits--">disableCacheHits</a></span>()</code>
<div class="block">PUBLIC:
 Allow for cache hits on primary key read object queries to be disabled.</div>
</td>
</tr>
<tr id="i55" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#disableCacheHitsOnRemote--">disableCacheHitsOnRemote</a></span>()</code>
<div class="block">PUBLIC:
 Allow for remote session cache hits on primary key read object queries to be disabled.</div>
</td>
</tr>
<tr id="i56" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#dontAlwaysConformResultsInUnitOfWork--">dontAlwaysConformResultsInUnitOfWork</a></span>()</code>
<div class="block">PUBLIC:
 The descriptor is defined to not conform the results in unit of work in read query.</div>
</td>
</tr>
<tr id="i57" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#dontAlwaysRefreshCache--">dontAlwaysRefreshCache</a></span>()</code>
<div class="block">PUBLIC:
 This method is the equivalent of calling <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldAlwaysRefreshCache-boolean-"><code>setShouldAlwaysRefreshCache(boolean)</code></a> with an argument of <CODE>false</CODE>:
 it ensures that a <CODE>ClassDescriptor</CODE> is not configured to always refresh the cache if data is received from the database by any query.</div>
</td>
</tr>
<tr id="i58" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#dontAlwaysRefreshCacheOnRemote--">dontAlwaysRefreshCacheOnRemote</a></span>()</code>
<div class="block">PUBLIC:
 This method is the equivalent of calling <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldAlwaysRefreshCacheOnRemote-boolean-"><code>setShouldAlwaysRefreshCacheOnRemote(boolean)</code></a> with an argument of <CODE>false</CODE>:
 it ensures that a <CODE>ClassDescriptor</CODE> is not configured to always remotely refresh the cache if data is received from the
 database by any query in a <a href="../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html" title="class in org.eclipse.persistence.sessions.remote"><code>RemoteSession</code></a>.</div>
</td>
</tr>
<tr id="i59" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#dontDisableCacheHits--">dontDisableCacheHits</a></span>()</code>
<div class="block">PUBLIC:
 Allow for cache hits on primary key read object queries.</div>
</td>
</tr>
<tr id="i60" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#dontDisableCacheHitsOnRemote--">dontDisableCacheHitsOnRemote</a></span>()</code>
<div class="block">PUBLIC:
 Allow for remote session cache hits on primary key read object queries.</div>
</td>
</tr>
<tr id="i61" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#dontOnlyRefreshCacheIfNewerVersion--">dontOnlyRefreshCacheIfNewerVersion</a></span>()</code>
<div class="block">PUBLIC:
 This method is the equivalent of calling <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldOnlyRefreshCacheIfNewerVersion-boolean-"><code>setShouldOnlyRefreshCacheIfNewerVersion(boolean)</code></a> with an argument of <CODE>false</CODE>:
 it ensures that a <CODE>ClassDescriptor</CODE> is not configured to only refresh the cache if the data received from the database by
 a query is newer than the data in the cache (as determined by the optimistic locking field).</div>
</td>
</tr>
<tr id="i62" class="altColor">
<td class="colFirst"><code>protected org.eclipse.persistence.internal.helper.DatabaseTable</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#extractDefaultTable--">extractDefaultTable</a></span>()</code>
<div class="block">INTERNAL:
 The first table in the tables is always treated as default.</div>
</td>
</tr>
<tr id="i63" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/AttributeAccessor.html" title="class in org.eclipse.persistence.mappings">AttributeAccessor</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getAccessorTree--">getAccessorTree</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i64" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getAdditionalAggregateCollectionKeyFields--">getAdditionalAggregateCollectionKeyFields</a></span>()</code>
<div class="block">INTERNAL:
 additionalAggregateCollectionKeyFields are used by aggregate descriptors to hold additional fields needed when they are stored in an AggregatateCollection
 These fields are generally foreign key fields that are required in addition to the fields in the descriptor's
  mappings to uniquely identify the Aggregate</div>
</td>
</tr>
<tr id="i65" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField,org.eclipse.persistence.internal.helper.DatabaseField&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getAdditionalTablePrimaryKeyFields--">getAdditionalTablePrimaryKeyFields</a></span>()</code>
<div class="block">INTERNAL:
 This is used to map the primary key field names in a multiple table descriptor.</div>
</td>
</tr>
<tr id="i66" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getAdditionalWritableMapKeyFields--">getAdditionalWritableMapKeyFields</a></span>()</code>
<div class="block">INTERNAL:
 Return a list of fields that are written by map keys
 Used to determine if there is a multiple writable mappings issue</div>
</td>
</tr>
<tr id="i67" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getAlias--">getAlias</a></span>()</code>
<div class="block">PUBLIC:
 Get the alias</div>
</td>
</tr>
<tr id="i68" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getAllFields--">getAllFields</a></span>()</code>
<div class="block">INTERNAL:
 Return all the fields which include all child class fields.</div>
</td>
</tr>
<tr id="i69" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getAllSelectionFields--">getAllSelectionFields</a></span>()</code>
<div class="block">INTERNAL:
 Return all selection fields which include all child class fields.</div>
</td>
</tr>
<tr id="i70" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getAllSelectionFields-org.eclipse.persistence.queries.ObjectLevelReadQuery-">getAllSelectionFields</a></span>(<a href="../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html" title="class in org.eclipse.persistence.queries">ObjectLevelReadQuery</a>&nbsp;query)</code>
<div class="block">INTERNAL:
 Return all selection fields which include all child class fields.</div>
</td>
</tr>
<tr id="i71" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getAmendmentClass--">getAmendmentClass</a></span>()</code>
<div class="block">PUBLIC:
 Return the amendment class.</div>
</td>
</tr>
<tr id="i72" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getAmendmentClassName--">getAmendmentClassName</a></span>()</code>
<div class="block">INTERNAL:
 Return amendment class name, used by the MW.</div>
</td>
</tr>
<tr id="i73" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getAmendmentMethodName--">getAmendmentMethodName</a></span>()</code>
<div class="block">PUBLIC:
 Return the amendment method.</div>
</td>
</tr>
<tr id="i74" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getAttributeGroup-java.lang.String-">getAttributeGroup</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
<div class="block">PUBLIC:
 Returns the attribute group corresponding to the name provided.</div>
</td>
</tr>
<tr id="i75" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/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/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getAttributeGroups--">getAttributeGroups</a></span>()</code>
<div class="block">ADVANCED:
 Returns the attribute groups for this Descriptor.</div>
</td>
</tr>
<tr id="i76" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getCacheInterceptorClass--">getCacheInterceptorClass</a></span>()</code>
<div class="block">A CacheInterceptor is an adaptor that when overridden and assigned to a Descriptor all interaction
 between EclipseLink and the internal cache for that class will pass through the Interceptor.</div>
</td>
</tr>
<tr id="i77" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getCacheInterceptorClassName--">getCacheInterceptorClassName</a></span>()</code>
<div class="block">A CacheInterceptor is an adaptor that when overridden and assigned to a Descriptor all interaction
 between EclipseLink and the internal cache for that class will pass through the Interceptor.</div>
</td>
</tr>
<tr id="i78" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/invalidation/CacheInvalidationPolicy.html" title="class in org.eclipse.persistence.descriptors.invalidation">CacheInvalidationPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getCacheInvalidationPolicy--">getCacheInvalidationPolicy</a></span>()</code>
<div class="block">PUBLIC:
 Return the CacheInvalidationPolicy for this descriptor
 For uninitialized cache invalidation policies, this will return a NoExpiryCacheInvalidationPolicy</div>
</td>
</tr>
<tr id="i79" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/config/CacheIsolationType.html" title="enum in org.eclipse.persistence.config">CacheIsolationType</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getCacheIsolation--">getCacheIsolation</a></span>()</code>
<div class="block">PUBLIC:
 Controls how the Entity instances will be cached.</div>
</td>
</tr>
<tr id="i80" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/annotations/CacheKeyType.html" title="enum in org.eclipse.persistence.annotations">CacheKeyType</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getCacheKeyType--">getCacheKeyType</a></span>()</code>
<div class="block">ADVANCED:
 Return what cache key type to use to store the object in the cache.</div>
</td>
</tr>
<tr id="i81" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/CachePolicy.html" title="class in org.eclipse.persistence.descriptors">CachePolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getCachePolicy--">getCachePolicy</a></span>()</code>
<div class="block">Return the cache policy.</div>
</td>
</tr>
<tr id="i82" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getCacheSynchronizationType--">getCacheSynchronizationType</a></span>()</code>
<div class="block">PUBLIC:
 Get a value indicating the type of cache synchronization that will be used on objects of
 this type.</div>
</td>
</tr>
<tr id="i83" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.descriptors.CascadeLockingPolicy&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getCascadeLockingPolicies--">getCascadeLockingPolicies</a></span>()</code>
<div class="block">INTERNAL:</div>
</td>
</tr>
<tr id="i84" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/CMPPolicy.html" title="class in org.eclipse.persistence.descriptors">CMPPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getCMPPolicy--">getCMPPolicy</a></span>()</code>
<div class="block">ADVANCED:
 Return the cmp descriptor that holds cmp specific information.</div>
</td>
</tr>
<tr id="i85" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getConstraintDependencies--">getConstraintDependencies</a></span>()</code>
<div class="block">ADVANCED:
  automatically orders database access through the foreign key information provided in 1:1 and 1:m mappings.</div>
</td>
</tr>
<tr id="i86" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/copying/CopyPolicy.html" title="interface in org.eclipse.persistence.descriptors.copying">CopyPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getCopyPolicy--">getCopyPolicy</a></span>()</code>
<div class="block">INTERNAL:
 Returns the copy policy.</div>
</td>
</tr>
<tr id="i87" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getCopyPolicyClassName--">getCopyPolicyClassName</a></span>()</code>
<div class="block">INTERNAL:
 Returns the name of a Class that implements CopyPolicy
 Will be instantiated as a copy policy at initialization times
 using the no-args constructor</div>
</td>
</tr>
<tr id="i88" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getDefaultDeleteObjectQueryRedirector--">getDefaultDeleteObjectQueryRedirector</a></span>()</code>
<div class="block">A Default DeleteObjectQuery Redirector will be applied to any executing
 DeleteObjectQuery or DeleteAllQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i89" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/queries/FetchGroup.html" title="class in org.eclipse.persistence.queries">FetchGroup</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getDefaultFetchGroup--">getDefaultFetchGroup</a></span>()</code>
<div class="block">INTERNAL:

 Return the default fetch group on the descriptor.</div>
</td>
</tr>
<tr id="i90" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getDefaultInsertObjectQueryRedirector--">getDefaultInsertObjectQueryRedirector</a></span>()</code>
<div class="block">A Default InsertObjectQuery Redirector will be applied to any executing
 InsertObjectQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i91" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getDefaultQueryRedirector--">getDefaultQueryRedirector</a></span>()</code>
<div class="block">A Default Query Redirector will be applied to any executing object query
 that does not have a more precise default (like the default
 ReadObjectQuery Redirector) or a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i92" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getDefaultReadAllQueryRedirector--">getDefaultReadAllQueryRedirector</a></span>()</code>
<div class="block">A Default ReadAllQuery Redirector will be applied to any executing
 ReadAllQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i93" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getDefaultReadObjectQueryRedirector--">getDefaultReadObjectQueryRedirector</a></span>()</code>
<div class="block">A Default ReadObjectQuery Redirector will be applied to any executing
 ReadObjectQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i94" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getDefaultReportQueryRedirector--">getDefaultReportQueryRedirector</a></span>()</code>
<div class="block">A Default ReportQuery Redirector will be applied to any executing
 ReportQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i95" class="rowColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.helper.DatabaseTable</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getDefaultTable--">getDefaultTable</a></span>()</code>
<div class="block">INTERNAL:
 The first table in the tables is always treated as default.</div>
</td>
</tr>
<tr id="i96" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getDefaultUpdateObjectQueryRedirector--">getDefaultUpdateObjectQueryRedirector</a></span>()</code>
<div class="block">A Default UpdateObjectQuery Redirector will be applied to any executing
 UpdateObjectQuery or UpdateAllQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i97" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getDerivesIdMappinps--">getDerivesIdMappinps</a></span>()</code>
<div class="block">ADVANCED:
 Return the derives id mappings.</div>
</td>
</tr>
<tr id="i98" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getDescriptorCustomizerClassName--">getDescriptorCustomizerClassName</a></span>()</code>
<div class="block">INTERNAL:
 DescriptorCustomizer is the JPA equivalent of an amendment method.</div>
</td>
</tr>
<tr id="i99" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getDescriptorEventManager--">getDescriptorEventManager</a></span>()</code>
<div class="block">PUBLIC:
 Get the event manager for the descriptor.</div>
</td>
</tr>
<tr id="i100" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getDescriptorInheritancePolicy--">getDescriptorInheritancePolicy</a></span>()</code>
<div class="block">PUBLIC:
 The inheritance policy is used to define how a descriptor takes part in inheritance.</div>
</td>
</tr>
<tr id="i101" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/DescriptorQueryManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorQueryManager</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getDescriptorQueryManager--">getDescriptorQueryManager</a></span>()</code>
<div class="block">PUBLIC:
 Return the queryManager.</div>
</td>
</tr>
<tr id="i102" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getDescriptorType--">getDescriptorType</a></span>()</code>
<div class="block">ADVANCED:
 return the descriptor type (NORMAL by default, others include INTERFACE, AGGREGATE, AGGREGATE COLLECTION)</div>
</td>
</tr>
<tr id="i103" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getDescriptorTypeValue--">getDescriptorTypeValue</a></span>()</code>
<div class="block">INTERNAL:
 This method is explicitly used by the XML reader.</div>
</td>
</tr>
<tr id="i104" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getEventManager--">getEventManager</a></span>()</code>
<div class="block">PUBLIC:
 Get the event manager for the descriptor.</div>
</td>
</tr>
<tr id="i105" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/FetchGroupManager.html" title="class in org.eclipse.persistence.descriptors">FetchGroupManager</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getFetchGroupManager--">getFetchGroupManager</a></span>()</code>
<div class="block">PUBLIC:
 Get the fetch group manager for the descriptor.</div>
</td>
</tr>
<tr id="i106" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getFields--">getFields</a></span>()</code>
<div class="block">INTERNAL:
 Return all the fields</div>
</td>
</tr>
<tr id="i107" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getForeignKeyValuesForCaching--">getForeignKeyValuesForCaching</a></span>()</code>
<div class="block">INTERNAL:</div>
</td>
</tr>
<tr id="i108" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getFullyMergeEntity--">getFullyMergeEntity</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i109" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/history/HistoryPolicy.html" title="class in org.eclipse.persistence.history">HistoryPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getHistoryPolicy--">getHistoryPolicy</a></span>()</code>
<div class="block">PUBLIC:
 Return this descriptor's HistoryPolicy.</div>
</td>
</tr>
<tr id="i110" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getIdentityMapClass--">getIdentityMapClass</a></span>()</code>
<div class="block">INTERNAL:
 Return the class of identity map to be used by this descriptor.</div>
</td>
</tr>
<tr id="i111" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getIdentityMapSize--">getIdentityMapSize</a></span>()</code>
<div class="block">PUBLIC:
 Return the size of the identity map.</div>
</td>
</tr>
<tr id="i112" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/annotations/IdValidation.html" title="enum in org.eclipse.persistence.annotations">IdValidation</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getIdValidation--">getIdValidation</a></span>()</code>
<div class="block">ADVANCED:
 Return what types are allowed as a primary key (id).</div>
</td>
</tr>
<tr id="i113" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getInheritancePolicy--">getInheritancePolicy</a></span>()</code>
<div class="block">PUBLIC:
 The inheritance policy is used to define how a descriptor takes part in inheritance.</div>
</td>
</tr>
<tr id="i114" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getInheritancePolicyOrNull--">getInheritancePolicyOrNull</a></span>()</code>
<div class="block">INTERNAL:
 Return the inheritance policy.</div>
</td>
</tr>
<tr id="i115" class="rowColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.descriptors.InstantiationPolicy</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getInstantiationPolicy--">getInstantiationPolicy</a></span>()</code>
<div class="block">INTERNAL:
 Returns the instantiation policy.</div>
</td>
</tr>
<tr id="i116" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/InterfacePolicy.html" title="class in org.eclipse.persistence.descriptors">InterfacePolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getInterfacePolicy--">getInterfacePolicy</a></span>()</code>
<div class="block">PUBLIC:
 Returns the InterfacePolicy.</div>
</td>
</tr>
<tr id="i117" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/InterfacePolicy.html" title="class in org.eclipse.persistence.descriptors">InterfacePolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getInterfacePolicyOrNull--">getInterfacePolicyOrNull</a></span>()</code>
<div class="block">INTERNAL:
 Returns the InterfacePolicy.</div>
</td>
</tr>
<tr id="i118" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getJavaClass--">getJavaClass</a></span>()</code>
<div class="block">PUBLIC:
 Return the java class.</div>
</td>
</tr>
<tr id="i119" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getJavaClassName--">getJavaClassName</a></span>()</code>
<div class="block">Return the class name, used by the MW.</div>
</td>
</tr>
<tr id="i120" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getLockableMappings--">getLockableMappings</a></span>()</code>
<div class="block">INTERNAL:
 Returns a reference to the mappings that must be traverse when locking</div>
</td>
</tr>
<tr id="i121" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getMappingForAttributeName-java.lang.String-">getMappingForAttributeName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;attributeName)</code>
<div class="block">PUBLIC:
 Returns the mapping associated with a given attribute name.</div>
</td>
</tr>
<tr id="i122" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getMappings--">getMappings</a></span>()</code>
<div class="block">PUBLIC:
 Returns mappings</div>
</td>
</tr>
<tr id="i123" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getMappingsPostCalculateChanges--">getMappingsPostCalculateChanges</a></span>()</code>
<div class="block">Mappings that require postCalculateChanges method to be called</div>
</td>
</tr>
<tr id="i124" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getMappingsPostCalculateChangesOnDeleted--">getMappingsPostCalculateChangesOnDeleted</a></span>()</code>
<div class="block">Mappings that require mappingsPostCalculateChangesOnDeleted method to be called</div>
</td>
</tr>
<tr id="i125" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getMultipleTableForeignKeyAssociations--">getMultipleTableForeignKeyAssociations</a></span>()</code>
<div class="block">INTERNAL:
 Returns the foreign key relationships used for multiple tables which were specified by the user.</div>
</td>
</tr>
<tr id="i126" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getMultipleTableForeignKeys--">getMultipleTableForeignKeys</a></span>()</code>
<div class="block">INTERNAL:
 Returns the foreign key relationships used for multiple tables which were specified by the user.</div>
</td>
</tr>
<tr id="i127" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getMultipleTableInsertOrder--">getMultipleTableInsertOrder</a></span>()</code>
<div class="block">INTERNAL:
 Returns the List of DatabaseTables in the order which INSERTS should take place.</div>
</td>
</tr>
<tr id="i128" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getMultipleTablePrimaryKeyAssociations--">getMultipleTablePrimaryKeyAssociations</a></span>()</code>
<div class="block">INTERNAL:
 Returns the foreign key relationships used for multiple tables which were specified by the user.</div>
</td>
</tr>
<tr id="i129" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/MultitenantPolicy.html" title="interface in org.eclipse.persistence.descriptors">MultitenantPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getMultitenantPolicy--">getMultitenantPolicy</a></span>()</code>
<div class="block">INTERNAL:
 Retun the multitenant policy</div>
</td>
</tr>
<tr id="i130" class="altColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.descriptors.ObjectBuilder</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getObjectBuilder--">getObjectBuilder</a></span>()</code>
<div class="block">INTERNAL:
 Return the object builder</div>
</td>
</tr>
<tr id="i131" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/changetracking/ObjectChangePolicy.html" title="interface in org.eclipse.persistence.descriptors.changetracking">ObjectChangePolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getObjectChangePolicy--">getObjectChangePolicy</a></span>()</code>
<div class="block">PUBLIC:
 Return this objects ObjectChangePolicy.</div>
</td>
</tr>
<tr id="i132" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/changetracking/ObjectChangePolicy.html" title="interface in org.eclipse.persistence.descriptors.changetracking">ObjectChangePolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getObjectChangePolicyInternal--">getObjectChangePolicyInternal</a></span>()</code>
<div class="block">INTERNAL:
 Return this objects ObjectChangePolicy and do not lazy initialize</div>
</td>
</tr>
<tr id="i133" class="rowColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.descriptors.OptimisticLockingPolicy</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getOptimisticLockingPolicy--">getOptimisticLockingPolicy</a></span>()</code>
<div class="block">PUBLIC:
 Returns the OptimisticLockingPolicy.</div>
</td>
</tr>
<tr id="i134" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/partitioning/PartitioningPolicy.html" title="class in org.eclipse.persistence.descriptors.partitioning">PartitioningPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getPartitioningPolicy--">getPartitioningPolicy</a></span>()</code>
<div class="block">PUBLIC:
 Return the descriptor's partitioning policy.</div>
</td>
</tr>
<tr id="i135" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getPartitioningPolicyName--">getPartitioningPolicyName</a></span>()</code>
<div class="block">PUBLIC:
 Return the name of the descriptor's partitioning policy.</div>
</td>
</tr>
<tr id="i136" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getPreDeleteMappings--">getPreDeleteMappings</a></span>()</code>
<div class="block">INTERNAL:
 Set of mappings that require early delete behavior.</div>
</td>
</tr>
<tr id="i137" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getPrimaryKeyFieldNames--">getPrimaryKeyFieldNames</a></span>()</code>
<div class="block">PUBLIC:
 Return the names of all the primary keys.</div>
</td>
</tr>
<tr id="i138" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getPrimaryKeyFields--">getPrimaryKeyFields</a></span>()</code>
<div class="block">INTERNAL:
 Return all the primary key fields</div>
</td>
</tr>
<tr id="i139" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/annotations/IdValidation.html" title="enum in org.eclipse.persistence.annotations">IdValidation</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getPrimaryKeyIdValidations--">getPrimaryKeyIdValidations</a></span>()</code>
<div class="block">ADVANCED:
 Return what types are allowed in each primary key field (id).</div>
</td>
</tr>
<tr id="i140" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getProperties--">getProperties</a></span>()</code>
<div class="block">PUBLIC:
 Returns the user defined properties.</div>
</td>
</tr>
<tr id="i141" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getProperty-java.lang.String-">getProperty</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
<div class="block">PUBLIC:
 Returns the descriptor property associated the given String.</div>
</td>
</tr>
<tr id="i142" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/mappings/querykeys/QueryKey.html" title="class in org.eclipse.persistence.mappings.querykeys">QueryKey</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getQueryKeyNamed-java.lang.String-">getQueryKeyNamed</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queryKeyName)</code>
<div class="block">INTERNAL:
 Return the query key with the specified name</div>
</td>
</tr>
<tr id="i143" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/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/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../org/eclipse/persistence/mappings/querykeys/QueryKey.html" title="class in org.eclipse.persistence.mappings.querykeys">QueryKey</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getQueryKeys--">getQueryKeys</a></span>()</code>
<div class="block">PUBLIC:
 Return the query keys.</div>
</td>
</tr>
<tr id="i144" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/DescriptorQueryManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorQueryManager</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getQueryManager--">getQueryManager</a></span>()</code>
<div class="block">PUBLIC:
 Return the queryManager.</div>
</td>
</tr>
<tr id="i145" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getRemoteIdentityMapClass--">getRemoteIdentityMapClass</a></span>()</code>
<div class="block">INTERNAL:
 Return the class of identity map to be used by this descriptor.</div>
</td>
</tr>
<tr id="i146" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getRemoteIdentityMapSize--">getRemoteIdentityMapSize</a></span>()</code>
<div class="block">PUBLIC:
 Return the size of the remote identity map.</div>
</td>
</tr>
<tr id="i147" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getReturnFieldsToGenerateInsert--">getReturnFieldsToGenerateInsert</a></span>()</code>
<div class="block">INTERNAL:
 Return fields used to build insert statement.</div>
</td>
</tr>
<tr id="i148" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getReturnFieldsToGenerateUpdate--">getReturnFieldsToGenerateUpdate</a></span>()</code>
<div class="block">INTERNAL:
 Return fields used to build update statement.</div>
</td>
</tr>
<tr id="i149" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getReturnFieldsToMergeInsert--">getReturnFieldsToMergeInsert</a></span>()</code>
<div class="block">INTERNAL:
 Return fields used in to map into entity for insert.</div>
</td>
</tr>
<tr id="i150" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getReturnFieldsToMergeUpdate--">getReturnFieldsToMergeUpdate</a></span>()</code>
<div class="block">INTERNAL:
 Return fields used in to map into entity for update.</div>
</td>
</tr>
<tr id="i151" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/descriptors/ReturningPolicy.html" title="class in org.eclipse.persistence.descriptors">ReturningPolicy</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getReturningPolicies--">getReturningPolicies</a></span>()</code>
<div class="block">PUBLIC:
 Return returning policy from current descriptor and from mappings</div>
</td>
</tr>
<tr id="i152" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/ReturningPolicy.html" title="class in org.eclipse.persistence.descriptors">ReturningPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getReturningPolicy--">getReturningPolicy</a></span>()</code>
<div class="block">PUBLIC:
 Return returning policy.</div>
</td>
</tr>
<tr id="i153" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html" title="class in org.eclipse.persistence.descriptors">ClassDescriptor</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getRootDescriptor--">getRootDescriptor</a></span>()</code>
<div class="block">PUBLIC:
 This method returns the root descriptor for for this descriptor's class heirarchy.</div>
</td>
</tr>
<tr id="i154" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getSelectionFields--">getSelectionFields</a></span>()</code>
<div class="block">INTERNAL:
 Return all selection fields</div>
</td>
</tr>
<tr id="i155" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getSelectionFields-org.eclipse.persistence.queries.ObjectLevelReadQuery-">getSelectionFields</a></span>(<a href="../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html" title="class in org.eclipse.persistence.queries">ObjectLevelReadQuery</a>&nbsp;query)</code>
<div class="block">INTERNAL:
 Return all selection fields</div>
</td>
</tr>
<tr id="i156" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/sequencing/Sequence.html" title="class in org.eclipse.persistence.sequencing">Sequence</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getSequence--">getSequence</a></span>()</code>
<div class="block">Return the descriptor's sequence.</div>
</td>
</tr>
<tr id="i157" class="rowColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.helper.DatabaseField</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getSequenceNumberField--">getSequenceNumberField</a></span>()</code>
<div class="block">INTERNAL:
 Get sequence number field</div>
</td>
</tr>
<tr id="i158" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getSequenceNumberFieldName--">getSequenceNumberFieldName</a></span>()</code>
<div class="block">PUBLIC:
 Get sequence number field name</div>
</td>
</tr>
<tr id="i159" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getSequenceNumberName--">getSequenceNumberName</a></span>()</code>
<div class="block">PUBLIC:
 Get sequence number name</div>
</td>
</tr>
<tr id="i160" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/SerializedObjectPolicy.html" title="interface in org.eclipse.persistence.descriptors">SerializedObjectPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getSerializedObjectPolicy--">getSerializedObjectPolicy</a></span>()</code>
<div class="block">INTERNAL:</div>
</td>
</tr>
<tr id="i161" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getSessionName--">getSessionName</a></span>()</code>
<div class="block">INTERNAL:
 Return the name of the session local to this descriptor.</div>
</td>
</tr>
<tr id="i162" class="altColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.helper.DatabaseTable</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getTable-java.lang.String-">getTable</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tableName)</code>
<div class="block">INTERNAL:
 Checks if table name exists with the current descriptor or not.</div>
</td>
</tr>
<tr id="i163" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getTableName--">getTableName</a></span>()</code>
<div class="block">PUBLIC:
 Return the name of the descriptor's first table.</div>
</td>
</tr>
<tr id="i164" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getTableNames--">getTableNames</a></span>()</code>
<div class="block">PUBLIC:
 Return the table names.</div>
</td>
</tr>
<tr id="i165" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/TablePerClassPolicy.html" title="class in org.eclipse.persistence.descriptors">TablePerClassPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getTablePerClassPolicy--">getTablePerClassPolicy</a></span>()</code>
<div class="block">PUBLIC:
 Returns the TablePerClassPolicy.</div>
</td>
</tr>
<tr id="i166" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getTables--">getTables</a></span>()</code>
<div class="block">INTERNAL:
 Return all the tables.</div>
</td>
</tr>
<tr id="i167" class="rowColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.helper.DatabaseField</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getTypedField-org.eclipse.persistence.internal.helper.DatabaseField-">getTypedField</a></span>(org.eclipse.persistence.internal.helper.DatabaseField&nbsp;field)</code>
<div class="block">INTERNAL:
 searches first descriptor than its ReturningPolicy for an equal field</div>
</td>
</tr>
<tr id="i168" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/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/8/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/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getUnconvertedProperties--">getUnconvertedProperties</a></span>()</code>
<div class="block">INTERNAL:
 Used to store un-converted properties, which are subsequenctly converted
 at runtime (through the convertClassNamesToClasses method.</div>
</td>
</tr>
<tr id="i169" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getUnitOfWorkCacheIsolationLevel--">getUnitOfWorkCacheIsolationLevel</a></span>()</code>
<div class="block">ADVANCED:
 Return the unit of work cache isolation setting.</div>
</td>
</tr>
<tr id="i170" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.descriptors.VirtualAttributeMethodInfo&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getVirtualAttributeMethods--">getVirtualAttributeMethods</a></span>()</code>
<div class="block">INTERNAL:
 Return the list of virtual methods sets for this Entity.</div>
</td>
</tr>
<tr id="i171" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/descriptors/WrapperPolicy.html" title="interface in org.eclipse.persistence.descriptors">WrapperPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getWrapperPolicy--">getWrapperPolicy</a></span>()</code>
<div class="block">ADVANCED:
 Return the WrapperPolicy for this descriptor.</div>
</td>
</tr>
<tr id="i172" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasCascadeLockingPolicies--">hasCascadeLockingPolicies</a></span>()</code>
<div class="block">INTERNAL:</div>
</td>
</tr>
<tr id="i173" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasCMPPolicy--">hasCMPPolicy</a></span>()</code>
<div class="block">INTERNAL:
 Return if the descriptor has a CMP policy.</div>
</td>
</tr>
<tr id="i174" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasDependencyOnParts--">hasDependencyOnParts</a></span>()</code>
<div class="block">INTERNAL:
 Checks if the class has any private owned parts or other dependencies, (i.e.</div>
</td>
</tr>
<tr id="i175" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasDerivedId--">hasDerivedId</a></span>()</code>
<div class="block">INTERNAL:
 returns true if users have designated one or more mappings as IDs.</div>
</td>
</tr>
<tr id="i176" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasEventManager--">hasEventManager</a></span>()</code>
<div class="block">INTERNAL:
 returns true if a DescriptorEventManager has been set.</div>
</td>
</tr>
<tr id="i177" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasFetchGroupManager--">hasFetchGroupManager</a></span>()</code>
<div class="block">INTERNAL:
 Return if the descriptor has a fetch group manager associated with.</div>
</td>
</tr>
<tr id="i178" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasInheritance--">hasInheritance</a></span>()</code>
<div class="block">INTERNAL:
 Return if this descriptor is involved in inheritance, (is child or parent).</div>
</td>
</tr>
<tr id="i179" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasInterfacePolicy--">hasInterfacePolicy</a></span>()</code>
<div class="block">INTERNAL:
 Return if this descriptor is involved in interface, (is child or parent).</div>
</td>
</tr>
<tr id="i180" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasMappingsPostCalculateChanges--">hasMappingsPostCalculateChanges</a></span>()</code>
<div class="block">Are there any mappings that require postCalculateChanges method to be called.</div>
</td>
</tr>
<tr id="i181" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasMappingsPostCalculateChangesOnDeleted--">hasMappingsPostCalculateChangesOnDeleted</a></span>()</code>
<div class="block">Are there any mappings that require mappingsPostCalculateChangesOnDeleted method to be called.</div>
</td>
</tr>
<tr id="i182" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasMultipleTableConstraintDependecy--">hasMultipleTableConstraintDependecy</a></span>()</code>
<div class="block">Return if any mapping reference a field in a secondary table.</div>
</td>
</tr>
<tr id="i183" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasMultipleTables--">hasMultipleTables</a></span>()</code>
<div class="block">INTERNAL:
 Check if descriptor has multiple tables</div>
</td>
</tr>
<tr id="i184" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasMultitenantPolicy--">hasMultitenantPolicy</a></span>()</code>
<div class="block">Return true if the descriptor has a multitenant policy</div>
</td>
</tr>
<tr id="i185" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasNestedIdentityReference-boolean-">hasNestedIdentityReference</a></span>(boolean&nbsp;withChildren)</code>
<div class="block">INTERNAL:
 Calculates whether descriptor references an entity (directly or through a nested mapping).</div>
</td>
</tr>
<tr id="i186" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasNoncacheableMappings--">hasNoncacheableMappings</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i187" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasPessimisticLockingPolicy--">hasPessimisticLockingPolicy</a></span>()</code>
<div class="block">INTERNAL:</div>
</td>
</tr>
<tr id="i188" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasPreDeleteMappings--">hasPreDeleteMappings</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i189" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasPrivatelyOwnedParts--">hasPrivatelyOwnedParts</a></span>()</code>
<div class="block">INTERNAL:
 Checks if the class has any private owned parts are not</div>
</td>
</tr>
<tr id="i190" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasQueryKeyOrMapping-java.lang.String-">hasQueryKeyOrMapping</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;attributeName)</code>
<div class="block">INTERNAL:
 Checks to see if it has a query key or mapping with the specified name or not.</div>
</td>
</tr>
<tr id="i191" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasRelationships--">hasRelationships</a></span>()</code>
<div class="block">INTERNAL:
  return whether this descriptor has any relationships through its mappings, through inheritance, or through aggregates</div>
</td>
</tr>
<tr id="i192" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasRelationshipsExceptBackpointer-org.eclipse.persistence.descriptors.ClassDescriptor-">hasRelationshipsExceptBackpointer</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html" title="class in org.eclipse.persistence.descriptors">ClassDescriptor</a>&nbsp;descriptor)</code>
<div class="block">INTERNAL:
 This method returns true if this descriptor has either a ForeignReferenceMapping to
 an object aside from the one described by descriptor or more than one ForeignReferenceMapping
 to descriptor.</div>
</td>
</tr>
<tr id="i193" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasReturningPolicies--">hasReturningPolicies</a></span>()</code>
<div class="block">INTERNAL:
 Return if this descriptor or descriptors from mappings has Returning policy.</div>
</td>
</tr>
<tr id="i194" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasReturningPolicy--">hasReturningPolicy</a></span>()</code>
<div class="block">INTERNAL:
 Return if this descriptor has Returning policy.</div>
</td>
</tr>
<tr id="i195" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasSerializedObjectPolicy--">hasSerializedObjectPolicy</a></span>()</code>
<div class="block">INTERNAL:</div>
</td>
</tr>
<tr id="i196" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasSimplePrimaryKey--">hasSimplePrimaryKey</a></span>()</code>
<div class="block">INTERNAL:
 PERF: Return if the primary key is simple (direct-mapped) to allow fast extraction.</div>
</td>
</tr>
<tr id="i197" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasTablePerClassPolicy--">hasTablePerClassPolicy</a></span>()</code>
<div class="block">INTERNAL:
 Return if this descriptor is involved in a table per class inheritance.</div>
</td>
</tr>
<tr id="i198" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasTablePerMultitenantPolicy--">hasTablePerMultitenantPolicy</a></span>()</code>
<div class="block">PUBLIC</div>
</td>
</tr>
<tr id="i199" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasTargetForeignKeyMapping-org.eclipse.persistence.internal.sessions.AbstractSession-">hasTargetForeignKeyMapping</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Indicates whether descriptor has at least one target foreign key mapping</div>
</td>
</tr>
<tr id="i200" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasUnconvertedProperties--">hasUnconvertedProperties</a></span>()</code>
<div class="block">INTERNAL:
 Used to store un-converted properties, which are subsequenctly converted
 at runtime (through the convertClassNamesToClasses method.</div>
</td>
</tr>
<tr id="i201" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasWrapperPolicy--">hasWrapperPolicy</a></span>()</code>
<div class="block">INTERNAL:
 Return if a wrapper policy is used.</div>
</td>
</tr>
<tr id="i202" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#initialize-org.eclipse.persistence.internal.sessions.AbstractSession-">initialize</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Initialize the mappings as a separate step.</div>
</td>
</tr>
<tr id="i203" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#initialize-org.eclipse.persistence.descriptors.DescriptorQueryManager-org.eclipse.persistence.internal.sessions.AbstractSession-">initialize</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/DescriptorQueryManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorQueryManager</a>&nbsp;queryManager,
          org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Initialize the query manager specific to the descriptor type.</div>
</td>
</tr>
<tr id="i204" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#initializeAggregateInheritancePolicy-org.eclipse.persistence.internal.sessions.AbstractSession-">initializeAggregateInheritancePolicy</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 This initialized method is used exclusively for inheritance.</div>
</td>
</tr>
<tr id="i205" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#initializeMultipleTablePrimaryKeyFields--">initializeMultipleTablePrimaryKeyFields</a></span>()</code>
<div class="block">INTERNAL:
 Rebuild the multiple table primary key map.</div>
</td>
</tr>
<tr id="i206" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#initializeProperties-org.eclipse.persistence.internal.sessions.AbstractSession-">initializeProperties</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Initialize the descriptor properties such as write lock and sequencing.</div>
</td>
</tr>
<tr id="i207" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#interfaceInitialization-org.eclipse.persistence.internal.sessions.AbstractSession-">interfaceInitialization</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Allow the descriptor to initialize any dependencies on this session.</div>
</td>
</tr>
<tr id="i208" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isAbstract--">isAbstract</a></span>()</code>
<div class="block">INTERNAL:
 Convenience method to return true if the java class from this descriptor is abstract.</div>
</td>
</tr>
<tr id="i209" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isAggregateCollectionDescriptor--">isAggregateCollectionDescriptor</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor is an aggregate collection descriptor</div>
</td>
</tr>
<tr id="i210" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isAggregateDescriptor--">isAggregateDescriptor</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor is an aggregate descriptor</div>
</td>
</tr>
<tr id="i211" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isCascadeOnDeleteSetOnDatabaseOnSecondaryTables--">isCascadeOnDeleteSetOnDatabaseOnSecondaryTables</a></span>()</code>
<div class="block">ADVANCED:
 Return if delete cascading has been set on the database for the descriptor's
 multiple tables.</div>
</td>
</tr>
<tr id="i212" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isChildDescriptor--">isChildDescriptor</a></span>()</code>
<div class="block">PUBLIC:
 Return if the descriptor defines inheritance and is a child.</div>
</td>
</tr>
<tr id="i213" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isDescriptorForInterface--">isDescriptorForInterface</a></span>()</code>
<div class="block">PUBLIC:
 Return if the java class is an interface.</div>
</td>
</tr>
<tr id="i214" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isDescriptorTypeAggregate--">isDescriptorTypeAggregate</a></span>()</code>
<div class="block">PUBLIC
 return true if this descriptor is any type of aggregate descriptor.</div>
</td>
</tr>
<tr id="i215" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isDescriptorTypeNormal--">isDescriptorTypeNormal</a></span>()</code>
<div class="block">INTERNAL:
 return true if this descriptor is an entity.</div>
</td>
</tr>
<tr id="i216" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isEISDescriptor--">isEISDescriptor</a></span>()</code>
<div class="block">PUBLIC:
 Return if the descriptor maps to an EIS or NoSQL datasource.</div>
</td>
</tr>
<tr id="i217" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isFullyInitialized--">isFullyInitialized</a></span>()</code>
<div class="block">INTERNAL:
 Check if the descriptor is finished initialization.</div>
</td>
</tr>
<tr id="i218" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isInitialized-int-">isInitialized</a></span>(int&nbsp;initializationStage)</code>
<div class="block">INTERNAL:
 Check if descriptor is already initialized for the level of initialization.</div>
</td>
</tr>
<tr id="i219" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isInterfaceChildDescriptor--">isInterfaceChildDescriptor</a></span>()</code>
<div class="block">INTERNAL:
 Return if the descriptor defines inheritance and is a child.</div>
</td>
</tr>
<tr id="i220" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isInterfaceInitialized-int-">isInterfaceInitialized</a></span>(int&nbsp;interfaceInitializationStage)</code>
<div class="block">INTERNAL:
 Check if interface descriptor is already initialized for the level of initialization.</div>
</td>
</tr>
<tr id="i221" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isInvalid--">isInvalid</a></span>()</code>
<div class="block">INTERNAL:
 Return if an error occurred during initialization which should abort any further initialization.</div>
</td>
</tr>
<tr id="i222" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isIsolated--">isIsolated</a></span>()</code>
<div class="block">PUBLIC:
 Returns true if the descriptor represents an isolated class</div>
</td>
</tr>
<tr id="i223" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isMultipleTableDescriptor--">isMultipleTableDescriptor</a></span>()</code>
<div class="block">INTERNAL:
 Return if this descriptor has more than one table.</div>
</td>
</tr>
<tr id="i224" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isNativeConnectionRequired--">isNativeConnectionRequired</a></span>()</code>
<div class="block">ADVANCED:
 Return if the descriptor requires usage of a native (unwrapped) JDBC connection.</div>
</td>
</tr>
<tr id="i225" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isObjectRelationalDataTypeDescriptor--">isObjectRelationalDataTypeDescriptor</a></span>()</code>
<div class="block">PUBLIC:
 Return if the descriptor maps to an object-relational structured type.</div>
</td>
</tr>
<tr id="i226" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isPrimaryKeySetAfterInsert-org.eclipse.persistence.internal.sessions.AbstractSession-">isPrimaryKeySetAfterInsert</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Indicates whether pk or some of its components
 set after insert into the database.</div>
</td>
</tr>
<tr id="i227" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isProtectedIsolation--">isProtectedIsolation</a></span>()</code>
<div class="block">PUBLIC:
 Returns true if the descriptor represents an isolated class</div>
</td>
</tr>
<tr id="i228" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isRelationalDescriptor--">isRelationalDescriptor</a></span>()</code>
<div class="block">PUBLIC:
 Return if the descriptor maps to a relational table.</div>
</td>
</tr>
<tr id="i229" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isReturnTypeRequiredForReturningPolicy--">isReturnTypeRequiredForReturningPolicy</a></span>()</code>
<div class="block">INTERNAL:
 Indicates if a return type is required for the field set on the
 returning policy.</div>
</td>
</tr>
<tr id="i230" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isSharedIsolation--">isSharedIsolation</a></span>()</code>
<div class="block">PUBLIC:
 Returns true if the descriptor represents an isolated class</div>
</td>
</tr>
<tr id="i231" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#isXMLDescriptor--">isXMLDescriptor</a></span>()</code>
<div class="block">PUBLIC:
 Return if the descriptor maps to XML.</div>
</td>
</tr>
<tr id="i232" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#newAggregateCollectionMapping--">newAggregateCollectionMapping</a></span>()</code>
<div class="block">Return a new aggregate collection/element collection mapping for this type of descriptor.</div>
</td>
</tr>
<tr id="i233" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/mappings/AggregateMapping.html" title="class in org.eclipse.persistence.mappings">AggregateMapping</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#newAggregateMapping--">newAggregateMapping</a></span>()</code>
<div class="block">Return a new aggregate/embedded mapping for this type of descriptor.</div>
</td>
</tr>
<tr id="i234" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#newDirectCollectionMapping--">newDirectCollectionMapping</a></span>()</code>
<div class="block">Return a new direct collection/element collection mapping for this type of descriptor.</div>
</td>
</tr>
<tr id="i235" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/mappings/foundation/AbstractDirectMapping.html" title="class in org.eclipse.persistence.mappings.foundation">AbstractDirectMapping</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#newDirectMapping--">newDirectMapping</a></span>()</code>
<div class="block">Return a new direct/basic mapping for this type of descriptor.</div>
</td>
</tr>
<tr id="i236" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/mappings/CollectionMapping.html" title="class in org.eclipse.persistence.mappings">CollectionMapping</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#newManyToManyMapping--">newManyToManyMapping</a></span>()</code>
<div class="block">Return a new one to many mapping for this type of descriptor.</div>
</td>
</tr>
<tr id="i237" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/mappings/ObjectReferenceMapping.html" title="class in org.eclipse.persistence.mappings">ObjectReferenceMapping</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#newManyToOneMapping--">newManyToOneMapping</a></span>()</code>
<div class="block">Return a new many to one mapping for this type of descriptor.</div>
</td>
</tr>
<tr id="i238" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/mappings/CollectionMapping.html" title="class in org.eclipse.persistence.mappings">CollectionMapping</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#newOneToManyMapping--">newOneToManyMapping</a></span>()</code>
<div class="block">Return a new one to many mapping for this type of descriptor.</div>
</td>
</tr>
<tr id="i239" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/mappings/ObjectReferenceMapping.html" title="class in org.eclipse.persistence.mappings">ObjectReferenceMapping</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#newOneToOneMapping--">newOneToOneMapping</a></span>()</code>
<div class="block">Return a new one to one mapping for this type of descriptor.</div>
</td>
</tr>
<tr id="i240" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/mappings/CollectionMapping.html" title="class in org.eclipse.persistence.mappings">CollectionMapping</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#newUnidirectionalOneToManyMapping--">newUnidirectionalOneToManyMapping</a></span>()</code>
<div class="block">Return a new one to many mapping for this type of descriptor.</div>
</td>
</tr>
<tr id="i241" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#notifyReferencingDescriptorsOfIsolation-org.eclipse.persistence.internal.sessions.AbstractSession-">notifyReferencingDescriptorsOfIsolation</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Configure all descriptors referencing this class to be protected and update their cache settings.</div>
</td>
</tr>
<tr id="i242" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#onlyRefreshCacheIfNewerVersion--">onlyRefreshCacheIfNewerVersion</a></span>()</code>
<div class="block">PUBLIC:
 This method is the equivalent of calling <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldOnlyRefreshCacheIfNewerVersion-boolean-"><code>setShouldOnlyRefreshCacheIfNewerVersion(boolean)</code></a> with an argument of <CODE>true</CODE>:
 it configures a <CODE>ClassDescriptor</CODE> to only refresh the cache if the data received from the database by a query is newer than
 the data in the cache (as determined by the optimistic locking field) and as long as one of the following is true:

 
 the <CODE>ClassDescriptor</CODE> was configured by calling <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCache--"><code>alwaysRefreshCache()</code></a> or <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCacheOnRemote--"><code>alwaysRefreshCacheOnRemote()</code></a>,
 the query was configured by calling <a href="../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html#refreshIdentityMapResult--"><code>ObjectLevelReadQuery.refreshIdentityMapResult()</code></a>, or
 the query was a call to <a href="../../../../org/eclipse/persistence/sessions/Session.html#refreshObject-java.lang.Object-"><code>Session.refreshObject(java.lang.Object)</code></a>
 </div>
</td>
</tr>
<tr id="i243" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#postInitialize-org.eclipse.persistence.internal.sessions.AbstractSession-">postInitialize</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Post initializations after mappings are initialized.</div>
</td>
</tr>
<tr id="i244" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#preInitialize-org.eclipse.persistence.internal.sessions.AbstractSession-">preInitialize</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Allow the descriptor to initialize any dependencies on this session.</div>
</td>
</tr>
<tr id="i245" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#preInitializeInheritancePolicy-org.eclipse.persistence.internal.sessions.AbstractSession-">preInitializeInheritancePolicy</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">Hook together the inheritance policy tree.</div>
</td>
</tr>
<tr id="i246" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#preInterfaceInitialization-org.eclipse.persistence.internal.sessions.AbstractSession-">preInterfaceInitialization</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Allow the descriptor to initialize any dependencies on this session.</div>
</td>
</tr>
<tr id="i247" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#prepareCascadeLockingPolicy-org.eclipse.persistence.mappings.DatabaseMapping-">prepareCascadeLockingPolicy</a></span>(<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;mapping)</code>
<div class="block">INTERNAL:</div>
</td>
</tr>
<tr id="i248" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#rehashFieldDependancies-org.eclipse.persistence.internal.sessions.AbstractSession-">rehashFieldDependancies</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Rehash any hashtables based on fields.</div>
</td>
</tr>
<tr id="i249" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#reInitializeJoinedAttributes--">reInitializeJoinedAttributes</a></span>()</code>
<div class="block">INTERNAL:
 A user should not be setting which attributes to join or not to join
 after descriptor initialization; provided only for backwards compatibility.</div>
</td>
</tr>
<tr id="i250" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#remoteInitialization-org.eclipse.persistence.sessions.remote.DistributedSession-">remoteInitialization</a></span>(<a href="../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html" title="class in org.eclipse.persistence.sessions.remote">DistributedSession</a>&nbsp;session)</code>
<div class="block">INTERNAL:
 Used to initialize a remote descriptor.</div>
</td>
</tr>
<tr id="i251" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#removeMappingForAttributeName-java.lang.String-">removeMappingForAttributeName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;attributeName)</code>
<div class="block">ADVANCED:
 Removes the locally defined mapping associated with a given attribute name.</div>
</td>
</tr>
<tr id="i252" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#removeProperty-java.lang.String-">removeProperty</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;property)</code>
<div class="block">PUBLIC:
 Remove the user defined property.</div>
</td>
</tr>
<tr id="i253" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#requiresInitialization-org.eclipse.persistence.internal.sessions.AbstractSession-">requiresInitialization</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Aggregate and Interface descriptors do not require initialization as they are cloned and
 initialized by each mapping.</div>
</td>
</tr>
<tr id="i254" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#selfValidationAfterInitialization-org.eclipse.persistence.internal.sessions.AbstractSession-">selfValidationAfterInitialization</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Validate that the descriptor was defined correctly.</div>
</td>
</tr>
<tr id="i255" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#selfValidationBeforeInitialization-org.eclipse.persistence.internal.sessions.AbstractSession-">selfValidationBeforeInitialization</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Validate that the descriptor's non-mapping attribute are defined correctly.</div>
</td>
</tr>
<tr id="i256" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setAccessorTree-java.util.List-">setAccessorTree</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/AttributeAccessor.html" title="class in org.eclipse.persistence.mappings">AttributeAccessor</a>&gt;&nbsp;accessorTree)</code>&nbsp;</td>
</tr>
<tr id="i257" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setAdditionalTablePrimaryKeyFields-org.eclipse.persistence.internal.helper.DatabaseTable-org.eclipse.persistence.internal.helper.DatabaseField-org.eclipse.persistence.internal.helper.DatabaseField-">setAdditionalTablePrimaryKeyFields</a></span>(org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;table,
                                  org.eclipse.persistence.internal.helper.DatabaseField&nbsp;field1,
                                  org.eclipse.persistence.internal.helper.DatabaseField&nbsp;field2)</code>
<div class="block">INTERNAL:
 This is used to map the primary key field names in a multiple table
 descriptor.</div>
</td>
</tr>
<tr id="i258" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setAdditionalTablePrimaryKeyFields-java.util.Map-">setAdditionalTablePrimaryKeyFields</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField,org.eclipse.persistence.internal.helper.DatabaseField&gt;&gt;&nbsp;additionalTablePrimaryKeyFields)</code>
<div class="block">INTERNAL:
 This is used to map the primary key field names in a multiple table
 descriptor.</div>
</td>
</tr>
<tr id="i259" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setAlias-java.lang.String-">setAlias</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;alias)</code>
<div class="block">PUBLIC:
 Set the alias</div>
</td>
</tr>
<tr id="i260" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setAllFields-java.util.Vector-">setAllFields</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;allFields)</code>
<div class="block">INTERNAL:
 Set all the fields.</div>
</td>
</tr>
<tr id="i261" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setAmendmentClass-java.lang.Class-">setAmendmentClass</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;amendmentClass)</code>
<div class="block">PUBLIC:
 Set the amendment class.</div>
</td>
</tr>
<tr id="i262" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setAmendmentClassName-java.lang.String-">setAmendmentClassName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;amendmentClassName)</code>
<div class="block">INTERNAL:
 Return the amendment class name, used by the MW.</div>
</td>
</tr>
<tr id="i263" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setAmendmentMethodName-java.lang.String-">setAmendmentMethodName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;amendmentMethodName)</code>
<div class="block">PUBLIC:
 Set the amendment method.</div>
</td>
</tr>
<tr id="i264" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setCacheable-java.lang.Boolean-">setCacheable</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&nbsp;cacheable)</code>
<div class="block">INTERNAL:
 Set entity @Cacheable annotation value in cache configuration object.</div>
</td>
</tr>
<tr id="i265" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setCacheInterceptorClass-java.lang.Class-">setCacheInterceptorClass</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;cacheInterceptorClass)</code>
<div class="block">PUBLIC:
 A CacheInterceptor is an adaptor that when overridden and assigned to a Descriptor all interaction
 between EclipseLink and the internal cache for that class will pass through the Interceptor.</div>
</td>
</tr>
<tr id="i266" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setCacheInterceptorClassName-java.lang.String-">setCacheInterceptorClassName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;cacheInterceptorClassName)</code>
<div class="block">PUBLIC:
 A CacheInterceptor is an adaptor that when overridden and assigned to a Descriptor all interaction
 between EclipseLink and the internal cache for that class will pass through the Interceptor.</div>
</td>
</tr>
<tr id="i267" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setCacheInvalidationPolicy-org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy-">setCacheInvalidationPolicy</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/invalidation/CacheInvalidationPolicy.html" title="class in org.eclipse.persistence.descriptors.invalidation">CacheInvalidationPolicy</a>&nbsp;policy)</code>
<div class="block">PUBLIC:
 Set the Cache Invalidation Policy for this descriptor.</div>
</td>
</tr>
<tr id="i268" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setCacheIsolation-org.eclipse.persistence.config.CacheIsolationType-">setCacheIsolation</a></span>(<a href="../../../../org/eclipse/persistence/config/CacheIsolationType.html" title="enum in org.eclipse.persistence.config">CacheIsolationType</a>&nbsp;isolationType)</code>
<div class="block">PUBLIC:
 Controls how the Entity instances and data will be cached.</div>
</td>
</tr>
<tr id="i269" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setCacheKeyType-org.eclipse.persistence.annotations.CacheKeyType-">setCacheKeyType</a></span>(<a href="../../../../org/eclipse/persistence/annotations/CacheKeyType.html" title="enum in org.eclipse.persistence.annotations">CacheKeyType</a>&nbsp;cacheKeyType)</code>
<div class="block">ADVANCED:
 Set what cache key type to use to store the object in the cache.</div>
</td>
</tr>
<tr id="i270" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setCachePolicy-org.eclipse.persistence.descriptors.CachePolicy-">setCachePolicy</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/CachePolicy.html" title="class in org.eclipse.persistence.descriptors">CachePolicy</a>&nbsp;cachePolicy)</code>
<div class="block">ADVANCED:
 Set cache policy for the descriptor.</div>
</td>
</tr>
<tr id="i271" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setCacheSynchronizationType-int-">setCacheSynchronizationType</a></span>(int&nbsp;type)</code>
<div class="block">PUBLIC:
 Set the type of cache synchronization that will be used on objects of this type.</div>
</td>
</tr>
<tr id="i272" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setCMPPolicy-org.eclipse.persistence.descriptors.CMPPolicy-">setCMPPolicy</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/CMPPolicy.html" title="class in org.eclipse.persistence.descriptors">CMPPolicy</a>&nbsp;newCMPPolicy)</code>
<div class="block">ADVANCED:
 Set the cmp descriptor that holds cmp specific information.</div>
</td>
</tr>
<tr id="i273" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setConstraintDependencies-java.util.Vector-">setConstraintDependencies</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;constraintDependencies)</code>
<div class="block">ADVANCED:
  automatically orders database access through the foreign key information provided in 1:1 and 1:m mappings.</div>
</td>
</tr>
<tr id="i274" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setCopyPolicy-org.eclipse.persistence.descriptors.copying.CopyPolicy-">setCopyPolicy</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/copying/CopyPolicy.html" title="interface in org.eclipse.persistence.descriptors.copying">CopyPolicy</a>&nbsp;policy)</code>
<div class="block">INTERNAL:
 Set the copy policy.</div>
</td>
</tr>
<tr id="i275" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setCopyPolicyClassName-java.lang.String-">setCopyPolicyClassName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;className)</code>
<div class="block">INTERNAL:
 Sets the name of a Class that implements CopyPolicy
 Will be instantiatied as a copy policy at initialization times
 using the no-args constructor</div>
</td>
</tr>
<tr id="i276" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDefaultDeleteObjectQueryRedirector-org.eclipse.persistence.queries.QueryRedirector-">setDefaultDeleteObjectQueryRedirector</a></span>(<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;defaultDeleteObjectQueryRedirector)</code>
<div class="block">A Default DeleteObjectQuery Redirector will be applied to any executing
 DeleteObjectQuery or DeleteAllQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i277" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDefaultDeleteObjectQueryRedirectorClassName-java.lang.String-">setDefaultDeleteObjectQueryRedirectorClassName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;defaultDeleteObjectQueryRedirectorClassName)</code>
<div class="block">A Default DeleteObjectQuery Redirector will be applied to any executing
 DeleteObjectQuery or DeleteAllQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i278" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDefaultInsertObjectQueryRedirector-org.eclipse.persistence.queries.QueryRedirector-">setDefaultInsertObjectQueryRedirector</a></span>(<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;defaultInsertQueryRedirector)</code>
<div class="block">A Default InsertObjectQuery Redirector will be applied to any executing
 InsertObjectQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i279" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDefaultInsertObjectQueryRedirectorClassName-java.lang.String-">setDefaultInsertObjectQueryRedirectorClassName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;defaultInsertObjectQueryRedirectorClassName)</code>
<div class="block">A Default InsertObjectQuery Redirector will be applied to any executing
 InsertObjectQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i280" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDefaultQueryRedirector-org.eclipse.persistence.queries.QueryRedirector-">setDefaultQueryRedirector</a></span>(<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;defaultRedirector)</code>
<div class="block">A Default Query Redirector will be applied to any executing object query
 that does not have a more precise default (like the default
 ReadObjectQuery Redirector) or a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i281" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDefaultQueryRedirectorClassName-java.lang.String-">setDefaultQueryRedirectorClassName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;defaultQueryRedirectorClassName)</code>
<div class="block">A Default Query Redirector will be applied to any executing object query
 that does not have a more precise default (like the default
 ReadObjectQuery Redirector) or a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i282" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDefaultReadAllQueryRedirector-org.eclipse.persistence.queries.QueryRedirector-">setDefaultReadAllQueryRedirector</a></span>(<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;defaultReadAllQueryRedirector)</code>
<div class="block">A Default ReadAllQuery Redirector will be applied to any executing
 ReadAllQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i283" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDefaultReadAllQueryRedirectorClassName-java.lang.String-">setDefaultReadAllQueryRedirectorClassName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;defaultReadAllQueryRedirectorClassName)</code>
<div class="block">A Default ReadAllQuery Redirector will be applied to any executing
 ReadAllQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i284" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDefaultReadObjectQueryRedirector-org.eclipse.persistence.queries.QueryRedirector-">setDefaultReadObjectQueryRedirector</a></span>(<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;defaultReadObjectQueryRedirector)</code>
<div class="block">A Default ReadObjectQuery Redirector will be applied to any executing
 ReadObjectQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i285" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDefaultReadObjectQueryRedirectorClassName-java.lang.String-">setDefaultReadObjectQueryRedirectorClassName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;defaultReadObjectQueryRedirectorClassName)</code>
<div class="block">A Default ReadObjectQuery Redirector will be applied to any executing
 ReadObjectQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i286" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDefaultReportQueryRedirector-org.eclipse.persistence.queries.QueryRedirector-">setDefaultReportQueryRedirector</a></span>(<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;defaultReportQueryRedirector)</code>
<div class="block">A Default ReportQuery Redirector will be applied to any executing
 ReportQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i287" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDefaultReportQueryRedirectorClassName-java.lang.String-">setDefaultReportQueryRedirectorClassName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;defaultReportQueryRedirectorClassName)</code>
<div class="block">A Default ReportQuery Redirector will be applied to any executing
 ReportQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i288" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDefaultTable-org.eclipse.persistence.internal.helper.DatabaseTable-">setDefaultTable</a></span>(org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;defaultTable)</code>
<div class="block">INTERNAL:
 The descriptors default table can be configured if the first table is not desired.</div>
</td>
</tr>
<tr id="i289" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDefaultTableName-java.lang.String-">setDefaultTableName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;defaultTableName)</code>
<div class="block">PUBLIC:
 The descriptors default table can be configured if the first table is not desired.</div>
</td>
</tr>
<tr id="i290" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDefaultUpdateObjectQueryRedirector-org.eclipse.persistence.queries.QueryRedirector-">setDefaultUpdateObjectQueryRedirector</a></span>(<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;defaultUpdateQueryRedirector)</code>
<div class="block">A Default UpdateObjectQuery Redirector will be applied to any executing
 UpdateObjectQuery or UpdateAllQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i291" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDefaultUpdateObjectQueryRedirectorClassName-java.lang.String-">setDefaultUpdateObjectQueryRedirectorClassName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;defaultUpdateObjectQueryRedirectorClassName)</code>
<div class="block">A Default UpdateObjectQuery Redirector will be applied to any executing
 UpdateObjectQuery or UpdateAllQuery that does not have a redirector set directly on the query.</div>
</td>
</tr>
<tr id="i292" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDescriptorCustomizerClassName-java.lang.String-">setDescriptorCustomizerClassName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;descriptorCustomizerClassName)</code>
<div class="block">INTERNAL:
 Sets the JPA DescriptorCustomizer class name.</div>
</td>
</tr>
<tr id="i293" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDescriptorType-int-">setDescriptorType</a></span>(int&nbsp;descriptorType)</code>
<div class="block">ADVANCED:
 set the descriptor type (NORMAL by default, others include INTERFACE, AGGREGATE, AGGREGATE COLLECTION)</div>
</td>
</tr>
<tr id="i294" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setDescriptorTypeValue-java.lang.String-">setDescriptorTypeValue</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</code>
<div class="block">INTERNAL:
 This method is explicitly used by the XML reader.</div>
</td>
</tr>
<tr id="i295" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setEventManager-org.eclipse.persistence.descriptors.DescriptorEventManager-">setEventManager</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>&nbsp;eventManager)</code>
<div class="block">INTERNAL:
 Set the event manager for the descriptor.</div>
</td>
</tr>
<tr id="i296" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setExistenceChecking-java.lang.String-">setExistenceChecking</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;token)</code>
<div class="block">INTERNAL:
 OBSOLETE - old reader.</div>
</td>
</tr>
<tr id="i297" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setFetchGroupManager-org.eclipse.persistence.descriptors.FetchGroupManager-">setFetchGroupManager</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/FetchGroupManager.html" title="class in org.eclipse.persistence.descriptors">FetchGroupManager</a>&nbsp;fetchGroupManager)</code>
<div class="block">PUBLIC:
 Set the fetch group manager for the descriptor.</div>
</td>
</tr>
<tr id="i298" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setFields-java.util.Vector-">setFields</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;fields)</code>
<div class="block">INTERNAL:
 Set the fields used by this descriptor.</div>
</td>
</tr>
<tr id="i299" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setForeignKeyFieldNamesForMultipleTable-java.util.Vector-">setForeignKeyFieldNamesForMultipleTable</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;associations)</code>
<div class="block">INTERNAL:
 This method is used by the  XML Deployment ClassDescriptor to read and write these mappings</div>
</td>
</tr>
<tr id="i300" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setFullyMergeEntity-boolean-">setFullyMergeEntity</a></span>(boolean&nbsp;fullyMergeEntity)</code>&nbsp;</td>
</tr>
<tr id="i301" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setHasMultipleTableConstraintDependecy-boolean-">setHasMultipleTableConstraintDependecy</a></span>(boolean&nbsp;hasMultipleTableConstraintDependecy)</code>
<div class="block">Set if any mapping reference a field in a secondary table.</div>
</td>
</tr>
<tr id="i302" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setHasRelationships-boolean-">setHasRelationships</a></span>(boolean&nbsp;hasRelationships)</code>
<div class="block">INTERNAL:
 set whether this descriptor has any relationships through its mappings, through inheritance, or through aggregates</div>
</td>
</tr>
<tr id="i303" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setHasSimplePrimaryKey-boolean-">setHasSimplePrimaryKey</a></span>(boolean&nbsp;hasSimplePrimaryKey)</code>
<div class="block">INTERNAL:
 PERF: Set if the primary key is simple (direct-mapped) to allow fast extraction.</div>
</td>
</tr>
<tr id="i304" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setHistoryPolicy-org.eclipse.persistence.history.HistoryPolicy-">setHistoryPolicy</a></span>(<a href="../../../../org/eclipse/persistence/history/HistoryPolicy.html" title="class in org.eclipse.persistence.history">HistoryPolicy</a>&nbsp;policy)</code>
<div class="block">PUBLIC:
 Set the HistoryPolicy for this descriptor.</div>
</td>
</tr>
<tr id="i305" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setIdentityMapClass-java.lang.Class-">setIdentityMapClass</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;theIdentityMapClass)</code>
<div class="block">PUBLIC:
 Set the class of identity map to be used by this descriptor.</div>
</td>
</tr>
<tr id="i306" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setIdentityMapSize-int-">setIdentityMapSize</a></span>(int&nbsp;identityMapSize)</code>
<div class="block">PUBLIC:
 Set the size of the identity map to be used by this descriptor.</div>
</td>
</tr>
<tr id="i307" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setIdValidation-org.eclipse.persistence.annotations.IdValidation-">setIdValidation</a></span>(<a href="../../../../org/eclipse/persistence/annotations/IdValidation.html" title="enum in org.eclipse.persistence.annotations">IdValidation</a>&nbsp;idValidation)</code>
<div class="block">ADVANCED:
 Set what types are allowed as a primary key (id).</div>
</td>
</tr>
<tr id="i308" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setInheritancePolicy-org.eclipse.persistence.descriptors.InheritancePolicy-">setInheritancePolicy</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>&nbsp;inheritancePolicy)</code>
<div class="block">INTERNAL:
 Sets the inheritance policy.</div>
</td>
</tr>
<tr id="i309" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setInitializationStage-int-">setInitializationStage</a></span>(int&nbsp;initializationStage)</code>
<div class="block">INTERNAL:</div>
</td>
</tr>
<tr id="i310" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setInstantiationPolicy-org.eclipse.persistence.internal.descriptors.InstantiationPolicy-">setInstantiationPolicy</a></span>(org.eclipse.persistence.internal.descriptors.InstantiationPolicy&nbsp;instantiationPolicy)</code>
<div class="block">INTERNAL:
 Sets the instantiation policy.</div>
</td>
</tr>
<tr id="i311" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setInterfaceInitializationStage-int-">setInterfaceInitializationStage</a></span>(int&nbsp;interfaceInitializationStage)</code>
<div class="block">INTERNAL:</div>
</td>
</tr>
<tr id="i312" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setInterfacePolicy-org.eclipse.persistence.descriptors.InterfacePolicy-">setInterfacePolicy</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/InterfacePolicy.html" title="class in org.eclipse.persistence.descriptors">InterfacePolicy</a>&nbsp;interfacePolicy)</code>
<div class="block">INTERNAL:
 Sets the interface policy.</div>
</td>
</tr>
<tr id="i313" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setInternalDefaultTable--">setInternalDefaultTable</a></span>()</code>
<div class="block">INTERNAL:
 Set the default table if one if not already set.</div>
</td>
</tr>
<tr id="i314" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setInternalDefaultTable-org.eclipse.persistence.internal.helper.DatabaseTable-">setInternalDefaultTable</a></span>(org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;defaultTable)</code>
<div class="block">INTERNAL:
 Set the default table if one if not already set.</div>
</td>
</tr>
<tr id="i315" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setIsCascadeOnDeleteSetOnDatabaseOnSecondaryTables-boolean-">setIsCascadeOnDeleteSetOnDatabaseOnSecondaryTables</a></span>(boolean&nbsp;isCascadeOnDeleteSetOnDatabaseOnSecondaryTables)</code>
<div class="block">ADVANCED:
 Set if delete cascading has been set on the database for the descriptor's
 multiple tables.</div>
</td>
</tr>
<tr id="i316" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setIsNativeConnectionRequired-boolean-">setIsNativeConnectionRequired</a></span>(boolean&nbsp;isNativeConnectionRequired)</code>
<div class="block">ADVANCED:
 Set if the descriptor requires usage of a native (unwrapped) JDBC connection.</div>
</td>
</tr>
<tr id="i317" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setJavaClass-java.lang.Class-">setJavaClass</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;theJavaClass)</code>
<div class="block">PUBLIC:
 Set the Java class that this descriptor maps.</div>
</td>
</tr>
<tr id="i318" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setJavaClassName-java.lang.String-">setJavaClassName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;theJavaClassName)</code>
<div class="block">INTERNAL:
 Return the java class name, used by the MW.</div>
</td>
</tr>
<tr id="i319" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setJavaInterface-java.lang.Class-">setJavaInterface</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;theJavaInterface)</code>
<div class="block">PUBLIC:
 Sets the descriptor to be for an interface.</div>
</td>
</tr>
<tr id="i320" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setJavaInterfaceName-java.lang.String-">setJavaInterfaceName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;theJavaInterfaceName)</code>
<div class="block">INTERNAL:
 Return the java interface name, used by the MW.</div>
</td>
</tr>
<tr id="i321" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setLockableMappings-java.util.List-">setLockableMappings</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;&nbsp;lockableMappings)</code>
<div class="block">INTERNAL:
 Set the list of lockable mappings for this project
 This method is provided for CMP use.</div>
</td>
</tr>
<tr id="i322" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setMappings-java.util.Vector-">setMappings</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;&nbsp;mappings)</code>
<div class="block">INTERNAL:
 Set the mappings.</div>
</td>
</tr>
<tr id="i323" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setMultipleTableForeignKeys-java.util.Map-">setMultipleTableForeignKeys</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;&gt;&nbsp;newValue)</code>
<div class="block">INTERNAL:</div>
</td>
</tr>
<tr id="i324" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setMultipleTableInsertOrder-java.util.List-">setMultipleTableInsertOrder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;&nbsp;newValue)</code>
<div class="block">ADVANCED:
 Sets the List of DatabaseTables in the order which INSERTS should take place.</div>
</td>
</tr>
<tr id="i325" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setMultitenantPolicy-org.eclipse.persistence.descriptors.MultitenantPolicy-">setMultitenantPolicy</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/MultitenantPolicy.html" title="interface in org.eclipse.persistence.descriptors">MultitenantPolicy</a>&nbsp;multitenantPolicy)</code>
<div class="block">INTERNAL:
 Set a multitenant policy on the descriptor.</div>
</td>
</tr>
<tr id="i326" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setObjectBuilder-org.eclipse.persistence.internal.descriptors.ObjectBuilder-">setObjectBuilder</a></span>(org.eclipse.persistence.internal.descriptors.ObjectBuilder&nbsp;builder)</code>
<div class="block">INTERNAL:
 Set the ObjectBuilder.</div>
</td>
</tr>
<tr id="i327" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setObjectChangePolicy-org.eclipse.persistence.descriptors.changetracking.ObjectChangePolicy-">setObjectChangePolicy</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/changetracking/ObjectChangePolicy.html" title="interface in org.eclipse.persistence.descriptors.changetracking">ObjectChangePolicy</a>&nbsp;policy)</code>
<div class="block">PUBLIC:
 Set the ObjectChangePolicy for this descriptor.</div>
</td>
</tr>
<tr id="i328" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setOptimisticLockingPolicy-org.eclipse.persistence.internal.descriptors.OptimisticLockingPolicy-">setOptimisticLockingPolicy</a></span>(org.eclipse.persistence.internal.descriptors.OptimisticLockingPolicy&nbsp;optimisticLockingPolicy)</code>
<div class="block">PUBLIC:
 Set the OptimisticLockingPolicy.</div>
</td>
</tr>
<tr id="i329" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setPartitioningPolicy-org.eclipse.persistence.descriptors.partitioning.PartitioningPolicy-">setPartitioningPolicy</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/partitioning/PartitioningPolicy.html" title="class in org.eclipse.persistence.descriptors.partitioning">PartitioningPolicy</a>&nbsp;partitioningPolicy)</code>
<div class="block">PUBLIC:
 Set the descriptor's partitioning policy.</div>
</td>
</tr>
<tr id="i330" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setPartitioningPolicyName-java.lang.String-">setPartitioningPolicyName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;partitioningPolicyName)</code>
<div class="block">PUBLIC:
 Set the name of the descriptor's partitioning policy.</div>
</td>
</tr>
<tr id="i331" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setPrimaryKeyFieldName-java.lang.String-">setPrimaryKeyFieldName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fieldName)</code>
<div class="block">PUBLIC:
 Specify the primary key field of the descriptors table.</div>
</td>
</tr>
<tr id="i332" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setPrimaryKeyFieldNames-java.util.Vector-">setPrimaryKeyFieldNames</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;primaryKeyFieldsName)</code>
<div class="block">PUBLIC:
 User can specify a vector of all the primary key field names if primary key is composite.</div>
</td>
</tr>
<tr id="i333" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setPrimaryKeyFields-java.util.List-">setPrimaryKeyFields</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;thePrimaryKeyFields)</code>
<div class="block">INTERNAL:
 Set the primary key fields</div>
</td>
</tr>
<tr id="i334" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setPrimaryKeyIdValidations-java.util.List-">setPrimaryKeyIdValidations</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/annotations/IdValidation.html" title="enum in org.eclipse.persistence.annotations">IdValidation</a>&gt;&nbsp;primaryKeyIdValidations)</code>
<div class="block">ADVANCED:
 Return what types are allowed in each primary key field (id).</div>
</td>
</tr>
<tr id="i335" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setProperties-java.util.Map-">setProperties</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&nbsp;properties)</code>
<div class="block">INTERNAL:
 Set the user defined properties.</div>
</td>
</tr>
<tr id="i336" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setProperty-java.lang.String-java.lang.Object-">setProperty</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;value)</code>
<div class="block">PUBLIC:
 Set the user defined property.</div>
</td>
</tr>
<tr id="i337" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setQueryKeys-java.util.Map-">setQueryKeys</a></span>(<a href="https://docs.oracle.com/javase/8/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/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../org/eclipse/persistence/mappings/querykeys/QueryKey.html" title="class in org.eclipse.persistence.mappings.querykeys">QueryKey</a>&gt;&nbsp;queryKeys)</code>
<div class="block">INTERNAL:
 Set the query keys.</div>
</td>
</tr>
<tr id="i338" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setQueryManager-org.eclipse.persistence.descriptors.DescriptorQueryManager-">setQueryManager</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/DescriptorQueryManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorQueryManager</a>&nbsp;queryManager)</code>
<div class="block">INTERNAL:
 Set the query manager.</div>
</td>
</tr>
<tr id="i339" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setReadOnly--">setReadOnly</a></span>()</code>
<div class="block">PUBLIC:
 Set the descriptor to be read-only.</div>
</td>
</tr>
<tr id="i340" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setRemoteIdentityMapClass-java.lang.Class-">setRemoteIdentityMapClass</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;theIdentityMapClass)</code>
<div class="block">PUBLIC:
 Set the class of identity map to be used by this descriptor.</div>
</td>
</tr>
<tr id="i341" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setRemoteIdentityMapSize-int-">setRemoteIdentityMapSize</a></span>(int&nbsp;identityMapSize)</code>
<div class="block">PUBLIC:
 Set the size of the identity map to be used by this descriptor.</div>
</td>
</tr>
<tr id="i342" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setReturningPolicy-org.eclipse.persistence.descriptors.ReturningPolicy-">setReturningPolicy</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/ReturningPolicy.html" title="class in org.eclipse.persistence.descriptors">ReturningPolicy</a>&nbsp;returningPolicy)</code>
<div class="block">PUBLIC:
 Sets the returning policy.</div>
</td>
</tr>
<tr id="i343" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setSequence-org.eclipse.persistence.sequencing.Sequence-">setSequence</a></span>(<a href="../../../../org/eclipse/persistence/sequencing/Sequence.html" title="class in org.eclipse.persistence.sequencing">Sequence</a>&nbsp;sequence)</code>
<div class="block">Set the descriptor's sequence.</div>
</td>
</tr>
<tr id="i344" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setSequenceNumberField-org.eclipse.persistence.internal.helper.DatabaseField-">setSequenceNumberField</a></span>(org.eclipse.persistence.internal.helper.DatabaseField&nbsp;sequenceNumberField)</code>
<div class="block">INTERNAL:
 Set the sequence number field.</div>
</td>
</tr>
<tr id="i345" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setSequenceNumberFieldName-java.lang.String-">setSequenceNumberFieldName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fieldName)</code>
<div class="block">PUBLIC:
 Set the sequence number field name.</div>
</td>
</tr>
<tr id="i346" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setSequenceNumberName-java.lang.String-">setSequenceNumberName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
<div class="block">PUBLIC:
 Set the sequence number name.</div>
</td>
</tr>
<tr id="i347" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setSerializedObjectPolicy-org.eclipse.persistence.descriptors.SerializedObjectPolicy-">setSerializedObjectPolicy</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/SerializedObjectPolicy.html" title="interface in org.eclipse.persistence.descriptors">SerializedObjectPolicy</a>&nbsp;serializedObjectPolicy)</code>
<div class="block">INTERNAL:</div>
</td>
</tr>
<tr id="i348" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setSessionName-java.lang.String-">setSessionName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;sessionName)</code>
<div class="block">INTERNAL:
 Set the name of the session local to this descriptor.</div>
</td>
</tr>
<tr id="i349" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldAcquireCascadedLocks-boolean-">setShouldAcquireCascadedLocks</a></span>(boolean&nbsp;shouldAcquireCascadedLocks)</code>
<div class="block">INTERNAL:
 PERF: Set if deferred locks should be used.</div>
</td>
</tr>
<tr id="i350" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldAlwaysConformResultsInUnitOfWork-boolean-">setShouldAlwaysConformResultsInUnitOfWork</a></span>(boolean&nbsp;shouldAlwaysConformResultsInUnitOfWork)</code>
<div class="block">PUBLIC:
 set if the descriptor is defined to always conform the results in unit of work in read query.</div>
</td>
</tr>
<tr id="i351" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldAlwaysRefreshCache-boolean-">setShouldAlwaysRefreshCache</a></span>(boolean&nbsp;shouldAlwaysRefreshCache)</code>
<div class="block">PUBLIC:
 When the <CODE>shouldAlwaysRefreshCache</CODE> argument passed into this method is <CODE>true</CODE>,
 this method configures a <CODE>ClassDescriptor</CODE> to always refresh the cache if data is received from
 the database by any query.</div>
</td>
</tr>
<tr id="i352" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldAlwaysRefreshCacheOnRemote-boolean-">setShouldAlwaysRefreshCacheOnRemote</a></span>(boolean&nbsp;shouldAlwaysRefreshCacheOnRemote)</code>
<div class="block">PUBLIC:
 When the <CODE>shouldAlwaysRefreshCacheOnRemote</CODE> argument passed into this method is <CODE>true</CODE>,
 this method configures a <CODE>ClassDescriptor</CODE> to always remotely refresh the cache if data is received from
 the database by any query in a <a href="../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html" title="class in org.eclipse.persistence.sessions.remote"><code>RemoteSession</code></a>.</div>
</td>
</tr>
<tr id="i353" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldBeReadOnly-boolean-">setShouldBeReadOnly</a></span>(boolean&nbsp;shouldBeReadOnly)</code>
<div class="block">PUBLIC:
 Define if the descriptor reference class is read-only</div>
</td>
</tr>
<tr id="i354" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldDisableCacheHits-boolean-">setShouldDisableCacheHits</a></span>(boolean&nbsp;shouldDisableCacheHits)</code>
<div class="block">PUBLIC:
 Set if cache hits on primary key read object queries should be disabled.</div>
</td>
</tr>
<tr id="i355" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldDisableCacheHitsOnRemote-boolean-">setShouldDisableCacheHitsOnRemote</a></span>(boolean&nbsp;shouldDisableCacheHitsOnRemote)</code>
<div class="block">PUBLIC:
 Set if the remote session cache hits on primary key read object queries is allowed or not.</div>
</td>
</tr>
<tr id="i356" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldLockForClone-boolean-">setShouldLockForClone</a></span>(boolean&nbsp;shouldLockForClone)</code>
<div class="block">ADVANCED:
 When set to false, this setting will allow the UOW to avoid locking the shared cache instance in order to perform a clone.</div>
</td>
</tr>
<tr id="i357" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldOnlyRefreshCacheIfNewerVersion-boolean-">setShouldOnlyRefreshCacheIfNewerVersion</a></span>(boolean&nbsp;shouldOnlyRefreshCacheIfNewerVersion)</code>
<div class="block">PUBLIC:
 When the <CODE>shouldOnlyRefreshCacheIfNewerVersion</CODE> argument passed into this method is <CODE>true</CODE>,
 this method configures a <CODE>ClassDescriptor</CODE> to only refresh the cache if the data received from the database
 by a query is newer than the data in the cache (as determined by the optimistic locking field) and as long as one of the following is true:

 
 the <CODE>ClassDescriptor</CODE> was configured by calling <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCache--"><code>alwaysRefreshCache()</code></a> or <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCacheOnRemote--"><code>alwaysRefreshCacheOnRemote()</code></a>,
 the query was configured by calling <a href="../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html#refreshIdentityMapResult--"><code>ObjectLevelReadQuery.refreshIdentityMapResult()</code></a>, or
 the query was a call to <a href="../../../../org/eclipse/persistence/sessions/Session.html#refreshObject-java.lang.Object-"><code>Session.refreshObject(java.lang.Object)</code></a>
 </div>
</td>
</tr>
<tr id="i358" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldOrderMappings-boolean-">setShouldOrderMappings</a></span>(boolean&nbsp;shouldOrderMappings)</code>
<div class="block">PUBLIC:
 This is set to turn off the ordering of mappings.</div>
</td>
</tr>
<tr id="i359" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldRegisterResultsInUnitOfWork-boolean-">setShouldRegisterResultsInUnitOfWork</a></span>(boolean&nbsp;shouldRegisterResultsInUnitOfWork)</code>
<div class="block">INTERNAL:
 Set to false to have queries conform to a UnitOfWork without registering
 any additional objects not already in that UnitOfWork.</div>
</td>
</tr>
<tr id="i360" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setTableName-java.lang.String-">setTableName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tableName)</code>
<div class="block">PUBLIC:
 Specify the table name for the class of objects the receiver describes.</div>
</td>
</tr>
<tr id="i361" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setTableNames-java.util.Vector-">setTableNames</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;tableNames)</code>
<div class="block">PUBLIC:
 Specify the all table names for the class of objects the receiver describes.</div>
</td>
</tr>
<tr id="i362" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setTablePerClassPolicy-org.eclipse.persistence.descriptors.TablePerClassPolicy-">setTablePerClassPolicy</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/TablePerClassPolicy.html" title="class in org.eclipse.persistence.descriptors">TablePerClassPolicy</a>&nbsp;tablePerClassPolicy)</code>
<div class="block">INTERNAL:
 Sets the table per class policy.</div>
</td>
</tr>
<tr id="i363" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setTableQualifier-java.lang.String-">setTableQualifier</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tableQualifier)</code>
<div class="block">PUBLIC: Set the table Qualifier for this descriptor.</div>
</td>
</tr>
<tr id="i364" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setTables-java.util.Vector-">setTables</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;&nbsp;theTables)</code>
<div class="block">INTERNAL:
 Sets the tables</div>
</td>
</tr>
<tr id="i365" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setUnitOfWorkCacheIsolationLevel-int-">setUnitOfWorkCacheIsolationLevel</a></span>(int&nbsp;unitOfWorkCacheIsolationLevel)</code>
<div class="block">ADVANCED:
 This setting configures how the session cache will be used in a unit of work.</div>
</td>
</tr>
<tr id="i366" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setVirtualAttributeMethods-java.util.List-">setVirtualAttributeMethods</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.descriptors.VirtualAttributeMethodInfo&gt;&nbsp;virtualAttributeMethods)</code>
<div class="block">INTERNAL:
 Set the list of methods used my mappings with virtual access
 this list is used to determine which methods to weave</div>
</td>
</tr>
<tr id="i367" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setWrapperPolicy-org.eclipse.persistence.descriptors.WrapperPolicy-">setWrapperPolicy</a></span>(<a href="../../../../org/eclipse/persistence/descriptors/WrapperPolicy.html" title="interface in org.eclipse.persistence.descriptors">WrapperPolicy</a>&nbsp;wrapperPolicy)</code>
<div class="block">ADVANCED:
 Sets the WrapperPolicy for this descriptor.</div>
</td>
</tr>
<tr id="i368" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldAcquireCascadedLocks--">shouldAcquireCascadedLocks</a></span>()</code>
<div class="block">INTERNAL:
 PERF: Return if deferred locks should be used.</div>
</td>
</tr>
<tr id="i369" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldAlwaysConformResultsInUnitOfWork--">shouldAlwaysConformResultsInUnitOfWork</a></span>()</code>
<div class="block">PUBLIC:
 Return if the descriptor is defined to always conform the results in unit of work in read query.</div>
</td>
</tr>
<tr id="i370" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldAlwaysRefreshCache--">shouldAlwaysRefreshCache</a></span>()</code>
<div class="block">PUBLIC:
 This method returns <CODE>true</CODE> if the <CODE>ClassDescriptor</CODE> is configured to always refresh
 the cache if data is received from the database by any query.</div>
</td>
</tr>
<tr id="i371" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldAlwaysRefreshCacheOnRemote--">shouldAlwaysRefreshCacheOnRemote</a></span>()</code>
<div class="block">PUBLIC:
 This method returns <CODE>true</CODE> if the <CODE>ClassDescriptor</CODE> is configured to always remotely
 refresh the cache if data is received from the database by any query in a <a href="../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html" title="class in org.eclipse.persistence.sessions.remote"><code>RemoteSession</code></a>.</div>
</td>
</tr>
<tr id="i372" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldBeReadOnly--">shouldBeReadOnly</a></span>()</code>
<div class="block">PUBLIC:
 Return if the descriptor reference class is defined as read-only</div>
</td>
</tr>
<tr id="i373" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldDisableCacheHits--">shouldDisableCacheHits</a></span>()</code>
<div class="block">PUBLIC:
 Return if for cache hits on primary key read object queries to be disabled.</div>
</td>
</tr>
<tr id="i374" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldDisableCacheHitsOnRemote--">shouldDisableCacheHitsOnRemote</a></span>()</code>
<div class="block">PUBLIC:
 Return if the remote server session cache hits on primary key read object queries is aloowed or not.</div>
</td>
</tr>
<tr id="i375" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldIsolateObjectsInUnitOfWork--">shouldIsolateObjectsInUnitOfWork</a></span>()</code>
<div class="block">INTERNAL:
 Return if the unit of work should by-pass the session cache.</div>
</td>
</tr>
<tr id="i376" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldIsolateObjectsInUnitOfWorkEarlyTransaction--">shouldIsolateObjectsInUnitOfWorkEarlyTransaction</a></span>()</code>
<div class="block">INTERNAL:
 Return if the unit of work should by-pass the session cache after an early transaction.</div>
</td>
</tr>
<tr id="i377" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldIsolateProtectedObjectsInUnitOfWork--">shouldIsolateProtectedObjectsInUnitOfWork</a></span>()</code>
<div class="block">INTERNAL:
 Return if the unit of work should by-pass the IsolatedSession cache.</div>
</td>
</tr>
<tr id="i378" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldLockForClone--">shouldLockForClone</a></span>()</code>
<div class="block">ADVANCED:
 When set to false, this setting will allow the UOW to avoid locking the shared cache instance in order to perform a clone.</div>
</td>
</tr>
<tr id="i379" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldOnlyRefreshCacheIfNewerVersion--">shouldOnlyRefreshCacheIfNewerVersion</a></span>()</code>
<div class="block">PUBLIC:
 This method returns <CODE>true</CODE> if the <CODE>ClassDescriptor</CODE> is configured to only refresh the cache
 if the data received from the database by a query is newer than the data in the cache (as determined by the
 optimistic locking field).</div>
</td>
</tr>
<tr id="i380" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldOrderMappings--">shouldOrderMappings</a></span>()</code>
<div class="block">INTERNAL:
 Return if mappings should be ordered or not.</div>
</td>
</tr>
<tr id="i381" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldRegisterResultsInUnitOfWork--">shouldRegisterResultsInUnitOfWork</a></span>()</code>
<div class="block">INTERNAL:
 Allows one to do conforming in a UnitOfWork without registering.</div>
</td>
</tr>
<tr id="i382" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseAdditionalJoinExpression--">shouldUseAdditionalJoinExpression</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor should using an additional join expresison.</div>
</td>
</tr>
<tr id="i383" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseCacheIdentityMap--">shouldUseCacheIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor is using CacheIdentityMap</div>
</td>
</tr>
<tr id="i384" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseFullChangeSetsForNewObjects--">shouldUseFullChangeSetsForNewObjects</a></span>()</code>
<div class="block">INTERNAL:
 Return if change sets are required for new objects.</div>
</td>
</tr>
<tr id="i385" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseFullIdentityMap--">shouldUseFullIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor is using FullIdentityMap</div>
</td>
</tr>
<tr id="i386" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseHardCacheWeakIdentityMap--">shouldUseHardCacheWeakIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor is using HardCacheWeakIdentityMap.</div>
</td>
</tr>
<tr id="i387" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseNoIdentityMap--">shouldUseNoIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor is using NoIdentityMap</div>
</td>
</tr>
<tr id="i388" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseRemoteCacheIdentityMap--">shouldUseRemoteCacheIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor is using CacheIdentityMap</div>
</td>
</tr>
<tr id="i389" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseRemoteFullIdentityMap--">shouldUseRemoteFullIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor is using FullIdentityMap</div>
</td>
</tr>
<tr id="i390" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseRemoteHardCacheWeakIdentityMap--">shouldUseRemoteHardCacheWeakIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor is using HardCacheWeakIdentityMap</div>
</td>
</tr>
<tr id="i391" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseRemoteNoIdentityMap--">shouldUseRemoteNoIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor is using NoIdentityMap</div>
</td>
</tr>
<tr id="i392" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseRemoteSoftCacheWeakIdentityMap--">shouldUseRemoteSoftCacheWeakIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor is using SoftCacheWeakIdentityMap</div>
</td>
</tr>
<tr id="i393" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseRemoteSoftIdentityMap--">shouldUseRemoteSoftIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor is using SoftIdentityMap</div>
</td>
</tr>
<tr id="i394" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseRemoteWeakIdentityMap--">shouldUseRemoteWeakIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor is using WeakIdentityMap</div>
</td>
</tr>
<tr id="i395" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseSessionCacheInUnitOfWorkEarlyTransaction--">shouldUseSessionCacheInUnitOfWorkEarlyTransaction</a></span>()</code>
<div class="block">INTERNAL:
 Return if the unit of work should use the session cache after an early transaction.</div>
</td>
</tr>
<tr id="i396" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseSoftCacheWeakIdentityMap--">shouldUseSoftCacheWeakIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor is using SoftCacheWeakIdentityMap.</div>
</td>
</tr>
<tr id="i397" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseSoftIdentityMap--">shouldUseSoftIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor is using SoftIdentityMap</div>
</td>
</tr>
<tr id="i398" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldUseWeakIdentityMap--">shouldUseWeakIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Return true if this descriptor is using WeakIdentityMap</div>
</td>
</tr>
<tr id="i399" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#supportsChangeTracking-org.eclipse.persistence.sessions.Project-">supportsChangeTracking</a></span>(<a href="../../../../org/eclipse/persistence/sessions/Project.html" title="class in org.eclipse.persistence.sessions">Project</a>&nbsp;project)</code>
<div class="block">INTERNAL:
 Returns whether this descriptor is capable of supporting weaved change tracking.</div>
</td>
</tr>
<tr id="i400" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#toggleAdditionalTablePrimaryKeyFields--">toggleAdditionalTablePrimaryKeyFields</a></span>()</code>
<div class="block">INTERNAL:
 Eclipselink needs additionalTablePKFields entries to be associated with tables other than the main (getTables.get(0)) one.</div>
</td>
</tr>
<tr id="i401" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#toString--">toString</a></span>()</code>
<div class="block">PUBLIC:
 Returns a brief string representation of the receiver.</div>
</td>
</tr>
<tr id="i402" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useAllFieldsLocking--">useAllFieldsLocking</a></span>()</code>
<div class="block">PUBLIC:
 Set the locking policy an all fields locking policy.</div>
</td>
</tr>
<tr id="i403" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useCacheIdentityMap--">useCacheIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Set the class of identity map to be the cache identity map.</div>
</td>
</tr>
<tr id="i404" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useChangedFieldsLocking--">useChangedFieldsLocking</a></span>()</code>
<div class="block">PUBLIC:
 Set the locking policy a changed fields locking policy.</div>
</td>
</tr>
<tr id="i405" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useCloneCopyPolicy--">useCloneCopyPolicy</a></span>()</code>
<div class="block">PUBLIC:
 Specifies that the creation of clones within a unit of work is done by
 sending the #clone() method to the original object.</div>
</td>
</tr>
<tr id="i406" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useCloneCopyPolicy-java.lang.String-">useCloneCopyPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;cloneMethodName)</code>
<div class="block">PUBLIC:
 Specifies that the creation of clones within a unit of work is done by
 sending the cloneMethodName method to the original object.</div>
</td>
</tr>
<tr id="i407" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useDefaultConstructorInstantiationPolicy--">useDefaultConstructorInstantiationPolicy</a></span>()</code>
<div class="block">PUBLIC:
 Use the default constructor to create new instances of objects built from the database.</div>
</td>
</tr>
<tr id="i408" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Class-java.lang.String-">useFactoryInstantiationPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;factoryClass,
                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;methodName)</code>
<div class="block">PUBLIC:
 Use an object factory to create new instances of objects built from the database.</div>
</td>
</tr>
<tr id="i409" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Class-java.lang.String-java.lang.String-">useFactoryInstantiationPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;factoryClass,
                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;methodName,
                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;factoryMethodName)</code>
<div class="block">PUBLIC:
 Use an object factory to create new instances of objects built from the database.</div>
</td>
</tr>
<tr id="i410" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Object-java.lang.String-">useFactoryInstantiationPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;factory,
                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;methodName)</code>
<div class="block">PUBLIC:
 Use an object factory to create new instances of objects built from the database.</div>
</td>
</tr>
<tr id="i411" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.String-java.lang.String-">useFactoryInstantiationPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;factoryClassName,
                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;methodName)</code>
<div class="block">INTERNAL:
 Set the factory class name, used by the MW.</div>
</td>
</tr>
<tr id="i412" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.String-java.lang.String-java.lang.String-">useFactoryInstantiationPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;factoryClassName,
                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;methodName,
                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;factoryMethodName)</code>
<div class="block">INTERNAL:
 Set the factory class name, used by the MW.</div>
</td>
</tr>
<tr id="i413" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFullIdentityMap--">useFullIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Set the class of identity map to be the full identity map.</div>
</td>
</tr>
<tr id="i414" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useHardCacheWeakIdentityMap--">useHardCacheWeakIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Set the class of identity map to be the hard cache weak identity map.</div>
</td>
</tr>
<tr id="i415" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useInstantiationCopyPolicy--">useInstantiationCopyPolicy</a></span>()</code>
<div class="block">PUBLIC:
 Specifies that the creation of clones within a unit of work is done by building
 a new instance using the
 technique indicated by the descriptor's instantiation policy
 (which by default is to use the
 the default constructor).</div>
</td>
</tr>
<tr id="i416" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useMethodInstantiationPolicy-java.lang.String-">useMethodInstantiationPolicy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;staticMethodName)</code>
<div class="block">PUBLIC:
 Use the specified static method to create new instances of objects built from the database.</div>
</td>
</tr>
<tr id="i417" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useNoIdentityMap--">useNoIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Set the class of identity map to be the no identity map.</div>
</td>
</tr>
<tr id="i418" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#usePropertyAccessForWeaving--">usePropertyAccessForWeaving</a></span>()</code>
<div class="block">INTERNAL:
 Record that this descriptor uses property access.</div>
</td>
</tr>
<tr id="i419" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useRemoteCacheIdentityMap--">useRemoteCacheIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Set the class of identity map to be the cache identity map.</div>
</td>
</tr>
<tr id="i420" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useRemoteFullIdentityMap--">useRemoteFullIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Set the class of identity map to be the full identity map.</div>
</td>
</tr>
<tr id="i421" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useRemoteHardCacheWeakIdentityMap--">useRemoteHardCacheWeakIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Set the class of identity map to be the hard cache weak identity map.</div>
</td>
</tr>
<tr id="i422" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useRemoteNoIdentityMap--">useRemoteNoIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Set the class of identity map to be the no identity map.</div>
</td>
</tr>
<tr id="i423" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useRemoteSoftCacheWeakIdentityMap--">useRemoteSoftCacheWeakIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Set the class of identity map to be the soft cache weak identity map.</div>
</td>
</tr>
<tr id="i424" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useRemoteSoftIdentityMap--">useRemoteSoftIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Set the class of identity map to be the soft identity map.</div>
</td>
</tr>
<tr id="i425" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useRemoteWeakIdentityMap--">useRemoteWeakIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Set the class of identity map to be the weak identity map.</div>
</td>
</tr>
<tr id="i426" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useSelectedFieldsLocking-java.util.Vector-">useSelectedFieldsLocking</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;fieldNames)</code>
<div class="block">PUBLIC:
 Set the locking policy a selected fields locking policy.</div>
</td>
</tr>
<tr id="i427" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#usesFieldLocking--">usesFieldLocking</a></span>()</code>
<div class="block">INTERNAL:
 Return true if the receiver uses either all or changed fields for optimistic locking.</div>
</td>
</tr>
<tr id="i428" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useSoftCacheWeakIdentityMap--">useSoftCacheWeakIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Set the class of identity map to be the soft cache weak identity map.</div>
</td>
</tr>
<tr id="i429" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useSoftIdentityMap--">useSoftIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Set the class of identity map to be the soft identity map.</div>
</td>
</tr>
<tr id="i430" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#usesOptimisticLocking--">usesOptimisticLocking</a></span>()</code>
<div class="block">PUBLIC:
 Return true if the receiver uses write (optimistic) locking.</div>
</td>
</tr>
<tr id="i431" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#usesPropertyAccessForWeaving--">usesPropertyAccessForWeaving</a></span>()</code>
<div class="block">INTERNAL:
 Return whether this descriptor uses property access.</div>
</td>
</tr>
<tr id="i432" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#usesSequenceNumbers--">usesSequenceNumbers</a></span>()</code>
<div class="block">PUBLIC:
 Return true if the receiver uses sequence numbers.</div>
</td>
</tr>
<tr id="i433" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#usesVersionLocking--">usesVersionLocking</a></span>()</code>
<div class="block">PUBLIC:
 Return true if the receiver uses version optimistic locking.</div>
</td>
</tr>
<tr id="i434" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useTimestampLocking-java.lang.String-">useTimestampLocking</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;writeLockFieldName)</code>
<div class="block">PUBLIC:
 Use the Timestamps locking policy and storing the value in the cache key
 #see useVersionLocking(String)</div>
</td>
</tr>
<tr id="i435" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useTimestampLocking-java.lang.String-boolean-">useTimestampLocking</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;writeLockFieldName,
                   boolean&nbsp;shouldStoreInCache)</code>
<div class="block">PUBLIC:
 Set the locking policy to use timestamp version locking.</div>
</td>
</tr>
<tr id="i436" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useVersionLocking-java.lang.String-">useVersionLocking</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;writeLockFieldName)</code>
<div class="block">PUBLIC:
 Default to use the version locking policy and storing the value in the cache key
 #see useVersionLocking(String)</div>
</td>
</tr>
<tr id="i437" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useVersionLocking-java.lang.String-boolean-">useVersionLocking</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;writeLockFieldName,
                 boolean&nbsp;shouldStoreInCache)</code>
<div class="block">PUBLIC:
 Set the locking policy to use numeric version locking.</div>
</td>
</tr>
<tr id="i438" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useWeakIdentityMap--">useWeakIdentityMap</a></span>()</code>
<div class="block">PUBLIC:
 Set the class of identity map to be the weak identity map.</div>
</td>
</tr>
<tr id="i439" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#validateAfterInitialization-org.eclipse.persistence.internal.sessions.AbstractSession-">validateAfterInitialization</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Validate the entire post-initialization descriptor.</div>
</td>
</tr>
<tr id="i440" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#validateBeforeInitialization-org.eclipse.persistence.internal.sessions.AbstractSession-">validateBeforeInitialization</a></span>(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</code>
<div class="block">INTERNAL:
 Validate the entire pre-initialization descriptor.</div>
</td>
</tr>
<tr id="i441" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#validateMappingType-org.eclipse.persistence.mappings.DatabaseMapping-">validateMappingType</a></span>(<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;mapping)</code>&nbsp;</td>
</tr>
<tr id="i442" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#verifyMultipleTableInsertOrder--">verifyMultipleTableInsertOrder</a></span>()</code>
<div class="block">INTERNAL:
 Verify multiple table insert order provided by the user.</div>
</td>
</tr>
<tr id="i443" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#verifyMultipleTablesForeignKeysTables--">verifyMultipleTablesForeignKeysTables</a></span>()</code>
<div class="block">INTERNAL:
 Verify that the tables specified in multipleTablesForeignKeysTables are valid.</div>
</td>
</tr>
<tr id="i444" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#verifyTableQualifiers-org.eclipse.persistence.internal.databaseaccess.Platform-">verifyTableQualifiers</a></span>(org.eclipse.persistence.internal.databaseaccess.Platform&nbsp;platform)</code>
<div class="block">INTERNAL:
 Check that the qualifier on the table names are properly set.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.eclipse.persistence.core.descriptors.CoreDescriptor">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.persistence.core.descriptors.<a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a></h3>
<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#addAttributeGroup-ATTRIBUTE_GROUP-">addAttributeGroup</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a name="javaClass">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>javaClass</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a> javaClass</pre>
</li>
</ul>
<a name="javaClassName">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>javaClassName</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> javaClassName</pre>
</li>
</ul>
<a name="tables">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>tables</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt; tables</pre>
</li>
</ul>
<a name="defaultTable">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultTable</h4>
<pre>protected transient&nbsp;org.eclipse.persistence.internal.helper.DatabaseTable defaultTable</pre>
</li>
</ul>
<a name="primaryKeyFields">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>primaryKeyFields</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt; primaryKeyFields</pre>
</li>
</ul>
<a name="additionalTablePrimaryKeyFields">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>additionalTablePrimaryKeyFields</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField,org.eclipse.persistence.internal.helper.DatabaseField&gt;&gt; additionalTablePrimaryKeyFields</pre>
</li>
</ul>
<a name="multipleTableInsertOrder">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>multipleTableInsertOrder</h4>
<pre>protected transient&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt; multipleTableInsertOrder</pre>
</li>
</ul>
<a name="multipleTableForeignKeys">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>multipleTableForeignKeys</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;&gt; multipleTableForeignKeys</pre>
</li>
</ul>
<a name="isCascadeOnDeleteSetOnDatabaseOnSecondaryTables">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCascadeOnDeleteSetOnDatabaseOnSecondaryTables</h4>
<pre>protected&nbsp;boolean isCascadeOnDeleteSetOnDatabaseOnSecondaryTables</pre>
<div class="block">Support delete cascading on the database for multiple and inheritance tables.</div>
</li>
</ul>
<a name="fields">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>fields</h4>
<pre>protected transient&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt; fields</pre>
</li>
</ul>
<a name="allFields">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>allFields</h4>
<pre>protected transient&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt; allFields</pre>
</li>
</ul>
<a name="selectionFields">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>selectionFields</h4>
<pre>protected transient&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt; selectionFields</pre>
</li>
</ul>
<a name="allSelectionFields">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>allSelectionFields</h4>
<pre>protected transient&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt; allSelectionFields</pre>
</li>
</ul>
<a name="returnFieldsToGenerateInsert">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>returnFieldsToGenerateInsert</h4>
<pre>protected transient&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt; returnFieldsToGenerateInsert</pre>
</li>
</ul>
<a name="returnFieldsToGenerateUpdate">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>returnFieldsToGenerateUpdate</h4>
<pre>protected transient&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt; returnFieldsToGenerateUpdate</pre>
</li>
</ul>
<a name="returnFieldsToMergeInsert">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>returnFieldsToMergeInsert</h4>
<pre>protected transient&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt; returnFieldsToMergeInsert</pre>
</li>
</ul>
<a name="returnFieldsToMergeUpdate">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>returnFieldsToMergeUpdate</h4>
<pre>protected transient&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt; returnFieldsToMergeUpdate</pre>
</li>
</ul>
<a name="mappings">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mappings</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt; mappings</pre>
</li>
</ul>
<a name="referencingClasses">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>referencingClasses</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html" title="class in org.eclipse.persistence.descriptors">ClassDescriptor</a>&gt; referencingClasses</pre>
</li>
</ul>
<a name="lockableMappings">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>lockableMappings</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt; lockableMappings</pre>
</li>
</ul>
<a name="queryKeys">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>queryKeys</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/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/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../org/eclipse/persistence/mappings/querykeys/QueryKey.html" title="class in org.eclipse.persistence.mappings.querykeys">QueryKey</a>&gt; queryKeys</pre>
</li>
</ul>
<a name="sequenceNumberName">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sequenceNumberName</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> sequenceNumberName</pre>
</li>
</ul>
<a name="sequenceNumberField">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sequenceNumberField</h4>
<pre>protected&nbsp;org.eclipse.persistence.internal.helper.DatabaseField sequenceNumberField</pre>
</li>
</ul>
<a name="sessionName">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sessionName</h4>
<pre>protected transient&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> sessionName</pre>
</li>
</ul>
<a name="constraintDependencies">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>constraintDependencies</h4>
<pre>protected transient&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a> constraintDependencies</pre>
</li>
</ul>
<a name="amendmentMethodName">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>amendmentMethodName</h4>
<pre>protected transient&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> amendmentMethodName</pre>
</li>
</ul>
<a name="amendmentClass">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>amendmentClass</h4>
<pre>protected transient&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a> amendmentClass</pre>
</li>
</ul>
<a name="amendmentClassName">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>amendmentClassName</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> amendmentClassName</pre>
</li>
</ul>
<a name="alias">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>alias</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> alias</pre>
</li>
</ul>
<a name="shouldBeReadOnly">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldBeReadOnly</h4>
<pre>protected&nbsp;boolean shouldBeReadOnly</pre>
</li>
</ul>
<a name="shouldAlwaysConformResultsInUnitOfWork">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldAlwaysConformResultsInUnitOfWork</h4>
<pre>protected&nbsp;boolean shouldAlwaysConformResultsInUnitOfWork</pre>
</li>
</ul>
<a name="shouldRegisterResultsInUnitOfWork">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldRegisterResultsInUnitOfWork</h4>
<pre>protected&nbsp;boolean shouldRegisterResultsInUnitOfWork</pre>
</li>
</ul>
<a name="queryManager">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>queryManager</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/DescriptorQueryManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorQueryManager</a> queryManager</pre>
</li>
</ul>
<a name="copyPolicy">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyPolicy</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/copying/CopyPolicy.html" title="interface in org.eclipse.persistence.descriptors.copying">CopyPolicy</a> copyPolicy</pre>
</li>
</ul>
<a name="copyPolicyClassName">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyPolicyClassName</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> copyPolicyClassName</pre>
</li>
</ul>
<a name="interfacePolicy">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>interfacePolicy</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/InterfacePolicy.html" title="class in org.eclipse.persistence.descriptors">InterfacePolicy</a> interfacePolicy</pre>
</li>
</ul>
<a name="optimisticLockingPolicy">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>optimisticLockingPolicy</h4>
<pre>protected&nbsp;org.eclipse.persistence.internal.descriptors.OptimisticLockingPolicy optimisticLockingPolicy</pre>
</li>
</ul>
<a name="cascadeLockingPolicies">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cascadeLockingPolicies</h4>
<pre>protected transient&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.descriptors.CascadeLockingPolicy&gt; cascadeLockingPolicies</pre>
</li>
</ul>
<a name="wrapperPolicy">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>wrapperPolicy</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/WrapperPolicy.html" title="interface in org.eclipse.persistence.descriptors">WrapperPolicy</a> wrapperPolicy</pre>
</li>
</ul>
<a name="changePolicy">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>changePolicy</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/changetracking/ObjectChangePolicy.html" title="interface in org.eclipse.persistence.descriptors.changetracking">ObjectChangePolicy</a> changePolicy</pre>
</li>
</ul>
<a name="returningPolicy">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>returningPolicy</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/ReturningPolicy.html" title="class in org.eclipse.persistence.descriptors">ReturningPolicy</a> returningPolicy</pre>
</li>
</ul>
<a name="returningPolicies">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>returningPolicies</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/descriptors/ReturningPolicy.html" title="class in org.eclipse.persistence.descriptors">ReturningPolicy</a>&gt; returningPolicies</pre>
</li>
</ul>
<a name="historyPolicy">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>historyPolicy</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/history/HistoryPolicy.html" title="class in org.eclipse.persistence.history">HistoryPolicy</a> historyPolicy</pre>
</li>
</ul>
<a name="partitioningPolicyName">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>partitioningPolicyName</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> partitioningPolicyName</pre>
</li>
</ul>
<a name="partitioningPolicy">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>partitioningPolicy</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/partitioning/PartitioningPolicy.html" title="class in org.eclipse.persistence.descriptors.partitioning">PartitioningPolicy</a> partitioningPolicy</pre>
</li>
</ul>
<a name="cmpPolicy">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cmpPolicy</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/CMPPolicy.html" title="class in org.eclipse.persistence.descriptors">CMPPolicy</a> cmpPolicy</pre>
</li>
</ul>
<a name="cachePolicy">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cachePolicy</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/CachePolicy.html" title="class in org.eclipse.persistence.descriptors">CachePolicy</a> cachePolicy</pre>
</li>
</ul>
<a name="multitenantPolicy">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>multitenantPolicy</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/MultitenantPolicy.html" title="interface in org.eclipse.persistence.descriptors">MultitenantPolicy</a> multitenantPolicy</pre>
</li>
</ul>
<a name="serializedObjectPolicy">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>serializedObjectPolicy</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/SerializedObjectPolicy.html" title="interface in org.eclipse.persistence.descriptors">SerializedObjectPolicy</a> serializedObjectPolicy</pre>
</li>
</ul>
<a name="fetchGroupManager">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>fetchGroupManager</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/FetchGroupManager.html" title="class in org.eclipse.persistence.descriptors">FetchGroupManager</a> fetchGroupManager</pre>
</li>
</ul>
<a name="properties">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>properties</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a> properties</pre>
<div class="block">Additional properties may be added.</div>
</li>
</ul>
<a name="unconvertedProperties">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unconvertedProperties</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/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/8/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/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt; unconvertedProperties</pre>
<div class="block">Allow the user to defined un-converted properties which will be initialized at runtime.</div>
</li>
</ul>
<a name="initializationStage">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initializationStage</h4>
<pre>protected transient&nbsp;int initializationStage</pre>
</li>
</ul>
<a name="interfaceInitializationStage">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>interfaceInitializationStage</h4>
<pre>protected transient&nbsp;int interfaceInitializationStage</pre>
</li>
</ul>
<a name="UNINITIALIZED">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>UNINITIALIZED</h4>
<pre>protected static final&nbsp;int UNINITIALIZED</pre>
<div class="block">The following are the [initializationStage] states the descriptor passes through during the initialization.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.UNINITIALIZED">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="PREINITIALIZED">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>PREINITIALIZED</h4>
<pre>protected static final&nbsp;int PREINITIALIZED</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.PREINITIALIZED">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="INITIALIZED">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>INITIALIZED</h4>
<pre>protected static final&nbsp;int INITIALIZED</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.INITIALIZED">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="POST_INITIALIZED">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>POST_INITIALIZED</h4>
<pre>protected static final&nbsp;int POST_INITIALIZED</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.POST_INITIALIZED">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="ERROR">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ERROR</h4>
<pre>protected static final&nbsp;int ERROR</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.ERROR">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="descriptorType">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>descriptorType</h4>
<pre>protected&nbsp;int descriptorType</pre>
</li>
</ul>
<a name="NORMAL">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NORMAL</h4>
<pre>protected static final&nbsp;int NORMAL</pre>
<div class="block">Define valid descriptor types.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.NORMAL">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="INTERFACE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>INTERFACE</h4>
<pre>protected static final&nbsp;int INTERFACE</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.INTERFACE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="AGGREGATE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AGGREGATE</h4>
<pre>protected static final&nbsp;int AGGREGATE</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.AGGREGATE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="AGGREGATE_COLLECTION">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AGGREGATE_COLLECTION</h4>
<pre>protected static final&nbsp;int AGGREGATE_COLLECTION</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.AGGREGATE_COLLECTION">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="shouldOrderMappings">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldOrderMappings</h4>
<pre>protected&nbsp;boolean shouldOrderMappings</pre>
</li>
</ul>
<a name="cacheInvalidationPolicy">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cacheInvalidationPolicy</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/invalidation/CacheInvalidationPolicy.html" title="class in org.eclipse.persistence.descriptors.invalidation">CacheInvalidationPolicy</a> cacheInvalidationPolicy</pre>
</li>
</ul>
<a name="shouldAcquireCascadedLocks">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldAcquireCascadedLocks</h4>
<pre>protected&nbsp;boolean shouldAcquireCascadedLocks</pre>
<div class="block">PERF: Used to optimize cache locking to only acquire deferred locks when required (no-indirection).</div>
</li>
</ul>
<a name="cascadedLockingInitialized">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cascadedLockingInitialized</h4>
<pre>protected&nbsp;boolean cascadedLockingInitialized</pre>
<div class="block">INTERNAL: flag to indicate the initialization state of cascade locking for this descriptor</div>
</li>
</ul>
<a name="hasSimplePrimaryKey">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasSimplePrimaryKey</h4>
<pre>protected&nbsp;boolean hasSimplePrimaryKey</pre>
<div class="block">PERF: Compute and store if the primary key is simple (direct-mapped) to allow fast extraction.</div>
</li>
</ul>
<a name="hasMultipleTableConstraintDependecy">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasMultipleTableConstraintDependecy</h4>
<pre>protected&nbsp;boolean hasMultipleTableConstraintDependecy</pre>
<div class="block">Defines if any mapping reference a field in a secondary table.
 This is used to disable deferring multiple table writes.</div>
</li>
</ul>
<a name="UNDEFINED_OBJECT_CHANGE_BEHAVIOR">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>UNDEFINED_OBJECT_CHANGE_BEHAVIOR</h4>
<pre>public static final&nbsp;int UNDEFINED_OBJECT_CHANGE_BEHAVIOR</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.UNDEFINED_OBJECT_CHANGE_BEHAVIOR">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="SEND_OBJECT_CHANGES">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SEND_OBJECT_CHANGES</h4>
<pre>public static final&nbsp;int SEND_OBJECT_CHANGES</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.SEND_OBJECT_CHANGES">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="INVALIDATE_CHANGED_OBJECTS">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>INVALIDATE_CHANGED_OBJECTS</h4>
<pre>public static final&nbsp;int INVALIDATE_CHANGED_OBJECTS</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.INVALIDATE_CHANGED_OBJECTS">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="SEND_NEW_OBJECTS_WITH_CHANGES">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SEND_NEW_OBJECTS_WITH_CHANGES</h4>
<pre>public static final&nbsp;int SEND_NEW_OBJECTS_WITH_CHANGES</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.SEND_NEW_OBJECTS_WITH_CHANGES">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DO_NOT_SEND_CHANGES">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DO_NOT_SEND_CHANGES</h4>
<pre>public static final&nbsp;int DO_NOT_SEND_CHANGES</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.DO_NOT_SEND_CHANGES">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="UNDEFINED_ISOLATATION">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>UNDEFINED_ISOLATATION</h4>
<pre>public static final&nbsp;int UNDEFINED_ISOLATATION</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.UNDEFINED_ISOLATATION">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="USE_SESSION_CACHE_AFTER_TRANSACTION">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>USE_SESSION_CACHE_AFTER_TRANSACTION</h4>
<pre>public static final&nbsp;int USE_SESSION_CACHE_AFTER_TRANSACTION</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.USE_SESSION_CACHE_AFTER_TRANSACTION">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="ISOLATE_NEW_DATA_AFTER_TRANSACTION">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ISOLATE_NEW_DATA_AFTER_TRANSACTION</h4>
<pre>public static final&nbsp;int ISOLATE_NEW_DATA_AFTER_TRANSACTION</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.ISOLATE_NEW_DATA_AFTER_TRANSACTION">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="ISOLATE_CACHE_AFTER_TRANSACTION">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ISOLATE_CACHE_AFTER_TRANSACTION</h4>
<pre>public static final&nbsp;int ISOLATE_CACHE_AFTER_TRANSACTION</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.ISOLATE_CACHE_AFTER_TRANSACTION">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="ISOLATE_FROM_CLIENT_SESSION">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ISOLATE_FROM_CLIENT_SESSION</h4>
<pre>public static final&nbsp;int ISOLATE_FROM_CLIENT_SESSION</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.ISOLATE_FROM_CLIENT_SESSION">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="ISOLATE_CACHE_ALWAYS">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ISOLATE_CACHE_ALWAYS</h4>
<pre>public static final&nbsp;int ISOLATE_CACHE_ALWAYS</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.eclipse.persistence.descriptors.ClassDescriptor.ISOLATE_CACHE_ALWAYS">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="shouldUseFullChangeSetsForNewObjects">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseFullChangeSetsForNewObjects</h4>
<pre>public static&nbsp;boolean shouldUseFullChangeSetsForNewObjects</pre>
<div class="block">INTERNAL: Backdoor for using changes sets for new objects.</div>
</li>
</ul>
<a name="isNativeConnectionRequired">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isNativeConnectionRequired</h4>
<pre>protected&nbsp;boolean isNativeConnectionRequired</pre>
<div class="block">Allow connection unwrapping to be configured.</div>
</li>
</ul>
<a name="idValidation">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>idValidation</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/annotations/IdValidation.html" title="enum in org.eclipse.persistence.annotations">IdValidation</a> idValidation</pre>
<div class="block">Allow zero primary key validation to be configured.</div>
</li>
</ul>
<a name="primaryKeyIdValidations">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>primaryKeyIdValidations</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/annotations/IdValidation.html" title="enum in org.eclipse.persistence.annotations">IdValidation</a>&gt; primaryKeyIdValidations</pre>
<div class="block">Allow zero primary key validation to be configured per field.</div>
</li>
</ul>
<a name="derivesIdMappings">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>derivesIdMappings</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/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/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt; derivesIdMappings</pre>
</li>
</ul>
<a name="defaultQueryRedirector">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultQueryRedirector</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a> defaultQueryRedirector</pre>
</li>
</ul>
<a name="defaultReadAllQueryRedirector">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultReadAllQueryRedirector</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a> defaultReadAllQueryRedirector</pre>
</li>
</ul>
<a name="defaultReadObjectQueryRedirector">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultReadObjectQueryRedirector</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a> defaultReadObjectQueryRedirector</pre>
</li>
</ul>
<a name="defaultReportQueryRedirector">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultReportQueryRedirector</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a> defaultReportQueryRedirector</pre>
</li>
</ul>
<a name="defaultUpdateObjectQueryRedirector">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultUpdateObjectQueryRedirector</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a> defaultUpdateObjectQueryRedirector</pre>
</li>
</ul>
<a name="defaultInsertObjectQueryRedirector">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultInsertObjectQueryRedirector</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a> defaultInsertObjectQueryRedirector</pre>
</li>
</ul>
<a name="defaultDeleteObjectQueryRedirector">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultDeleteObjectQueryRedirector</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a> defaultDeleteObjectQueryRedirector</pre>
</li>
</ul>
<a name="defaultQueryRedirectorClassName">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultQueryRedirectorClassName</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> defaultQueryRedirectorClassName</pre>
</li>
</ul>
<a name="defaultReadAllQueryRedirectorClassName">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultReadAllQueryRedirectorClassName</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> defaultReadAllQueryRedirectorClassName</pre>
</li>
</ul>
<a name="defaultReadObjectQueryRedirectorClassName">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultReadObjectQueryRedirectorClassName</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> defaultReadObjectQueryRedirectorClassName</pre>
</li>
</ul>
<a name="defaultReportQueryRedirectorClassName">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultReportQueryRedirectorClassName</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> defaultReportQueryRedirectorClassName</pre>
</li>
</ul>
<a name="defaultUpdateObjectQueryRedirectorClassName">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultUpdateObjectQueryRedirectorClassName</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> defaultUpdateObjectQueryRedirectorClassName</pre>
</li>
</ul>
<a name="defaultInsertObjectQueryRedirectorClassName">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultInsertObjectQueryRedirectorClassName</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> defaultInsertObjectQueryRedirectorClassName</pre>
</li>
</ul>
<a name="defaultDeleteObjectQueryRedirectorClassName">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultDeleteObjectQueryRedirectorClassName</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> defaultDeleteObjectQueryRedirectorClassName</pre>
</li>
</ul>
<a name="sequence">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sequence</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/persistence/sequencing/Sequence.html" title="class in org.eclipse.persistence.sequencing">Sequence</a> sequence</pre>
<div class="block">Store the Sequence used for the descriptor.</div>
</li>
</ul>
<a name="mappingsPostCalculateChanges">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mappingsPostCalculateChanges</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt; mappingsPostCalculateChanges</pre>
<div class="block">Mappings that require postCalculateChanges method to be called</div>
</li>
</ul>
<a name="mappingsPostCalculateChangesOnDeleted">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mappingsPostCalculateChangesOnDeleted</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt; mappingsPostCalculateChangesOnDeleted</pre>
<div class="block">Mappings that require postCalculateChangesOnDeleted method to be called</div>
</li>
</ul>
<a name="additionalAggregateCollectionKeyFields">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>additionalAggregateCollectionKeyFields</h4>
<pre>protected transient&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt; additionalAggregateCollectionKeyFields</pre>
<div class="block">used by aggregate descriptors to hold additional fields needed when they are stored in an AggregatateCollection
  These fields are generally foreign key fields that are required in addition to the fields in the descriptor's
  mappings to uniquely identify the Aggregate</div>
</li>
</ul>
<a name="preDeleteMappings">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>preDeleteMappings</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt; preDeleteMappings</pre>
<div class="block">stores a list of mappings that require preDelete as a group prior to the delete individually</div>
</li>
</ul>
<a name="additionalWritableMapKeyFields">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>additionalWritableMapKeyFields</h4>
<pre>protected transient&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt; additionalWritableMapKeyFields</pre>
<div class="block">stores fields that are written by Map key mappings so they can be checked for multiple writable mappings</div>
</li>
</ul>
<a name="hasRelationships">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasRelationships</h4>
<pre>protected&nbsp;boolean hasRelationships</pre>
<div class="block">whether this descriptor has any relationships through its mappings, through inheritance, or through aggregates</div>
</li>
</ul>
<a name="foreignKeyValuesForCaching">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>foreignKeyValuesForCaching</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt; foreignKeyValuesForCaching</pre>
<div class="block">Stores a set of FK fields that will be cached to later retrieve noncacheable mappings</div>
</li>
</ul>
<a name="hasNoncacheableMappings">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasNoncacheableMappings</h4>
<pre>protected&nbsp;boolean hasNoncacheableMappings</pre>
<div class="block">caches if this descriptor has any non cacheable mappings</div>
</li>
</ul>
<a name="weavingUsesPropertyAccess">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>weavingUsesPropertyAccess</h4>
<pre>protected&nbsp;boolean weavingUsesPropertyAccess</pre>
<div class="block">This flag stores whether this descriptor is using Property access based on JPA semantics.  It is used to modify
 the behavior of our weaving functionality as it pertains to adding annotations to fields</div>
</li>
</ul>
<a name="virtualAttributeMethods">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>virtualAttributeMethods</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.descriptors.VirtualAttributeMethodInfo&gt; virtualAttributeMethods</pre>
<div class="block">A list of methods that are used by virtual mappings.  This list is used to control weaving of methods
 used for virtual access</div>
</li>
</ul>
<a name="accessorTree">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>accessorTree</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/AttributeAccessor.html" title="class in org.eclipse.persistence.mappings">AttributeAccessor</a>&gt; accessorTree</pre>
<div class="block">A list of AttributeAccessors in order of access from root to leaf to arrive at current AggregateDescriptor.
 Only application for Aggregate Descriptors.</div>
</li>
</ul>
<a name="descriptorCustomizerClassName">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>descriptorCustomizerClassName</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> descriptorCustomizerClassName</pre>
<div class="block">JPA DescriptorCustomizer list stored here to preserve it when caching the project</div>
</li>
</ul>
<a name="shouldLockForClone">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>shouldLockForClone</h4>
<pre>protected&nbsp;boolean shouldLockForClone</pre>
<div class="block">This flag controls if a UOW should acquire locks for clone or simple clone the instance passed to registerExistingObject.  If the IdentityMap type does not
 have concurrent access this can save a return to the identity map for cloning.</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="ClassDescriptor--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ClassDescriptor</h4>
<pre>public&nbsp;ClassDescriptor()</pre>
<div class="block">PUBLIC:
 Return a new descriptor.</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="addAbstractQueryKey-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addAbstractQueryKey</h4>
<pre>public&nbsp;void&nbsp;addAbstractQueryKey(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queryKeyName)</pre>
<div class="block">PUBLIC:
 This method should only be used for interface descriptors.  It
 adds an abstract query key to the interface descriptor.  Any
 implementors of that interface must define the query key
 defined by this abstract query key.</div>
</li>
</ul>
<a name="addCascadeLockingPolicy-org.eclipse.persistence.internal.descriptors.CascadeLockingPolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addCascadeLockingPolicy</h4>
<pre>public&nbsp;void&nbsp;addCascadeLockingPolicy(org.eclipse.persistence.internal.descriptors.CascadeLockingPolicy&nbsp;policy)</pre>
<div class="block">INTERNAL:
 Add the cascade locking policy to all children that have a relationship to this descriptor
 either by inheritance or by encapsulation/aggregation.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>policy</code> - - the CascadeLockingPolicy</dd>
</dl>
</li>
</ul>
<a name="addConstraintDependencies-java.lang.Class-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addConstraintDependencies</h4>
<pre>public&nbsp;void&nbsp;addConstraintDependencies(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;dependencies)</pre>
<div class="block">ADVANCED:
 EclipseLink automatically orders database access through the foreign key information provided in 1:1 and 1:m mappings.
 In some case when 1:1 are not defined it may be required to tell the descriptor about a constraint,
 this defines that this descriptor has a foreign key constraint to another class and must be inserted after
 instances of the other class.</div>
</li>
</ul>
<a name="addConstraintDependency-java.lang.Class-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addConstraintDependency</h4>
<pre>public&nbsp;void&nbsp;addConstraintDependency(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;dependencies)</pre>
<div class="block">ADVANCED:
 EclipseLink automatically orders database access through the foreign key information provided in 1:1 and 1:m mappings.
 In some case when 1:1 are not defined it may be required to tell the descriptor about a constraint,
 this defines that this descriptor has a foreign key constraint to another class and must be inserted after
 instances of the other class.</div>
</li>
</ul>
<a name="newDirectMapping--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newDirectMapping</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/mappings/foundation/AbstractDirectMapping.html" title="class in org.eclipse.persistence.mappings.foundation">AbstractDirectMapping</a>&nbsp;newDirectMapping()</pre>
<div class="block">Return a new direct/basic mapping for this type of descriptor.</div>
</li>
</ul>
<a name="newAggregateMapping--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newAggregateMapping</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/mappings/AggregateMapping.html" title="class in org.eclipse.persistence.mappings">AggregateMapping</a>&nbsp;newAggregateMapping()</pre>
<div class="block">Return a new aggregate/embedded mapping for this type of descriptor.</div>
</li>
</ul>
<a name="newAggregateCollectionMapping--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newAggregateCollectionMapping</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;newAggregateCollectionMapping()</pre>
<div class="block">Return a new aggregate collection/element collection mapping for this type of descriptor.</div>
</li>
</ul>
<a name="newDirectCollectionMapping--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newDirectCollectionMapping</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;newDirectCollectionMapping()</pre>
<div class="block">Return a new direct collection/element collection mapping for this type of descriptor.</div>
</li>
</ul>
<a name="newOneToOneMapping--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newOneToOneMapping</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/mappings/ObjectReferenceMapping.html" title="class in org.eclipse.persistence.mappings">ObjectReferenceMapping</a>&nbsp;newOneToOneMapping()</pre>
<div class="block">Return a new one to one mapping for this type of descriptor.</div>
</li>
</ul>
<a name="newManyToOneMapping--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newManyToOneMapping</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/mappings/ObjectReferenceMapping.html" title="class in org.eclipse.persistence.mappings">ObjectReferenceMapping</a>&nbsp;newManyToOneMapping()</pre>
<div class="block">Return a new many to one mapping for this type of descriptor.</div>
</li>
</ul>
<a name="newOneToManyMapping--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newOneToManyMapping</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/mappings/CollectionMapping.html" title="class in org.eclipse.persistence.mappings">CollectionMapping</a>&nbsp;newOneToManyMapping()</pre>
<div class="block">Return a new one to many mapping for this type of descriptor.</div>
</li>
</ul>
<a name="newUnidirectionalOneToManyMapping--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newUnidirectionalOneToManyMapping</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/mappings/CollectionMapping.html" title="class in org.eclipse.persistence.mappings">CollectionMapping</a>&nbsp;newUnidirectionalOneToManyMapping()</pre>
<div class="block">Return a new one to many mapping for this type of descriptor.</div>
</li>
</ul>
<a name="newManyToManyMapping--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newManyToManyMapping</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/mappings/CollectionMapping.html" title="class in org.eclipse.persistence.mappings">CollectionMapping</a>&nbsp;newManyToManyMapping()</pre>
<div class="block">Return a new one to many mapping for this type of descriptor.</div>
</li>
</ul>
<a name="addDirectMapping-java.lang.String-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addDirectMapping</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;addDirectMapping(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;attributeName,
                                        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fieldName)</pre>
<div class="block">PUBLIC:
 Add a direct to field mapping to the receiver. The new mapping specifies that
 an instance variable of the class of objects which the receiver describes maps in
 the default manner for its type to the indicated database field.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>attributeName</code> - is the name of an instance variable of the
 class which the receiver describes.</dd>
<dd><code>fieldName</code> - is the name of the database column which corresponds
 with the designated instance variable.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The newly created DatabaseMapping is returned.</dd>
</dl>
</li>
</ul>
<a name="addDirectMapping-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addDirectMapping</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;addDirectMapping(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;attributeName,
                                        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getMethodName,
                                        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;setMethodName,
                                        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fieldName)</pre>
<div class="block">PUBLIC:
 Add a direct to field mapping to the receiver. The new mapping specifies that
 a variable accessed by the get and set methods of the class of objects which
 the receiver describes maps in  the default manner for its type to the indicated
 database field.</div>
</li>
</ul>
<a name="addDirectQueryKey-java.lang.String-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addDirectQueryKey</h4>
<pre>public&nbsp;void&nbsp;addDirectQueryKey(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queryKeyName,
                              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fieldName)</pre>
<div class="block">PUBLIC:
 Add a query key to the descriptor. Query keys define Java aliases to database fields.</div>
</li>
</ul>
<a name="addForeignKeyFieldNameForMultipleTable-java.lang.String-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addForeignKeyFieldNameForMultipleTable</h4>
<pre>public&nbsp;void&nbsp;addForeignKeyFieldNameForMultipleTable(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;sourceForeignKeyFieldName,
                                                   <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;targetPrimaryKeyFieldName)
                                            throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">PUBLIC:
 This protocol can be used to associate multiple tables with foreign key
 information. Use this method to associate secondary tables to a
 primary table. Specify the source foreign key field to the target
 primary key field. The join criteria will be generated based on the
 fields provided. Unless the customary insert order is specified by the user
 (using setMultipleTableInsertOrder method)
 the (automatically generated) table insert order will ensure that
 insert into target table happens before insert into the source table
 (there may be a foreign key constraint in the database that requires
 target table to be inserted before the source table).</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="addForeignKeyFieldForMultipleTable-org.eclipse.persistence.internal.helper.DatabaseField-org.eclipse.persistence.internal.helper.DatabaseField-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addForeignKeyFieldForMultipleTable</h4>
<pre>public&nbsp;void&nbsp;addForeignKeyFieldForMultipleTable(org.eclipse.persistence.internal.helper.DatabaseField&nbsp;sourceForeignKeyField,
                                               org.eclipse.persistence.internal.helper.DatabaseField&nbsp;targetPrimaryKeyField)
                                        throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">PUBLIC:
 This protocol can be used to associate multiple tables with foreign key
 information. Use this method to associate secondary tables to a
 primary table. Specify the source foreign key field to the target
 primary key field. The join criteria will be generated based on the
 fields provided.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="addMapping-org.eclipse.persistence.mappings.DatabaseMapping-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMapping</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;addMapping(<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;mapping)</pre>
<div class="block">PUBLIC:
 Add a database mapping to the receiver. Perform any required
 initialization of both the mapping and the receiving descriptor
 as a result of adding the new mapping.</div>
</li>
</ul>
<a name="validateMappingType-org.eclipse.persistence.mappings.DatabaseMapping-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateMappingType</h4>
<pre>protected&nbsp;void&nbsp;validateMappingType(<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;mapping)</pre>
</li>
</ul>
<a name="addPrimaryKeyFieldName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addPrimaryKeyFieldName</h4>
<pre>public&nbsp;void&nbsp;addPrimaryKeyFieldName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fieldName)</pre>
<div class="block">PUBLIC:
 Specify the primary key field of the descriptors table.
 This should be called for each field that makes up the primary key of the table.
 If the descriptor has many tables, this must be the primary key in the first table,
 if the other tables have the same primary key nothing else is required, otherwise
 a primary key/foreign key field mapping must be provided for each of the other tables.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addForeignKeyFieldNameForMultipleTable-java.lang.String-java.lang.String-"><code>addForeignKeyFieldNameForMultipleTable(String, String)</code></a></dd>
</dl>
</li>
</ul>
<a name="addPrimaryKeyField-org.eclipse.persistence.internal.helper.DatabaseField-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addPrimaryKeyField</h4>
<pre>public&nbsp;void&nbsp;addPrimaryKeyField(org.eclipse.persistence.internal.helper.DatabaseField&nbsp;field)</pre>
<div class="block">ADVANCED:
 Specify the primary key field of the descriptors table.
 This should be called for each field that makes up the primary key of the table.
 This can be used for advanced field types, such as XML nodes, or to set the field type.</div>
</li>
</ul>
<a name="addQueryKey-org.eclipse.persistence.mappings.querykeys.QueryKey-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addQueryKey</h4>
<pre>public&nbsp;void&nbsp;addQueryKey(<a href="../../../../org/eclipse/persistence/mappings/querykeys/QueryKey.html" title="class in org.eclipse.persistence.mappings.querykeys">QueryKey</a>&nbsp;queryKey)</pre>
<div class="block">PUBLIC:
 Add a query key to the descriptor. Query keys define Java aliases to database fields.</div>
</li>
</ul>
<a name="addTable-org.eclipse.persistence.internal.helper.DatabaseTable-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addTable</h4>
<pre>public&nbsp;void&nbsp;addTable(org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;table)</pre>
<div class="block">PUBLIC:
 Specify the table for the class of objects the receiver describes.
 This method is used if there is more than one table.</div>
</li>
</ul>
<a name="addTableName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addTableName</h4>
<pre>public&nbsp;void&nbsp;addTableName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tableName)</pre>
<div class="block">PUBLIC:
 Specify the table name for the class of objects the receiver describes.
 If the table has a qualifier it should be specified using the dot notation,
 (i.e. "userid.employee"). This method is used if there is more than one table.</div>
</li>
</ul>
<a name="addUnconvertedProperty-java.lang.String-java.lang.String-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addUnconvertedProperty</h4>
<pre>public&nbsp;void&nbsp;addUnconvertedProperty(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;propertyName,
                                   <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;propertyValue,
                                   <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;propertyType)</pre>
<div class="block">PUBLIC:
 Add an unconverted property (to be initialiazed at runtime)</div>
</li>
</ul>
<a name="adjustMultipleTableInsertOrder--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>adjustMultipleTableInsertOrder</h4>
<pre>public&nbsp;void&nbsp;adjustMultipleTableInsertOrder()</pre>
<div class="block">INTERNAL:
 Adjust the order of the tables in the multipleTableInsertOrder Vector according to the FK
 relationship if one (or more) were previously specified. I.e. target of FK relationship should be inserted
 before source.
 If the multipleTableInsertOrder has been specified (presumably by the user) then do not change it.</div>
</li>
</ul>
<a name="alwaysConformResultsInUnitOfWork--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>alwaysConformResultsInUnitOfWork</h4>
<pre>public&nbsp;void&nbsp;alwaysConformResultsInUnitOfWork()</pre>
<div class="block">PUBLIC:
 Used to set the descriptor to always conform in any unit of work query.</div>
</li>
</ul>
<a name="alwaysRefreshCache--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>alwaysRefreshCache</h4>
<pre>public&nbsp;void&nbsp;alwaysRefreshCache()</pre>
<div class="block">PUBLIC:
 This method is the equivalent of calling <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldAlwaysRefreshCache-boolean-"><code>setShouldAlwaysRefreshCache(boolean)</code></a> with an argument of <CODE>true</CODE>:
 it configures a <CODE>ClassDescriptor</CODE> to always refresh the cache if data is received from the database by any query.<P>

 However, if a query hits the cache, data is not refreshed regardless of how this setting is configured. For example, by
 default, when a query for a single object based on its primary key is executed, OracleAS TopLink will first look in the
 cache for the object. If the object is in the cache, the cached object is returned and data is not refreshed. To avoid
 cache hits, use the <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#disableCacheHits--"><code>disableCacheHits()</code></a> method.<P>

 Also note that the <a href="../../../../org/eclipse/persistence/sessions/UnitOfWork.html" title="interface in org.eclipse.persistence.sessions"><code>UnitOfWork</code></a> will not refresh its registered objects.<P>

 Use this property with caution because it can lead to poor performance and may refresh on queries when it is not desired. Normally,
 if you require fresh data, it is better to configure a query with <a href="../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html#refreshIdentityMapResult--"><code>ObjectLevelReadQuery.refreshIdentityMapResult()</code></a>.
 To ensure that refreshes are only done when required, use this method in conjunction with <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#onlyRefreshCacheIfNewerVersion--"><code>onlyRefreshCacheIfNewerVersion()</code></a>.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#dontAlwaysRefreshCache--"><code>dontAlwaysRefreshCache()</code></a></dd>
</dl>
</li>
</ul>
<a name="alwaysRefreshCacheOnRemote--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>alwaysRefreshCacheOnRemote</h4>
<pre>public&nbsp;void&nbsp;alwaysRefreshCacheOnRemote()</pre>
<div class="block">PUBLIC:
 This method is the equivalent of calling <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldAlwaysRefreshCacheOnRemote-boolean-"><code>setShouldAlwaysRefreshCacheOnRemote(boolean)</code></a> with an argument of <CODE>true</CODE>:
 it configures a <CODE>ClassDescriptor</CODE> to always remotely refresh the cache if data is received from the database by any
 query in a <a href="../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html" title="class in org.eclipse.persistence.sessions.remote"><code>RemoteSession</code></a>.<P>

 However, if a query hits the cache, data is not refreshed regardless of how this setting is configured. For example, by
 default, when a query for a single object based on its primary key is executed, OracleAS TopLink will first look in the
 cache for the object. If the object is in the cache, the cached object is returned and data is not refreshed. To avoid
 cache hits, use the <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#disableCacheHitsOnRemote--"><code>disableCacheHitsOnRemote()</code></a> method.<P>

 Also note that the <a href="../../../../org/eclipse/persistence/sessions/UnitOfWork.html" title="interface in org.eclipse.persistence.sessions"><code>UnitOfWork</code></a> will not refresh its registered objects.<P>

 Use this property with caution because it can lead to poor performance and may refresh on queries when it is not desired.
 Normally, if you require fresh data, it is better to configure a query with <a href="../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html#refreshIdentityMapResult--"><code>ObjectLevelReadQuery.refreshIdentityMapResult()</code></a>.
 To ensure that refreshes are only done when required, use this method in conjunction with <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#onlyRefreshCacheIfNewerVersion--"><code>onlyRefreshCacheIfNewerVersion()</code></a>.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#dontAlwaysRefreshCacheOnRemote--"><code>dontAlwaysRefreshCacheOnRemote()</code></a></dd>
</dl>
</li>
</ul>
<a name="applyAmendmentMethod--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>applyAmendmentMethod</h4>
<pre>public&nbsp;void&nbsp;applyAmendmentMethod()</pre>
<div class="block">ADVANCED:
 Call the descriptor amendment method.
 This is called while loading or creating a descriptor that has an amendment method defined.</div>
</li>
</ul>
<a name="applyAmendmentMethod-org.eclipse.persistence.descriptors.DescriptorEvent-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>applyAmendmentMethod</h4>
<pre>public&nbsp;void&nbsp;applyAmendmentMethod(<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEvent.html" title="class in org.eclipse.persistence.descriptors">DescriptorEvent</a>&nbsp;event)</pre>
<div class="block">INTERNAL:
 Call the descriptor amendment method.
 This is called while loading or creating a descriptor that has an amendment method defined.</div>
</li>
</ul>
<a name="arePrimaryKeyFields-java.util.Vector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>arePrimaryKeyFields</h4>
<pre>public&nbsp;boolean&nbsp;arePrimaryKeyFields(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;fields)</pre>
<div class="block">INTERNAL:
 Used to determine if a foreign key references the primary key.</div>
</li>
</ul>
<a name="assignDefaultValues-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>assignDefaultValues</h4>
<pre>protected&nbsp;void&nbsp;assignDefaultValues(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</pre>
<div class="block">INTERNAL:
 Some attributes have default values defined in Project.
 If such the value for the attribute hasn't been set then the default value is assigned.</div>
</li>
</ul>
<a name="buildBatchCriteriaByPK-org.eclipse.persistence.expressions.ExpressionBuilder-org.eclipse.persistence.queries.ObjectLevelReadQuery-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildBatchCriteriaByPK</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/expressions/Expression.html" title="class in org.eclipse.persistence.expressions">Expression</a>&nbsp;buildBatchCriteriaByPK(<a href="../../../../org/eclipse/persistence/expressions/ExpressionBuilder.html" title="class in org.eclipse.persistence.expressions">ExpressionBuilder</a>&nbsp;builder,
                                         <a href="../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html" title="class in org.eclipse.persistence.queries">ObjectLevelReadQuery</a>&nbsp;query)</pre>
<div class="block">INTERNAL:
 Return the selection criteria used to IN batch fetching.</div>
</li>
</ul>
<a name="buildCallFromStatement-org.eclipse.persistence.internal.expressions.SQLStatement-org.eclipse.persistence.queries.DatabaseQuery-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildCallFromStatement</h4>
<pre>public&nbsp;org.eclipse.persistence.internal.databaseaccess.DatasourceCall&nbsp;buildCallFromStatement(org.eclipse.persistence.internal.expressions.SQLStatement&nbsp;statement,
                                                                                             <a href="../../../../org/eclipse/persistence/queries/DatabaseQuery.html" title="class in org.eclipse.persistence.queries">DatabaseQuery</a>&nbsp;query,
                                                                                             org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</pre>
<div class="block">INTERNAL:
 Return a call built from a statement. Subclasses may throw an exception
 if the statement is not appropriate.</div>
</li>
</ul>
<a name="buildDirectValuesFromFieldValue-java.lang.Object-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildDirectValuesFromFieldValue</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;buildDirectValuesFromFieldValue(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;fieldValue)
                                       throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></pre>
<div class="block">INTERNAL:
 Extract the direct values from the specified field value.
 Return them in a vector.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></code></dd>
</dl>
</li>
</ul>
<a name="buildField-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildField</h4>
<pre>public&nbsp;org.eclipse.persistence.internal.helper.DatabaseField&nbsp;buildField(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fieldName)</pre>
<div class="block">INTERNAL:
 A DatabaseField is built from the given field name.</div>
</li>
</ul>
<a name="buildField-org.eclipse.persistence.internal.helper.DatabaseField-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildField</h4>
<pre>public&nbsp;org.eclipse.persistence.internal.helper.DatabaseField&nbsp;buildField(org.eclipse.persistence.internal.helper.DatabaseField&nbsp;field)</pre>
<div class="block">INTERNAL:
 The table of the field is ensured to be unique from the descriptor's tables.
 If the field has no table the default table is assigned.
 This is used only in initialization.
 Fields are ensured to be unique so if the field has already been built it is returned.</div>
</li>
</ul>
<a name="buildField-org.eclipse.persistence.internal.helper.DatabaseField-org.eclipse.persistence.internal.helper.DatabaseTable-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildField</h4>
<pre>public&nbsp;org.eclipse.persistence.internal.helper.DatabaseField&nbsp;buildField(org.eclipse.persistence.internal.helper.DatabaseField&nbsp;field,
                                                                        org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;relationTable)</pre>
</li>
</ul>
<a name="buildFieldValueFromDirectValues-java.util.Vector-java.lang.String-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildFieldValueFromDirectValues</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;buildFieldValueFromDirectValues(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;directValues,
                                              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;elementDataTypeName,
                                              org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)
                                       throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></pre>
<div class="block">INTERNAL:
 Build the appropriate field value for the specified
 set of direct values.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></code></dd>
</dl>
</li>
</ul>
<a name="buildFieldValueFromForeignKeys-java.util.Vector-java.lang.String-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildFieldValueFromForeignKeys</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;buildFieldValueFromForeignKeys(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;foreignKeys,
                                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;referenceDataTypeName,
                                             org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)
                                      throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></pre>
<div class="block">INTERNAL:
 Build and return the appropriate field value for the specified
 set of foreign keys (i.e. each row has the fields that
 make up a foreign key).</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></code></dd>
</dl>
</li>
</ul>
<a name="buildFieldValueFromNestedRow-org.eclipse.persistence.internal.sessions.AbstractRecord-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildFieldValueFromNestedRow</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;buildFieldValueFromNestedRow(org.eclipse.persistence.internal.sessions.AbstractRecord&nbsp;nestedRow,
                                           org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)
                                    throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></pre>
<div class="block">INTERNAL:
 Build and return the field value from the specified nested database row.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></code></dd>
</dl>
</li>
</ul>
<a name="buildFieldValueFromNestedRows-java.util.Vector-java.lang.String-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildFieldValueFromNestedRows</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;buildFieldValueFromNestedRows(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;nestedRows,
                                            <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;structureName,
                                            org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)
                                     throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></pre>
<div class="block">INTERNAL:
 Build and return the appropriate field value for the specified
 set of nested rows.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></code></dd>
</dl>
</li>
</ul>
<a name="buildNestedRowFromFieldValue-java.lang.Object-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildNestedRowFromFieldValue</h4>
<pre>public&nbsp;org.eclipse.persistence.internal.sessions.AbstractRecord&nbsp;buildNestedRowFromFieldValue(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;fieldValue)
                                                                                      throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></pre>
<div class="block">INTERNAL:
 Build and return the nested database row from the specified field value.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></code></dd>
</dl>
</li>
</ul>
<a name="buildNestedRowsFromFieldValue-java.lang.Object-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildNestedRowsFromFieldValue</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;buildNestedRowsFromFieldValue(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;fieldValue,
                                            org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)
                                     throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></pre>
<div class="block">INTERNAL:
 Build and return the nested rows from the specified field value.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></code></dd>
</dl>
</li>
</ul>
<a name="checkDatabase-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkDatabase</h4>
<pre>protected&nbsp;void&nbsp;checkDatabase(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</pre>
<div class="block">To check that tables and fields are present in database</div>
</li>
</ul>
<a name="checkInheritanceTreeAggregateSettings-org.eclipse.persistence.internal.sessions.AbstractSession-org.eclipse.persistence.mappings.AggregateMapping-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkInheritanceTreeAggregateSettings</h4>
<pre>public&nbsp;void&nbsp;checkInheritanceTreeAggregateSettings(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session,
                                                  <a href="../../../../org/eclipse/persistence/mappings/AggregateMapping.html" title="class in org.eclipse.persistence.mappings">AggregateMapping</a>&nbsp;mapping)
                                           throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">INTERNAL:
 Verify that an aggregate descriptor's inheritance tree
 is full of aggregate descriptors.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="createMultipleTableInsertOrder--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createMultipleTableInsertOrder</h4>
<pre>protected&nbsp;void&nbsp;createMultipleTableInsertOrder()</pre>
<div class="block">INTERNAL:
 Create multiple table insert order.
 If its a child descriptor then insert order starts
 with the same insert order as in the parent.
 Non-inherited tables ordered to adhere to
 multipleTableForeignKeys:
 the target table (the key in multipleTableForeignKeys map)
 should stand in insert order before any of the source tables
 (members of the corresponding value in multipleTableForeignKeys).</div>
</li>
</ul>
<a name="verifyMultipleTableInsertOrder--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>verifyMultipleTableInsertOrder</h4>
<pre>protected&nbsp;void&nbsp;verifyMultipleTableInsertOrder()</pre>
<div class="block">INTERNAL:
 Verify multiple table insert order provided by the user.
 If its a child descriptor then insert order starts
 with the same insert order as in the parent.
 Non-inherited tables ordered to adhere to
 multipleTableForeignKeys:
 the target table (the key in multipleTableForeignKeys map)
 should stand in insert order before any of the source tables
 (members of the corresponding value in multipleTableForeignKeys).</div>
</li>
</ul>
<a name="verifyMultipleTablesForeignKeysTables--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>verifyMultipleTablesForeignKeysTables</h4>
<pre>protected&nbsp;void&nbsp;verifyMultipleTablesForeignKeysTables()</pre>
<div class="block">INTERNAL:
 Verify that the tables specified in multipleTablesForeignKeysTables are valid.</div>
</li>
</ul>
<a name="createTableComparison-java.util.List-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createTableComparison</h4>
<pre>protected&nbsp;int[][]&nbsp;createTableComparison(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;&nbsp;tables,
                                        int&nbsp;nStart)</pre>
<div class="block">INTERNAL:
 This helper method creates a matrix that contains insertion order comparison for the tables.
 Comparison is done for indexes from nStart to tables.size()-1.</div>
</li>
</ul>
<a name="createMultipleTableInsertOrderFromComparison-int:A:A-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createMultipleTableInsertOrderFromComparison</h4>
<pre>protected&nbsp;void&nbsp;createMultipleTableInsertOrderFromComparison(int[][]&nbsp;tableComparison,
                                                            int&nbsp;nStart)</pre>
<div class="block">INTERNAL:
 This helper method creates multipleTableInsertOrderFromComparison using comparison matrix
 created by createTableComparison(getTables()) method call.</div>
</li>
</ul>
<a name="createTableOrder-int-int-int:A-int:A:A-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createTableOrder</h4>
<pre>protected&nbsp;boolean&nbsp;createTableOrder(int&nbsp;k,
                                   int&nbsp;nTables,
                                   int[]&nbsp;tableOrder,
                                   int[][]&nbsp;tableComparison)</pre>
<div class="block">INTERNAL:
 This helper method recursively puts indexes from 0 to nTables-1 into tableOrder according to tableComparison 2 dim array.
 k is index in tableOrder that currently the method is working on - the method should be called with k = 0.</div>
</li>
</ul>
<a name="clone--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clone</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;clone()</pre>
<div class="block">INTERNAL:
 Clones the descriptor</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
<a name="convertClassNamesToClasses-java.lang.ClassLoader-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>convertClassNamesToClasses</h4>
<pre>public&nbsp;void&nbsp;convertClassNamesToClasses(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html?is-external=true" title="class or interface in java.lang">ClassLoader</a>&nbsp;classLoader)</pre>
<div class="block">INTERNAL:
 Convert all the class-name-based settings in this Descriptor to actual class-based
 settings. This method is used when converting a project that has been built
 with class names to a project with classes.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>classLoader</code> - </dd>
</dl>
</li>
</ul>
<a name="createCopyPolicy-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createCopyPolicy</h4>
<pre>public&nbsp;void&nbsp;createCopyPolicy(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;policyType)</pre>
<div class="block">PUBLIC:
 Create a copy policy of the type passed in as a string.</div>
</li>
</ul>
<a name="createInstantiationPolicy-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createInstantiationPolicy</h4>
<pre>public&nbsp;void&nbsp;createInstantiationPolicy(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;policyType)</pre>
<div class="block">PUBLIC:
 Create a instantiation policy of the type passed in as a string.</div>
</li>
</ul>
<a name="descriptorIsAggregate--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>descriptorIsAggregate</h4>
<pre>public&nbsp;void&nbsp;descriptorIsAggregate()</pre>
<div class="block">PUBLIC:
 Sets the descriptor to be an aggregate.
 An aggregate descriptor is contained within another descriptor's table.
 Aggregate descriptors are insert/updated/deleted with their owner and cannot exist without their owner as they share the same row.
 Aggregates are not cached (they are cached as part of their owner) and cannot be read/written/deleted/registered.
 All aggregate descriptors must call this.</div>
</li>
</ul>
<a name="descriptorIsAggregateCollection--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>descriptorIsAggregateCollection</h4>
<pre>public&nbsp;void&nbsp;descriptorIsAggregateCollection()</pre>
<div class="block">PUBLIC:
 Sets the descriptor to be part of an aggregate collection.
 An aggregate collection descriptor stored in a separate table but some of the fields (the primary key) comes from its owner.
 Aggregate collection descriptors are insert/updated/deleted with their owner and cannot exist without their owner as they share the primary key.
 Aggregate collections are not cached (they are cached as part of their owner) and cannot be read/written/deleted/registered.
 All aggregate collection descriptors must call this.</div>
</li>
</ul>
<a name="descriptorIsForInterface--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>descriptorIsForInterface</h4>
<pre>public&nbsp;void&nbsp;descriptorIsForInterface()</pre>
<div class="block">PUBLIC:
 Sets the descriptor to be for an interface.
 An interface descriptor allows for other classes to reference an interface or one of several other classes.
 The implementor classes can be completely unrelated in term of the database stored in distinct tables.
 Queries can also be done for the interface which will query each of the implementor classes.
 An interface descriptor cannot define any mappings as an interface is just API and not state,
 a interface descriptor should define the common query key of its implementors to allow querying.
 An interface descriptor also does not define a primary key or table or other settings.
 If an interface only has a single implementor (i.e. a classes public interface or remote) then an interface
 descriptor should not be defined for it and relationships should be to the implementor class not the interface,
 in this case the implementor class can add the interface through its interface policy to map queries on the interface to it.</div>
</li>
</ul>
<a name="descriptorIsNormal--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>descriptorIsNormal</h4>
<pre>public&nbsp;void&nbsp;descriptorIsNormal()</pre>
<div class="block">PUBLIC:
 Sets the descriptor to be normal.
 This is the default and means the descriptor is not aggregate or for an interface.</div>
</li>
</ul>
<a name="disableCacheHits--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>disableCacheHits</h4>
<pre>public&nbsp;void&nbsp;disableCacheHits()</pre>
<div class="block">PUBLIC:
 Allow for cache hits on primary key read object queries to be disabled.
 This can be used with <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCache--"><code>alwaysRefreshCache()</code></a> or <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCacheOnRemote--"><code>alwaysRefreshCacheOnRemote()</code></a> to ensure queries always go to the database.</div>
</li>
</ul>
<a name="disableCacheHitsOnRemote--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>disableCacheHitsOnRemote</h4>
<pre>public&nbsp;void&nbsp;disableCacheHitsOnRemote()</pre>
<div class="block">PUBLIC:
 Allow for remote session cache hits on primary key read object queries to be disabled.
 This can be used with alwaysRefreshCacheOnRemote() to ensure queries always go to the server session cache.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCacheOnRemote--"><code>alwaysRefreshCacheOnRemote()</code></a></dd>
</dl>
</li>
</ul>
<a name="dontAlwaysConformResultsInUnitOfWork--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dontAlwaysConformResultsInUnitOfWork</h4>
<pre>public&nbsp;void&nbsp;dontAlwaysConformResultsInUnitOfWork()</pre>
<div class="block">PUBLIC:
 The descriptor is defined to not conform the results in unit of work in read query. Default.</div>
</li>
</ul>
<a name="dontAlwaysRefreshCache--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dontAlwaysRefreshCache</h4>
<pre>public&nbsp;void&nbsp;dontAlwaysRefreshCache()</pre>
<div class="block">PUBLIC:
 This method is the equivalent of calling <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldAlwaysRefreshCache-boolean-"><code>setShouldAlwaysRefreshCache(boolean)</code></a> with an argument of <CODE>false</CODE>:
 it ensures that a <CODE>ClassDescriptor</CODE> is not configured to always refresh the cache if data is received from the database by any query.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCache--"><code>alwaysRefreshCache()</code></a></dd>
</dl>
</li>
</ul>
<a name="dontAlwaysRefreshCacheOnRemote--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dontAlwaysRefreshCacheOnRemote</h4>
<pre>public&nbsp;void&nbsp;dontAlwaysRefreshCacheOnRemote()</pre>
<div class="block">PUBLIC:
 This method is the equivalent of calling <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldAlwaysRefreshCacheOnRemote-boolean-"><code>setShouldAlwaysRefreshCacheOnRemote(boolean)</code></a> with an argument of <CODE>false</CODE>:
 it ensures that a <CODE>ClassDescriptor</CODE> is not configured to always remotely refresh the cache if data is received from the
 database by any query in a <a href="../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html" title="class in org.eclipse.persistence.sessions.remote"><code>RemoteSession</code></a>.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCacheOnRemote--"><code>alwaysRefreshCacheOnRemote()</code></a></dd>
</dl>
</li>
</ul>
<a name="dontDisableCacheHits--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dontDisableCacheHits</h4>
<pre>public&nbsp;void&nbsp;dontDisableCacheHits()</pre>
<div class="block">PUBLIC:
 Allow for cache hits on primary key read object queries.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#disableCacheHits--"><code>disableCacheHits()</code></a></dd>
</dl>
</li>
</ul>
<a name="dontDisableCacheHitsOnRemote--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dontDisableCacheHitsOnRemote</h4>
<pre>public&nbsp;void&nbsp;dontDisableCacheHitsOnRemote()</pre>
<div class="block">PUBLIC:
 Allow for remote session cache hits on primary key read object queries.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#disableCacheHitsOnRemote--"><code>disableCacheHitsOnRemote()</code></a></dd>
</dl>
</li>
</ul>
<a name="dontOnlyRefreshCacheIfNewerVersion--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dontOnlyRefreshCacheIfNewerVersion</h4>
<pre>public&nbsp;void&nbsp;dontOnlyRefreshCacheIfNewerVersion()</pre>
<div class="block">PUBLIC:
 This method is the equivalent of calling <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldOnlyRefreshCacheIfNewerVersion-boolean-"><code>setShouldOnlyRefreshCacheIfNewerVersion(boolean)</code></a> with an argument of <CODE>false</CODE>:
 it ensures that a <CODE>ClassDescriptor</CODE> is not configured to only refresh the cache if the data received from the database by
 a query is newer than the data in the cache (as determined by the optimistic locking field).</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#onlyRefreshCacheIfNewerVersion--"><code>onlyRefreshCacheIfNewerVersion()</code></a></dd>
</dl>
</li>
</ul>
<a name="extractDefaultTable--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>extractDefaultTable</h4>
<pre>protected&nbsp;org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;extractDefaultTable()</pre>
<div class="block">INTERNAL:
 The first table in the tables is always treated as default.</div>
</li>
</ul>
<a name="getAdditionalAggregateCollectionKeyFields--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAdditionalAggregateCollectionKeyFields</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;getAdditionalAggregateCollectionKeyFields()</pre>
<div class="block">INTERNAL:
 additionalAggregateCollectionKeyFields are used by aggregate descriptors to hold additional fields needed when they are stored in an AggregatateCollection
 These fields are generally foreign key fields that are required in addition to the fields in the descriptor's
  mappings to uniquely identify the Aggregate</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
</dl>
</li>
</ul>
<a name="getAdditionalTablePrimaryKeyFields--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAdditionalTablePrimaryKeyFields</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField,org.eclipse.persistence.internal.helper.DatabaseField&gt;&gt;&nbsp;getAdditionalTablePrimaryKeyFields()</pre>
<div class="block">INTERNAL:
 This is used to map the primary key field names in a multiple table descriptor.</div>
</li>
</ul>
<a name="getAdditionalWritableMapKeyFields--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAdditionalWritableMapKeyFields</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;getAdditionalWritableMapKeyFields()</pre>
<div class="block">INTERNAL:
 Return a list of fields that are written by map keys
 Used to determine if there is a multiple writable mappings issue</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
</dl>
</li>
</ul>
<a name="getAlias--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAlias</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getAlias()</pre>
<div class="block">PUBLIC:
 Get the alias</div>
</li>
</ul>
<a name="getAllFields--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAllFields</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;getAllFields()</pre>
<div class="block">INTERNAL:
 Return all the fields which include all child class fields.
 By default it is initialized to the fields for the current descriptor.</div>
</li>
</ul>
<a name="getAllSelectionFields--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAllSelectionFields</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;getAllSelectionFields()</pre>
<div class="block">INTERNAL:
 Return all selection fields which include all child class fields.
 By default it is initialized to selection fields for the current descriptor.</div>
</li>
</ul>
<a name="getAllSelectionFields-org.eclipse.persistence.queries.ObjectLevelReadQuery-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAllSelectionFields</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;getAllSelectionFields(<a href="../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html" title="class in org.eclipse.persistence.queries">ObjectLevelReadQuery</a>&nbsp;query)</pre>
<div class="block">INTERNAL:
 Return all selection fields which include all child class fields.
 By default it is initialized to selection fields for the current descriptor.</div>
</li>
</ul>
<a name="getReturnFieldsToGenerateInsert--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReturnFieldsToGenerateInsert</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;getReturnFieldsToGenerateInsert()</pre>
<div class="block">INTERNAL:
 Return fields used to build insert statement.</div>
</li>
</ul>
<a name="getReturnFieldsToGenerateUpdate--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReturnFieldsToGenerateUpdate</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;getReturnFieldsToGenerateUpdate()</pre>
<div class="block">INTERNAL:
 Return fields used to build update statement.</div>
</li>
</ul>
<a name="getReturnFieldsToMergeInsert--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReturnFieldsToMergeInsert</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;getReturnFieldsToMergeInsert()</pre>
<div class="block">INTERNAL:
 Return fields used in to map into entity for insert.</div>
</li>
</ul>
<a name="getReturnFieldsToMergeUpdate--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReturnFieldsToMergeUpdate</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;getReturnFieldsToMergeUpdate()</pre>
<div class="block">INTERNAL:
 Return fields used in to map into entity for update.</div>
</li>
</ul>
<a name="getAmendmentClass--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAmendmentClass</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;getAmendmentClass()</pre>
<div class="block">PUBLIC:
 Return the amendment class.
 The amendment method will be called on the class before initialization to allow for it to initialize the descriptor.
 The method must be a public static method on the class.</div>
</li>
</ul>
<a name="getAmendmentClassName--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAmendmentClassName</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getAmendmentClassName()</pre>
<div class="block">INTERNAL:
 Return amendment class name, used by the MW.</div>
</li>
</ul>
<a name="getAmendmentMethodName--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAmendmentMethodName</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getAmendmentMethodName()</pre>
<div class="block">PUBLIC:
 Return the amendment method.
 This will be called on the amendment class before initialization to allow for it to initialize the descriptor.
 The method must be a public static method on the class.</div>
</li>
</ul>
<a name="getAccessorTree--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAccessorTree</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/AttributeAccessor.html" title="class in org.eclipse.persistence.mappings">AttributeAccessor</a>&gt;&nbsp;getAccessorTree()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the accessorTree</dd>
</dl>
</li>
</ul>
<a name="getObjectChangePolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getObjectChangePolicy</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/changetracking/ObjectChangePolicy.html" title="interface in org.eclipse.persistence.descriptors.changetracking">ObjectChangePolicy</a>&nbsp;getObjectChangePolicy()</pre>
<div class="block">PUBLIC:
 Return this objects ObjectChangePolicy.</div>
</li>
</ul>
<a name="getObjectChangePolicyInternal--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getObjectChangePolicyInternal</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/changetracking/ObjectChangePolicy.html" title="interface in org.eclipse.persistence.descriptors.changetracking">ObjectChangePolicy</a>&nbsp;getObjectChangePolicyInternal()</pre>
<div class="block">INTERNAL:
 Return this objects ObjectChangePolicy and do not lazy initialize</div>
</li>
</ul>
<a name="getHistoryPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHistoryPolicy</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/history/HistoryPolicy.html" title="class in org.eclipse.persistence.history">HistoryPolicy</a>&nbsp;getHistoryPolicy()</pre>
<div class="block">PUBLIC:
 Return this descriptor's HistoryPolicy.</div>
</li>
</ul>
<a name="getPartitioningPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPartitioningPolicy</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/partitioning/PartitioningPolicy.html" title="class in org.eclipse.persistence.descriptors.partitioning">PartitioningPolicy</a>&nbsp;getPartitioningPolicy()</pre>
<div class="block">PUBLIC:
 Return the descriptor's partitioning policy.</div>
</li>
</ul>
<a name="setPartitioningPolicy-org.eclipse.persistence.descriptors.partitioning.PartitioningPolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPartitioningPolicy</h4>
<pre>public&nbsp;void&nbsp;setPartitioningPolicy(<a href="../../../../org/eclipse/persistence/descriptors/partitioning/PartitioningPolicy.html" title="class in org.eclipse.persistence.descriptors.partitioning">PartitioningPolicy</a>&nbsp;partitioningPolicy)</pre>
<div class="block">PUBLIC:
 Set the descriptor's partitioning policy.
 A PartitioningPolicy is used to partition the data for a class across multiple difference databases
 or across a database cluster such as Oracle RAC.
 Partitioning can provide improved scalability by allowing multiple database machines to service requests.</div>
</li>
</ul>
<a name="getPartitioningPolicyName--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPartitioningPolicyName</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getPartitioningPolicyName()</pre>
<div class="block">PUBLIC:
 Return the name of the descriptor's partitioning policy.
 A PartitioningPolicy with the same name must be defined on the Project.
 A PartitioningPolicy is used to partition the data for a class across multiple difference databases
 or across a database cluster such as Oracle RAC.
 Partitioning can provide improved scalability by allowing multiple database machines to service requests.</div>
</li>
</ul>
<a name="setPartitioningPolicyName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPartitioningPolicyName</h4>
<pre>public&nbsp;void&nbsp;setPartitioningPolicyName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;partitioningPolicyName)</pre>
<div class="block">PUBLIC:
 Set the name of the descriptor's partitioning policy.
 A PartitioningPolicy with the same name must be defined on the Project.
 A PartitioningPolicy is used to partition the data for a class across multiple difference databases
 or across a database cluster such as Oracle RAC.
 Partitioning can provide improved scalability by allowing multiple database machines to service requests.</div>
</li>
</ul>
<a name="getCacheInterceptorClass--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCacheInterceptorClass</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;getCacheInterceptorClass()</pre>
<div class="block">A CacheInterceptor is an adaptor that when overridden and assigned to a Descriptor all interaction
 between EclipseLink and the internal cache for that class will pass through the Interceptor.
 Advanced users could use this interceptor to audit, profile or log cache access.  This Interceptor
 could also be used to redirect or augment the TopLink cache with an alternate cache mechanism.
 EclipseLink's configurated IdentityMaps will be passed to the Interceptor constructor.

 As with IdentityMaps an entire class inheritance hierarchy will share the same interceptor.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/sessions/interceptors/CacheInterceptor.html" title="class in org.eclipse.persistence.sessions.interceptors"><code>CacheInterceptor</code></a></dd>
</dl>
</li>
</ul>
<a name="getCacheInterceptorClassName--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCacheInterceptorClassName</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getCacheInterceptorClassName()</pre>
<div class="block">A CacheInterceptor is an adaptor that when overridden and assigned to a Descriptor all interaction
 between EclipseLink and the internal cache for that class will pass through the Interceptor.
 Advanced users could use this interceptor to audit, profile or log cache access.  This Interceptor
 could also be used to redirect or augment the TopLink cache with an alternate cache mechanism.
 EclipseLink's configurated IdentityMaps will be passed to the Interceptor constructor.

 As with IdentityMaps an entire class inheritance hierarchy will share the same interceptor.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/sessions/interceptors/CacheInterceptor.html" title="class in org.eclipse.persistence.sessions.interceptors"><code>CacheInterceptor</code></a></dd>
</dl>
</li>
</ul>
<a name="getCacheInvalidationPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCacheInvalidationPolicy</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/invalidation/CacheInvalidationPolicy.html" title="class in org.eclipse.persistence.descriptors.invalidation">CacheInvalidationPolicy</a>&nbsp;getCacheInvalidationPolicy()</pre>
<div class="block">PUBLIC:
 Return the CacheInvalidationPolicy for this descriptor
 For uninitialized cache invalidation policies, this will return a NoExpiryCacheInvalidationPolicy</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>CacheInvalidationPolicy</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/invalidation/CacheInvalidationPolicy.html" title="class in org.eclipse.persistence.descriptors.invalidation"><code>CacheInvalidationPolicy</code></a></dd>
</dl>
</li>
</ul>
<a name="getCacheSynchronizationType--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCacheSynchronizationType</h4>
<pre>public&nbsp;int&nbsp;getCacheSynchronizationType()</pre>
<div class="block">PUBLIC:
 Get a value indicating the type of cache synchronization that will be used on objects of
 this type. Possible values are:
 SEND_OBJECT_CHANGES
 INVALIDATE_CHANGED_OBJECTS
 SEND_NEW_OBJECTS+WITH_CHANGES
 DO_NOT_SEND_CHANGES</div>
</li>
</ul>
<a name="getCascadeLockingPolicies--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCascadeLockingPolicies</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.descriptors.CascadeLockingPolicy&gt;&nbsp;getCascadeLockingPolicies()</pre>
<div class="block">INTERNAL:</div>
</li>
</ul>
<a name="getConstraintDependencies--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getConstraintDependencies</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;getConstraintDependencies()</pre>
<div class="block">ADVANCED:
  automatically orders database access through the foreign key information provided in 1:1 and 1:m mappings.
 In some case when 1:1 are not defined it may be required to tell the descriptor about a constraint,
 this defines that this descriptor has a foreign key constraint to another class and must be inserted after
 instances of the other class.</div>
</li>
</ul>
<a name="getCopyPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCopyPolicy</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/copying/CopyPolicy.html" title="interface in org.eclipse.persistence.descriptors.copying">CopyPolicy</a>&nbsp;getCopyPolicy()</pre>
<div class="block">INTERNAL:
 Returns the copy policy.</div>
</li>
</ul>
<a name="getCopyPolicyClassName--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCopyPolicyClassName</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getCopyPolicyClassName()</pre>
<div class="block">INTERNAL:
 Returns the name of a Class that implements CopyPolicy
 Will be instantiated as a copy policy at initialization times
 using the no-args constructor</div>
</li>
</ul>
<a name="getDefaultTable--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDefaultTable</h4>
<pre>public&nbsp;org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;getDefaultTable()</pre>
<div class="block">INTERNAL:
 The first table in the tables is always treated as default.</div>
</li>
</ul>
<a name="getDescriptorType--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDescriptorType</h4>
<pre>public&nbsp;int&nbsp;getDescriptorType()</pre>
<div class="block">ADVANCED:
 return the descriptor type (NORMAL by default, others include INTERFACE, AGGREGATE, AGGREGATE COLLECTION)</div>
</li>
</ul>
<a name="getDescriptorTypeValue--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDescriptorTypeValue</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getDescriptorTypeValue()</pre>
<div class="block">INTERNAL:
 This method is explicitly used by the XML reader.</div>
</li>
</ul>
<a name="getDerivesIdMappinps--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDerivesIdMappinps</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;&nbsp;getDerivesIdMappinps()</pre>
<div class="block">ADVANCED:
 Return the derives id mappings.</div>
</li>
</ul>
<a name="getDescriptorCustomizerClassName--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDescriptorCustomizerClassName</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getDescriptorCustomizerClassName()</pre>
<div class="block">INTERNAL:
 DescriptorCustomizer is the JPA equivalent of an amendment method.</div>
</li>
</ul>
<a name="getDescriptorEventManager--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDescriptorEventManager</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>&nbsp;getDescriptorEventManager()</pre>
<div class="block">PUBLIC:
 Get the event manager for the descriptor.  The event manager is responsible
 for managing the pre/post selectors.</div>
</li>
</ul>
<a name="getEventManager--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEventManager</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>&nbsp;getEventManager()</pre>
<div class="block">PUBLIC:
 Get the event manager for the descriptor.  The event manager is responsible
 for managing the pre/post selectors.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#getEventManager--">getEventManager</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
</dl>
</li>
</ul>
<a name="getFields--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFields</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;getFields()</pre>
<div class="block">INTERNAL:
 Return all the fields</div>
</li>
</ul>
<a name="getSelectionFields--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSelectionFields</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;getSelectionFields()</pre>
<div class="block">INTERNAL:
 Return all selection fields</div>
</li>
</ul>
<a name="getSelectionFields-org.eclipse.persistence.queries.ObjectLevelReadQuery-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSelectionFields</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;getSelectionFields(<a href="../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html" title="class in org.eclipse.persistence.queries">ObjectLevelReadQuery</a>&nbsp;query)</pre>
<div class="block">INTERNAL:
 Return all selection fields</div>
</li>
</ul>
<a name="getForeignKeyValuesForCaching--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getForeignKeyValuesForCaching</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;getForeignKeyValuesForCaching()</pre>
<div class="block">INTERNAL:</div>
</li>
</ul>
<a name="getIdentityMapClass--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getIdentityMapClass</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;getIdentityMapClass()</pre>
<div class="block">INTERNAL:
 Return the class of identity map to be used by this descriptor.
 The default is the "SoftCacheWeakIdentityMap".</div>
</li>
</ul>
<a name="getIdentityMapSize--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getIdentityMapSize</h4>
<pre>public&nbsp;int&nbsp;getIdentityMapSize()</pre>
<div class="block">PUBLIC:
 Return the size of the identity map.</div>
</li>
</ul>
<a name="getDescriptorInheritancePolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDescriptorInheritancePolicy</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>&nbsp;getDescriptorInheritancePolicy()</pre>
<div class="block">PUBLIC:
 The inheritance policy is used to define how a descriptor takes part in inheritance.
 All inheritance properties for both child and parent classes is configured in inheritance policy.
 Caution must be used in using this method as it lazy initializes an inheritance policy.
 Calling this on a descriptor that does not use inheritance will cause problems, #hasInheritance() must always first be called.</div>
</li>
</ul>
<a name="getInheritancePolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInheritancePolicy</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>&nbsp;getInheritancePolicy()</pre>
<div class="block">PUBLIC:
 The inheritance policy is used to define how a descriptor takes part in inheritance.
 All inheritance properties for both child and parent classes is configured in inheritance policy.
 Caution must be used in using this method as it lazy initializes an inheritance policy.
 Calling this on a descriptor that does not use inheritance will cause problems, #hasInheritance() must always first be called.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#getInheritancePolicy--">getInheritancePolicy</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
</dl>
</li>
</ul>
<a name="getInheritancePolicyOrNull--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInheritancePolicyOrNull</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>&nbsp;getInheritancePolicyOrNull()</pre>
<div class="block">INTERNAL:
 Return the inheritance policy.</div>
</li>
</ul>
<a name="getInstantiationPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInstantiationPolicy</h4>
<pre>public&nbsp;org.eclipse.persistence.internal.descriptors.InstantiationPolicy&nbsp;getInstantiationPolicy()</pre>
<div class="block">INTERNAL:
 Returns the instantiation policy.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#getInstantiationPolicy--">getInstantiationPolicy</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
</dl>
</li>
</ul>
<a name="getInterfacePolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInterfacePolicy</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/InterfacePolicy.html" title="class in org.eclipse.persistence.descriptors">InterfacePolicy</a>&nbsp;getInterfacePolicy()</pre>
<div class="block">PUBLIC:
 Returns the InterfacePolicy.
 The interface policy allows for a descriptor's public and variable interfaces to be defined.
 Caution must be used in using this method as it lazy initializes an interface policy.
 Calling this on a descriptor that does not use interfaces will cause problems, #hasInterfacePolicy() must always first be called.</div>
</li>
</ul>
<a name="getInterfacePolicyOrNull--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInterfacePolicyOrNull</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/InterfacePolicy.html" title="class in org.eclipse.persistence.descriptors">InterfacePolicy</a>&nbsp;getInterfacePolicyOrNull()</pre>
<div class="block">INTERNAL:
 Returns the InterfacePolicy.</div>
</li>
</ul>
<a name="getJavaClass--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getJavaClass</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;getJavaClass()</pre>
<div class="block">PUBLIC:
 Return the java class.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#getJavaClass--">getJavaClass</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
</dl>
</li>
</ul>
<a name="getJavaClassName--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getJavaClassName</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getJavaClassName()</pre>
<div class="block">Return the class name, used by the MW.</div>
</li>
</ul>
<a name="getLockableMappings--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLockableMappings</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;&nbsp;getLockableMappings()</pre>
<div class="block">INTERNAL:
 Returns a reference to the mappings that must be traverse when locking</div>
</li>
</ul>
<a name="getMappingForAttributeName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMappingForAttributeName</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;getMappingForAttributeName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;attributeName)</pre>
<div class="block">PUBLIC:
 Returns the mapping associated with a given attribute name.
 This can be used to find a descriptors mapping in a amendment method before the descriptor has been initialized.</div>
</li>
</ul>
<a name="removeMappingForAttributeName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeMappingForAttributeName</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;removeMappingForAttributeName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;attributeName)</pre>
<div class="block">ADVANCED:
 Removes the locally defined mapping associated with a given attribute name.
 This can be used in a amendment method before the descriptor has been initialized.</div>
</li>
</ul>
<a name="getMappings--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMappings</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;&nbsp;getMappings()</pre>
<div class="block">PUBLIC:
 Returns mappings</div>
</li>
</ul>
<a name="getMultipleTableForeignKeyAssociations--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMultipleTableForeignKeyAssociations</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;getMultipleTableForeignKeyAssociations()</pre>
<div class="block">INTERNAL:
 Returns the foreign key relationships used for multiple tables which were specified by the user. Used
 by the Project XML writer to output these associations</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#adjustMultipleTableInsertOrder--"><code>adjustMultipleTableInsertOrder()</code></a></dd>
</dl>
</li>
</ul>
<a name="getMultipleTableForeignKeys--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMultipleTableForeignKeys</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;&gt;&nbsp;getMultipleTableForeignKeys()</pre>
<div class="block">INTERNAL:
 Returns the foreign key relationships used for multiple tables which were specified by the user. The key
 of the Map is the field in the source table of the foreign key relationship. The value is the field
 name of the target table.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#adjustMultipleTableInsertOrder--"><code>adjustMultipleTableInsertOrder()</code></a></dd>
</dl>
</li>
</ul>
<a name="getMultipleTableInsertOrder--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMultipleTableInsertOrder</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;&nbsp;getMultipleTableInsertOrder()
                                                                                        throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">INTERNAL:
 Returns the List of DatabaseTables in the order which INSERTS should take place. This order is
 determined by the foreign key fields which are specified by the user.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="getMultipleTablePrimaryKeyAssociations--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMultipleTablePrimaryKeyAssociations</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;getMultipleTablePrimaryKeyAssociations()</pre>
<div class="block">INTERNAL:
 Returns the foreign key relationships used for multiple tables which were specified by the user. Used
 by the Project XML writer to output these associations</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#adjustMultipleTableInsertOrder--"><code>adjustMultipleTableInsertOrder()</code></a></dd>
</dl>
</li>
</ul>
<a name="getMultitenantPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMultitenantPolicy</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/MultitenantPolicy.html" title="interface in org.eclipse.persistence.descriptors">MultitenantPolicy</a>&nbsp;getMultitenantPolicy()</pre>
<div class="block">INTERNAL:
 Retun the multitenant policy</div>
</li>
</ul>
<a name="getObjectBuilder--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getObjectBuilder</h4>
<pre>public&nbsp;org.eclipse.persistence.internal.descriptors.ObjectBuilder&nbsp;getObjectBuilder()</pre>
<div class="block">INTERNAL:
 Return the object builder</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#getObjectBuilder--">getObjectBuilder</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
</dl>
</li>
</ul>
<a name="getOptimisticLockingPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOptimisticLockingPolicy</h4>
<pre>public&nbsp;org.eclipse.persistence.internal.descriptors.OptimisticLockingPolicy&nbsp;getOptimisticLockingPolicy()</pre>
<div class="block">PUBLIC:
 Returns the OptimisticLockingPolicy. By default this is an instance of VersionLockingPolicy.</div>
</li>
</ul>
<a name="getPreDeleteMappings--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPreDeleteMappings</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;&nbsp;getPreDeleteMappings()</pre>
<div class="block">INTERNAL:
 Set of mappings that require early delete behavior.
 This is used to handle deletion constraints.</div>
</li>
</ul>
<a name="addPreDeleteMapping-org.eclipse.persistence.mappings.DatabaseMapping-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addPreDeleteMapping</h4>
<pre>public&nbsp;void&nbsp;addPreDeleteMapping(<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;mapping)</pre>
<div class="block">INTERNAL:
 Add the mapping to be notified before deletion.
 Must also be added to child descriptors.</div>
</li>
</ul>
<a name="getPrimaryKeyFieldNames--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPrimaryKeyFieldNames</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;getPrimaryKeyFieldNames()</pre>
<div class="block">PUBLIC:
 Return the names of all the primary keys.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#getPrimaryKeyFieldNames--">getPrimaryKeyFieldNames</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
</dl>
</li>
</ul>
<a name="getPrimaryKeyFields--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPrimaryKeyFields</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;getPrimaryKeyFields()</pre>
<div class="block">INTERNAL:
 Return all the primary key fields</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#getPrimaryKeyFields--">getPrimaryKeyFields</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
</dl>
</li>
</ul>
<a name="getProperties--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getProperties</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&nbsp;getProperties()</pre>
<div class="block">PUBLIC:
 Returns the user defined properties.</div>
</li>
</ul>
<a name="getProperty-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getProperty</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;getProperty(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
<div class="block">PUBLIC:
 Returns the descriptor property associated the given String.</div>
</li>
</ul>
<a name="getQueryKeyNamed-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQueryKeyNamed</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/mappings/querykeys/QueryKey.html" title="class in org.eclipse.persistence.mappings.querykeys">QueryKey</a>&nbsp;getQueryKeyNamed(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queryKeyName)</pre>
<div class="block">INTERNAL:
 Return the query key with the specified name</div>
</li>
</ul>
<a name="getQueryKeys--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQueryKeys</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/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/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../org/eclipse/persistence/mappings/querykeys/QueryKey.html" title="class in org.eclipse.persistence.mappings.querykeys">QueryKey</a>&gt;&nbsp;getQueryKeys()</pre>
<div class="block">PUBLIC:
 Return the query keys.</div>
</li>
</ul>
<a name="getDescriptorQueryManager--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDescriptorQueryManager</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/DescriptorQueryManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorQueryManager</a>&nbsp;getDescriptorQueryManager()</pre>
<div class="block">PUBLIC:
 Return the queryManager.
 The query manager can be used to specify customization of the SQL
 that  generates for this descriptor.</div>
</li>
</ul>
<a name="getQueryManager--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQueryManager</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/DescriptorQueryManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorQueryManager</a>&nbsp;getQueryManager()</pre>
<div class="block">PUBLIC:
 Return the queryManager.
 The query manager can be used to specify customization of the SQL
 that  generates for this descriptor.</div>
</li>
</ul>
<a name="getRemoteIdentityMapClass--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRemoteIdentityMapClass</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;getRemoteIdentityMapClass()</pre>
<div class="block">INTERNAL:
 Return the class of identity map to be used by this descriptor.
 The default is the "SoftCacheWeakIdentityMap".</div>
</li>
</ul>
<a name="getRootDescriptor--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRootDescriptor</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html" title="class in org.eclipse.persistence.descriptors">ClassDescriptor</a>&nbsp;getRootDescriptor()</pre>
<div class="block">PUBLIC:
 This method returns the root descriptor for for this descriptor's class heirarchy.
 If the user is not using inheritance then the root class will be this class.</div>
</li>
</ul>
<a name="getRemoteIdentityMapSize--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRemoteIdentityMapSize</h4>
<pre>public&nbsp;int&nbsp;getRemoteIdentityMapSize()</pre>
<div class="block">PUBLIC:
 Return the size of the remote identity map.</div>
</li>
</ul>
<a name="getReturningPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReturningPolicy</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/ReturningPolicy.html" title="class in org.eclipse.persistence.descriptors">ReturningPolicy</a>&nbsp;getReturningPolicy()</pre>
<div class="block">PUBLIC:
 Return returning policy.</div>
</li>
</ul>
<a name="getReturningPolicies--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReturningPolicies</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/descriptors/ReturningPolicy.html" title="class in org.eclipse.persistence.descriptors">ReturningPolicy</a>&gt;&nbsp;getReturningPolicies()</pre>
<div class="block">PUBLIC:
 Return returning policy from current descriptor and from mappings</div>
</li>
</ul>
<a name="getSequenceNumberField--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSequenceNumberField</h4>
<pre>public&nbsp;org.eclipse.persistence.internal.helper.DatabaseField&nbsp;getSequenceNumberField()</pre>
<div class="block">INTERNAL:
 Get sequence number field</div>
</li>
</ul>
<a name="getSequenceNumberFieldName--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSequenceNumberFieldName</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getSequenceNumberFieldName()</pre>
<div class="block">PUBLIC:
 Get sequence number field name</div>
</li>
</ul>
<a name="getSequenceNumberName--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSequenceNumberName</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getSequenceNumberName()</pre>
<div class="block">PUBLIC:
 Get sequence number name</div>
</li>
</ul>
<a name="getSessionName--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSessionName</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getSessionName()</pre>
<div class="block">INTERNAL:
 Return the name of the session local to this descriptor.
 This is used by the session broker.</div>
</li>
</ul>
<a name="getTable-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTable</h4>
<pre>public&nbsp;org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;getTable(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tableName)
                                                               throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">INTERNAL:
 Checks if table name exists with the current descriptor or not.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="getTableName--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTableName</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getTableName()</pre>
<div class="block">PUBLIC:
 Return the name of the descriptor's first table.
 This method must only be called on single table descriptors.</div>
</li>
</ul>
<a name="getTableNames--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTableNames</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;getTableNames()</pre>
<div class="block">PUBLIC:
 Return the table names.</div>
</li>
</ul>
<a name="getTablePerClassPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTablePerClassPolicy</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/TablePerClassPolicy.html" title="class in org.eclipse.persistence.descriptors">TablePerClassPolicy</a>&nbsp;getTablePerClassPolicy()</pre>
<div class="block">PUBLIC:
 Returns the TablePerClassPolicy.
 The table per class policy allows JPA users to configure the
 TABLE_PER_CLASS inheritance strategy. Calling this on a descriptor that
 does not use table per class will cause problems,
 #hasTablePerClassPolicy() must always first be called.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setTablePerClassPolicy-org.eclipse.persistence.descriptors.TablePerClassPolicy-"><code>setTablePerClassPolicy(org.eclipse.persistence.descriptors.TablePerClassPolicy)</code></a></dd>
</dl>
</li>
</ul>
<a name="getTables--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTables</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;&nbsp;getTables()</pre>
<div class="block">INTERNAL:
 Return all the tables.</div>
</li>
</ul>
<a name="getTypedField-org.eclipse.persistence.internal.helper.DatabaseField-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTypedField</h4>
<pre>public&nbsp;org.eclipse.persistence.internal.helper.DatabaseField&nbsp;getTypedField(org.eclipse.persistence.internal.helper.DatabaseField&nbsp;field)</pre>
<div class="block">INTERNAL:
 searches first descriptor than its ReturningPolicy for an equal field</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#getTypedField-FIELD-">getTypedField</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
</dl>
</li>
</ul>
<a name="getWrapperPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getWrapperPolicy</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/WrapperPolicy.html" title="interface in org.eclipse.persistence.descriptors">WrapperPolicy</a>&nbsp;getWrapperPolicy()</pre>
<div class="block">ADVANCED:
 Return the WrapperPolicy for this descriptor.
 This advanced feature can be used to wrap objects with other classes such as CORBA TIE objects or EJBs.</div>
</li>
</ul>
<a name="hasDependencyOnParts--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasDependencyOnParts</h4>
<pre>public&nbsp;boolean&nbsp;hasDependencyOnParts()</pre>
<div class="block">INTERNAL:
 Checks if the class has any private owned parts or other dependencies, (i.e. M:M join table).</div>
</li>
</ul>
<a name="hasDerivedId--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasDerivedId</h4>
<pre>public&nbsp;boolean&nbsp;hasDerivedId()</pre>
<div class="block">INTERNAL:
 returns true if users have designated one or more mappings as IDs. Used
 for CMP3Policy primary key class processing.</div>
</li>
</ul>
<a name="hasEventManager--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasEventManager</h4>
<pre>public&nbsp;boolean&nbsp;hasEventManager()</pre>
<div class="block">INTERNAL:
 returns true if a DescriptorEventManager has been set.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#hasEventManager--">hasEventManager</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
</dl>
</li>
</ul>
<a name="hasInheritance--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasInheritance</h4>
<pre>public&nbsp;boolean&nbsp;hasInheritance()</pre>
<div class="block">INTERNAL:
 Return if this descriptor is involved in inheritance, (is child or parent).
 Note: If this class is part of table per class inheritance strategy this
 method will return false.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#hasInheritance--">hasInheritance</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#hasTablePerClassPolicy--"><code>hasTablePerClassPolicy()</code></a></dd>
</dl>
</li>
</ul>
<a name="hasInterfacePolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasInterfacePolicy</h4>
<pre>public&nbsp;boolean&nbsp;hasInterfacePolicy()</pre>
<div class="block">INTERNAL:
 Return if this descriptor is involved in interface, (is child or parent).</div>
</li>
</ul>
<a name="hasMultipleTables--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasMultipleTables</h4>
<pre>public&nbsp;boolean&nbsp;hasMultipleTables()</pre>
<div class="block">INTERNAL:
 Check if descriptor has multiple tables</div>
</li>
</ul>
<a name="hasNestedIdentityReference-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasNestedIdentityReference</h4>
<pre>public&nbsp;boolean&nbsp;hasNestedIdentityReference(boolean&nbsp;withChildren)</pre>
<div class="block">INTERNAL:
 Calculates whether descriptor references an entity (directly or through a nested mapping).</div>
</li>
</ul>
<a name="hasNoncacheableMappings--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasNoncacheableMappings</h4>
<pre>public&nbsp;boolean&nbsp;hasNoncacheableMappings()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the hasNoncacheableMappings</dd>
</dl>
</li>
</ul>
<a name="hasPreDeleteMappings--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasPreDeleteMappings</h4>
<pre>public&nbsp;boolean&nbsp;hasPreDeleteMappings()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the preDeleteMappings</dd>
</dl>
</li>
</ul>
<a name="hasPrivatelyOwnedParts--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasPrivatelyOwnedParts</h4>
<pre>public&nbsp;boolean&nbsp;hasPrivatelyOwnedParts()</pre>
<div class="block">INTERNAL:
 Checks if the class has any private owned parts are not</div>
</li>
</ul>
<a name="hasQueryKeyOrMapping-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasQueryKeyOrMapping</h4>
<pre>public&nbsp;boolean&nbsp;hasQueryKeyOrMapping(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;attributeName)</pre>
<div class="block">INTERNAL:
 Checks to see if it has a query key or mapping with the specified name or not.</div>
</li>
</ul>
<a name="hasRelationships--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasRelationships</h4>
<pre>public&nbsp;boolean&nbsp;hasRelationships()</pre>
<div class="block">INTERNAL:
  return whether this descriptor has any relationships through its mappings, through inheritance, or through aggregates</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
</dl>
</li>
</ul>
<a name="hasRelationshipsExceptBackpointer-org.eclipse.persistence.descriptors.ClassDescriptor-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasRelationshipsExceptBackpointer</h4>
<pre>public&nbsp;boolean&nbsp;hasRelationshipsExceptBackpointer(<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html" title="class in org.eclipse.persistence.descriptors">ClassDescriptor</a>&nbsp;descriptor)</pre>
<div class="block">INTERNAL:
 This method returns true if this descriptor has either a ForeignReferenceMapping to
 an object aside from the one described by descriptor or more than one ForeignReferenceMapping
 to descriptor.  (i.e. It determines if there is any mapping aside from a backpointer to a mapping
 defined in descriptor)</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>descriptor</code> - </dd>
<dt><span class="returnLabel">Returns:</span></dt>
</dl>
</li>
</ul>
<a name="hasReturningPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasReturningPolicy</h4>
<pre>public&nbsp;boolean&nbsp;hasReturningPolicy()</pre>
<div class="block">INTERNAL:
 Return if this descriptor has Returning policy.</div>
</li>
</ul>
<a name="hasReturningPolicies--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasReturningPolicies</h4>
<pre>public&nbsp;boolean&nbsp;hasReturningPolicies()</pre>
<div class="block">INTERNAL:
 Return if this descriptor or descriptors from mappings has Returning policy.</div>
</li>
</ul>
<a name="hasSerializedObjectPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasSerializedObjectPolicy</h4>
<pre>public&nbsp;boolean&nbsp;hasSerializedObjectPolicy()</pre>
<div class="block">INTERNAL:</div>
</li>
</ul>
<a name="getSerializedObjectPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSerializedObjectPolicy</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/SerializedObjectPolicy.html" title="interface in org.eclipse.persistence.descriptors">SerializedObjectPolicy</a>&nbsp;getSerializedObjectPolicy()</pre>
<div class="block">INTERNAL:</div>
</li>
</ul>
<a name="setSerializedObjectPolicy-org.eclipse.persistence.descriptors.SerializedObjectPolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setSerializedObjectPolicy</h4>
<pre>public&nbsp;void&nbsp;setSerializedObjectPolicy(<a href="../../../../org/eclipse/persistence/descriptors/SerializedObjectPolicy.html" title="interface in org.eclipse.persistence.descriptors">SerializedObjectPolicy</a>&nbsp;serializedObjectPolicy)</pre>
<div class="block">INTERNAL:</div>
</li>
</ul>
<a name="hasWrapperPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasWrapperPolicy</h4>
<pre>public&nbsp;boolean&nbsp;hasWrapperPolicy()</pre>
<div class="block">INTERNAL:
 Return if a wrapper policy is used.</div>
</li>
</ul>
<a name="initialize-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initialize</h4>
<pre>public&nbsp;void&nbsp;initialize(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)
                throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">INTERNAL:
 Initialize the mappings as a separate step.
 This is done as a separate step to ensure that inheritance has been first resolved.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="initialize-org.eclipse.persistence.descriptors.DescriptorQueryManager-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initialize</h4>
<pre>public&nbsp;void&nbsp;initialize(<a href="../../../../org/eclipse/persistence/descriptors/DescriptorQueryManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorQueryManager</a>&nbsp;queryManager,
                       org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</pre>
<div class="block">INTERNAL:
 Initialize the query manager specific to the descriptor type.</div>
</li>
</ul>
<a name="initializeAggregateInheritancePolicy-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initializeAggregateInheritancePolicy</h4>
<pre>public&nbsp;void&nbsp;initializeAggregateInheritancePolicy(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</pre>
<div class="block">INTERNAL:
 This initialized method is used exclusively for inheritance.  It passes in
 true if the child descriptor is isolated.

 This is needed by regular aggregate descriptors (because they require review);
 but not by SDK aggregate descriptors.</div>
</li>
</ul>
<a name="initializeMultipleTablePrimaryKeyFields--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initializeMultipleTablePrimaryKeyFields</h4>
<pre>public&nbsp;void&nbsp;initializeMultipleTablePrimaryKeyFields()</pre>
<div class="block">INTERNAL:
 Rebuild the multiple table primary key map.</div>
</li>
</ul>
<a name="initializeProperties-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initializeProperties</h4>
<pre>protected&nbsp;void&nbsp;initializeProperties(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)
                             throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">INTERNAL:
 Initialize the descriptor properties such as write lock and sequencing.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="interfaceInitialization-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>interfaceInitialization</h4>
<pre>public&nbsp;void&nbsp;interfaceInitialization(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)
                             throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">INTERNAL:
 Allow the descriptor to initialize any dependencies on this session.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="isAbstract--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAbstract</h4>
<pre>public&nbsp;boolean&nbsp;isAbstract()</pre>
<div class="block">INTERNAL:
 Convenience method to return true if the java class from this descriptor is abstract.</div>
</li>
</ul>
<a name="isAggregateCollectionDescriptor--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAggregateCollectionDescriptor</h4>
<pre>public&nbsp;boolean&nbsp;isAggregateCollectionDescriptor()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor is an aggregate collection descriptor</div>
</li>
</ul>
<a name="isAggregateDescriptor--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAggregateDescriptor</h4>
<pre>public&nbsp;boolean&nbsp;isAggregateDescriptor()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor is an aggregate descriptor</div>
</li>
</ul>
<a name="isChildDescriptor--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isChildDescriptor</h4>
<pre>public&nbsp;boolean&nbsp;isChildDescriptor()</pre>
<div class="block">PUBLIC:
 Return if the descriptor defines inheritance and is a child.</div>
</li>
</ul>
<a name="isEISDescriptor--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isEISDescriptor</h4>
<pre>public&nbsp;boolean&nbsp;isEISDescriptor()</pre>
<div class="block">PUBLIC:
 Return if the descriptor maps to an EIS or NoSQL datasource.</div>
</li>
</ul>
<a name="isObjectRelationalDataTypeDescriptor--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isObjectRelationalDataTypeDescriptor</h4>
<pre>public&nbsp;boolean&nbsp;isObjectRelationalDataTypeDescriptor()</pre>
<div class="block">PUBLIC:
 Return if the descriptor maps to an object-relational structured type.</div>
</li>
</ul>
<a name="isXMLDescriptor--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isXMLDescriptor</h4>
<pre>public&nbsp;boolean&nbsp;isXMLDescriptor()</pre>
<div class="block">PUBLIC:
 Return if the descriptor maps to XML.</div>
</li>
</ul>
<a name="isRelationalDescriptor--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isRelationalDescriptor</h4>
<pre>public&nbsp;boolean&nbsp;isRelationalDescriptor()</pre>
<div class="block">PUBLIC:
 Return if the descriptor maps to a relational table.</div>
</li>
</ul>
<a name="isDescriptorForInterface--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isDescriptorForInterface</h4>
<pre>public&nbsp;boolean&nbsp;isDescriptorForInterface()</pre>
<div class="block">PUBLIC:
 Return if the java class is an interface.</div>
</li>
</ul>
<a name="isDescriptorTypeAggregate--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isDescriptorTypeAggregate</h4>
<pre>public&nbsp;boolean&nbsp;isDescriptorTypeAggregate()</pre>
<div class="block">PUBLIC
 return true if this descriptor is any type of aggregate descriptor.</div>
</li>
</ul>
<a name="isDescriptorTypeNormal--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isDescriptorTypeNormal</h4>
<pre>public&nbsp;boolean&nbsp;isDescriptorTypeNormal()</pre>
<div class="block">INTERNAL:
 return true if this descriptor is an entity.
 (The descriptor may be a  mappedSuperclass - only in the internal case during metamodel processing)</div>
</li>
</ul>
<a name="isFullyInitialized--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isFullyInitialized</h4>
<pre>public&nbsp;boolean&nbsp;isFullyInitialized()</pre>
<div class="block">INTERNAL:
 Check if the descriptor is finished initialization.</div>
</li>
</ul>
<a name="isInitialized-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isInitialized</h4>
<pre>protected&nbsp;boolean&nbsp;isInitialized(int&nbsp;initializationStage)</pre>
<div class="block">INTERNAL:
 Check if descriptor is already initialized for the level of initialization.
 1 = pre
 2 = mapping
 3 = post</div>
</li>
</ul>
<a name="isInterfaceChildDescriptor--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isInterfaceChildDescriptor</h4>
<pre>public&nbsp;boolean&nbsp;isInterfaceChildDescriptor()</pre>
<div class="block">INTERNAL:
 Return if the descriptor defines inheritance and is a child.</div>
</li>
</ul>
<a name="isInterfaceInitialized-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isInterfaceInitialized</h4>
<pre>protected&nbsp;boolean&nbsp;isInterfaceInitialized(int&nbsp;interfaceInitializationStage)</pre>
<div class="block">INTERNAL:
 Check if interface descriptor is already initialized for the level of initialization.
 1 = pre
 2 = mapping
 3 = post</div>
</li>
</ul>
<a name="isInvalid--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isInvalid</h4>
<pre>public&nbsp;boolean&nbsp;isInvalid()</pre>
<div class="block">INTERNAL:
 Return if an error occurred during initialization which should abort any further initialization.</div>
</li>
</ul>
<a name="isIsolated--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isIsolated</h4>
<pre>public&nbsp;boolean&nbsp;isIsolated()</pre>
<div class="block">PUBLIC:
 Returns true if the descriptor represents an isolated class</div>
</li>
</ul>
<a name="isProtectedIsolation--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isProtectedIsolation</h4>
<pre>public&nbsp;boolean&nbsp;isProtectedIsolation()</pre>
<div class="block">PUBLIC:
 Returns true if the descriptor represents an isolated class</div>
</li>
</ul>
<a name="isSharedIsolation--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isSharedIsolation</h4>
<pre>public&nbsp;boolean&nbsp;isSharedIsolation()</pre>
<div class="block">PUBLIC:
 Returns true if the descriptor represents an isolated class</div>
</li>
</ul>
<a name="isMultipleTableDescriptor--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isMultipleTableDescriptor</h4>
<pre>public&nbsp;boolean&nbsp;isMultipleTableDescriptor()</pre>
<div class="block">INTERNAL:
 Return if this descriptor has more than one table.</div>
</li>
</ul>
<a name="isPrimaryKeySetAfterInsert-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPrimaryKeySetAfterInsert</h4>
<pre>public&nbsp;boolean&nbsp;isPrimaryKeySetAfterInsert(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</pre>
<div class="block">INTERNAL:
 Indicates whether pk or some of its components
 set after insert into the database.
 Shouldn't be called before ClassDescriptor has been initialized.</div>
</li>
</ul>
<a name="shouldLockForClone--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldLockForClone</h4>
<pre>public&nbsp;boolean&nbsp;shouldLockForClone()</pre>
<div class="block">ADVANCED:
 When set to false, this setting will allow the UOW to avoid locking the shared cache instance in order to perform a clone.
 Caution should be taken as setting this to false may allow cloning of partial updates</div>
</li>
</ul>
<a name="shouldUseFullChangeSetsForNewObjects--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseFullChangeSetsForNewObjects</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseFullChangeSetsForNewObjects()</pre>
<div class="block">INTERNAL:
 Return if change sets are required for new objects.</div>
</li>
</ul>
<a name="onlyRefreshCacheIfNewerVersion--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>onlyRefreshCacheIfNewerVersion</h4>
<pre>public&nbsp;void&nbsp;onlyRefreshCacheIfNewerVersion()</pre>
<div class="block">PUBLIC:
 This method is the equivalent of calling <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldOnlyRefreshCacheIfNewerVersion-boolean-"><code>setShouldOnlyRefreshCacheIfNewerVersion(boolean)</code></a> with an argument of <CODE>true</CODE>:
 it configures a <CODE>ClassDescriptor</CODE> to only refresh the cache if the data received from the database by a query is newer than
 the data in the cache (as determined by the optimistic locking field) and as long as one of the following is true:

 <UL>
 <LI>the <CODE>ClassDescriptor</CODE> was configured by calling <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCache--"><code>alwaysRefreshCache()</code></a> or <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCacheOnRemote--"><code>alwaysRefreshCacheOnRemote()</code></a>,</LI>
 <LI>the query was configured by calling <a href="../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html#refreshIdentityMapResult--"><code>ObjectLevelReadQuery.refreshIdentityMapResult()</code></a>, or</LI>
 <LI>the query was a call to <a href="../../../../org/eclipse/persistence/sessions/Session.html#refreshObject-java.lang.Object-"><code>Session.refreshObject(java.lang.Object)</code></a></LI>
 </UL>
 <P>

 However, if a query hits the cache, data is not refreshed regardless of how this setting is configured. For example, by default,
 when a query for a single object based on its primary key is executed, EclipseLink will first look in the cache for the object.
 If the object is in the cache, the cached object is returned and data is not refreshed. To avoid cache hits, use
 the <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#disableCacheHits--"><code>disableCacheHits()</code></a> method.<P>

 Also note that the <a href="../../../../org/eclipse/persistence/sessions/UnitOfWork.html" title="interface in org.eclipse.persistence.sessions"><code>UnitOfWork</code></a> will not refresh its registered objects.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#dontOnlyRefreshCacheIfNewerVersion--"><code>dontOnlyRefreshCacheIfNewerVersion()</code></a></dd>
</dl>
</li>
</ul>
<a name="postInitialize-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>postInitialize</h4>
<pre>public&nbsp;void&nbsp;postInitialize(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)
                    throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">INTERNAL:
 Post initializations after mappings are initialized.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="notifyReferencingDescriptorsOfIsolation-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>notifyReferencingDescriptorsOfIsolation</h4>
<pre>public&nbsp;void&nbsp;notifyReferencingDescriptorsOfIsolation(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</pre>
<div class="block">INTERNAL:
 Configure all descriptors referencing this class to be protected and update their cache settings.</div>
</li>
</ul>
<a name="preInitialize-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>preInitialize</h4>
<pre>public&nbsp;void&nbsp;preInitialize(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)
                   throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">INTERNAL:
 Allow the descriptor to initialize any dependencies on this session.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="prepareCascadeLockingPolicy-org.eclipse.persistence.mappings.DatabaseMapping-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>prepareCascadeLockingPolicy</h4>
<pre>protected&nbsp;void&nbsp;prepareCascadeLockingPolicy(<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;mapping)</pre>
<div class="block">INTERNAL:</div>
</li>
</ul>
<a name="preInitializeInheritancePolicy-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>preInitializeInheritancePolicy</h4>
<pre>protected&nbsp;void&nbsp;preInitializeInheritancePolicy(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)
                                       throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">Hook together the inheritance policy tree.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="preInterfaceInitialization-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>preInterfaceInitialization</h4>
<pre>public&nbsp;void&nbsp;preInterfaceInitialization(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)
                                throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">INTERNAL:
 Allow the descriptor to initialize any dependencies on this session.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="rehashFieldDependancies-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rehashFieldDependancies</h4>
<pre>public&nbsp;void&nbsp;rehashFieldDependancies(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</pre>
<div class="block">INTERNAL:
 Rehash any hashtables based on fields.
 This is used to clone descriptors for aggregates, which hammer field names,
 it is probably better not to hammer the field name and this should be refactored.</div>
</li>
</ul>
<a name="reInitializeJoinedAttributes--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reInitializeJoinedAttributes</h4>
<pre>public&nbsp;void&nbsp;reInitializeJoinedAttributes()</pre>
<div class="block">INTERNAL:
 A user should not be setting which attributes to join or not to join
 after descriptor initialization; provided only for backwards compatibility.</div>
</li>
</ul>
<a name="remoteInitialization-org.eclipse.persistence.sessions.remote.DistributedSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remoteInitialization</h4>
<pre>public&nbsp;void&nbsp;remoteInitialization(<a href="../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html" title="class in org.eclipse.persistence.sessions.remote">DistributedSession</a>&nbsp;session)</pre>
<div class="block">INTERNAL:
 Used to initialize a remote descriptor.</div>
</li>
</ul>
<a name="removeProperty-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeProperty</h4>
<pre>public&nbsp;void&nbsp;removeProperty(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;property)</pre>
<div class="block">PUBLIC:
 Remove the user defined property.</div>
</li>
</ul>
<a name="requiresInitialization-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>requiresInitialization</h4>
<pre>public&nbsp;boolean&nbsp;requiresInitialization(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</pre>
<div class="block">INTERNAL:
 Aggregate and Interface descriptors do not require initialization as they are cloned and
 initialized by each mapping. Descriptors with table per tenant policies are cloned per
 client session (per tenant) so do not initialize the original descriptor.</div>
</li>
</ul>
<a name="selfValidationAfterInitialization-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>selfValidationAfterInitialization</h4>
<pre>protected&nbsp;void&nbsp;selfValidationAfterInitialization(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)
                                          throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">INTERNAL:
 Validate that the descriptor was defined correctly.
 This allows for checks to be done that require the descriptor initialization to be completed.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="selfValidationBeforeInitialization-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>selfValidationBeforeInitialization</h4>
<pre>protected&nbsp;void&nbsp;selfValidationBeforeInitialization(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)
                                           throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">INTERNAL:
 Validate that the descriptor's non-mapping attribute are defined correctly.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="setAdditionalTablePrimaryKeyFields-org.eclipse.persistence.internal.helper.DatabaseTable-org.eclipse.persistence.internal.helper.DatabaseField-org.eclipse.persistence.internal.helper.DatabaseField-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAdditionalTablePrimaryKeyFields</h4>
<pre>protected&nbsp;void&nbsp;setAdditionalTablePrimaryKeyFields(org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;table,
                                                  org.eclipse.persistence.internal.helper.DatabaseField&nbsp;field1,
                                                  org.eclipse.persistence.internal.helper.DatabaseField&nbsp;field2)</pre>
<div class="block">INTERNAL:
 This is used to map the primary key field names in a multiple table
 descriptor.</div>
</li>
</ul>
<a name="toggleAdditionalTablePrimaryKeyFields--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toggleAdditionalTablePrimaryKeyFields</h4>
<pre>protected&nbsp;void&nbsp;toggleAdditionalTablePrimaryKeyFields()</pre>
<div class="block">INTERNAL:
 Eclipselink needs additionalTablePKFields entries to be associated with tables other than the main (getTables.get(0)) one.
 Also in case of two non-main tables additionalTablePKFields entry should be associated with the one
 father down insert order.</div>
</li>
</ul>
<a name="setAdditionalTablePrimaryKeyFields-java.util.Map-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAdditionalTablePrimaryKeyFields</h4>
<pre>public&nbsp;void&nbsp;setAdditionalTablePrimaryKeyFields(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField,org.eclipse.persistence.internal.helper.DatabaseField&gt;&gt;&nbsp;additionalTablePrimaryKeyFields)</pre>
<div class="block">INTERNAL:
 This is used to map the primary key field names in a multiple table
 descriptor.</div>
</li>
</ul>
<a name="setAlias-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAlias</h4>
<pre>public&nbsp;void&nbsp;setAlias(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;alias)</pre>
<div class="block">PUBLIC:
 Set the alias</div>
</li>
</ul>
<a name="setAllFields-java.util.Vector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAllFields</h4>
<pre>protected&nbsp;void&nbsp;setAllFields(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;allFields)</pre>
<div class="block">INTERNAL:
 Set all the fields.</div>
</li>
</ul>
<a name="setAmendmentClass-java.lang.Class-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAmendmentClass</h4>
<pre>public&nbsp;void&nbsp;setAmendmentClass(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;amendmentClass)</pre>
<div class="block">PUBLIC:
 Set the amendment class.
 The amendment method will be called on the class before initialization to allow for it to initialize the descriptor.
 The method must be a public static method on the class.</div>
</li>
</ul>
<a name="setAmendmentClassName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAmendmentClassName</h4>
<pre>public&nbsp;void&nbsp;setAmendmentClassName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;amendmentClassName)</pre>
<div class="block">INTERNAL:
 Return the amendment class name, used by the MW.</div>
</li>
</ul>
<a name="setAmendmentMethodName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAmendmentMethodName</h4>
<pre>public&nbsp;void&nbsp;setAmendmentMethodName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;amendmentMethodName)</pre>
<div class="block">PUBLIC:
 Set the amendment method.
 This will be called on the amendment class before initialization to allow for it to initialize the descriptor.
 The method must be a public static method on the class.</div>
</li>
</ul>
<a name="setAccessorTree-java.util.List-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAccessorTree</h4>
<pre>public&nbsp;void&nbsp;setAccessorTree(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/AttributeAccessor.html" title="class in org.eclipse.persistence.mappings">AttributeAccessor</a>&gt;&nbsp;accessorTree)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>accessorTree</code> - the accessorTree to set</dd>
</dl>
</li>
</ul>
<a name="setCacheSynchronizationType-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCacheSynchronizationType</h4>
<pre>public&nbsp;void&nbsp;setCacheSynchronizationType(int&nbsp;type)</pre>
<div class="block">PUBLIC:
 Set the type of cache synchronization that will be used on objects of this type.  Possible values
 are:
 SEND_OBJECT_CHANGES
 INVALIDATE_CHANGED_OBJECTS
 SEND_NEW_OBJECTS_WITH_CHANGES
 DO_NOT_SEND_CHANGES
 Note: Cache Synchronization type cannot be altered for descriptors that are set as isolated using
 the setIsIsolated method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>type</code> - int  The synchronization type for this descriptor</dd>
</dl>
</li>
</ul>
<a name="setObjectChangePolicy-org.eclipse.persistence.descriptors.changetracking.ObjectChangePolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setObjectChangePolicy</h4>
<pre>public&nbsp;void&nbsp;setObjectChangePolicy(<a href="../../../../org/eclipse/persistence/descriptors/changetracking/ObjectChangePolicy.html" title="interface in org.eclipse.persistence.descriptors.changetracking">ObjectChangePolicy</a>&nbsp;policy)</pre>
<div class="block">PUBLIC:
 Set the ObjectChangePolicy for this descriptor.</div>
</li>
</ul>
<a name="setHistoryPolicy-org.eclipse.persistence.history.HistoryPolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setHistoryPolicy</h4>
<pre>public&nbsp;void&nbsp;setHistoryPolicy(<a href="../../../../org/eclipse/persistence/history/HistoryPolicy.html" title="class in org.eclipse.persistence.history">HistoryPolicy</a>&nbsp;policy)</pre>
<div class="block">PUBLIC:
 Set the HistoryPolicy for this descriptor.</div>
</li>
</ul>
<a name="setCacheInterceptorClass-java.lang.Class-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCacheInterceptorClass</h4>
<pre>public&nbsp;void&nbsp;setCacheInterceptorClass(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;cacheInterceptorClass)</pre>
<div class="block">PUBLIC:
 A CacheInterceptor is an adaptor that when overridden and assigned to a Descriptor all interaction
 between EclipseLink and the internal cache for that class will pass through the Interceptor.
 Advanced users could use this interceptor to audit, profile or log cache access.  This Interceptor
 could also be used to redirect or augment the TopLink cache with an alternate cache mechanism.
 EclipseLink's configurated IdentityMaps will be passed to the Interceptor constructor.

 As with IdentityMaps an entire class inheritance hierarchy will share the same interceptor.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/sessions/interceptors/CacheInterceptor.html" title="class in org.eclipse.persistence.sessions.interceptors"><code>CacheInterceptor</code></a></dd>
</dl>
</li>
</ul>
<a name="setCacheInterceptorClassName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCacheInterceptorClassName</h4>
<pre>public&nbsp;void&nbsp;setCacheInterceptorClassName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;cacheInterceptorClassName)</pre>
<div class="block">PUBLIC:
 A CacheInterceptor is an adaptor that when overridden and assigned to a Descriptor all interaction
 between EclipseLink and the internal cache for that class will pass through the Interceptor.
 Advanced users could use this interceptor to audit, profile or log cache access.  This Interceptor
 could also be used to redirect or augment the TopLink cache with an alternate cache mechanism.
 EclipseLink's configurated IdentityMaps will be passed to the Interceptor constructor.

 As with IdentityMaps an entire class inheritance hierarchy will share the same interceptor.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/sessions/interceptors/CacheInterceptor.html" title="class in org.eclipse.persistence.sessions.interceptors"><code>CacheInterceptor</code></a></dd>
</dl>
</li>
</ul>
<a name="setCacheInvalidationPolicy-org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCacheInvalidationPolicy</h4>
<pre>public&nbsp;void&nbsp;setCacheInvalidationPolicy(<a href="../../../../org/eclipse/persistence/descriptors/invalidation/CacheInvalidationPolicy.html" title="class in org.eclipse.persistence.descriptors.invalidation">CacheInvalidationPolicy</a>&nbsp;policy)</pre>
<div class="block">PUBLIC:
 Set the Cache Invalidation Policy for this descriptor.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/invalidation/CacheInvalidationPolicy.html" title="class in org.eclipse.persistence.descriptors.invalidation"><code>CacheInvalidationPolicy</code></a></dd>
</dl>
</li>
</ul>
<a name="setConstraintDependencies-java.util.Vector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setConstraintDependencies</h4>
<pre>public&nbsp;void&nbsp;setConstraintDependencies(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;constraintDependencies)</pre>
<div class="block">ADVANCED:
  automatically orders database access through the foreign key information provided in 1:1 and 1:m mappings.
 In some case when 1:1 are not defined it may be required to tell the descriptor about a constraint,
 this defines that this descriptor has a foreign key constraint to another class and must be inserted after
 instances of the other class.</div>
</li>
</ul>
<a name="setCopyPolicy-org.eclipse.persistence.descriptors.copying.CopyPolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCopyPolicy</h4>
<pre>public&nbsp;void&nbsp;setCopyPolicy(<a href="../../../../org/eclipse/persistence/descriptors/copying/CopyPolicy.html" title="interface in org.eclipse.persistence.descriptors.copying">CopyPolicy</a>&nbsp;policy)</pre>
<div class="block">INTERNAL:
 Set the copy policy.
 This would be 'protected' but the EJB stuff in another
 package needs it to be public</div>
</li>
</ul>
<a name="setCopyPolicyClassName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCopyPolicyClassName</h4>
<pre>public&nbsp;void&nbsp;setCopyPolicyClassName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;className)</pre>
<div class="block">INTERNAL:
 Sets the name of a Class that implements CopyPolicy
 Will be instantiatied as a copy policy at initialization times
 using the no-args constructor</div>
</li>
</ul>
<a name="setDefaultTable-org.eclipse.persistence.internal.helper.DatabaseTable-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultTable</h4>
<pre>public&nbsp;void&nbsp;setDefaultTable(org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;defaultTable)</pre>
<div class="block">INTERNAL:
 The descriptors default table can be configured if the first table is not desired.</div>
</li>
</ul>
<a name="setDefaultTableName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultTableName</h4>
<pre>public&nbsp;void&nbsp;setDefaultTableName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;defaultTableName)</pre>
<div class="block">PUBLIC:
 The descriptors default table can be configured if the first table is not desired.</div>
</li>
</ul>
<a name="setDescriptorCustomizerClassName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDescriptorCustomizerClassName</h4>
<pre>public&nbsp;void&nbsp;setDescriptorCustomizerClassName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;descriptorCustomizerClassName)</pre>
<div class="block">INTERNAL:
 Sets the JPA DescriptorCustomizer class name.
 DescriptorCustomizer is the JPA equivalent of an amendment method.</div>
</li>
</ul>
<a name="setDescriptorType-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDescriptorType</h4>
<pre>public&nbsp;void&nbsp;setDescriptorType(int&nbsp;descriptorType)</pre>
<div class="block">ADVANCED:
 set the descriptor type (NORMAL by default, others include INTERFACE, AGGREGATE, AGGREGATE COLLECTION)</div>
</li>
</ul>
<a name="setDescriptorTypeValue-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDescriptorTypeValue</h4>
<pre>public&nbsp;void&nbsp;setDescriptorTypeValue(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</pre>
<div class="block">INTERNAL:
 This method is explicitly used by the XML reader.</div>
</li>
</ul>
<a name="setEventManager-org.eclipse.persistence.descriptors.DescriptorEventManager-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setEventManager</h4>
<pre>public&nbsp;void&nbsp;setEventManager(<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>&nbsp;eventManager)</pre>
<div class="block">INTERNAL:
 Set the event manager for the descriptor.  The event manager is responsible
 for managing the pre/post selectors.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#setEventManager-DESCRIPTOR_EVENT_MANAGER-">setEventManager</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
</dl>
</li>
</ul>
<a name="setExistenceChecking-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setExistenceChecking</h4>
<pre>public&nbsp;void&nbsp;setExistenceChecking(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;token)
                          throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">INTERNAL:
 OBSOLETE - old reader.
 This method is explicitly used by the Builder only.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="setFields-java.util.Vector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setFields</h4>
<pre>public&nbsp;void&nbsp;setFields(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;fields)</pre>
<div class="block">INTERNAL:
 Set the fields used by this descriptor.</div>
</li>
</ul>
<a name="setForeignKeyFieldNamesForMultipleTable-java.util.Vector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setForeignKeyFieldNamesForMultipleTable</h4>
<pre>public&nbsp;void&nbsp;setForeignKeyFieldNamesForMultipleTable(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;associations)
                                             throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">INTERNAL:
 This method is used by the  XML Deployment ClassDescriptor to read and write these mappings</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="setFullyMergeEntity-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setFullyMergeEntity</h4>
<pre>public&nbsp;void&nbsp;setFullyMergeEntity(boolean&nbsp;fullyMergeEntity)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>fullyMergeEntity</code> - the fullyMergeEntity to set</dd>
</dl>
</li>
</ul>
<a name="setIdentityMapClass-java.lang.Class-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setIdentityMapClass</h4>
<pre>public&nbsp;void&nbsp;setIdentityMapClass(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;theIdentityMapClass)</pre>
<div class="block">PUBLIC:
 Set the class of identity map to be used by this descriptor.
 The default is the "FullIdentityMap".</div>
</li>
</ul>
<a name="setIdentityMapSize-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setIdentityMapSize</h4>
<pre>public&nbsp;void&nbsp;setIdentityMapSize(int&nbsp;identityMapSize)</pre>
<div class="block">PUBLIC:
 Set the size of the identity map to be used by this descriptor.
 The default is the 100.</div>
</li>
</ul>
<a name="setInheritancePolicy-org.eclipse.persistence.descriptors.InheritancePolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setInheritancePolicy</h4>
<pre>public&nbsp;void&nbsp;setInheritancePolicy(<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>&nbsp;inheritancePolicy)</pre>
<div class="block">INTERNAL:
 Sets the inheritance policy.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#setInheritancePolicy-INHERITANCE_POLICY-">setInheritancePolicy</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
</dl>
</li>
</ul>
<a name="setReturningPolicy-org.eclipse.persistence.descriptors.ReturningPolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setReturningPolicy</h4>
<pre>public&nbsp;void&nbsp;setReturningPolicy(<a href="../../../../org/eclipse/persistence/descriptors/ReturningPolicy.html" title="class in org.eclipse.persistence.descriptors">ReturningPolicy</a>&nbsp;returningPolicy)</pre>
<div class="block">PUBLIC:
 Sets the returning policy.</div>
</li>
</ul>
<a name="setInitializationStage-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setInitializationStage</h4>
<pre>protected&nbsp;void&nbsp;setInitializationStage(int&nbsp;initializationStage)</pre>
<div class="block">INTERNAL:</div>
</li>
</ul>
<a name="setInstantiationPolicy-org.eclipse.persistence.internal.descriptors.InstantiationPolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setInstantiationPolicy</h4>
<pre>public&nbsp;void&nbsp;setInstantiationPolicy(org.eclipse.persistence.internal.descriptors.InstantiationPolicy&nbsp;instantiationPolicy)</pre>
<div class="block">INTERNAL:
 Sets the instantiation policy.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#setInstantiationPolicy-INSTANTIATION_POLICY-">setInstantiationPolicy</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
</dl>
</li>
</ul>
<a name="setInterfaceInitializationStage-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setInterfaceInitializationStage</h4>
<pre>protected&nbsp;void&nbsp;setInterfaceInitializationStage(int&nbsp;interfaceInitializationStage)</pre>
<div class="block">INTERNAL:</div>
</li>
</ul>
<a name="setInterfacePolicy-org.eclipse.persistence.descriptors.InterfacePolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setInterfacePolicy</h4>
<pre>public&nbsp;void&nbsp;setInterfacePolicy(<a href="../../../../org/eclipse/persistence/descriptors/InterfacePolicy.html" title="class in org.eclipse.persistence.descriptors">InterfacePolicy</a>&nbsp;interfacePolicy)</pre>
<div class="block">INTERNAL:
 Sets the interface policy.</div>
</li>
</ul>
<a name="setInternalDefaultTable--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setInternalDefaultTable</h4>
<pre>public&nbsp;void&nbsp;setInternalDefaultTable()</pre>
<div class="block">INTERNAL:
 Set the default table if one if not already set. This method will
 extract the default table.</div>
</li>
</ul>
<a name="setInternalDefaultTable-org.eclipse.persistence.internal.helper.DatabaseTable-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setInternalDefaultTable</h4>
<pre>public&nbsp;void&nbsp;setInternalDefaultTable(org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;defaultTable)</pre>
<div class="block">INTERNAL:
 Set the default table if one if not already set. This method will set
 the table that is provided as the default.</div>
</li>
</ul>
<a name="setCacheable-java.lang.Boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCacheable</h4>
<pre>public&nbsp;void&nbsp;setCacheable(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&nbsp;cacheable)</pre>
<div class="block">INTERNAL:
 Set entity @Cacheable annotation value in cache configuration object.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>cacheable</code> - Entity @Cacheable annotation value for current class
        or <code>null</code> if @Cacheable annotation is not set. Parent
        values are ignored, value shall refer to current class only.
        This value should be set only when SharedCacheMode allows
        to override caching on entity level (DISABLE_SELECTIVE
        or ENABLE_SELECTIVE).</dd>
</dl>
</li>
</ul>
<a name="getCacheIsolation--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCacheIsolation</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/config/CacheIsolationType.html" title="enum in org.eclipse.persistence.config">CacheIsolationType</a>&nbsp;getCacheIsolation()</pre>
<div class="block">PUBLIC:
 Controls how the Entity instances will be cached.  See the CacheIsolationType for details on the options.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the isolationType</dd>
</dl>
</li>
</ul>
<a name="setCacheIsolation-org.eclipse.persistence.config.CacheIsolationType-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCacheIsolation</h4>
<pre>public&nbsp;void&nbsp;setCacheIsolation(<a href="../../../../org/eclipse/persistence/config/CacheIsolationType.html" title="enum in org.eclipse.persistence.config">CacheIsolationType</a>&nbsp;isolationType)</pre>
<div class="block">PUBLIC:
 Controls how the Entity instances and data will be cached.  See the CacheIsolationType for details on the options.
 To disable all second level caching simply set CacheIsolationType.ISOLATED.  Note that setting the isolation
 will automatically set the corresponding cacheSynchronizationType.
 ISOLATED = DO_NOT_SEND_CHANGES, PROTECTED and SHARED = SEND_OBJECT_CHANGES</div>
</li>
</ul>
<a name="shouldIsolateObjectsInUnitOfWork--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldIsolateObjectsInUnitOfWork</h4>
<pre>public&nbsp;boolean&nbsp;shouldIsolateObjectsInUnitOfWork()</pre>
<div class="block">INTERNAL:
 Return if the unit of work should by-pass the session cache.
 Objects will be built in the unit of work, and never merged into the session cache.</div>
</li>
</ul>
<a name="shouldIsolateProtectedObjectsInUnitOfWork--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldIsolateProtectedObjectsInUnitOfWork</h4>
<pre>public&nbsp;boolean&nbsp;shouldIsolateProtectedObjectsInUnitOfWork()</pre>
<div class="block">INTERNAL:
 Return if the unit of work should by-pass the IsolatedSession cache.
 Objects will be built/merged into the unit of work and into the session cache.
 but not built/merge into the IsolatedClientSession cache.</div>
</li>
</ul>
<a name="shouldIsolateObjectsInUnitOfWorkEarlyTransaction--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldIsolateObjectsInUnitOfWorkEarlyTransaction</h4>
<pre>public&nbsp;boolean&nbsp;shouldIsolateObjectsInUnitOfWorkEarlyTransaction()</pre>
<div class="block">INTERNAL:
 Return if the unit of work should by-pass the session cache after an early transaction.</div>
</li>
</ul>
<a name="shouldUseSessionCacheInUnitOfWorkEarlyTransaction--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseSessionCacheInUnitOfWorkEarlyTransaction</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseSessionCacheInUnitOfWorkEarlyTransaction()</pre>
<div class="block">INTERNAL:
 Return if the unit of work should use the session cache after an early transaction.</div>
</li>
</ul>
<a name="getUnconvertedProperties--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUnconvertedProperties</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/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/8/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/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;getUnconvertedProperties()</pre>
<div class="block">INTERNAL:
 Used to store un-converted properties, which are subsequenctly converted
 at runtime (through the convertClassNamesToClasses method.</div>
</li>
</ul>
<a name="getUnitOfWorkCacheIsolationLevel--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUnitOfWorkCacheIsolationLevel</h4>
<pre>public&nbsp;int&nbsp;getUnitOfWorkCacheIsolationLevel()</pre>
<div class="block">ADVANCED:
 Return the unit of work cache isolation setting.
 This setting configures how the session cache will be used in a unit of work.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setUnitOfWorkCacheIsolationLevel-int-"><code>setUnitOfWorkCacheIsolationLevel(int)</code></a></dd>
</dl>
</li>
</ul>
<a name="setUnitOfWorkCacheIsolationLevel-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUnitOfWorkCacheIsolationLevel</h4>
<pre>public&nbsp;void&nbsp;setUnitOfWorkCacheIsolationLevel(int&nbsp;unitOfWorkCacheIsolationLevel)</pre>
<div class="block">ADVANCED:
 This setting configures how the session cache will be used in a unit of work.
 Most of the options only apply to a unit of work in an early transaction,
 such as a unit of work that was flushed (writeChanges), issued a modify query, or acquired a pessimistic lock.
 <p> USE_SESSION_CACHE_AFTER_TRANSACTION - Objects built from new data accessed after a unit of work early transaction are stored in the session cache.
 This options is the most efficient as it allows the cache to be used after an early transaction.
 This should only be used if it is known that this class is not modified in the transaction,
 otherwise this could cause uncommitted data to be loaded into the session cache.
 ISOLATE_NEW_DATA_AFTER_TRANSACTION - Default (when using caching): Objects built from new data accessed after a unit of work early transaction are only stored in the unit of work.
 This still allows previously cached objects to be accessed in the unit of work after an early transaction,
 but ensures uncommitted data will never be put in the session cache by storing any object built from new data only in the unit of work.
 ISOLATE_CACHE_AFTER_TRANSACTION - After a unit of work early transaction the session cache is no longer used for this class.
 Objects will be directly built from the database data and only stored in the unit of work, even if previously cached.
 Note that this may lead to poor performance as the session cache is bypassed after an early transaction.
 ISOLATE_CACHE_ALWAYS - Default (when using isolated cache): The session cache will never be used for this class.
 Objects will be directly built from the database data and only stored in the unit of work.
 New objects and changes will also never be merged into the session cache.
 Note that this may lead to poor performance as the session cache is bypassed,
 however if this class is isolated or pessimistic locked and always accessed in a transaction, this can avoid having to build two copies of the object.</div>
</li>
</ul>
<a name="setHasRelationships-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setHasRelationships</h4>
<pre>public&nbsp;void&nbsp;setHasRelationships(boolean&nbsp;hasRelationships)</pre>
<div class="block">INTERNAL:
 set whether this descriptor has any relationships through its mappings, through inheritance, or through aggregates</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>hasRelationships</code> - </dd>
</dl>
</li>
</ul>
<a name="setJavaClass-java.lang.Class-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setJavaClass</h4>
<pre>public&nbsp;void&nbsp;setJavaClass(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;theJavaClass)</pre>
<div class="block">PUBLIC:
 Set the Java class that this descriptor maps.
 Every descriptor maps one and only one class.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#setJavaClass-java.lang.Class-">setJavaClass</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
</dl>
</li>
</ul>
<a name="setJavaClassName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setJavaClassName</h4>
<pre>public&nbsp;void&nbsp;setJavaClassName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;theJavaClassName)</pre>
<div class="block">INTERNAL:
 Return the java class name, used by the MW.</div>
</li>
</ul>
<a name="setJavaInterface-java.lang.Class-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setJavaInterface</h4>
<pre>public&nbsp;void&nbsp;setJavaInterface(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;theJavaInterface)</pre>
<div class="block">PUBLIC:
 Sets the descriptor to be for an interface.
 An interface descriptor allows for other classes to reference an interface or one of several other classes.
 The implementor classes can be completely unrelated in term of the database stored in distinct tables.
 Queries can also be done for the interface which will query each of the implementor classes.
 An interface descriptor cannot define any mappings as an interface is just API and not state,
 a interface descriptor should define the common query key of its implementors to allow querying.
 An interface descriptor also does not define a primary key or table or other settings.
 If an interface only has a single implementor (i.e. a classes public interface or remote) then an interface
 descriptor should not be defined for it and relationships should be to the implementor class not the interface,
 in this case the implementor class can add the interface through its interface policy to map queries on the interface to it.</div>
</li>
</ul>
<a name="setJavaInterfaceName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setJavaInterfaceName</h4>
<pre>public&nbsp;void&nbsp;setJavaInterfaceName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;theJavaInterfaceName)</pre>
<div class="block">INTERNAL:
 Return the java interface name, used by the MW.</div>
</li>
</ul>
<a name="setLockableMappings-java.util.List-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setLockableMappings</h4>
<pre>public&nbsp;void&nbsp;setLockableMappings(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;&nbsp;lockableMappings)</pre>
<div class="block">INTERNAL:
 Set the list of lockable mappings for this project
 This method is provided for CMP use.  Normally, the lockable mappings are initialized
 at descriptor initialization time.</div>
</li>
</ul>
<a name="setMappings-java.util.Vector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMappings</h4>
<pre>public&nbsp;void&nbsp;setMappings(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;&nbsp;mappings)</pre>
<div class="block">INTERNAL:
 Set the mappings.</div>
</li>
</ul>
<a name="setMultipleTableForeignKeys-java.util.Map-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMultipleTableForeignKeys</h4>
<pre>protected&nbsp;void&nbsp;setMultipleTableForeignKeys(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;&gt;&nbsp;newValue)</pre>
<div class="block">INTERNAL:</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#getMultipleTableForeignKeys--"><code>getMultipleTableForeignKeys()</code></a></dd>
</dl>
</li>
</ul>
<a name="setMultipleTableInsertOrder-java.util.List-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMultipleTableInsertOrder</h4>
<pre>public&nbsp;void&nbsp;setMultipleTableInsertOrder(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;&nbsp;newValue)</pre>
<div class="block">ADVANCED:
 Sets the List of DatabaseTables in the order which INSERTS should take place.
 This is normally computed correctly by , however in advanced cases in it may be overridden.</div>
</li>
</ul>
<a name="setMultitenantPolicy-org.eclipse.persistence.descriptors.MultitenantPolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMultitenantPolicy</h4>
<pre>public&nbsp;void&nbsp;setMultitenantPolicy(<a href="../../../../org/eclipse/persistence/descriptors/MultitenantPolicy.html" title="interface in org.eclipse.persistence.descriptors">MultitenantPolicy</a>&nbsp;multitenantPolicy)</pre>
<div class="block">INTERNAL:
 Set a multitenant policy on the descriptor.</div>
</li>
</ul>
<a name="isCascadeOnDeleteSetOnDatabaseOnSecondaryTables--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCascadeOnDeleteSetOnDatabaseOnSecondaryTables</h4>
<pre>public&nbsp;boolean&nbsp;isCascadeOnDeleteSetOnDatabaseOnSecondaryTables()</pre>
<div class="block">ADVANCED:
 Return if delete cascading has been set on the database for the descriptor's
 multiple tables.</div>
</li>
</ul>
<a name="setIsCascadeOnDeleteSetOnDatabaseOnSecondaryTables-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setIsCascadeOnDeleteSetOnDatabaseOnSecondaryTables</h4>
<pre>public&nbsp;void&nbsp;setIsCascadeOnDeleteSetOnDatabaseOnSecondaryTables(boolean&nbsp;isCascadeOnDeleteSetOnDatabaseOnSecondaryTables)</pre>
<div class="block">ADVANCED:
 Set if delete cascading has been set on the database for the descriptor's
 multiple tables.
 This will avoid the delete SQL being generated for those tables.</div>
</li>
</ul>
<a name="setObjectBuilder-org.eclipse.persistence.internal.descriptors.ObjectBuilder-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setObjectBuilder</h4>
<pre>protected&nbsp;void&nbsp;setObjectBuilder(org.eclipse.persistence.internal.descriptors.ObjectBuilder&nbsp;builder)</pre>
<div class="block">INTERNAL:
 Set the ObjectBuilder.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#setObjectBuilder-OBJECT_BUILDER-">setObjectBuilder</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
</dl>
</li>
</ul>
<a name="setOptimisticLockingPolicy-org.eclipse.persistence.internal.descriptors.OptimisticLockingPolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setOptimisticLockingPolicy</h4>
<pre>public&nbsp;void&nbsp;setOptimisticLockingPolicy(org.eclipse.persistence.internal.descriptors.OptimisticLockingPolicy&nbsp;optimisticLockingPolicy)</pre>
<div class="block">PUBLIC:
 Set the OptimisticLockingPolicy.
 This can be one of the provided locking policies or a user defined policy.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/VersionLockingPolicy.html" title="class in org.eclipse.persistence.descriptors"><code>VersionLockingPolicy</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/TimestampLockingPolicy.html" title="class in org.eclipse.persistence.descriptors"><code>TimestampLockingPolicy</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/FieldsLockingPolicy.html" title="class in org.eclipse.persistence.descriptors"><code>FieldsLockingPolicy</code></a></dd>
</dl>
</li>
</ul>
<a name="setPrimaryKeyFieldName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPrimaryKeyFieldName</h4>
<pre>public&nbsp;void&nbsp;setPrimaryKeyFieldName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fieldName)</pre>
<div class="block">PUBLIC:
 Specify the primary key field of the descriptors table.
 This should only be called if it is a singlton primary key field,
 otherwise addPrimaryKeyFieldName should be called.
 If the descriptor has many tables, this must be the primary key in all of the tables.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addPrimaryKeyFieldName-java.lang.String-"><code>addPrimaryKeyFieldName(String)</code></a></dd>
</dl>
</li>
</ul>
<a name="setPrimaryKeyFieldNames-java.util.Vector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPrimaryKeyFieldNames</h4>
<pre>public&nbsp;void&nbsp;setPrimaryKeyFieldNames(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;primaryKeyFieldsName)</pre>
<div class="block">PUBLIC:
 User can specify a vector of all the primary key field names if primary key is composite.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#setPrimaryKeyFieldNames-LIST-">setPrimaryKeyFieldNames</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addPrimaryKeyFieldName-java.lang.String-"><code>addPrimaryKeyFieldName(String)</code></a></dd>
</dl>
</li>
</ul>
<a name="setPrimaryKeyFields-java.util.List-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPrimaryKeyFields</h4>
<pre>public&nbsp;void&nbsp;setPrimaryKeyFields(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.helper.DatabaseField&gt;&nbsp;thePrimaryKeyFields)</pre>
<div class="block">INTERNAL:
 Set the primary key fields</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#setPrimaryKeyFields-java.util.List-">setPrimaryKeyFields</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#addPrimaryKeyFieldName-java.lang.String-"><code>addPrimaryKeyFieldName(String)</code></a></dd>
</dl>
</li>
</ul>
<a name="setProperties-java.util.Map-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setProperties</h4>
<pre>public&nbsp;void&nbsp;setProperties(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&nbsp;properties)</pre>
<div class="block">INTERNAL:
 Set the user defined properties.</div>
</li>
</ul>
<a name="setProperty-java.lang.String-java.lang.Object-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setProperty</h4>
<pre>public&nbsp;void&nbsp;setProperty(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
                        <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;value)</pre>
<div class="block">PUBLIC:
 Set the user defined property.</div>
</li>
</ul>
<a name="setQueryKeys-java.util.Map-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setQueryKeys</h4>
<pre>public&nbsp;void&nbsp;setQueryKeys(<a href="https://docs.oracle.com/javase/8/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/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../org/eclipse/persistence/mappings/querykeys/QueryKey.html" title="class in org.eclipse.persistence.mappings.querykeys">QueryKey</a>&gt;&nbsp;queryKeys)</pre>
<div class="block">INTERNAL:
 Set the query keys.</div>
</li>
</ul>
<a name="setQueryManager-org.eclipse.persistence.descriptors.DescriptorQueryManager-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setQueryManager</h4>
<pre>public&nbsp;void&nbsp;setQueryManager(<a href="../../../../org/eclipse/persistence/descriptors/DescriptorQueryManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorQueryManager</a>&nbsp;queryManager)</pre>
<div class="block">INTERNAL:
 Set the query manager.</div>
</li>
</ul>
<a name="setRemoteIdentityMapClass-java.lang.Class-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRemoteIdentityMapClass</h4>
<pre>public&nbsp;void&nbsp;setRemoteIdentityMapClass(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;theIdentityMapClass)</pre>
<div class="block">PUBLIC:
 Set the class of identity map to be used by this descriptor.
 The default is the "FullIdentityMap".</div>
</li>
</ul>
<a name="setRemoteIdentityMapSize-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRemoteIdentityMapSize</h4>
<pre>public&nbsp;void&nbsp;setRemoteIdentityMapSize(int&nbsp;identityMapSize)</pre>
<div class="block">PUBLIC:
 Set the size of the identity map to be used by this descriptor.
 The default is the 100.</div>
</li>
</ul>
<a name="setSequenceNumberField-org.eclipse.persistence.internal.helper.DatabaseField-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setSequenceNumberField</h4>
<pre>public&nbsp;void&nbsp;setSequenceNumberField(org.eclipse.persistence.internal.helper.DatabaseField&nbsp;sequenceNumberField)</pre>
<div class="block">INTERNAL:
 Set the sequence number field.</div>
</li>
</ul>
<a name="setSequenceNumberFieldName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setSequenceNumberFieldName</h4>
<pre>public&nbsp;void&nbsp;setSequenceNumberFieldName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fieldName)</pre>
<div class="block">PUBLIC:
 Set the sequence number field name.
 This is the field in the descriptors table that needs its value to be generated.
 This is normally the primary key field of the descriptor.</div>
</li>
</ul>
<a name="setSequenceNumberName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setSequenceNumberName</h4>
<pre>public&nbsp;void&nbsp;setSequenceNumberName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
<div class="block">PUBLIC:
 Set the sequence number name.
 This is the seq_name part of the row stored in the sequence table for this descriptor.
 If using Oracle native sequencing this is the name of the Oracle sequence object.
 If using Sybase native sequencing this name has no meaning, but should still be set for compatibility.
 The name does not have to be unique among descriptors, as having descriptors share sequences can
 improve pre-allocation performance.</div>
</li>
</ul>
<a name="setSessionName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setSessionName</h4>
<pre>protected&nbsp;void&nbsp;setSessionName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;sessionName)</pre>
<div class="block">INTERNAL:
 Set the name of the session local to this descriptor.
 This is used by the session broker.</div>
</li>
</ul>
<a name="setShouldAlwaysConformResultsInUnitOfWork-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShouldAlwaysConformResultsInUnitOfWork</h4>
<pre>public&nbsp;void&nbsp;setShouldAlwaysConformResultsInUnitOfWork(boolean&nbsp;shouldAlwaysConformResultsInUnitOfWork)</pre>
<div class="block">PUBLIC:
 set if the descriptor is defined to always conform the results in unit of work in read query.</div>
</li>
</ul>
<a name="setShouldAlwaysRefreshCache-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShouldAlwaysRefreshCache</h4>
<pre>public&nbsp;void&nbsp;setShouldAlwaysRefreshCache(boolean&nbsp;shouldAlwaysRefreshCache)</pre>
<div class="block">PUBLIC:
 When the <CODE>shouldAlwaysRefreshCache</CODE> argument passed into this method is <CODE>true</CODE>,
 this method configures a <CODE>ClassDescriptor</CODE> to always refresh the cache if data is received from
 the database by any query.<P>

 However, if a query hits the cache, data is not refreshed regardless of how this setting is configured.
 For example, by default, when a query for a single object based on its primary key is executed, OracleAS TopLink
 will first look in the cache for the object. If the object is in the cache, the cached object is returned and
 data is not refreshed. To avoid cache hits, use the <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#disableCacheHits--"><code>disableCacheHits()</code></a> method.<P>

 Also note that the <a href="../../../../org/eclipse/persistence/sessions/UnitOfWork.html" title="interface in org.eclipse.persistence.sessions"><code>UnitOfWork</code></a> will not refresh its registered objects.<P>

 Use this property with caution because it can lead to poor performance and may refresh on queries when it is not desired.
 Normally, if you require fresh data, it is better to configure a query with <a href="../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html#refreshIdentityMapResult--"><code>ObjectLevelReadQuery.refreshIdentityMapResult()</code></a>.
 To ensure that refreshes are only done when required, use this method in conjunction with <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#onlyRefreshCacheIfNewerVersion--"><code>onlyRefreshCacheIfNewerVersion()</code></a>.<P>

 When the <CODE>shouldAlwaysRefreshCache</CODE> argument passed into this method is <CODE>false</CODE>, this method
 ensures that a <CODE>ClassDescriptor</CODE> is not configured to always refresh the cache if data is received from the database by any query.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCache--"><code>alwaysRefreshCache()</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#dontAlwaysRefreshCache--"><code>dontAlwaysRefreshCache()</code></a></dd>
</dl>
</li>
</ul>
<a name="setShouldAlwaysRefreshCacheOnRemote-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShouldAlwaysRefreshCacheOnRemote</h4>
<pre>public&nbsp;void&nbsp;setShouldAlwaysRefreshCacheOnRemote(boolean&nbsp;shouldAlwaysRefreshCacheOnRemote)</pre>
<div class="block">PUBLIC:
 When the <CODE>shouldAlwaysRefreshCacheOnRemote</CODE> argument passed into this method is <CODE>true</CODE>,
 this method configures a <CODE>ClassDescriptor</CODE> to always remotely refresh the cache if data is received from
 the database by any query in a <a href="../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html" title="class in org.eclipse.persistence.sessions.remote"><code>RemoteSession</code></a>.

 However, if a query hits the cache, data is not refreshed regardless of how this setting is configured. For
 example, by default, when a query for a single object based on its primary key is executed, OracleAS TopLink
 will first look in the cache for the object. If the object is in the cache, the cached object is returned and
 data is not refreshed. To avoid cache hits, use the <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#disableCacheHitsOnRemote--"><code>disableCacheHitsOnRemote()</code></a> method.<P>

 Also note that the <a href="../../../../org/eclipse/persistence/sessions/UnitOfWork.html" title="interface in org.eclipse.persistence.sessions"><code>UnitOfWork</code></a> will not refresh its registered objects.<P>

 Use this property with caution because it can lead to poor performance and may refresh on queries when it is
 not desired. Normally, if you require fresh data, it is better to configure a query with <a href="../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html#refreshIdentityMapResult--"><code>ObjectLevelReadQuery.refreshIdentityMapResult()</code></a>.
 To ensure that refreshes are only done when required, use this method in conjunction with <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#onlyRefreshCacheIfNewerVersion--"><code>onlyRefreshCacheIfNewerVersion()</code></a>.<P>

 When the <CODE>shouldAlwaysRefreshCacheOnRemote</CODE> argument passed into this method is <CODE>false</CODE>,
 this method ensures that a <CODE>ClassDescriptor</CODE> is not configured to always remotely refresh the cache if data
 is received from the database by any query in a <a href="../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html" title="class in org.eclipse.persistence.sessions.remote"><code>RemoteSession</code></a>.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCacheOnRemote--"><code>alwaysRefreshCacheOnRemote()</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#dontAlwaysRefreshCacheOnRemote--"><code>dontAlwaysRefreshCacheOnRemote()</code></a></dd>
</dl>
</li>
</ul>
<a name="setShouldBeReadOnly-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShouldBeReadOnly</h4>
<pre>public&nbsp;void&nbsp;setShouldBeReadOnly(boolean&nbsp;shouldBeReadOnly)</pre>
<div class="block">PUBLIC:
 Define if the descriptor reference class is read-only</div>
</li>
</ul>
<a name="setReadOnly--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setReadOnly</h4>
<pre>public&nbsp;void&nbsp;setReadOnly()</pre>
<div class="block">PUBLIC:
 Set the descriptor to be read-only.
 Declaring a descriptor is read-only means that instances of the reference class will never be modified.
 Read-only descriptor is usually used in the unit of work to gain performance as there is no need for
 the registration, clone and merge for the read-only classes.</div>
</li>
</ul>
<a name="setShouldDisableCacheHits-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShouldDisableCacheHits</h4>
<pre>public&nbsp;void&nbsp;setShouldDisableCacheHits(boolean&nbsp;shouldDisableCacheHits)</pre>
<div class="block">PUBLIC:
 Set if cache hits on primary key read object queries should be disabled.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCache--"><code>alwaysRefreshCache()</code></a></dd>
</dl>
</li>
</ul>
<a name="setShouldDisableCacheHitsOnRemote-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShouldDisableCacheHitsOnRemote</h4>
<pre>public&nbsp;void&nbsp;setShouldDisableCacheHitsOnRemote(boolean&nbsp;shouldDisableCacheHitsOnRemote)</pre>
<div class="block">PUBLIC:
 Set if the remote session cache hits on primary key read object queries is allowed or not.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#disableCacheHitsOnRemote--"><code>disableCacheHitsOnRemote()</code></a></dd>
</dl>
</li>
</ul>
<a name="setShouldLockForClone-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShouldLockForClone</h4>
<pre>public&nbsp;void&nbsp;setShouldLockForClone(boolean&nbsp;shouldLockForClone)</pre>
<div class="block">ADVANCED:
 When set to false, this setting will allow the UOW to avoid locking the shared cache instance in order to perform a clone.
 Caution should be taken as setting this to false may allow cloning of partial updates</div>
</li>
</ul>
<a name="setShouldOnlyRefreshCacheIfNewerVersion-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShouldOnlyRefreshCacheIfNewerVersion</h4>
<pre>public&nbsp;void&nbsp;setShouldOnlyRefreshCacheIfNewerVersion(boolean&nbsp;shouldOnlyRefreshCacheIfNewerVersion)</pre>
<div class="block">PUBLIC:
 When the <CODE>shouldOnlyRefreshCacheIfNewerVersion</CODE> argument passed into this method is <CODE>true</CODE>,
 this method configures a <CODE>ClassDescriptor</CODE> to only refresh the cache if the data received from the database
 by a query is newer than the data in the cache (as determined by the optimistic locking field) and as long as one of the following is true:

 <UL>
 <LI>the <CODE>ClassDescriptor</CODE> was configured by calling <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCache--"><code>alwaysRefreshCache()</code></a> or <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#alwaysRefreshCacheOnRemote--"><code>alwaysRefreshCacheOnRemote()</code></a>,</LI>
 <LI>the query was configured by calling <a href="../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html#refreshIdentityMapResult--"><code>ObjectLevelReadQuery.refreshIdentityMapResult()</code></a>, or</LI>
 <LI>the query was a call to <a href="../../../../org/eclipse/persistence/sessions/Session.html#refreshObject-java.lang.Object-"><code>Session.refreshObject(java.lang.Object)</code></a></LI>
 </UL>
 <P>

 However, if a query hits the cache, data is not refreshed regardless of how this setting is configured. For example, by default,
 when a query for a single object based on its primary key is executed, OracleAS TopLink will first look in the cache for the object.
 If the object is in the cache, the cached object is returned and data is not refreshed. To avoid cache hits, use
 the <a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#disableCacheHits--"><code>disableCacheHits()</code></a> method.<P>

 Also note that the <a href="../../../../org/eclipse/persistence/sessions/UnitOfWork.html" title="interface in org.eclipse.persistence.sessions"><code>UnitOfWork</code></a> will not refresh its registered objects.<P>

 When the <CODE>shouldOnlyRefreshCacheIfNewerVersion</CODE> argument passed into this method is <CODE>false</CODE>, this method
 ensures that a <CODE>ClassDescriptor</CODE> is not configured to only refresh the cache if the data received from the database by a
 query is newer than the data in the cache (as determined by the optimistic locking field).</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#onlyRefreshCacheIfNewerVersion--"><code>onlyRefreshCacheIfNewerVersion()</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#dontOnlyRefreshCacheIfNewerVersion--"><code>dontOnlyRefreshCacheIfNewerVersion()</code></a></dd>
</dl>
</li>
</ul>
<a name="setShouldOrderMappings-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShouldOrderMappings</h4>
<pre>public&nbsp;void&nbsp;setShouldOrderMappings(boolean&nbsp;shouldOrderMappings)</pre>
<div class="block">PUBLIC:
 This is set to turn off the ordering of mappings.  By Default this is set to true.
 By ordering the mappings  insures that object are merged in the right order.
 If the order of the mappings needs to be specified by the developer then set this to
 false and  will use the order that the mappings were added to the descriptor</div>
</li>
</ul>
<a name="setShouldRegisterResultsInUnitOfWork-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShouldRegisterResultsInUnitOfWork</h4>
<pre>public&nbsp;void&nbsp;setShouldRegisterResultsInUnitOfWork(boolean&nbsp;shouldRegisterResultsInUnitOfWork)</pre>
<div class="block">INTERNAL:
 Set to false to have queries conform to a UnitOfWork without registering
 any additional objects not already in that UnitOfWork.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#shouldRegisterResultsInUnitOfWork"><code>shouldRegisterResultsInUnitOfWork</code></a></dd>
</dl>
</li>
</ul>
<a name="setTableName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setTableName</h4>
<pre>public&nbsp;void&nbsp;setTableName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tableName)
                  throws <a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></pre>
<div class="block">PUBLIC:
 Specify the table name for the class of objects the receiver describes.
 If the table has a qualifier it should be specified using the dot notation,
 (i.e. "userid.employee"). This method is used for single table.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DescriptorException.html" title="class in org.eclipse.persistence.exceptions">DescriptorException</a></code></dd>
</dl>
</li>
</ul>
<a name="setTableNames-java.util.Vector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setTableNames</h4>
<pre>public&nbsp;void&nbsp;setTableNames(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;tableNames)</pre>
<div class="block">PUBLIC:
 Specify the all table names for the class of objects the receiver describes.
 If the table has a qualifier it should be specified using the dot notation,
 (i.e. "userid.employee"). This method is used for multiple tables</div>
</li>
</ul>
<a name="setTablePerClassPolicy-org.eclipse.persistence.descriptors.TablePerClassPolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setTablePerClassPolicy</h4>
<pre>public&nbsp;void&nbsp;setTablePerClassPolicy(<a href="../../../../org/eclipse/persistence/descriptors/TablePerClassPolicy.html" title="class in org.eclipse.persistence.descriptors">TablePerClassPolicy</a>&nbsp;tablePerClassPolicy)</pre>
<div class="block">INTERNAL:
 Sets the table per class policy.</div>
</li>
</ul>
<a name="setTableQualifier-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setTableQualifier</h4>
<pre>public&nbsp;void&nbsp;setTableQualifier(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tableQualifier)</pre>
<div class="block">PUBLIC: Set the table Qualifier for this descriptor.  This table creator will be used for
 all tables in this descriptor</div>
</li>
</ul>
<a name="setTables-java.util.Vector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setTables</h4>
<pre>public&nbsp;void&nbsp;setTables(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&lt;org.eclipse.persistence.internal.helper.DatabaseTable&gt;&nbsp;theTables)</pre>
<div class="block">INTERNAL:
 Sets the tables</div>
</li>
</ul>
<a name="setWrapperPolicy-org.eclipse.persistence.descriptors.WrapperPolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setWrapperPolicy</h4>
<pre>public&nbsp;void&nbsp;setWrapperPolicy(<a href="../../../../org/eclipse/persistence/descriptors/WrapperPolicy.html" title="interface in org.eclipse.persistence.descriptors">WrapperPolicy</a>&nbsp;wrapperPolicy)</pre>
<div class="block">ADVANCED:
 Sets the WrapperPolicy for this descriptor.
 This advanced feature can be used to wrap objects with other classes such as CORBA TIE objects or EJBs.</div>
</li>
</ul>
<a name="shouldAlwaysConformResultsInUnitOfWork--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldAlwaysConformResultsInUnitOfWork</h4>
<pre>public&nbsp;boolean&nbsp;shouldAlwaysConformResultsInUnitOfWork()</pre>
<div class="block">PUBLIC:
 Return if the descriptor is defined to always conform the results in unit of work in read query.</div>
</li>
</ul>
<a name="shouldAlwaysRefreshCache--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldAlwaysRefreshCache</h4>
<pre>public&nbsp;boolean&nbsp;shouldAlwaysRefreshCache()</pre>
<div class="block">PUBLIC:
 This method returns <CODE>true</CODE> if the <CODE>ClassDescriptor</CODE> is configured to always refresh
 the cache if data is received from the database by any query. Otherwise, it returns <CODE>false</CODE>.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldAlwaysRefreshCache-boolean-"><code>setShouldAlwaysRefreshCache(boolean)</code></a></dd>
</dl>
</li>
</ul>
<a name="shouldAlwaysRefreshCacheOnRemote--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldAlwaysRefreshCacheOnRemote</h4>
<pre>public&nbsp;boolean&nbsp;shouldAlwaysRefreshCacheOnRemote()</pre>
<div class="block">PUBLIC:
 This method returns <CODE>true</CODE> if the <CODE>ClassDescriptor</CODE> is configured to always remotely
 refresh the cache if data is received from the database by any query in a <a href="../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html" title="class in org.eclipse.persistence.sessions.remote"><code>RemoteSession</code></a>.
 Otherwise, it returns <CODE>false</CODE>.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldAlwaysRefreshCacheOnRemote-boolean-"><code>setShouldAlwaysRefreshCacheOnRemote(boolean)</code></a></dd>
</dl>
</li>
</ul>
<a name="shouldBeReadOnly--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldBeReadOnly</h4>
<pre>public&nbsp;boolean&nbsp;shouldBeReadOnly()</pre>
<div class="block">PUBLIC:
 Return if the descriptor reference class is defined as read-only</div>
</li>
</ul>
<a name="shouldDisableCacheHits--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldDisableCacheHits</h4>
<pre>public&nbsp;boolean&nbsp;shouldDisableCacheHits()</pre>
<div class="block">PUBLIC:
 Return if for cache hits on primary key read object queries to be disabled.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#disableCacheHits--"><code>disableCacheHits()</code></a></dd>
</dl>
</li>
</ul>
<a name="shouldDisableCacheHitsOnRemote--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldDisableCacheHitsOnRemote</h4>
<pre>public&nbsp;boolean&nbsp;shouldDisableCacheHitsOnRemote()</pre>
<div class="block">PUBLIC:
 Return if the remote server session cache hits on primary key read object queries is aloowed or not.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#disableCacheHitsOnRemote--"><code>disableCacheHitsOnRemote()</code></a></dd>
</dl>
</li>
</ul>
<a name="shouldOnlyRefreshCacheIfNewerVersion--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldOnlyRefreshCacheIfNewerVersion</h4>
<pre>public&nbsp;boolean&nbsp;shouldOnlyRefreshCacheIfNewerVersion()</pre>
<div class="block">PUBLIC:
 This method returns <CODE>true</CODE> if the <CODE>ClassDescriptor</CODE> is configured to only refresh the cache
 if the data received from the database by a query is newer than the data in the cache (as determined by the
 optimistic locking field). Otherwise, it returns <CODE>false</CODE>.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldOnlyRefreshCacheIfNewerVersion-boolean-"><code>setShouldOnlyRefreshCacheIfNewerVersion(boolean)</code></a></dd>
</dl>
</li>
</ul>
<a name="shouldOrderMappings--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldOrderMappings</h4>
<pre>public&nbsp;boolean&nbsp;shouldOrderMappings()</pre>
<div class="block">INTERNAL:
 Return if mappings should be ordered or not.  By default this is set to true
 to prevent attributes from being merged in the wrong order</div>
</li>
</ul>
<a name="hasSimplePrimaryKey--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasSimplePrimaryKey</h4>
<pre>public&nbsp;boolean&nbsp;hasSimplePrimaryKey()</pre>
<div class="block">INTERNAL:
 PERF: Return if the primary key is simple (direct-mapped) to allow fast extraction.</div>
</li>
</ul>
<a name="hasTablePerClassPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasTablePerClassPolicy</h4>
<pre>public&nbsp;boolean&nbsp;hasTablePerClassPolicy()</pre>
<div class="block">INTERNAL:
 Return if this descriptor is involved in a table per class inheritance.</div>
</li>
</ul>
<a name="setHasSimplePrimaryKey-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setHasSimplePrimaryKey</h4>
<pre>public&nbsp;void&nbsp;setHasSimplePrimaryKey(boolean&nbsp;hasSimplePrimaryKey)</pre>
<div class="block">INTERNAL:
 PERF: Set if the primary key is simple (direct-mapped) to allow fast extraction.</div>
</li>
</ul>
<a name="shouldAcquireCascadedLocks--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldAcquireCascadedLocks</h4>
<pre>public&nbsp;boolean&nbsp;shouldAcquireCascadedLocks()</pre>
<div class="block">INTERNAL:
 PERF: Return if deferred locks should be used.
 Used to optimize read locking.
 This is determined based on if any relationships do not use indirection.</div>
</li>
</ul>
<a name="setShouldAcquireCascadedLocks-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShouldAcquireCascadedLocks</h4>
<pre>public&nbsp;void&nbsp;setShouldAcquireCascadedLocks(boolean&nbsp;shouldAcquireCascadedLocks)</pre>
<div class="block">INTERNAL:
 PERF: Set if deferred locks should be used.
 This is determined based on if any relationships do not use indirection,
 but this provides a backdoor hook to force on if require because of events usage etc.</div>
</li>
</ul>
<a name="shouldUseAdditionalJoinExpression--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseAdditionalJoinExpression</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseAdditionalJoinExpression()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor should using an additional join expresison.</div>
</li>
</ul>
<a name="shouldUseCacheIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseCacheIdentityMap</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseCacheIdentityMap()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor is using CacheIdentityMap</div>
</li>
</ul>
<a name="shouldUseFullIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseFullIdentityMap</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseFullIdentityMap()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor is using FullIdentityMap</div>
</li>
</ul>
<a name="shouldUseSoftIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseSoftIdentityMap</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseSoftIdentityMap()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor is using SoftIdentityMap</div>
</li>
</ul>
<a name="shouldUseRemoteSoftIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseRemoteSoftIdentityMap</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseRemoteSoftIdentityMap()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor is using SoftIdentityMap</div>
</li>
</ul>
<a name="shouldUseHardCacheWeakIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseHardCacheWeakIdentityMap</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseHardCacheWeakIdentityMap()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor is using HardCacheWeakIdentityMap.</div>
</li>
</ul>
<a name="shouldUseNoIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseNoIdentityMap</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseNoIdentityMap()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor is using NoIdentityMap</div>
</li>
</ul>
<a name="shouldRegisterResultsInUnitOfWork--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldRegisterResultsInUnitOfWork</h4>
<pre>public&nbsp;boolean&nbsp;shouldRegisterResultsInUnitOfWork()</pre>
<div class="block">INTERNAL:
 Allows one to do conforming in a UnitOfWork without registering.
 Queries executed on a UnitOfWork will only return working copies for objects
 that have already been registered.
 <p>Extreme care should be taken in using this feature, for a user will
 get back a mix of registered and original (unregistered) objects.
 <p>Best used with a WrapperPolicy where invoking on an object will trigger
 its registration (CMP).  Without a WrapperPolicy <a href="../../../../org/eclipse/persistence/sessions/UnitOfWork.html#registerExistingObject-java.lang.Object-"><code>registerExistingObject</code></a>
 should be called on any object that you intend to change.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true by default.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setShouldRegisterResultsInUnitOfWork-boolean-"><code>setShouldRegisterResultsInUnitOfWork(boolean)</code></a>, 
<a href="../../../../org/eclipse/persistence/queries/ObjectBuildingQuery.html#shouldRegisterResultsInUnitOfWork"><code>ObjectBuildingQuery.shouldRegisterResultsInUnitOfWork</code></a></dd>
</dl>
</li>
</ul>
<a name="shouldUseRemoteCacheIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseRemoteCacheIdentityMap</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseRemoteCacheIdentityMap()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor is using CacheIdentityMap</div>
</li>
</ul>
<a name="shouldUseRemoteFullIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseRemoteFullIdentityMap</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseRemoteFullIdentityMap()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor is using FullIdentityMap</div>
</li>
</ul>
<a name="shouldUseRemoteHardCacheWeakIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseRemoteHardCacheWeakIdentityMap</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseRemoteHardCacheWeakIdentityMap()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor is using HardCacheWeakIdentityMap</div>
</li>
</ul>
<a name="shouldUseRemoteNoIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseRemoteNoIdentityMap</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseRemoteNoIdentityMap()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor is using NoIdentityMap</div>
</li>
</ul>
<a name="shouldUseRemoteSoftCacheWeakIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseRemoteSoftCacheWeakIdentityMap</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseRemoteSoftCacheWeakIdentityMap()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor is using SoftCacheWeakIdentityMap</div>
</li>
</ul>
<a name="shouldUseRemoteWeakIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseRemoteWeakIdentityMap</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseRemoteWeakIdentityMap()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor is using WeakIdentityMap</div>
</li>
</ul>
<a name="shouldUseSoftCacheWeakIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseSoftCacheWeakIdentityMap</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseSoftCacheWeakIdentityMap()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor is using SoftCacheWeakIdentityMap.</div>
</li>
</ul>
<a name="shouldUseWeakIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseWeakIdentityMap</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseWeakIdentityMap()</pre>
<div class="block">PUBLIC:
 Return true if this descriptor is using WeakIdentityMap</div>
</li>
</ul>
<a name="supportsChangeTracking-org.eclipse.persistence.sessions.Project-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsChangeTracking</h4>
<pre>public&nbsp;boolean&nbsp;supportsChangeTracking(<a href="../../../../org/eclipse/persistence/sessions/Project.html" title="class in org.eclipse.persistence.sessions">Project</a>&nbsp;project)</pre>
<div class="block">INTERNAL:
 Returns whether this descriptor is capable of supporting weaved change tracking.
 This method is used before the project is initialized.</div>
</li>
</ul>
<a name="toString--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
<div class="block">PUBLIC:
 Returns a brief string representation of the receiver.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
<a name="useAllFieldsLocking--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useAllFieldsLocking</h4>
<pre>public&nbsp;void&nbsp;useAllFieldsLocking()</pre>
<div class="block">PUBLIC:
 Set the locking policy an all fields locking policy.
 A field locking policy is base on locking on all fields by comparing with their previous values to detect field-level collisions.
 Note: the unit of work must be used for all updates when using field locking.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/AllFieldsLockingPolicy.html" title="class in org.eclipse.persistence.descriptors"><code>AllFieldsLockingPolicy</code></a></dd>
</dl>
</li>
</ul>
<a name="useCacheIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useCacheIdentityMap</h4>
<pre>public&nbsp;void&nbsp;useCacheIdentityMap()</pre>
<div class="block">PUBLIC:
 Set the class of identity map to be the cache identity map.
 This map caches the LRU instances read from the database.
 Note: This map does not guarantee object identity.
 The default is the "SoftCacheWeakIdentityMap".</div>
</li>
</ul>
<a name="useChangedFieldsLocking--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useChangedFieldsLocking</h4>
<pre>public&nbsp;void&nbsp;useChangedFieldsLocking()</pre>
<div class="block">PUBLIC:
 Set the locking policy a changed fields locking policy.
 A field locking policy is base on locking on all changed fields by comparing with their previous values to detect field-level collisions.
 Note: the unit of work must be used for all updates when using field locking.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ChangedFieldsLockingPolicy.html" title="class in org.eclipse.persistence.descriptors"><code>ChangedFieldsLockingPolicy</code></a></dd>
</dl>
</li>
</ul>
<a name="useCloneCopyPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useCloneCopyPolicy</h4>
<pre>public&nbsp;void&nbsp;useCloneCopyPolicy()</pre>
<div class="block">PUBLIC:
 Specifies that the creation of clones within a unit of work is done by
 sending the #clone() method to the original object. The #clone() method
 must return a logical shallow copy of the original object.
 This can be used if the default mechanism of creating a new instance
 does not handle the object's non-persistent attributes correctly.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useCloneCopyPolicy-java.lang.String-"><code>useCloneCopyPolicy(String)</code></a></dd>
</dl>
</li>
</ul>
<a name="useCloneCopyPolicy-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useCloneCopyPolicy</h4>
<pre>public&nbsp;void&nbsp;useCloneCopyPolicy(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;cloneMethodName)</pre>
<div class="block">PUBLIC:
 Specifies that the creation of clones within a unit of work is done by
 sending the cloneMethodName method to the original object. This method
 must return a logical shallow copy of the original object.
 This can be used if the default mechanism of creating a new instance
 does not handle the object's non-persistent attributes correctly.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useCloneCopyPolicy--"><code>useCloneCopyPolicy()</code></a></dd>
</dl>
</li>
</ul>
<a name="useInstantiationCopyPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useInstantiationCopyPolicy</h4>
<pre>public&nbsp;void&nbsp;useInstantiationCopyPolicy()</pre>
<div class="block">PUBLIC:
 Specifies that the creation of clones within a unit of work is done by building
 a new instance using the
 technique indicated by the descriptor's instantiation policy
 (which by default is to use the
 the default constructor). This new instance is then populated by using the
 descriptor's mappings to copy attributes from the original to the clone.
 This is the default.
 If another mechanism is desired the copy policy allows for a clone method to be called.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useCloneCopyPolicy--"><code>useCloneCopyPolicy()</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useCloneCopyPolicy-java.lang.String-"><code>useCloneCopyPolicy(String)</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useDefaultConstructorInstantiationPolicy--"><code>useDefaultConstructorInstantiationPolicy()</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useMethodInstantiationPolicy-java.lang.String-"><code>useMethodInstantiationPolicy(String)</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Class-java.lang.String-"><code>useFactoryInstantiationPolicy(Class, String)</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Class-java.lang.String-java.lang.String-"><code>useFactoryInstantiationPolicy(Class, String, String)</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Object-java.lang.String-"><code>useFactoryInstantiationPolicy(Object, String)</code></a></dd>
</dl>
</li>
</ul>
<a name="useDefaultConstructorInstantiationPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useDefaultConstructorInstantiationPolicy</h4>
<pre>public&nbsp;void&nbsp;useDefaultConstructorInstantiationPolicy()</pre>
<div class="block">PUBLIC:
 Use the default constructor to create new instances of objects built from the database.
 This is the default.
 The descriptor's class must either define a default constructor or define
 no constructors at all.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useMethodInstantiationPolicy-java.lang.String-"><code>useMethodInstantiationPolicy(String)</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Class-java.lang.String-"><code>useFactoryInstantiationPolicy(Class, String)</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Class-java.lang.String-java.lang.String-"><code>useFactoryInstantiationPolicy(Class, String, String)</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Object-java.lang.String-"><code>useFactoryInstantiationPolicy(Object, String)</code></a></dd>
</dl>
</li>
</ul>
<a name="useFactoryInstantiationPolicy-java.lang.Class-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useFactoryInstantiationPolicy</h4>
<pre>public&nbsp;void&nbsp;useFactoryInstantiationPolicy(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;factoryClass,
                                          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;methodName)</pre>
<div class="block">PUBLIC:
 Use an object factory to create new instances of objects built from the database.
 The methodName is the name of the
 method that will be invoked on the factory. When invoked, it must return a new instance
 of the descriptor's class.
 The factory will be created by invoking the factoryClass's default constructor.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useDefaultConstructorInstantiationPolicy--"><code>useDefaultConstructorInstantiationPolicy()</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useMethodInstantiationPolicy-java.lang.String-"><code>useMethodInstantiationPolicy(String)</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Class-java.lang.String-java.lang.String-"><code>useFactoryInstantiationPolicy(Class, String, String)</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Object-java.lang.String-"><code>useFactoryInstantiationPolicy(Object, String)</code></a></dd>
</dl>
</li>
</ul>
<a name="useFactoryInstantiationPolicy-java.lang.String-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useFactoryInstantiationPolicy</h4>
<pre>public&nbsp;void&nbsp;useFactoryInstantiationPolicy(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;factoryClassName,
                                          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;methodName)</pre>
<div class="block">INTERNAL:
 Set the factory class name, used by the MW.</div>
</li>
</ul>
<a name="useFactoryInstantiationPolicy-java.lang.Class-java.lang.String-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useFactoryInstantiationPolicy</h4>
<pre>public&nbsp;void&nbsp;useFactoryInstantiationPolicy(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;factoryClass,
                                          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;methodName,
                                          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;factoryMethodName)</pre>
<div class="block">PUBLIC:
 Use an object factory to create new instances of objects built from the database.
 The factoryMethodName is a static method declared by the factoryClass.
 When invoked, it must return an instance of the factory. The methodName is the name of the
 method that will be invoked on the factory. When invoked, it must return a new instance
 of the descriptor's class.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useDefaultConstructorInstantiationPolicy--"><code>useDefaultConstructorInstantiationPolicy()</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Class-java.lang.String-"><code>useFactoryInstantiationPolicy(Class, String)</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Object-java.lang.String-"><code>useFactoryInstantiationPolicy(Object, String)</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useMethodInstantiationPolicy-java.lang.String-"><code>useMethodInstantiationPolicy(String)</code></a></dd>
</dl>
</li>
</ul>
<a name="useFactoryInstantiationPolicy-java.lang.String-java.lang.String-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useFactoryInstantiationPolicy</h4>
<pre>public&nbsp;void&nbsp;useFactoryInstantiationPolicy(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;factoryClassName,
                                          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;methodName,
                                          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;factoryMethodName)</pre>
<div class="block">INTERNAL:
 Set the factory class name, used by the MW.</div>
</li>
</ul>
<a name="useFactoryInstantiationPolicy-java.lang.Object-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useFactoryInstantiationPolicy</h4>
<pre>public&nbsp;void&nbsp;useFactoryInstantiationPolicy(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;factory,
                                          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;methodName)</pre>
<div class="block">PUBLIC:
 Use an object factory to create new instances of objects built from the database.
 The methodName is the name of the
 method that will be invoked on the factory. When invoked, it must return a new instance
 of the descriptor's class.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useDefaultConstructorInstantiationPolicy--"><code>useDefaultConstructorInstantiationPolicy()</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useMethodInstantiationPolicy-java.lang.String-"><code>useMethodInstantiationPolicy(String)</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Class-java.lang.String-"><code>useFactoryInstantiationPolicy(Class, String)</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Class-java.lang.String-java.lang.String-"><code>useFactoryInstantiationPolicy(Class, String, String)</code></a></dd>
</dl>
</li>
</ul>
<a name="useFullIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useFullIdentityMap</h4>
<pre>public&nbsp;void&nbsp;useFullIdentityMap()</pre>
<div class="block">PUBLIC:
 Set the class of identity map to be the full identity map.
 This map caches all instances read and grows to accomodate them.
 The default is the "SoftCacheWeakIdentityMap".</div>
</li>
</ul>
<a name="useHardCacheWeakIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useHardCacheWeakIdentityMap</h4>
<pre>public&nbsp;void&nbsp;useHardCacheWeakIdentityMap()</pre>
<div class="block">PUBLIC:
 Set the class of identity map to be the hard cache weak identity map.
 This map uses weak references to only cache object in-memory.
 It also includes a secondary fixed sized hard cache to improve caching performance.
 This is provided because some Java VM's implement soft references differently.
 The default is the "SoftCacheWeakIdentityMap".</div>
</li>
</ul>
<a name="useSoftIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useSoftIdentityMap</h4>
<pre>public&nbsp;void&nbsp;useSoftIdentityMap()</pre>
<div class="block">PUBLIC:
 Set the class of identity map to be the soft identity map.
 This map uses soft references to only cache all object in-memory, until memory is low.
 Note that "low" is interpreted differently by different JVM's.
 The default is the "SoftCacheWeakIdentityMap".</div>
</li>
</ul>
<a name="useRemoteSoftIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useRemoteSoftIdentityMap</h4>
<pre>public&nbsp;void&nbsp;useRemoteSoftIdentityMap()</pre>
<div class="block">PUBLIC:
 Set the class of identity map to be the soft identity map.
 This map uses soft references to only cache all object in-memory, until memory is low.
 Note that "low" is interpreted differently by different JVM's.
 The default is the "SoftCacheWeakIdentityMap".</div>
</li>
</ul>
<a name="useMethodInstantiationPolicy-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useMethodInstantiationPolicy</h4>
<pre>public&nbsp;void&nbsp;useMethodInstantiationPolicy(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;staticMethodName)</pre>
<div class="block">PUBLIC:
 Use the specified static method to create new instances of objects built from the database.
 This method must be statically declared by the descriptor's class, and it must
 return a new instance of the descriptor's class.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useDefaultConstructorInstantiationPolicy--"><code>useDefaultConstructorInstantiationPolicy()</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Class-java.lang.String-"><code>useFactoryInstantiationPolicy(Class, String)</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Class-java.lang.String-java.lang.String-"><code>useFactoryInstantiationPolicy(Class, String, String)</code></a>, 
<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#useFactoryInstantiationPolicy-java.lang.Object-java.lang.String-"><code>useFactoryInstantiationPolicy(Object, String)</code></a></dd>
</dl>
</li>
</ul>
<a name="useNoIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useNoIdentityMap</h4>
<pre>public&nbsp;void&nbsp;useNoIdentityMap()</pre>
<div class="block">PUBLIC:
 Set the class of identity map to be the no identity map.
 This map does no caching.
 Note: This map does not maintain object identity.
 In general if caching is not desired a WeakIdentityMap should be used with an isolated descriptor.
 The default is the "SoftCacheWeakIdentityMap".</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html#setCacheIsolation-org.eclipse.persistence.config.CacheIsolationType-"><code>setCacheIsolation(CacheIsolationType)</code></a></dd>
</dl>
</li>
</ul>
<a name="useRemoteCacheIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useRemoteCacheIdentityMap</h4>
<pre>public&nbsp;void&nbsp;useRemoteCacheIdentityMap()</pre>
<div class="block">PUBLIC:
 Set the class of identity map to be the cache identity map.
 This map caches the LRU instances read from the database.
 The default is the "SoftCacheWeakIdentityMap".</div>
</li>
</ul>
<a name="useRemoteFullIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useRemoteFullIdentityMap</h4>
<pre>public&nbsp;void&nbsp;useRemoteFullIdentityMap()</pre>
<div class="block">PUBLIC:
 Set the class of identity map to be the full identity map.
 This map caches all instances read and grows to accomodate them.
 The default is the "SoftCacheWeakIdentityMap".</div>
</li>
</ul>
<a name="useRemoteHardCacheWeakIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useRemoteHardCacheWeakIdentityMap</h4>
<pre>public&nbsp;void&nbsp;useRemoteHardCacheWeakIdentityMap()</pre>
<div class="block">PUBLIC:
 Set the class of identity map to be the hard cache weak identity map.
 This map uses weak references to only cache object in-memory.
 It also includes a secondary fixed sized soft cache to improve caching performance.
 This is provided because some Java VM's do not implement soft references correctly.
 The default is the "SoftCacheWeakIdentityMap".</div>
</li>
</ul>
<a name="useRemoteNoIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useRemoteNoIdentityMap</h4>
<pre>public&nbsp;void&nbsp;useRemoteNoIdentityMap()</pre>
<div class="block">PUBLIC:
 Set the class of identity map to be the no identity map.
 This map does no caching.
 The default is the "SoftCacheWeakIdentityMap".</div>
</li>
</ul>
<a name="useRemoteSoftCacheWeakIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useRemoteSoftCacheWeakIdentityMap</h4>
<pre>public&nbsp;void&nbsp;useRemoteSoftCacheWeakIdentityMap()</pre>
<div class="block">PUBLIC:
 Set the class of identity map to be the soft cache weak identity map.
 The SoftCacheIdentityMap holds a fixed number of objects is memory
 (using SoftReferences) to improve caching.
 The default is the "SoftCacheWeakIdentityMap".</div>
</li>
</ul>
<a name="useRemoteWeakIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useRemoteWeakIdentityMap</h4>
<pre>public&nbsp;void&nbsp;useRemoteWeakIdentityMap()</pre>
<div class="block">PUBLIC:
 Set the class of identity map to be the weak identity map.
 The default is the "SoftCacheWeakIdentityMap".</div>
</li>
</ul>
<a name="useSelectedFieldsLocking-java.util.Vector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useSelectedFieldsLocking</h4>
<pre>public&nbsp;void&nbsp;useSelectedFieldsLocking(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>&nbsp;fieldNames)</pre>
<div class="block">PUBLIC:
 Set the locking policy a selected fields locking policy.
 A field locking policy is base on locking on the specified fields by comparing with their previous values to detect field-level collisions.
 Note: the unit of work must be used for all updates when using field locking.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/SelectedFieldsLockingPolicy.html" title="class in org.eclipse.persistence.descriptors"><code>SelectedFieldsLockingPolicy</code></a></dd>
</dl>
</li>
</ul>
<a name="usesFieldLocking--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>usesFieldLocking</h4>
<pre>public&nbsp;boolean&nbsp;usesFieldLocking()</pre>
<div class="block">INTERNAL:
 Return true if the receiver uses either all or changed fields for optimistic locking.</div>
</li>
</ul>
<a name="useSoftCacheWeakIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useSoftCacheWeakIdentityMap</h4>
<pre>public&nbsp;void&nbsp;useSoftCacheWeakIdentityMap()</pre>
<div class="block">PUBLIC:
 Set the class of identity map to be the soft cache weak identity map.
 The SoftCacheIdentityMap holds a fixed number of objects is memory
 (using SoftReferences) to improve caching.
 The default is the "SoftCacheWeakIdentityMap".</div>
</li>
</ul>
<a name="usesOptimisticLocking--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>usesOptimisticLocking</h4>
<pre>public&nbsp;boolean&nbsp;usesOptimisticLocking()</pre>
<div class="block">PUBLIC:
 Return true if the receiver uses write (optimistic) locking.</div>
</li>
</ul>
<a name="usesVersionLocking--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>usesVersionLocking</h4>
<pre>public&nbsp;boolean&nbsp;usesVersionLocking()</pre>
<div class="block">PUBLIC:
 Return true if the receiver uses version optimistic locking.</div>
</li>
</ul>
<a name="usesSequenceNumbers--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>usesSequenceNumbers</h4>
<pre>public&nbsp;boolean&nbsp;usesSequenceNumbers()</pre>
<div class="block">PUBLIC:
 Return true if the receiver uses sequence numbers.</div>
</li>
</ul>
<a name="useTimestampLocking-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useTimestampLocking</h4>
<pre>public&nbsp;void&nbsp;useTimestampLocking(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;writeLockFieldName)</pre>
<div class="block">PUBLIC:
 Use the Timestamps locking policy and storing the value in the cache key
 #see useVersionLocking(String)</div>
</li>
</ul>
<a name="useTimestampLocking-java.lang.String-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useTimestampLocking</h4>
<pre>public&nbsp;void&nbsp;useTimestampLocking(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;writeLockFieldName,
                                boolean&nbsp;shouldStoreInCache)</pre>
<div class="block">PUBLIC:
 Set the locking policy to use timestamp version locking.
 This updates the timestamp field on all updates, first comparing that the field has not changed to detect locking conflicts.
 Note: many database have limited precision of timestamps which can be an issue is highly concurrent systems.

 The parameter 'shouldStoreInCache' configures the version lock value to be stored in the cache or in the object.
 Note: if using a stateless model where the object can be passed to a client and then later updated in a different transaction context,
 then the version lock value should not be stored in the cache, but in the object to ensure it is the correct value for that object.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/VersionLockingPolicy.html" title="class in org.eclipse.persistence.descriptors"><code>VersionLockingPolicy</code></a></dd>
</dl>
</li>
</ul>
<a name="useVersionLocking-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useVersionLocking</h4>
<pre>public&nbsp;void&nbsp;useVersionLocking(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;writeLockFieldName)</pre>
<div class="block">PUBLIC:
 Default to use the version locking policy and storing the value in the cache key
 #see useVersionLocking(String)</div>
</li>
</ul>
<a name="useVersionLocking-java.lang.String-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useVersionLocking</h4>
<pre>public&nbsp;void&nbsp;useVersionLocking(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;writeLockFieldName,
                              boolean&nbsp;shouldStoreInCache)</pre>
<div class="block">PUBLIC:
 Set the locking policy to use numeric version locking.
 This updates the version field on all updates, first comparing that the field has not changed to detect locking conflicts.

 The parameter 'shouldStoreInCache' configures the version lock value to be stored in the cache or in the object.
 Note: if using a stateless model where the object can be passed to a client and then later updated in a different transaction context,
 then the version lock value should not be stored in the cache, but in the object to ensure it is the correct value for that object.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/descriptors/TimestampLockingPolicy.html" title="class in org.eclipse.persistence.descriptors"><code>TimestampLockingPolicy</code></a></dd>
</dl>
</li>
</ul>
<a name="useWeakIdentityMap--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useWeakIdentityMap</h4>
<pre>public&nbsp;void&nbsp;useWeakIdentityMap()</pre>
<div class="block">PUBLIC:
 Set the class of identity map to be the weak identity map.
 The default is the "SoftCacheWeakIdentityMap".</div>
</li>
</ul>
<a name="validateAfterInitialization-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateAfterInitialization</h4>
<pre>protected&nbsp;void&nbsp;validateAfterInitialization(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</pre>
<div class="block">INTERNAL:
 Validate the entire post-initialization descriptor.</div>
</li>
</ul>
<a name="validateBeforeInitialization-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateBeforeInitialization</h4>
<pre>protected&nbsp;void&nbsp;validateBeforeInitialization(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</pre>
<div class="block">INTERNAL:
 Validate the entire pre-initialization descriptor.</div>
</li>
</ul>
<a name="verifyTableQualifiers-org.eclipse.persistence.internal.databaseaccess.Platform-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>verifyTableQualifiers</h4>
<pre>protected&nbsp;void&nbsp;verifyTableQualifiers(org.eclipse.persistence.internal.databaseaccess.Platform&nbsp;platform)</pre>
<div class="block">INTERNAL:
 Check that the qualifier on the table names are properly set.</div>
</li>
</ul>
<a name="getCMPPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCMPPolicy</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/CMPPolicy.html" title="class in org.eclipse.persistence.descriptors">CMPPolicy</a>&nbsp;getCMPPolicy()</pre>
<div class="block">ADVANCED:
 Return the cmp descriptor that holds cmp specific information.
 A null return will mean that the descriptor does not represent an Entity,
 however it may still represent a MappedSuperclass.
 It will be null if it is not being used.</div>
</li>
</ul>
<a name="setCMPPolicy-org.eclipse.persistence.descriptors.CMPPolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCMPPolicy</h4>
<pre>public&nbsp;void&nbsp;setCMPPolicy(<a href="../../../../org/eclipse/persistence/descriptors/CMPPolicy.html" title="class in org.eclipse.persistence.descriptors">CMPPolicy</a>&nbsp;newCMPPolicy)</pre>
<div class="block">ADVANCED:
 Set the cmp descriptor that holds cmp specific information.</div>
</li>
</ul>
<a name="getCachePolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCachePolicy</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/CachePolicy.html" title="class in org.eclipse.persistence.descriptors">CachePolicy</a>&nbsp;getCachePolicy()</pre>
<div class="block">Return the cache policy.
 The cache policy allows for the configuration of caching options.</div>
</li>
</ul>
<a name="setCachePolicy-org.eclipse.persistence.descriptors.CachePolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCachePolicy</h4>
<pre>public&nbsp;void&nbsp;setCachePolicy(<a href="../../../../org/eclipse/persistence/descriptors/CachePolicy.html" title="class in org.eclipse.persistence.descriptors">CachePolicy</a>&nbsp;cachePolicy)</pre>
<div class="block">ADVANCED:
 Set cache policy for the descriptor.</div>
</li>
</ul>
<a name="hasPessimisticLockingPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasPessimisticLockingPolicy</h4>
<pre>public&nbsp;boolean&nbsp;hasPessimisticLockingPolicy()</pre>
<div class="block">INTERNAL:</div>
</li>
</ul>
<a name="getFetchGroupManager--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFetchGroupManager</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/descriptors/FetchGroupManager.html" title="class in org.eclipse.persistence.descriptors">FetchGroupManager</a>&nbsp;getFetchGroupManager()</pre>
<div class="block">PUBLIC:
 Get the fetch group manager for the descriptor.  The fetch group manager is responsible
 for managing the fetch group behaviors and operations.
 To use the fetch group, the domain object must implement FetchGroupTracker interface. Otherwise,
 a descriptor validation exception would throw during initialization.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/FetchGroupTracker.html" title="interface in org.eclipse.persistence.queries"><code>FetchGroupTracker</code></a></dd>
</dl>
</li>
</ul>
<a name="getFullyMergeEntity--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFullyMergeEntity</h4>
<pre>public&nbsp;boolean&nbsp;getFullyMergeEntity()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the fullyMergeEntity</dd>
</dl>
</li>
</ul>
<a name="setFetchGroupManager-org.eclipse.persistence.descriptors.FetchGroupManager-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setFetchGroupManager</h4>
<pre>public&nbsp;void&nbsp;setFetchGroupManager(<a href="../../../../org/eclipse/persistence/descriptors/FetchGroupManager.html" title="class in org.eclipse.persistence.descriptors">FetchGroupManager</a>&nbsp;fetchGroupManager)</pre>
<div class="block">PUBLIC:
 Set the fetch group manager for the descriptor.  The fetch group manager is responsible
 for managing the fetch group behaviors and operations.</div>
</li>
</ul>
<a name="hasFetchGroupManager--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasFetchGroupManager</h4>
<pre>public&nbsp;boolean&nbsp;hasFetchGroupManager()</pre>
<div class="block">INTERNAL:
 Return if the descriptor has a fetch group manager associated with.</div>
</li>
</ul>
<a name="hasCascadeLockingPolicies--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasCascadeLockingPolicies</h4>
<pre>public&nbsp;boolean&nbsp;hasCascadeLockingPolicies()</pre>
<div class="block">INTERNAL:</div>
</li>
</ul>
<a name="hasCMPPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasCMPPolicy</h4>
<pre>public&nbsp;boolean&nbsp;hasCMPPolicy()</pre>
<div class="block">INTERNAL:
 Return if the descriptor has a CMP policy.</div>
</li>
</ul>
<a name="getDefaultFetchGroup--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDefaultFetchGroup</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/queries/FetchGroup.html" title="class in org.eclipse.persistence.queries">FetchGroup</a>&nbsp;getDefaultFetchGroup()</pre>
<div class="block">INTERNAL:

 Return the default fetch group on the descriptor.
 All read object and read all queries will use the default fetch group if
 no fetch group is explicitly defined for the query.</div>
</li>
</ul>
<a name="isReturnTypeRequiredForReturningPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isReturnTypeRequiredForReturningPolicy</h4>
<pre>public&nbsp;boolean&nbsp;isReturnTypeRequiredForReturningPolicy()</pre>
<div class="block">INTERNAL:
 Indicates if a return type is required for the field set on the
 returning policy.  For relational descriptors, this should always
 return true.</div>
</li>
</ul>
<a name="setIsNativeConnectionRequired-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setIsNativeConnectionRequired</h4>
<pre>public&nbsp;void&nbsp;setIsNativeConnectionRequired(boolean&nbsp;isNativeConnectionRequired)</pre>
<div class="block">ADVANCED:
 Set if the descriptor requires usage of a native (unwrapped) JDBC connection.
 This may be required for some Oracle JDBC support when a wrapping DataSource is used.</div>
</li>
</ul>
<a name="isNativeConnectionRequired--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isNativeConnectionRequired</h4>
<pre>public&nbsp;boolean&nbsp;isNativeConnectionRequired()</pre>
<div class="block">ADVANCED:
 Return if the descriptor requires usage of a native (unwrapped) JDBC connection.
 This may be required for some Oracle JDBC support when a wrapping DataSource is used.</div>
</li>
</ul>
<a name="setIdValidation-org.eclipse.persistence.annotations.IdValidation-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setIdValidation</h4>
<pre>public&nbsp;void&nbsp;setIdValidation(<a href="../../../../org/eclipse/persistence/annotations/IdValidation.html" title="enum in org.eclipse.persistence.annotations">IdValidation</a>&nbsp;idValidation)</pre>
<div class="block">ADVANCED:
 Set what types are allowed as a primary key (id).</div>
</li>
</ul>
<a name="getIdValidation--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getIdValidation</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/annotations/IdValidation.html" title="enum in org.eclipse.persistence.annotations">IdValidation</a>&nbsp;getIdValidation()</pre>
<div class="block">ADVANCED:
 Return what types are allowed as a primary key (id).</div>
</li>
</ul>
<a name="getPrimaryKeyIdValidations--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPrimaryKeyIdValidations</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/annotations/IdValidation.html" title="enum in org.eclipse.persistence.annotations">IdValidation</a>&gt;&nbsp;getPrimaryKeyIdValidations()</pre>
<div class="block">ADVANCED:
 Return what types are allowed in each primary key field (id).</div>
</li>
</ul>
<a name="setPrimaryKeyIdValidations-java.util.List-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPrimaryKeyIdValidations</h4>
<pre>public&nbsp;void&nbsp;setPrimaryKeyIdValidations(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/annotations/IdValidation.html" title="enum in org.eclipse.persistence.annotations">IdValidation</a>&gt;&nbsp;primaryKeyIdValidations)</pre>
<div class="block">ADVANCED:
 Return what types are allowed in each primary key field (id).</div>
</li>
</ul>
<a name="setCacheKeyType-org.eclipse.persistence.annotations.CacheKeyType-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCacheKeyType</h4>
<pre>public&nbsp;void&nbsp;setCacheKeyType(<a href="../../../../org/eclipse/persistence/annotations/CacheKeyType.html" title="enum in org.eclipse.persistence.annotations">CacheKeyType</a>&nbsp;cacheKeyType)</pre>
<div class="block">ADVANCED:
 Set what cache key type to use to store the object in the cache.</div>
</li>
</ul>
<a name="getCacheKeyType--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCacheKeyType</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/annotations/CacheKeyType.html" title="enum in org.eclipse.persistence.annotations">CacheKeyType</a>&nbsp;getCacheKeyType()</pre>
<div class="block">ADVANCED:
 Return what cache key type to use to store the object in the cache.</div>
</li>
</ul>
<a name="getDefaultQueryRedirector--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDefaultQueryRedirector</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;getDefaultQueryRedirector()</pre>
<div class="block">A Default Query Redirector will be applied to any executing object query
 that does not have a more precise default (like the default
 ReadObjectQuery Redirector) or a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="setDefaultQueryRedirector-org.eclipse.persistence.queries.QueryRedirector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultQueryRedirector</h4>
<pre>public&nbsp;void&nbsp;setDefaultQueryRedirector(<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;defaultRedirector)</pre>
<div class="block">A Default Query Redirector will be applied to any executing object query
 that does not have a more precise default (like the default
 ReadObjectQuery Redirector) or a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="getDefaultReadAllQueryRedirector--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDefaultReadAllQueryRedirector</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;getDefaultReadAllQueryRedirector()</pre>
<div class="block">A Default ReadAllQuery Redirector will be applied to any executing
 ReadAllQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="setDefaultReadAllQueryRedirector-org.eclipse.persistence.queries.QueryRedirector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultReadAllQueryRedirector</h4>
<pre>public&nbsp;void&nbsp;setDefaultReadAllQueryRedirector(<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;defaultReadAllQueryRedirector)</pre>
<div class="block">A Default ReadAllQuery Redirector will be applied to any executing
 ReadAllQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="getDefaultReadObjectQueryRedirector--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDefaultReadObjectQueryRedirector</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;getDefaultReadObjectQueryRedirector()</pre>
<div class="block">A Default ReadObjectQuery Redirector will be applied to any executing
 ReadObjectQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="setDefaultReadObjectQueryRedirector-org.eclipse.persistence.queries.QueryRedirector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultReadObjectQueryRedirector</h4>
<pre>public&nbsp;void&nbsp;setDefaultReadObjectQueryRedirector(<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;defaultReadObjectQueryRedirector)</pre>
<div class="block">A Default ReadObjectQuery Redirector will be applied to any executing
 ReadObjectQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="getDefaultReportQueryRedirector--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDefaultReportQueryRedirector</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;getDefaultReportQueryRedirector()</pre>
<div class="block">A Default ReportQuery Redirector will be applied to any executing
 ReportQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="setDefaultReportQueryRedirector-org.eclipse.persistence.queries.QueryRedirector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultReportQueryRedirector</h4>
<pre>public&nbsp;void&nbsp;setDefaultReportQueryRedirector(<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;defaultReportQueryRedirector)</pre>
<div class="block">A Default ReportQuery Redirector will be applied to any executing
 ReportQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="getDefaultUpdateObjectQueryRedirector--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDefaultUpdateObjectQueryRedirector</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;getDefaultUpdateObjectQueryRedirector()</pre>
<div class="block">A Default UpdateObjectQuery Redirector will be applied to any executing
 UpdateObjectQuery or UpdateAllQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="setDefaultUpdateObjectQueryRedirector-org.eclipse.persistence.queries.QueryRedirector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultUpdateObjectQueryRedirector</h4>
<pre>public&nbsp;void&nbsp;setDefaultUpdateObjectQueryRedirector(<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;defaultUpdateQueryRedirector)</pre>
<div class="block">A Default UpdateObjectQuery Redirector will be applied to any executing
 UpdateObjectQuery or UpdateAllQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="getDefaultInsertObjectQueryRedirector--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDefaultInsertObjectQueryRedirector</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;getDefaultInsertObjectQueryRedirector()</pre>
<div class="block">A Default InsertObjectQuery Redirector will be applied to any executing
 InsertObjectQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="setDefaultInsertObjectQueryRedirector-org.eclipse.persistence.queries.QueryRedirector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultInsertObjectQueryRedirector</h4>
<pre>public&nbsp;void&nbsp;setDefaultInsertObjectQueryRedirector(<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;defaultInsertQueryRedirector)</pre>
<div class="block">A Default InsertObjectQuery Redirector will be applied to any executing
 InsertObjectQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="getDefaultDeleteObjectQueryRedirector--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDefaultDeleteObjectQueryRedirector</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;getDefaultDeleteObjectQueryRedirector()</pre>
<div class="block">A Default DeleteObjectQuery Redirector will be applied to any executing
 DeleteObjectQuery or DeleteAllQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="setDefaultDeleteObjectQueryRedirector-org.eclipse.persistence.queries.QueryRedirector-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultDeleteObjectQueryRedirector</h4>
<pre>public&nbsp;void&nbsp;setDefaultDeleteObjectQueryRedirector(<a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries">QueryRedirector</a>&nbsp;defaultDeleteObjectQueryRedirector)</pre>
<div class="block">A Default DeleteObjectQuery Redirector will be applied to any executing
 DeleteObjectQuery or DeleteAllQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="setDefaultQueryRedirectorClassName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultQueryRedirectorClassName</h4>
<pre>public&nbsp;void&nbsp;setDefaultQueryRedirectorClassName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;defaultQueryRedirectorClassName)</pre>
<div class="block">A Default Query Redirector will be applied to any executing object query
 that does not have a more precise default (like the default
 ReadObjectQuery Redirector) or a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="setDefaultReadAllQueryRedirectorClassName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultReadAllQueryRedirectorClassName</h4>
<pre>public&nbsp;void&nbsp;setDefaultReadAllQueryRedirectorClassName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;defaultReadAllQueryRedirectorClassName)</pre>
<div class="block">A Default ReadAllQuery Redirector will be applied to any executing
 ReadAllQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query exection preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="setDefaultReadObjectQueryRedirectorClassName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultReadObjectQueryRedirectorClassName</h4>
<pre>public&nbsp;void&nbsp;setDefaultReadObjectQueryRedirectorClassName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;defaultReadObjectQueryRedirectorClassName)</pre>
<div class="block">A Default ReadObjectQuery Redirector will be applied to any executing
 ReadObjectQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="setDefaultReportQueryRedirectorClassName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultReportQueryRedirectorClassName</h4>
<pre>public&nbsp;void&nbsp;setDefaultReportQueryRedirectorClassName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;defaultReportQueryRedirectorClassName)</pre>
<div class="block">A Default ReportQuery Redirector will be applied to any executing
 ReportQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="setDefaultUpdateObjectQueryRedirectorClassName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultUpdateObjectQueryRedirectorClassName</h4>
<pre>public&nbsp;void&nbsp;setDefaultUpdateObjectQueryRedirectorClassName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;defaultUpdateObjectQueryRedirectorClassName)</pre>
<div class="block">A Default UpdateObjectQuery Redirector will be applied to any executing
 UpdateObjectQuery or UpdateAllQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query execution preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="setDefaultInsertObjectQueryRedirectorClassName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultInsertObjectQueryRedirectorClassName</h4>
<pre>public&nbsp;void&nbsp;setDefaultInsertObjectQueryRedirectorClassName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;defaultInsertObjectQueryRedirectorClassName)</pre>
<div class="block">A Default InsertObjectQuery Redirector will be applied to any executing
 InsertObjectQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query exection preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="setDefaultDeleteObjectQueryRedirectorClassName-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultDeleteObjectQueryRedirectorClassName</h4>
<pre>public&nbsp;void&nbsp;setDefaultDeleteObjectQueryRedirectorClassName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;defaultDeleteObjectQueryRedirectorClassName)</pre>
<div class="block">A Default DeleteObjectQuery Redirector will be applied to any executing
 DeleteObjectQuery or DeleteAllQuery that does not have a redirector set directly on the query.
 Query redirectors allow the user to intercept query exection preventing
 it or alternately performing some side effect like auditing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/QueryRedirector.html" title="interface in org.eclipse.persistence.queries"><code>QueryRedirector</code></a></dd>
</dl>
</li>
</ul>
<a name="getSequence--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSequence</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/sequencing/Sequence.html" title="class in org.eclipse.persistence.sequencing">Sequence</a>&nbsp;getSequence()</pre>
<div class="block">Return the descriptor's sequence.
 This is normally set when the descriptor is initialized.</div>
</li>
</ul>
<a name="setSequence-org.eclipse.persistence.sequencing.Sequence-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setSequence</h4>
<pre>public&nbsp;void&nbsp;setSequence(<a href="../../../../org/eclipse/persistence/sequencing/Sequence.html" title="class in org.eclipse.persistence.sequencing">Sequence</a>&nbsp;sequence)</pre>
<div class="block">Set the descriptor's sequence.
 This is normally set when the descriptor is initialized.</div>
</li>
</ul>
<a name="getMappingsPostCalculateChanges--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMappingsPostCalculateChanges</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;&nbsp;getMappingsPostCalculateChanges()</pre>
<div class="block">Mappings that require postCalculateChanges method to be called</div>
</li>
</ul>
<a name="hasMappingsPostCalculateChanges--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasMappingsPostCalculateChanges</h4>
<pre>public&nbsp;boolean&nbsp;hasMappingsPostCalculateChanges()</pre>
<div class="block">Are there any mappings that require postCalculateChanges method to be called.</div>
</li>
</ul>
<a name="addMappingsPostCalculateChanges-org.eclipse.persistence.mappings.DatabaseMapping-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMappingsPostCalculateChanges</h4>
<pre>public&nbsp;void&nbsp;addMappingsPostCalculateChanges(<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;mapping)</pre>
<div class="block">Add a mapping to the list of mappings that require postCalculateChanges method to be called.</div>
</li>
</ul>
<a name="getMappingsPostCalculateChangesOnDeleted--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMappingsPostCalculateChangesOnDeleted</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&gt;&nbsp;getMappingsPostCalculateChangesOnDeleted()</pre>
<div class="block">Mappings that require mappingsPostCalculateChangesOnDeleted method to be called</div>
</li>
</ul>
<a name="hasMappingsPostCalculateChangesOnDeleted--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasMappingsPostCalculateChangesOnDeleted</h4>
<pre>public&nbsp;boolean&nbsp;hasMappingsPostCalculateChangesOnDeleted()</pre>
<div class="block">Are there any mappings that require mappingsPostCalculateChangesOnDeleted method to be called.</div>
</li>
</ul>
<a name="addMappingsPostCalculateChangesOnDeleted-org.eclipse.persistence.mappings.DatabaseMapping-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMappingsPostCalculateChangesOnDeleted</h4>
<pre>public&nbsp;void&nbsp;addMappingsPostCalculateChangesOnDeleted(<a href="../../../../org/eclipse/persistence/mappings/DatabaseMapping.html" title="class in org.eclipse.persistence.mappings">DatabaseMapping</a>&nbsp;mapping)</pre>
<div class="block">Add a mapping to the list of mappings that require mappingsPostCalculateChangesOnDeleted method to be called.</div>
</li>
</ul>
<a name="hasMultipleTableConstraintDependecy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasMultipleTableConstraintDependecy</h4>
<pre>public&nbsp;boolean&nbsp;hasMultipleTableConstraintDependecy()</pre>
<div class="block">Return if any mapping reference a field in a secondary table.
 This is used to disable deferring multiple table writes.</div>
</li>
</ul>
<a name="hasMultitenantPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasMultitenantPolicy</h4>
<pre>public&nbsp;boolean&nbsp;hasMultitenantPolicy()</pre>
<div class="block">Return true if the descriptor has a multitenant policy</div>
</li>
</ul>
<a name="hasTablePerMultitenantPolicy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasTablePerMultitenantPolicy</h4>
<pre>public&nbsp;boolean&nbsp;hasTablePerMultitenantPolicy()</pre>
<div class="block">PUBLIC</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if this descriptor is configured with a table per tenant policy.</dd>
</dl>
</li>
</ul>
<a name="hasUnconvertedProperties--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasUnconvertedProperties</h4>
<pre>public&nbsp;boolean&nbsp;hasUnconvertedProperties()</pre>
<div class="block">INTERNAL:
 Used to store un-converted properties, which are subsequenctly converted
 at runtime (through the convertClassNamesToClasses method.</div>
</li>
</ul>
<a name="setHasMultipleTableConstraintDependecy-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setHasMultipleTableConstraintDependecy</h4>
<pre>public&nbsp;void&nbsp;setHasMultipleTableConstraintDependecy(boolean&nbsp;hasMultipleTableConstraintDependecy)</pre>
<div class="block">Set if any mapping reference a field in a secondary table.
 This is used to disable deferring multiple table writes.</div>
</li>
</ul>
<a name="usesPropertyAccessForWeaving--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>usesPropertyAccessForWeaving</h4>
<pre>public&nbsp;boolean&nbsp;usesPropertyAccessForWeaving()</pre>
<div class="block">INTERNAL:
 Return whether this descriptor uses property access. This information is used to
 modify the behavior of some of our weaving features</div>
</li>
</ul>
<a name="usePropertyAccessForWeaving--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>usePropertyAccessForWeaving</h4>
<pre>public&nbsp;void&nbsp;usePropertyAccessForWeaving()</pre>
<div class="block">INTERNAL:
 Record that this descriptor uses property access. This information is used to
 modify the behavior of some of our weaving features</div>
</li>
</ul>
<a name="getVirtualAttributeMethods--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getVirtualAttributeMethods</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.descriptors.VirtualAttributeMethodInfo&gt;&nbsp;getVirtualAttributeMethods()</pre>
<div class="block">INTERNAL:
 Return the list of virtual methods sets for this Entity.
 This list is used to control which methods are weaved</div>
</li>
</ul>
<a name="setVirtualAttributeMethods-java.util.List-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setVirtualAttributeMethods</h4>
<pre>public&nbsp;void&nbsp;setVirtualAttributeMethods(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.eclipse.persistence.internal.descriptors.VirtualAttributeMethodInfo&gt;&nbsp;virtualAttributeMethods)</pre>
<div class="block">INTERNAL:
 Set the list of methods used my mappings with virtual access
 this list is used to determine which methods to weave</div>
</li>
</ul>
<a name="hasTargetForeignKeyMapping-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasTargetForeignKeyMapping</h4>
<pre>public&nbsp;boolean&nbsp;hasTargetForeignKeyMapping(org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session)</pre>
<div class="block">INTERNAL:
 Indicates whether descriptor has at least one target foreign key mapping</div>
</li>
</ul>
<a name="getAttributeGroup-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAttributeGroup</h4>
<pre>public&nbsp;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>&nbsp;getAttributeGroup(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#getAttributeGroup-java.lang.String-">CoreDescriptor</a></code></span></div>
<div class="block">PUBLIC:
 Returns the attribute group corresponding to the name provided.
 If no group is found with the specified name, null is returned.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#getAttributeGroup-java.lang.String-">getAttributeGroup</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
</dl>
</li>
</ul>
<a name="getAttributeGroups--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAttributeGroups</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/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/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>&gt;&nbsp;getAttributeGroups()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#getAttributeGroups--">CoreDescriptor</a></code></span></div>
<div class="block">ADVANCED:
 Returns the attribute groups for this Descriptor.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html#getAttributeGroups--">getAttributeGroups</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/eclipse/persistence/core/descriptors/CoreDescriptor.html" title="class in org.eclipse.persistence.core.descriptors">CoreDescriptor</a>&lt;<a href="../../../../org/eclipse/persistence/queries/AttributeGroup.html" title="class in org.eclipse.persistence.queries">AttributeGroup</a>,<a href="../../../../org/eclipse/persistence/descriptors/DescriptorEventManager.html" title="class in org.eclipse.persistence.descriptors">DescriptorEventManager</a>,org.eclipse.persistence.internal.helper.DatabaseField,<a href="../../../../org/eclipse/persistence/descriptors/InheritancePolicy.html" title="class in org.eclipse.persistence.descriptors">InheritancePolicy</a>,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html?is-external=true" title="class or interface in java.util">Vector</a>,org.eclipse.persistence.internal.descriptors.ObjectBuilder&gt;</code></dd>
</dl>
</li>
</ul>
<a name="clearReferencingClasses--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>clearReferencingClasses</h4>
<pre>public&nbsp;void&nbsp;clearReferencingClasses()</pre>
<div class="block">INTERNAL:
 Cleans referencingClasses set. Called from ClientSession for proper cleanup and avoid memory leak.</div>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage">EclipseLink 3.0.2, API Reference</div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/eclipse/persistence/descriptors/ChangedFieldsLockingPolicy.html" title="class in org.eclipse.persistence.descriptors"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/eclipse/persistence/descriptors/ClassExtractor.html" title="class in org.eclipse.persistence.descriptors"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/eclipse/persistence/descriptors/ClassDescriptor.html" target="_top">Frames</a></li>
<li><a href="ClassDescriptor.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; 2007&#x2013;2021 <a href="http://www.eclipse.org/eclipselink">Eclipse.org - EclipseLink Project</a>. All rights reserved.</small></p>
</body>
</html>
