<!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:39:07 UTC 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>RemoteSession (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="RemoteSession (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};
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/sessions/remote/DistributedSession.html" title="class in org.eclipse.persistence.sessions.remote"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/eclipse/persistence/sessions/remote/RemoteSession.html" target="_top">Frames</a></li>
<li><a href="RemoteSession.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.sessions.remote</div>
<h2 title="Class RemoteSession" class="title">Class RemoteSession</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.eclipse.persistence.internal.core.sessions.CoreAbstractSession&lt;<a href="../../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html" title="class in org.eclipse.persistence.descriptors">ClassDescriptor</a>,<a href="../../../../../org/eclipse/persistence/sessions/Login.html" title="interface in org.eclipse.persistence.sessions">Login</a>,org.eclipse.persistence.internal.databaseaccess.Platform,<a href="../../../../../org/eclipse/persistence/sessions/Project.html" title="class in org.eclipse.persistence.sessions">Project</a>,<a href="../../../../../org/eclipse/persistence/sessions/SessionEventManager.html" title="class in org.eclipse.persistence.sessions">SessionEventManager</a>&gt;</li>
<li>
<ul class="inheritance">
<li>org.eclipse.persistence.internal.sessions.AbstractSession</li>
<li>
<ul class="inheritance">
<li>org.eclipse.persistence.internal.sessions.DatabaseSessionImpl</li>
<li>
<ul class="inheritance">
<li><a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html" title="class in org.eclipse.persistence.sessions.remote">org.eclipse.persistence.sessions.remote.DistributedSession</a></li>
<li>
<ul class="inheritance">
<li>org.eclipse.persistence.sessions.remote.RemoteSession</li>
</ul>
</li>
</ul>
</li>
</ul>
</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>, <a href="../../../../../org/eclipse/persistence/core/sessions/CoreSession.html" title="interface in org.eclipse.persistence.core.sessions">CoreSession</a>&lt;<a href="../../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html" title="class in org.eclipse.persistence.descriptors">ClassDescriptor</a>,<a href="../../../../../org/eclipse/persistence/sessions/Login.html" title="interface in org.eclipse.persistence.sessions">Login</a>,org.eclipse.persistence.internal.databaseaccess.Platform,<a href="../../../../../org/eclipse/persistence/sessions/Project.html" title="class in org.eclipse.persistence.sessions">Project</a>,<a href="../../../../../org/eclipse/persistence/sessions/SessionEventManager.html" title="class in org.eclipse.persistence.sessions">SessionEventManager</a>&gt;, <a href="../../../../../org/eclipse/persistence/sessions/coordination/CommandProcessor.html" title="interface in org.eclipse.persistence.sessions.coordination">CommandProcessor</a>, <a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html" title="interface in org.eclipse.persistence.sessions">DatabaseSession</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html" title="interface in org.eclipse.persistence.sessions">Session</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">RemoteSession</span>
extends <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html" title="class in org.eclipse.persistence.sessions.remote">DistributedSession</a></pre>
<div class="block"><b>Purpose</b>: Provide transparent remote three-tiered replacation support.
 The remote session allows for complex three-tiered applications to be easily built.
 It gives the remote client the fully functionality of the TopLink api including,
 <ul>
 <li>Client side caching and object-identity maintainence.
 <li>Complex query support
 <li>Unit of work support
 <li>Indirection support through remote value holders.
 </ul>

 This session is a primary interface which resides on the client side. Users would interact
 with session just the same way as if it was a normal session.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../serialized-form.html#org.eclipse.persistence.sessions.remote.RemoteSession">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 org.eclipse.persistence.internal.sequencing.Sequencing</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html#sequencing">sequencing</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/sessions/remote/RemoteSession.html#shouldEnableDistributedIndirectionGarbageCollection">shouldEnableDistributedIndirectionGarbageCollection</a></span></code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.eclipse.persistence.sessions.remote.DistributedSession">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.persistence.sessions.remote.<a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html" title="class in org.eclipse.persistence.sessions.remote">DistributedSession</a></h3>
<code><a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#hasDefaultReadOnlyClasses">hasDefaultReadOnlyClasses</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#isMetadataRemote">isMetadataRemote</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#remoteConnection">remoteConnection</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.eclipse.persistence.internal.sessions.DatabaseSessionImpl">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.persistence.internal.sessions.DatabaseSessionImpl</h3>
<code>connectedTime, databaseEventListener, isLoggedIn, sequencingHome, serverPlatform, tuner</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.eclipse.persistence.internal.sessions.AbstractSession">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.persistence.internal.sessions.AbstractSession</h3>
<code>accessors, activeCommandThreads, attributeGroups, broker, commandManager, commitManager, defaultReferenceMode, deferredEvents, descriptors, eventManager, exceptionHandler, externalTransactionController, identityMapAccessor, injectionManager, integrityChecker, isConcurrent, isExecutingEvents, isFinalizersEnabled, isInBroker, isInProfile, isLoggingOff, isSynchronized, jpaQueriesProcessed, lastDescriptorAccessed, logSessionString, metadatalistener, multitenantContextProperties, name, numberOfActiveUnitsOfWork, objectsLockedForClone, partitioningPolicy, pessimisticLockTimeoutDefault, pessimisticLockTimeoutUnitDefault, platform, profiler, project, properties, queries, queryBuilder, queryTimeoutDefault, queryTimeoutUnitDefault, serializer, sessionLog, shouldCheckWriteLock, shouldOptimizeResultSetAccess, shouldPropagateChanges, staticMetamodelClasses, tablePerTenantDescriptors, tablePerTenantQueries, tolerateInvalidJPQL, transactionMutex, wasJTSTransactionInternallyStarted</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.eclipse.persistence.sessions.coordination.CommandProcessor">
<!--   -->
</a>
<h3>Fields inherited from interface&nbsp;org.eclipse.persistence.sessions.coordination.<a href="../../../../../org/eclipse/persistence/sessions/coordination/CommandProcessor.html" title="interface in org.eclipse.persistence.sessions.coordination">CommandProcessor</a></h3>
<code><a href="../../../../../org/eclipse/persistence/sessions/coordination/CommandProcessor.html#LOG_DEBUG">LOG_DEBUG</a>, <a href="../../../../../org/eclipse/persistence/sessions/coordination/CommandProcessor.html#LOG_ERROR">LOG_ERROR</a>, <a href="../../../../../org/eclipse/persistence/sessions/coordination/CommandProcessor.html#LOG_INFO">LOG_INFO</a>, <a href="../../../../../org/eclipse/persistence/sessions/coordination/CommandProcessor.html#LOG_WARNING">LOG_WARNING</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/sessions/remote/RemoteSession.html#RemoteSession--">RemoteSession</a></span>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html#RemoteSession-org.eclipse.persistence.internal.sessions.remote.RemoteConnection-">RemoteSession</a></span>(org.eclipse.persistence.internal.sessions.remote.RemoteConnection&nbsp;remoteConnection)</code>
<div class="block">PUBLIC:
 Creates a RemoteSession.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/eclipse/persistence/sessions/Session.html" title="interface in org.eclipse.persistence.sessions">Session</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html#acquireHistoricalSession-org.eclipse.persistence.history.AsOfClause-">acquireHistoricalSession</a></span>(<a href="../../../../../org/eclipse/persistence/history/AsOfClause.html" title="class in org.eclipse.persistence.history">AsOfClause</a>&nbsp;clause)</code>
<div class="block">INTERNAL:
 Acquires a special historical session for reading objects as of a past time.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html#acquireRepeatableWriteUnitOfWork-org.eclipse.persistence.config.ReferenceMode-">acquireRepeatableWriteUnitOfWork</a></span>(<a href="../../../../../org/eclipse/persistence/config/ReferenceMode.html" title="enum in org.eclipse.persistence.config">ReferenceMode</a>&nbsp;referenceMode)</code>
<div class="block">PUBLIC:
 Return a repeatable write unit of work for this session.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.sessions.UnitOfWorkImpl</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html#acquireUnitOfWork--">acquireUnitOfWork</a></span>()</code>
<div class="block">PUBLIC:
 Return a unit of work for this session.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.sessions.UnitOfWorkImpl</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html#acquireUnitOfWork-org.eclipse.persistence.config.ReferenceMode-">acquireUnitOfWork</a></span>(<a href="../../../../../org/eclipse/persistence/config/ReferenceMode.html" title="enum in org.eclipse.persistence.config">ReferenceMode</a>&nbsp;referenceMode)</code>
<div class="block">PUBLIC:
 Return a unit of work for this session.</div>
</td>
</tr>
<tr id="i4" 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/sessions/remote/RemoteSession.html#executeQuery-org.eclipse.persistence.queries.DatabaseQuery-">executeQuery</a></span>(<a href="../../../../../org/eclipse/persistence/queries/DatabaseQuery.html" title="class in org.eclipse.persistence.queries">DatabaseQuery</a>&nbsp;query)</code>
<div class="block">PUBLIC:
 Execute the database query.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/eclipse/persistence/sessions/Login.html" title="interface in org.eclipse.persistence.sessions">Login</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html#getDatasourceLogin--">getDatasourceLogin</a></span>()</code>
<div class="block">PUBLIC:
 Return the login.</div>
</td>
</tr>
<tr id="i6" 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/sessions/remote/RemoteSession.html#getObjectCorrespondingTo-java.lang.Object-java.util.Map-java.util.Map-org.eclipse.persistence.queries.ObjectLevelReadQuery-">getObjectCorrespondingTo</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;serverSideDomainObject,
                        <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;objectDescriptors,
                        <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;processedObjects,
                        <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 corresponding objects from the remote session for the objects read from the server.</div>
</td>
</tr>
<tr id="i7" 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/sessions/remote/RemoteSession.html#getObjectsCorrespondingToAll-java.lang.Object-java.util.Map-java.util.Map-org.eclipse.persistence.queries.ObjectLevelReadQuery-org.eclipse.persistence.internal.queries.ContainerPolicy-">getObjectsCorrespondingToAll</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;serverSideDomainObjects,
                            <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;objectDescriptors,
                            <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;processedObjects,
                            <a href="../../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html" title="class in org.eclipse.persistence.queries">ObjectLevelReadQuery</a>&nbsp;query,
                            org.eclipse.persistence.internal.queries.ContainerPolicy&nbsp;containerPolicy)</code>
<div class="block">INTERNAL:
 Return the corresponding objects from the remote session for the objects read from the server.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.sequencing.Sequencing</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html#getSequencing--">getSequencing</a></span>()</code>
<div class="block">INTERNAL:
 Return the Sequencing object used by the session.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html#initializeSequencing--">initializeSequencing</a></span>()</code>
<div class="block">ADVANCED:
 Creates sequencing object for the session.</div>
</td>
</tr>
<tr id="i10" 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/sessions/remote/RemoteSession.html#instantiateRemoteValueHolderOnServer-org.eclipse.persistence.internal.sessions.remote.RemoteValueHolder-">instantiateRemoteValueHolderOnServer</a></span>(org.eclipse.persistence.internal.sessions.remote.RemoteValueHolder&nbsp;remoteValueHolder)</code>
<div class="block">INTERNAL:
 This will instantiate value holder on the server.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html#isRemoteSession--">isRemoteSession</a></span>()</code>
<div class="block">INTERNAL:
 Return if this session is remote.</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/sessions/remote/RemoteSession.html#setShouldEnableDistributedIndirectionGarbageCollection-boolean-">setShouldEnableDistributedIndirectionGarbageCollection</a></span>(boolean&nbsp;shouldEnableDistributedIndirectionGarbageCollection)</code>
<div class="block">ADVANCED:
 Allow the server-side value holders to be cleaned-up when the client-side value holder finalize.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html#shouldEnableDistributedIndirectionGarbageCollection--">shouldEnableDistributedIndirectionGarbageCollection</a></span>()</code>
<div class="block">ADVANCED:
 Allow the server-side value holders to be cleaned-up when the client-side value holder finalize.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.eclipse.persistence.sessions.remote.DistributedSession">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.persistence.sessions.remote.<a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html" title="class in org.eclipse.persistence.sessions.remote">DistributedSession</a></h3>
<code><a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#beginTransaction--">beginTransaction</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#commitTransaction--">commitTransaction</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#connect--">connect</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#cursorSelectObjects-org.eclipse.persistence.queries.CursoredStreamPolicy-">cursorSelectObjects</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#cursorSelectObjects-org.eclipse.persistence.queries.ScrollableCursorPolicy-">cursorSelectObjects</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#disconnect--">disconnect</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#executeQuery-org.eclipse.persistence.queries.DatabaseQuery-org.eclipse.persistence.internal.sessions.AbstractRecord-">executeQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#executeQuery-java.lang.String-">executeQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#executeQuery-java.lang.String-java.lang.Class-">executeQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#executeQuery-java.lang.String-java.lang.Class-java.util.Vector-">executeQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#executeQuery-java.lang.String-java.util.Vector-">executeQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#getDefaultReadOnlyClasses--">getDefaultReadOnlyClasses</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#getDescriptor-java.lang.Class-">getDescriptor</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#getDescriptorCorrespondingTo-org.eclipse.persistence.descriptors.ClassDescriptor-">getDescriptorCorrespondingTo</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#getDescriptorForAlias-java.lang.String-">getDescriptorForAlias</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#getRemoteConnection--">getRemoteConnection</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#hasCorrespondingDescriptor-org.eclipse.persistence.descriptors.ClassDescriptor-">hasCorrespondingDescriptor</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#initializeIdentityMapAccessor--">initializeIdentityMapAccessor</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#isConnected--">isConnected</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#isDistributedSession--">isDistributedSession</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#isMetadataRemote--">isMetadataRemote</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#login--">login</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#loginAndDetectDatasource--">loginAndDetectDatasource</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#logout--">logout</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#privilegedAddDescriptor-org.eclipse.persistence.descriptors.ClassDescriptor-">privilegedAddDescriptor</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#rollbackTransaction--">rollbackTransaction</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#setIsMetadataRemote-boolean-">setIsMetadataRemote</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#setRemoteConnection-org.eclipse.persistence.internal.sessions.remote.RemoteConnection-">setRemoteConnection</a>, <a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#toString--">toString</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.eclipse.persistence.internal.sessions.DatabaseSessionImpl">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.persistence.internal.sessions.DatabaseSessionImpl</h3>
<code>addDescriptor, addDescriptors, addDescriptors, addDescriptorsToSequencing, addSequence, finalize, getConnectedTime, getDatabaseEventListener, getDatasourcePlatform, getPlatform, getPlatform, getReadLogin, getSequencingControl, getSequencingHome, getServerPlatform, getTuner, initializeConnectedTime, initializeDescriptorIfSessionAlive, initializeDescriptors, initializeDescriptors, initializeDescriptors, initializeDescriptors, initializeDescriptors, isDatabaseSession, isLoggedIn, isProtectedSession, isSequencingCallbackRequired, login, login, postConnectDatasource, postLogin, preConnectDatasource, releaseJTSConnection, retryQuery, setDatabaseEventListener, setDatasourceAndInitialize, setOrDetectDatasource, setSequencingHome, setServerPlatform, setTuner, writeAllObjects, writeAllObjects</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.eclipse.persistence.internal.sessions.AbstractSession">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.persistence.internal.sessions.AbstractSession</h3>
<code>acquireNonSynchronizedUnitOfWork, acquireNonSynchronizedUnitOfWork, addAlias, addJPAQuery, addJPATablePerTenantQuery, addMultitenantContextProperty, addQuery, addQuery, addQuery, addStaticMetamodelClass, addTablePerTenantDescriptor, addTablePerTenantQuery, basicBeginTransaction, basicBeginTransaction, basicCommitTransaction, basicExecuteCall, basicRollbackTransaction, beginExternalTransaction, buildDefaultQueryBuilder, checkAndRefreshInvalidObject, checkHierarchyForDescriptor, cleanUpInjectionManager, clearDescriptors, clearIntegrityChecker, clearLastDescriptorAccessed, clearProfile, clone, commitExternalTransaction, compareObjects, compareObjectsDontMatch, config, containsQuery, copy, copy, copyDescriptorNamedQueries, copyDescriptorsFromProject, copyInternal, copyReadOnlyClasses, createCloneQueryValueHolder, createCloneTransformationValueHolder, createInjectionManager, createProtectedInstanceFromCachedData, deferEvent, deleteAllObjects, deleteObject, doesObjectExist, dontLogMessages, endOperationProfile, endOperationProfile, executeCall, executeDeferredEvents, executeNonSelectingCall, executeNonSelectingSQL, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeQuery, executeSelectingCall, executeSQL, fine, finer, finest, getAccessor, getAccessors, getAccessors, getActiveCommandThreads, getActiveSession, getActiveUnitOfWork, getAliasDescriptors, getAllQueries, getAsOfClause, getAttributeGroups, getBroker, getCacheKeyFromTargetSessionForMerge, getClassDescriptor, getClassDescriptor, getClassDescriptorForAlias, getCommandManager, getCommitManager, getDefaultReferenceMode, getDescriptor, getDescriptors, getEventManager, getExceptionHandler, getExceptionHandlerClass, getExecutionSession, getExternalTransactionController, getId, getIdentityMapAccessor, getIdentityMapAccessorInstance, getInjectionManager, getIntegrityChecker, getJPAQueries, getJPATablePerTenantQueries, getLoader, getLog, getLogin, getLogLevel, getLogLevel, getLogSessionString, getMappedSuperclass, getMultitenantContextProperties, getName, getNextQueryId, getNextSequenceNumberValue, getNumberOfActiveUnitsOfWork, getParent, getParentIdentityMapSession, getParentIdentityMapSession, getParentIdentityMapSession, getPartitioningPolicy, getPessimisticLockTimeoutDefault, getPessimisticLockTimeoutUnitDefault, getProfiler, getProject, getProperties, getProperty, getQueries, getQuery, getQuery, getQuery, getQuery, getQueryBuilder, getQueryTimeoutDefault, getQueryTimeoutUnitDefault, getRefreshMetadataListener, getRootSession, getSerializer, getSessionForClass, getSessionForName, getSessionLog, getSessionTypeString, getStaticMetamodelClass, getTablePerTenantDescriptors, getTablePerTenantQueries, getTransactionMutex, handleException, handleSevere, hasBroker, hasCommitManager, hasDescriptor, hasEventManager, hasExceptionHandler, hasExternalTransactionController, hasProperties, hasTablePerTenantDescriptors, hasTablePerTenantQueries, incrementProfile, incrementProfile, info, insertObject, internalExecuteQuery, isBroker, isClassReadOnly, isClassReadOnly, isClientSession, isConcurrent, isConsideredInvalid, isExclusiveConnectionRequired, isExclusiveIsolatedClientSession, isFinalizersEnabled, isHistoricalSession, isInBroker, isInProfile, isInTransaction, isIsolatedClientSession, isJPAQueriesProcessed, isLoggingOff, isRemoteUnitOfWork, isServerSession, isSessionBroker, isSynchronized, isUnitOfWork, keyFromObject, load, load, log, log, log, log, log, log, log, log, logMessage, logMessage, logThrowable, postAcquireConnection, prepareDatabaseQuery, preReleaseConnection, priviledgedExecuteNonSelectingCall, priviledgedExecuteSelectingCall, processCommand, processJPAQueries, processJPAQuery, readAllObjects, readAllObjects, readAllObjects, readAllObjects, readObject, readObject, readObject, readObject, readObject, refreshAndLockObject, refreshAndLockObject, refreshObject, registerFinalizer, release, releaseConnectionAfterCall, releaseReadConnection, releaseUnitOfWork, removeProperty, removeQuery, removeQuery, retrieveCacheKey, retryTransaction, rollbackExternalTransaction, setAccessor, setBroker, setCommandManager, setCommitManager, setDatasourceLogin, setDefaultReferenceMode, setEventManager, setExceptionHandler, setExternalTransactionController, setInjectionManager, setIntegrityChecker, setIsConcurrent, setIsFinalizersEnabled, setIsInBroker, setIsInProfile, setJPAQueriesProcessed, setLog, setLoggingOff, setLogin, setLogin, setLogLevel, setName, setNumberOfActiveUnitsOfWork, setPartitioningPolicy, setPessimisticLockTimeoutDefault, setPessimisticLockTimeoutUnitDefault, setProfiler, setProject, setProperties, setProperty, setQueries, setQueryBuilder, setQueryTimeoutDefault, setQueryTimeoutUnitDefault, setRefreshMetadataListener, setSerializer, setSessionLog, setShouldOptimizeResultSetAccess, setShouldPropagateChanges, setSynchronized, setTolerateInvalidJPQL, setTransactionMutex, setWasJTSTransactionInternallyStarted, severe, shouldDisplayData, shouldLog, shouldLogMessages, shouldLogMessages, shouldOptimizeResultSetAccess, shouldPropagateChanges, shouldTolerateInvalidJPQL, startOperationProfile, startOperationProfile, unwrapObject, updateObject, updateProfile, updateTablePerTenantDescriptors, validateCache, validateQuery, verifyDelete, warning, wasJTSTransactionInternallyStarted, wrapObject, writeAllObjectsWithChangeSet, writeObject, writesCompleted</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#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>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.eclipse.persistence.sessions.DatabaseSession">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.eclipse.persistence.sessions.<a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html" title="interface in org.eclipse.persistence.sessions">DatabaseSession</a></h3>
<code><a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html#deleteAllObjects-java.util.Collection-">deleteAllObjects</a>, <a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html#deleteObject-java.lang.Object-">deleteObject</a>, <a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html#getCommandManager--">getCommandManager</a>, <a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html#insertObject-java.lang.Object-">insertObject</a>, <a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html#isInTransaction--">isInTransaction</a>, <a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html#refreshAndLockObject-java.lang.Object-">refreshAndLockObject</a>, <a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html#refreshAndLockObject-java.lang.Object-short-">refreshAndLockObject</a>, <a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html#setCommandManager-org.eclipse.persistence.sessions.coordination.CommandManager-">setCommandManager</a>, <a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html#setDatasourceLogin-org.eclipse.persistence.sessions.Login-">setDatasourceLogin</a>, <a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html#setExternalTransactionController-org.eclipse.persistence.sessions.ExternalTransactionController-">setExternalTransactionController</a>, <a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html#setLogin-org.eclipse.persistence.sessions.Login-">setLogin</a>, <a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html#setShouldPropagateChanges-boolean-">setShouldPropagateChanges</a>, <a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html#shouldPropagateChanges--">shouldPropagateChanges</a>, <a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html#updateObject-java.lang.Object-">updateObject</a>, <a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html#writeObject-java.lang.Object-">writeObject</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.eclipse.persistence.sessions.Session">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.eclipse.persistence.sessions.<a href="../../../../../org/eclipse/persistence/sessions/Session.html" title="interface in org.eclipse.persistence.sessions">Session</a></h3>
<code><a href="../../../../../org/eclipse/persistence/sessions/Session.html#addJPAQuery-org.eclipse.persistence.queries.DatabaseQuery-">addJPAQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#addQuery-java.lang.String-org.eclipse.persistence.queries.DatabaseQuery-">addQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#clearIntegrityChecker--">clearIntegrityChecker</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#clearProfile--">clearProfile</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#containsQuery-java.lang.String-">containsQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#copy-java.lang.Object-">copy</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#copy-java.lang.Object-org.eclipse.persistence.queries.AttributeGroup-">copy</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#doesObjectExist-java.lang.Object-">doesObjectExist</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#dontLogMessages--">dontLogMessages</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#executeNonSelectingCall-org.eclipse.persistence.queries.Call-">executeNonSelectingCall</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#executeNonSelectingSQL-java.lang.String-">executeNonSelectingSQL</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#executeQuery-org.eclipse.persistence.queries.DatabaseQuery-java.util.List-">executeQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#executeQuery-java.lang.String-java.lang.Class-java.util.List-">executeQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#executeQuery-java.lang.String-java.lang.Class-java.lang.Object-">executeQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#executeQuery-java.lang.String-java.lang.Class-java.lang.Object-java.lang.Object-">executeQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#executeQuery-java.lang.String-java.lang.Class-java.lang.Object-java.lang.Object-java.lang.Object-">executeQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#executeQuery-java.lang.String-java.util.List-">executeQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#executeQuery-java.lang.String-java.lang.Object-">executeQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#executeQuery-java.lang.String-java.lang.Object-java.lang.Object-">executeQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#executeQuery-java.lang.String-java.lang.Object-java.lang.Object-java.lang.Object-">executeQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#executeSelectingCall-org.eclipse.persistence.queries.Call-">executeSelectingCall</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#executeSQL-java.lang.String-">executeSQL</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getActiveSession--">getActiveSession</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getActiveUnitOfWork--">getActiveUnitOfWork</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getAsOfClause--">getAsOfClause</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getClassDescriptor-java.lang.Class-">getClassDescriptor</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getClassDescriptor-java.lang.Object-">getClassDescriptor</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getClassDescriptorForAlias-java.lang.String-">getClassDescriptorForAlias</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getDefaultReferenceMode--">getDefaultReferenceMode</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getDescriptor-java.lang.Object-">getDescriptor</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getDescriptors--">getDescriptors</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getEventManager--">getEventManager</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getExceptionHandler--">getExceptionHandler</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getExternalTransactionController--">getExternalTransactionController</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getId-java.lang.Object-">getId</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getIdentityMapAccessor--">getIdentityMapAccessor</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getIntegrityChecker--">getIntegrityChecker</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getJPAQueries--">getJPAQueries</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getLog--">getLog</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getLogin--">getLogin</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getLogLevel--">getLogLevel</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getLogLevel-java.lang.String-">getLogLevel</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getName--">getName</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getNextSequenceNumberValue-java.lang.Class-">getNextSequenceNumberValue</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getPartitioningPolicy--">getPartitioningPolicy</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getProfiler--">getProfiler</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getProject--">getProject</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getProperties--">getProperties</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getProperty-java.lang.String-">getProperty</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getQueries--">getQueries</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getQuery-java.lang.String-">getQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getQuery-java.lang.String-java.util.List-">getQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getSerializer--">getSerializer</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#getSessionLog--">getSessionLog</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#handleException-java.lang.RuntimeException-">handleException</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#handleSevere-java.lang.RuntimeException-">handleSevere</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#hasDescriptor-java.lang.Class-">hasDescriptor</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#hasExceptionHandler--">hasExceptionHandler</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#hasExternalTransactionController--">hasExternalTransactionController</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#isClientSession--">isClientSession</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#isFinalizersEnabled--">isFinalizersEnabled</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#isInProfile--">isInProfile</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#isRemoteUnitOfWork--">isRemoteUnitOfWork</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#isServerSession--">isServerSession</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#isSessionBroker--">isSessionBroker</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#isUnitOfWork--">isUnitOfWork</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#log-org.eclipse.persistence.logging.SessionLogEntry-">log</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#logMessage-java.lang.String-">logMessage</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#readAllObjects-java.lang.Class-">readAllObjects</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#readAllObjects-java.lang.Class-org.eclipse.persistence.queries.Call-">readAllObjects</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#readAllObjects-java.lang.Class-org.eclipse.persistence.expressions.Expression-">readAllObjects</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#readObject-java.lang.Class-">readObject</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#readObject-java.lang.Class-org.eclipse.persistence.queries.Call-">readObject</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#readObject-java.lang.Class-org.eclipse.persistence.expressions.Expression-">readObject</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#readObject-java.lang.Object-">readObject</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#refreshObject-java.lang.Object-">refreshObject</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#release--">release</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#removeProperty-java.lang.String-">removeProperty</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#removeQuery-java.lang.String-">removeQuery</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#setDefaultReferenceMode-org.eclipse.persistence.config.ReferenceMode-">setDefaultReferenceMode</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#setExceptionHandler-org.eclipse.persistence.exceptions.ExceptionHandler-">setExceptionHandler</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#setIntegrityChecker-org.eclipse.persistence.exceptions.IntegrityChecker-">setIntegrityChecker</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#setIsFinalizersEnabled-boolean-">setIsFinalizersEnabled</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#setLog-java.io.Writer-">setLog</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#setLogLevel-int-">setLogLevel</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#setName-java.lang.String-">setName</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#setPartitioningPolicy-org.eclipse.persistence.descriptors.partitioning.PartitioningPolicy-">setPartitioningPolicy</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#setProfiler-org.eclipse.persistence.sessions.SessionProfiler-">setProfiler</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#setProperty-java.lang.String-java.lang.Object-">setProperty</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#setQueryTimeoutDefault-int-">setQueryTimeoutDefault</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#setQueryTimeoutUnitDefault-java.util.concurrent.TimeUnit-">setQueryTimeoutUnitDefault</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#setSerializer-org.eclipse.persistence.sessions.serializers.Serializer-">setSerializer</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#setSessionLog-org.eclipse.persistence.logging.SessionLog-">setSessionLog</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#shouldLog-int-java.lang.String-">shouldLog</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#shouldLogMessages--">shouldLogMessages</a>, <a href="../../../../../org/eclipse/persistence/sessions/Session.html#validateCache--">validateCache</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="sequencing">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sequencing</h4>
<pre>protected&nbsp;org.eclipse.persistence.internal.sequencing.Sequencing sequencing</pre>
</li>
</ul>
<a name="shouldEnableDistributedIndirectionGarbageCollection">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>shouldEnableDistributedIndirectionGarbageCollection</h4>
<pre>protected&nbsp;boolean shouldEnableDistributedIndirectionGarbageCollection</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="RemoteSession--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>RemoteSession</h4>
<pre>public&nbsp;RemoteSession()</pre>
</li>
</ul>
<a name="RemoteSession-org.eclipse.persistence.internal.sessions.remote.RemoteConnection-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>RemoteSession</h4>
<pre>public&nbsp;RemoteSession(org.eclipse.persistence.internal.sessions.remote.RemoteConnection&nbsp;remoteConnection)</pre>
<div class="block">PUBLIC:
 Creates a RemoteSession.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>remoteConnection</code> - remote session requires a remote connection. This must be accessed remotely from the client through RMI or CORBA.</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="setShouldEnableDistributedIndirectionGarbageCollection-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShouldEnableDistributedIndirectionGarbageCollection</h4>
<pre>public&nbsp;void&nbsp;setShouldEnableDistributedIndirectionGarbageCollection(boolean&nbsp;shouldEnableDistributedIndirectionGarbageCollection)</pre>
<div class="block">ADVANCED:
 Allow the server-side value holders to be cleaned-up when the client-side value holder finalize.</div>
</li>
</ul>
<a name="shouldEnableDistributedIndirectionGarbageCollection--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldEnableDistributedIndirectionGarbageCollection</h4>
<pre>public&nbsp;boolean&nbsp;shouldEnableDistributedIndirectionGarbageCollection()</pre>
<div class="block">ADVANCED:
 Allow the server-side value holders to be cleaned-up when the client-side value holder finalize.</div>
</li>
</ul>
<a name="acquireHistoricalSession-org.eclipse.persistence.history.AsOfClause-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>acquireHistoricalSession</h4>
<pre>public&nbsp;<a href="../../../../../org/eclipse/persistence/sessions/Session.html" title="interface in org.eclipse.persistence.sessions">Session</a>&nbsp;acquireHistoricalSession(<a href="../../../../../org/eclipse/persistence/history/AsOfClause.html" title="class in org.eclipse.persistence.history">AsOfClause</a>&nbsp;clause)
                                 throws <a href="../../../../../org/eclipse/persistence/exceptions/ValidationException.html" title="class in org.eclipse.persistence.exceptions">ValidationException</a></pre>
<div class="block">INTERNAL:
 Acquires a special historical session for reading objects as of a past time.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/eclipse/persistence/sessions/Session.html#acquireHistoricalSession-org.eclipse.persistence.history.AsOfClause-">acquireHistoricalSession</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/eclipse/persistence/sessions/Session.html" title="interface in org.eclipse.persistence.sessions">Session</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>acquireHistoricalSession</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.sessions.AbstractSession</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>clause</code> - Represents a valid snap shot time.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../org/eclipse/persistence/exceptions/ValidationException.html" title="class in org.eclipse.persistence.exceptions">ValidationException</a></code> - if <code>this</code>
 not a ClientSession, plain Session, or SessionBroker.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../org/eclipse/persistence/history/AsOfClause.html" title="class in org.eclipse.persistence.history"><code>AsOfClause</code></a>, 
<a href="../../../../../org/eclipse/persistence/expressions/Expression.html#asOf-org.eclipse.persistence.history.AsOfClause-"><code>Expression.asOf(org.eclipse.persistence.history.AsOfClause)</code></a>, 
<a href="../../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html#setAsOfClause-org.eclipse.persistence.history.AsOfClause-"><code>ObjectLevelReadQuery.setAsOfClause(org.eclipse.persistence.history.AsOfClause)</code></a>, 
<a href="../../../../../org/eclipse/persistence/history/HistoryPolicy.html" title="class in org.eclipse.persistence.history"><code>HistoryPolicy</code></a></dd>
</dl>
</li>
</ul>
<a name="acquireUnitOfWork--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>acquireUnitOfWork</h4>
<pre>public&nbsp;org.eclipse.persistence.internal.sessions.UnitOfWorkImpl&nbsp;acquireUnitOfWork()</pre>
<div class="block">PUBLIC:
 Return a unit of work for this session.
 The unit of work is an object level transaction that allows
 a group of changes to be applied as a unit.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/eclipse/persistence/sessions/Session.html#acquireUnitOfWork--">acquireUnitOfWork</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/eclipse/persistence/sessions/Session.html" title="interface in org.eclipse.persistence.sessions">Session</a></code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#acquireUnitOfWork--">acquireUnitOfWork</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html" title="class in org.eclipse.persistence.sessions.remote">DistributedSession</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>UnitOfWorkImpl</code></dd>
</dl>
</li>
</ul>
<a name="acquireUnitOfWork-org.eclipse.persistence.config.ReferenceMode-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>acquireUnitOfWork</h4>
<pre>public&nbsp;org.eclipse.persistence.internal.sessions.UnitOfWorkImpl&nbsp;acquireUnitOfWork(<a href="../../../../../org/eclipse/persistence/config/ReferenceMode.html" title="enum in org.eclipse.persistence.config">ReferenceMode</a>&nbsp;referenceMode)</pre>
<div class="block">PUBLIC:
 Return a unit of work for this session.
 The unit of work is an object level transaction that allows
 a group of changes to be applied as a unit.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/eclipse/persistence/sessions/Session.html#acquireUnitOfWork-org.eclipse.persistence.config.ReferenceMode-">acquireUnitOfWork</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/eclipse/persistence/sessions/Session.html" title="interface in org.eclipse.persistence.sessions">Session</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>acquireUnitOfWork</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.sessions.AbstractSession</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>referenceMode</code> - The reference type the UOW should use internally when
 referencing Working clones.  Setting this to WEAK means the UOW will use
 weak references to reference clones and if the application no longer
 references the clone the clone may be garbage collected.  If the clone
 has uncommitted changes then those changes will be lost.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>UnitOfWorkImpl</code></dd>
</dl>
</li>
</ul>
<a name="acquireRepeatableWriteUnitOfWork-org.eclipse.persistence.config.ReferenceMode-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>acquireRepeatableWriteUnitOfWork</h4>
<pre>public&nbsp;org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork&nbsp;acquireRepeatableWriteUnitOfWork(<a href="../../../../../org/eclipse/persistence/config/ReferenceMode.html" title="enum in org.eclipse.persistence.config">ReferenceMode</a>&nbsp;referenceMode)</pre>
<div class="block">PUBLIC:
 Return a repeatable write unit of work for this session.
 A repeatable write unit of work allows multiple writeChanges (flushes).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>acquireRepeatableWriteUnitOfWork</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.sessions.AbstractSession</code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>RepeatableWriteUnitOfWork</code></dd>
</dl>
</li>
</ul>
<a name="executeQuery-org.eclipse.persistence.queries.DatabaseQuery-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>executeQuery</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;executeQuery(<a href="../../../../../org/eclipse/persistence/queries/DatabaseQuery.html" title="class in org.eclipse.persistence.queries">DatabaseQuery</a>&nbsp;query)</pre>
<div class="block">PUBLIC:
 Execute the database query.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/eclipse/persistence/sessions/Session.html#executeQuery-org.eclipse.persistence.queries.DatabaseQuery-">executeQuery</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/eclipse/persistence/sessions/Session.html" title="interface in org.eclipse.persistence.sessions">Session</a></code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#executeQuery-org.eclipse.persistence.queries.DatabaseQuery-">executeQuery</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html" title="class in org.eclipse.persistence.sessions.remote">DistributedSession</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../org/eclipse/persistence/queries/DatabaseQuery.html" title="class in org.eclipse.persistence.queries"><code>DatabaseQuery</code></a></dd>
</dl>
</li>
</ul>
<a name="getDatasourceLogin--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDatasourceLogin</h4>
<pre>public&nbsp;<a href="../../../../../org/eclipse/persistence/sessions/Login.html" title="interface in org.eclipse.persistence.sessions">Login</a>&nbsp;getDatasourceLogin()</pre>
<div class="block">PUBLIC:
 Return the login.
 This must retrieve the login information from the server this first time called.
 This is useful to be able to do things differently depending on the database platform.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/eclipse/persistence/core/sessions/CoreSession.html#getDatasourceLogin--">getDatasourceLogin</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/eclipse/persistence/core/sessions/CoreSession.html" title="interface in org.eclipse.persistence.core.sessions">CoreSession</a>&lt;<a href="../../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html" title="class in org.eclipse.persistence.descriptors">ClassDescriptor</a>,<a href="../../../../../org/eclipse/persistence/sessions/Login.html" title="interface in org.eclipse.persistence.sessions">Login</a>,org.eclipse.persistence.internal.databaseaccess.Platform,<a href="../../../../../org/eclipse/persistence/sessions/Project.html" title="class in org.eclipse.persistence.sessions">Project</a>,<a href="../../../../../org/eclipse/persistence/sessions/SessionEventManager.html" title="class in org.eclipse.persistence.sessions">SessionEventManager</a>&gt;</code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/eclipse/persistence/sessions/Session.html#getDatasourceLogin--">getDatasourceLogin</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/eclipse/persistence/sessions/Session.html" title="interface in org.eclipse.persistence.sessions">Session</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getDatasourceLogin</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.sessions.AbstractSession</code></dd>
</dl>
</li>
</ul>
<a name="getObjectCorrespondingTo-java.lang.Object-java.util.Map-java.util.Map-org.eclipse.persistence.queries.ObjectLevelReadQuery-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getObjectCorrespondingTo</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;getObjectCorrespondingTo(<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;serverSideDomainObject,
                                       <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;objectDescriptors,
                                       <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;processedObjects,
                                       <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 corresponding objects from the remote session for the objects read from the server.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#getObjectCorrespondingTo-java.lang.Object-java.util.Map-java.util.Map-org.eclipse.persistence.queries.ObjectLevelReadQuery-">getObjectCorrespondingTo</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html" title="class in org.eclipse.persistence.sessions.remote">DistributedSession</a></code></dd>
</dl>
</li>
</ul>
<a name="getObjectsCorrespondingToAll-java.lang.Object-java.util.Map-java.util.Map-org.eclipse.persistence.queries.ObjectLevelReadQuery-org.eclipse.persistence.internal.queries.ContainerPolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getObjectsCorrespondingToAll</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;getObjectsCorrespondingToAll(<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;serverSideDomainObjects,
                                           <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;objectDescriptors,
                                           <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;processedObjects,
                                           <a href="../../../../../org/eclipse/persistence/queries/ObjectLevelReadQuery.html" title="class in org.eclipse.persistence.queries">ObjectLevelReadQuery</a>&nbsp;query,
                                           org.eclipse.persistence.internal.queries.ContainerPolicy&nbsp;containerPolicy)</pre>
<div class="block">INTERNAL:
 Return the corresponding objects from the remote session for the objects read from the server.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#getObjectsCorrespondingToAll-java.lang.Object-java.util.Map-java.util.Map-org.eclipse.persistence.queries.ObjectLevelReadQuery-org.eclipse.persistence.internal.queries.ContainerPolicy-">getObjectsCorrespondingToAll</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html" title="class in org.eclipse.persistence.sessions.remote">DistributedSession</a></code></dd>
</dl>
</li>
</ul>
<a name="instantiateRemoteValueHolderOnServer-org.eclipse.persistence.internal.sessions.remote.RemoteValueHolder-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>instantiateRemoteValueHolderOnServer</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;instantiateRemoteValueHolderOnServer(org.eclipse.persistence.internal.sessions.remote.RemoteValueHolder&nbsp;remoteValueHolder)</pre>
<div class="block">INTERNAL:
 This will instantiate value holder on the server.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#instantiateRemoteValueHolderOnServer-org.eclipse.persistence.internal.sessions.remote.RemoteValueHolder-">instantiateRemoteValueHolderOnServer</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html" title="class in org.eclipse.persistence.sessions.remote">DistributedSession</a></code></dd>
</dl>
</li>
</ul>
<a name="isRemoteSession--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isRemoteSession</h4>
<pre>public&nbsp;boolean&nbsp;isRemoteSession()</pre>
<div class="block">INTERNAL:
 Return if this session is remote.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/eclipse/persistence/sessions/Session.html#isRemoteSession--">isRemoteSession</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/eclipse/persistence/sessions/Session.html" title="interface in org.eclipse.persistence.sessions">Session</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html#isRemoteSession--">isRemoteSession</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html" title="class in org.eclipse.persistence.sessions.remote">DistributedSession</a></code></dd>
</dl>
</li>
</ul>
<a name="getSequencing--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSequencing</h4>
<pre>public&nbsp;org.eclipse.persistence.internal.sequencing.Sequencing&nbsp;getSequencing()</pre>
<div class="block">INTERNAL:
 Return the Sequencing object used by the session.
 Sequences may be provided locally, or remotely.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getSequencing</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.sessions.DatabaseSessionImpl</code></dd>
</dl>
</li>
</ul>
<a name="initializeSequencing--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>initializeSequencing</h4>
<pre>public&nbsp;void&nbsp;initializeSequencing()</pre>
<div class="block">ADVANCED:
 Creates sequencing object for the session.
 Sequences may be provided locally, or remotely.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>initializeSequencing</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.sessions.DatabaseSessionImpl</code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="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/sessions/remote/DistributedSession.html" title="class in org.eclipse.persistence.sessions.remote"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/eclipse/persistence/sessions/remote/RemoteSession.html" target="_top">Frames</a></li>
<li><a href="RemoteSession.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>
