blob: 293853753cd09ed4a7ec7a6f919f0d1efe8c7c02 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_252) on Fri Jul 16 09:39:03 UTC 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>DatabaseSession (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="DatabaseSession (EclipseLink 3.0.2, API Reference)";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":6,"i16":6,"i17":6,"i18":6,"i19":6,"i20":6,"i21":6,"i22":6,"i23":6,"i24":6,"i25":6,"i26":6,"i27":6,"i28":6,"i29":6,"i30":6,"i31":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract 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/DatabaseRecord.html" title="class in org.eclipse.persistence.sessions"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/eclipse/persistence/sessions/DatasourceLogin.html" title="class in org.eclipse.persistence.sessions"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/eclipse/persistence/sessions/DatabaseSession.html" target="_top">Frames</a></li>
<li><a href="DatabaseSession.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&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</div>
<h2 title="Interface DatabaseSession" class="title">Interface DatabaseSession</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Superinterfaces:</dt>
<dd><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/Session.html" title="interface in org.eclipse.persistence.sessions">Session</a></dd>
</dl>
<dl>
<dt>All Known Subinterfaces:</dt>
<dd><a href="../../../../org/eclipse/persistence/sessions/server/Server.html" title="interface in org.eclipse.persistence.sessions.server">Server</a></dd>
</dl>
<dl>
<dt>All Known Implementing Classes:</dt>
<dd>org.eclipse.persistence.internal.sessions.DatabaseSessionImpl, <a href="../../../../org/eclipse/persistence/sessions/remote/DistributedSession.html" title="class in org.eclipse.persistence.sessions.remote">DistributedSession</a>, <a href="../../../../org/eclipse/persistence/sessions/remote/RemoteSession.html" title="class in org.eclipse.persistence.sessions.remote">RemoteSession</a>, <a href="../../../../org/eclipse/persistence/sessions/server/ServerSession.html" title="class in org.eclipse.persistence.sessions.server">ServerSession</a>, <a href="../../../../org/eclipse/persistence/sessions/broker/SessionBroker.html" title="class in org.eclipse.persistence.sessions.broker">SessionBroker</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">DatabaseSession</span>
extends <a href="../../../../org/eclipse/persistence/sessions/Session.html" title="interface in org.eclipse.persistence.sessions">Session</a></pre>
<div class="block"><p>
<b>Purpose</b>: Add login and configuration API to that of Session.
This interface is to be used during the creation and login of the session only.
The Session interface should be used after login for normal reading/writing.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== 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="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract 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/sessions/DatabaseSession.html#addDescriptor-org.eclipse.persistence.descriptors.ClassDescriptor-">addDescriptor</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">PUBLIC:
Add the descriptor to the session.</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/sessions/DatabaseSession.html#addDescriptors-java.util.Collection-">addDescriptors</a></span>(<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>&nbsp;descriptors)</code>
<div class="block">PUBLIC:
Add the descriptors to the session.</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/sessions/DatabaseSession.html#addDescriptors-org.eclipse.persistence.sessions.Project-">addDescriptors</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">PUBLIC:
Add the descriptors to the session from the Project.</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/sessions/DatabaseSession.html#addSequence-org.eclipse.persistence.sequencing.Sequence-">addSequence</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">PUBLIC:
Add the sequence to the session.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#beginTransaction--">beginTransaction</a></span>()</code>
<div class="block">PUBLIC:
Begin a transaction on the database.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#commitTransaction--">commitTransaction</a></span>()</code>
<div class="block">PUBLIC:
Commit the active database transaction.</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/sessions/DatabaseSession.html#deleteAllObjects-java.util.Collection-">deleteAllObjects</a></span>(<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>&nbsp;domainObjects)</code>
<div class="block">PUBLIC:
delete all of the objects and all of their privately owned parts in the database.</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/DatabaseSession.html#deleteObject-java.lang.Object-">deleteObject</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;domainObject)</code>
<div class="block">PUBLIC:
Delete the object and all of its privately owned parts from the database.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/sessions/coordination/CommandManager.html" title="interface in org.eclipse.persistence.sessions.coordination">CommandManager</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#getCommandManager--">getCommandManager</a></span>()</code>
<div class="block">ADVANCED:
Return the CommandManager that allows this session to act as a
CommandProcessor and receive or propagate commands from/to the
EclipseLink cluster.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/platform/database/events/DatabaseEventListener.html" title="interface in org.eclipse.persistence.platform.database.events">DatabaseEventListener</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#getDatabaseEventListener--">getDatabaseEventListener</a></span>()</code>
<div class="block">Return the database event listener, this allows database events to invalidate the cache.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/sequencing/SequencingControl.html" title="interface in org.eclipse.persistence.sequencing">SequencingControl</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#getSequencingControl--">getSequencingControl</a></span>()</code>
<div class="block">PUBLIC:
Return SequencingControl which used for sequencing setup and
customization including management of sequencing preallocation.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/persistence/platform/server/ServerPlatform.html" title="interface in org.eclipse.persistence.platform.server">ServerPlatform</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#getServerPlatform--">getServerPlatform</a></span>()</code>
<div class="block">PUBLIC:
Answer the server platform defining server-specific behavior for the receiver (Oc4j, WLS, ...).</div>
</td>
</tr>
<tr id="i12" 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/DatabaseSession.html#insertObject-java.lang.Object-">insertObject</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;domainObject)</code>
<div class="block">PUBLIC:
Insert the object and all of its privately owned parts into the database.</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/DatabaseSession.html#isInTransaction--">isInTransaction</a></span>()</code>
<div class="block">PUBLIC:
Return if the session is currently in the progress of a database transaction.</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/sessions/DatabaseSession.html#login--">login</a></span>()</code>
<div class="block">PUBLIC:
Connect to the database using the predefined login.</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/sessions/DatabaseSession.html#login-org.eclipse.persistence.sessions.Login-">login</a></span>(<a href="../../../../org/eclipse/persistence/sessions/Login.html" title="interface in org.eclipse.persistence.sessions">Login</a>&nbsp;login)</code>
<div class="block">PUBLIC:
Connect to the database using the given login.</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/sessions/DatabaseSession.html#login-java.lang.String-java.lang.String-">login</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;userName,
<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;password)</code>
<div class="block">PUBLIC:
Connect to the database using the given user name and password.</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/sessions/DatabaseSession.html#logout--">logout</a></span>()</code>
<div class="block">PUBLIC:
Disconnect from the database.</div>
</td>
</tr>
<tr id="i18" 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/DatabaseSession.html#refreshAndLockObject-java.lang.Object-">refreshAndLockObject</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;object)</code>
<div class="block">PUBLIC:
Refresh the attributes of the object and of all of its private parts from the database.</div>
</td>
</tr>
<tr id="i19" 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/DatabaseSession.html#refreshAndLockObject-java.lang.Object-short-">refreshAndLockObject</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;object,
short&nbsp;lockMode)</code>
<div class="block">PUBLIC:
Refresh the attributes of the object and of all of its private parts from the database.</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/sessions/DatabaseSession.html#rollbackTransaction--">rollbackTransaction</a></span>()</code>
<div class="block">PUBLIC:
Rollback the active database transaction.</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/sessions/DatabaseSession.html#setCommandManager-org.eclipse.persistence.sessions.coordination.CommandManager-">setCommandManager</a></span>(<a href="../../../../org/eclipse/persistence/sessions/coordination/CommandManager.html" title="interface in org.eclipse.persistence.sessions.coordination">CommandManager</a>&nbsp;commandManager)</code>
<div class="block">ADVANCED:
Set the CommandManager that allows this session to act as a
CommandProcessor and receive or propagate commands from/to the
EclipseLink cluster.</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/sessions/DatabaseSession.html#setDatabaseEventListener-org.eclipse.persistence.platform.database.events.DatabaseEventListener-">setDatabaseEventListener</a></span>(<a href="../../../../org/eclipse/persistence/platform/database/events/DatabaseEventListener.html" title="interface in org.eclipse.persistence.platform.database.events">DatabaseEventListener</a>&nbsp;databaseEventListener)</code>
<div class="block">PUBLIC:
Set the database event listener, this allows database events to invalidate the cache.</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/sessions/DatabaseSession.html#setDatasourceLogin-org.eclipse.persistence.sessions.Login-">setDatasourceLogin</a></span>(<a href="../../../../org/eclipse/persistence/sessions/Login.html" title="interface in org.eclipse.persistence.sessions">Login</a>&nbsp;login)</code>
<div class="block">PUBLIC:
Set the login.</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/sessions/DatabaseSession.html#setExternalTransactionController-org.eclipse.persistence.sessions.ExternalTransactionController-">setExternalTransactionController</a></span>(<a href="../../../../org/eclipse/persistence/sessions/ExternalTransactionController.html" title="interface in org.eclipse.persistence.sessions">ExternalTransactionController</a>&nbsp;etc)</code>
<div class="block">PUBLIC:
Used for JTS integration.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#setLogin-org.eclipse.persistence.sessions.Login-">setLogin</a></span>(<a href="../../../../org/eclipse/persistence/sessions/Login.html" title="interface in org.eclipse.persistence.sessions">Login</a>&nbsp;login)</code>
<div class="block">PUBLIC:
Set the login.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#setServerPlatform-org.eclipse.persistence.platform.server.ServerPlatform-">setServerPlatform</a></span>(<a href="../../../../org/eclipse/persistence/platform/server/ServerPlatform.html" title="interface in org.eclipse.persistence.platform.server">ServerPlatform</a>&nbsp;newServerPlatform)</code>
<div class="block">PUBLIC:
Set the server platform defining server-specific behavior for the receiver (Oc4j, WLS, ...</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#setShouldPropagateChanges-boolean-">setShouldPropagateChanges</a></span>(boolean&nbsp;choice)</code>
<div class="block">ADVANCED:
Set if cache changes should be propagated to other sessions or applications
in a EclipseLink cluster through the Remote Command Manager mechanism.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#shouldPropagateChanges--">shouldPropagateChanges</a></span>()</code>
<div class="block">ADVANCED:
Return whether changes should be propagated to other sessions or applications
in a EclipseLink cluster through the Remote Command Manager mechanism.</div>
</td>
</tr>
<tr id="i29" 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/DatabaseSession.html#updateObject-java.lang.Object-">updateObject</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;domainObject)</code>
<div class="block">PUBLIC:
Update the object and all of its privately owned parts in the database.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#writeAllObjects-java.util.Collection-">writeAllObjects</a></span>(<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>&nbsp;domainObjects)</code>
<div class="block">PUBLIC:
Write all of the objects and all of their privately owned parts in the database.</div>
</td>
</tr>
<tr id="i31" 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/DatabaseSession.html#writeObject-java.lang.Object-">writeObject</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;domainObject)</code>
<div class="block">PUBLIC:
Write the object and all of its privately owned parts in the database.</div>
</td>
</tr>
</table>
<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#acquireHistoricalSession-org.eclipse.persistence.history.AsOfClause-">acquireHistoricalSession</a>, <a href="../../../../org/eclipse/persistence/sessions/Session.html#acquireUnitOfWork--">acquireUnitOfWork</a>, <a href="../../../../org/eclipse/persistence/sessions/Session.html#acquireUnitOfWork-org.eclipse.persistence.config.ReferenceMode-">acquireUnitOfWork</a>, <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-">executeQuery</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-">executeQuery</a>, <a href="../../../../org/eclipse/persistence/sessions/Session.html#executeQuery-java.lang.String-java.lang.Class-">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#getDatasourceLogin--">getDatasourceLogin</a>, <a href="../../../../org/eclipse/persistence/sessions/Session.html#getDatasourcePlatform--">getDatasourcePlatform</a>, <a href="../../../../org/eclipse/persistence/sessions/Session.html#getDefaultReferenceMode--">getDefaultReferenceMode</a>, <a href="../../../../org/eclipse/persistence/sessions/Session.html#getDescriptor-java.lang.Class-">getDescriptor</a>, <a href="../../../../org/eclipse/persistence/sessions/Session.html#getDescriptor-java.lang.Object-">getDescriptor</a>, <a href="../../../../org/eclipse/persistence/sessions/Session.html#getDescriptorForAlias-java.lang.String-">getDescriptorForAlias</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#getPlatform--">getPlatform</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#isConnected--">isConnected</a>, <a href="../../../../org/eclipse/persistence/sessions/Session.html#isDatabaseSession--">isDatabaseSession</a>, <a href="../../../../org/eclipse/persistence/sessions/Session.html#isDistributedSession--">isDistributedSession</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#isRemoteSession--">isRemoteSession</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">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="addDescriptor-org.eclipse.persistence.descriptors.ClassDescriptor-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addDescriptor</h4>
<pre>void&nbsp;addDescriptor(<a href="../../../../org/eclipse/persistence/descriptors/ClassDescriptor.html" title="class in org.eclipse.persistence.descriptors">ClassDescriptor</a>&nbsp;descriptor)</pre>
<div class="block">PUBLIC:
Add the descriptor to the session.
All persistent classes must have a descriptor registered for them with the session.
It is best to add the descriptors before login, if added after login the order in which
descriptors are added is dependent on inheritance and references unless the addDescriptors
method is used.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#addDescriptors-java.util.Collection-"><code>addDescriptors(Collection)</code></a>,
<a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#addDescriptors-org.eclipse.persistence.sessions.Project-"><code>addDescriptors(Project)</code></a></dd>
</dl>
</li>
</ul>
<a name="addDescriptors-java.util.Collection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addDescriptors</h4>
<pre>void&nbsp;addDescriptors(<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>&nbsp;descriptors)</pre>
<div class="block">PUBLIC:
Add the descriptors to the session.
All persistent classes must have a descriptor registered for them with the session.
This method allows for a batch of descriptors to be added at once so that EclipseLink
can resolve the dependencies between the descriptors and perform initialization optimally.</div>
</li>
</ul>
<a name="addSequence-org.eclipse.persistence.sequencing.Sequence-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addSequence</h4>
<pre>void&nbsp;addSequence(<a href="../../../../org/eclipse/persistence/sequencing/Sequence.html" title="class in org.eclipse.persistence.sequencing">Sequence</a>&nbsp;sequence)</pre>
<div class="block">PUBLIC:
Add the sequence to the session.
Allows to add a new sequence to the session even if the session is connected.
If the session is connected then the sequence is added only
if there is no sequence with the same name already in use.
Call this method before addDescriptor(s) if need to add new descriptor
with a new non-default sequence to connected session.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#addDescriptor-org.eclipse.persistence.descriptors.ClassDescriptor-"><code>addDescriptor(org.eclipse.persistence.descriptors.ClassDescriptor)</code></a>,
<a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#addDescriptors-java.util.Collection-"><code>addDescriptors(java.util.Collection)</code></a></dd>
</dl>
</li>
</ul>
<a name="addDescriptors-org.eclipse.persistence.sessions.Project-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addDescriptors</h4>
<pre>void&nbsp;addDescriptors(<a href="../../../../org/eclipse/persistence/sessions/Project.html" title="class in org.eclipse.persistence.sessions">Project</a>&nbsp;project)</pre>
<div class="block">PUBLIC:
Add the descriptors to the session from the Project.
This can be used to combine the descriptors from multiple projects into a single session.
This can be called after the session has been connected as long as there are no external dependencies.</div>
</li>
</ul>
<a name="beginTransaction--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>beginTransaction</h4>
<pre>void&nbsp;beginTransaction()
throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></pre>
<div class="block">PUBLIC:
Begin a transaction on the database.
This allows a group of database modification to be committed or rolledback as a unit.
All writes/deletes will be sent to the database be will not be visible to other users until commit.
Although databases do not allow nested transaction,
EclipseLink supports nesting through only committing to the database on the outer commit.</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> - if the database connection is lost or the begin is rejected.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#isInTransaction--"><code>isInTransaction()</code></a></dd>
</dl>
</li>
</ul>
<a name="commitTransaction--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>commitTransaction</h4>
<pre>void&nbsp;commitTransaction()
throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></pre>
<div class="block">PUBLIC:
Commit the active database transaction.
This allows a group of database modification to be committed or rolledback as a unit.
All writes/deletes will be sent to the database be will not be visible to other users until commit.
Although databases do not allow nested transaction,
EclipseLink supports nesting through only committing to the database on the outer commit.</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> - most databases validate changes as they are done,
normally errors do not occur on commit unless the disk fails or the connection is lost.</dd>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/ConcurrencyException.html" title="class in org.eclipse.persistence.exceptions">ConcurrencyException</a></code> - if this session is not within a transaction.</dd>
</dl>
</li>
</ul>
<a name="deleteAllObjects-java.util.Collection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deleteAllObjects</h4>
<pre>void&nbsp;deleteAllObjects(<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>&nbsp;domainObjects)</pre>
<div class="block">PUBLIC:
delete all of the objects and all of their privately owned parts in the database.
The allows for a group of objects to be deleted as a unit.
The objects will be deleted through a single transactions.</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> - if an error occurs on the database,
these include constraint violations, security violations and general database errors.</dd>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/OptimisticLockException.html" title="class in org.eclipse.persistence.exceptions">OptimisticLockException</a></code> - if the object's descriptor is using optimistic locking and
the object has been updated or deleted by another user since it was last read.</dd>
</dl>
</li>
</ul>
<a name="deleteObject-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deleteObject</h4>
<pre><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;deleteObject(<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;domainObject)
throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a>,
<a href="../../../../org/eclipse/persistence/exceptions/OptimisticLockException.html" title="class in org.eclipse.persistence.exceptions">OptimisticLockException</a></pre>
<div class="block">PUBLIC:
Delete the object and all of its privately owned parts from the database.
The delete operation can be customized through using a delete query.</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>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/OptimisticLockException.html" title="class in org.eclipse.persistence.exceptions">OptimisticLockException</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/DeleteObjectQuery.html" title="class in org.eclipse.persistence.queries"><code>DeleteObjectQuery</code></a></dd>
</dl>
</li>
</ul>
<a name="insertObject-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>insertObject</h4>
<pre><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;insertObject(<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;domainObject)
throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></pre>
<div class="block">PUBLIC:
Insert the object and all of its privately owned parts into the database.
Insert should only be used if the application knows that the object is new,
otherwise writeObject should be used.
The insert operation can be customized through using an insert query.</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>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/InsertObjectQuery.html" title="class in org.eclipse.persistence.queries"><code>InsertObjectQuery</code></a>,
<a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#writeObject-java.lang.Object-"><code>writeObject(Object)</code></a></dd>
</dl>
</li>
</ul>
<a name="isInTransaction--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isInTransaction</h4>
<pre>boolean&nbsp;isInTransaction()</pre>
<div class="block">PUBLIC:
Return if the session is currently in the progress of a database transaction.
Because nested transactions are allowed check if the transaction mutex has been acquired.</div>
</li>
</ul>
<a name="setServerPlatform-org.eclipse.persistence.platform.server.ServerPlatform-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setServerPlatform</h4>
<pre>void&nbsp;setServerPlatform(<a href="../../../../org/eclipse/persistence/platform/server/ServerPlatform.html" title="interface in org.eclipse.persistence.platform.server">ServerPlatform</a>&nbsp;newServerPlatform)</pre>
<div class="block">PUBLIC:
Set the server platform defining server-specific behavior for the receiver (Oc4j, WLS, ... ).
This is not permitted after the session is logged in.
If the user wants a different external transaction controller class or
to provide some different behavior than the provided ServerPlatform(s), we recommend
subclassing org.eclipse.persistence.platform.server.ServerPlatformBase (or a subclass),
and overriding:
ServerPlatformBase.getExternalTransactionControllerClass()
ServerPlatformBase.registerMBean()
ServerPlatformBase.unregisterMBean()
for the desired behavior.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/platform/server/ServerPlatformBase.html" title="class in org.eclipse.persistence.platform.server"><code>ServerPlatformBase</code></a></dd>
</dl>
</li>
</ul>
<a name="getServerPlatform--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getServerPlatform</h4>
<pre><a href="../../../../org/eclipse/persistence/platform/server/ServerPlatform.html" title="interface in org.eclipse.persistence.platform.server">ServerPlatform</a>&nbsp;getServerPlatform()</pre>
<div class="block">PUBLIC:
Answer the server platform defining server-specific behavior for the receiver (Oc4j, WLS, ...).
If the user wants a different external transaction controller class or
to provide some different behavior than the provided ServerPlatform(s), we recommend
subclassing org.eclipse.persistence.platform.server.ServerPlatformBase (or a subclass),
and overriding:
ServerPlatformBase.getExternalTransactionControllerClass()
ServerPlatformBase.registerMBean()
ServerPlatformBase.unregisterMBean()
for the desired behavior.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/sessions/Session.html#getServerPlatform--">getServerPlatform</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="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/platform/server/ServerPlatformBase.html" title="class in org.eclipse.persistence.platform.server"><code>ServerPlatformBase</code></a></dd>
</dl>
</li>
</ul>
<a name="getSequencingControl--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSequencingControl</h4>
<pre><a href="../../../../org/eclipse/persistence/sequencing/SequencingControl.html" title="interface in org.eclipse.persistence.sequencing">SequencingControl</a>&nbsp;getSequencingControl()</pre>
<div class="block">PUBLIC:
Return SequencingControl which used for sequencing setup and
customization including management of sequencing preallocation.</div>
</li>
</ul>
<a name="login--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>login</h4>
<pre>void&nbsp;login()
throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></pre>
<div class="block">PUBLIC:
Connect to the database using the predefined login.
The login must have been assign when or after creating the session.</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>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#login-org.eclipse.persistence.sessions.Login-"><code>login(Login)</code></a></dd>
</dl>
</li>
</ul>
<a name="login-java.lang.String-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>login</h4>
<pre>void&nbsp;login(<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;userName,
<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;password)
throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></pre>
<div class="block">PUBLIC:
Connect to the database using the given user name and password.
The additional login information must have been preset in the session's login attribute.
This is the login that should be used if each user has their own id,
but all users share the same database configuration.
Under this login mode the password should not stay within the login definition after login.</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="login-org.eclipse.persistence.sessions.Login-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>login</h4>
<pre>void&nbsp;login(<a href="../../../../org/eclipse/persistence/sessions/Login.html" title="interface in org.eclipse.persistence.sessions">Login</a>&nbsp;login)
throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></pre>
<div class="block">PUBLIC:
Connect to the database using the given login.
The login may also the preset and the login() protocol called.
This is the login should only be used if each user has their own database configuration.
Under this login mode the password should not stay within the login definition after login.</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="logout--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>logout</h4>
<pre>void&nbsp;logout()
throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></pre>
<div class="block">PUBLIC:
Disconnect from the database.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/EclipseLinkException.html" title="class in org.eclipse.persistence.exceptions">EclipseLinkException</a></code> - if a transaction is active, you must rollback any active transaction before logout.</dd>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></code> - the database will also raise an error if their is an active transaction,
or a general error occurs.</dd>
</dl>
</li>
</ul>
<a name="refreshAndLockObject-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>refreshAndLockObject</h4>
<pre><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;refreshAndLockObject(<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;object)</pre>
<div class="block">PUBLIC:
Refresh the attributes of the object and of all of its private parts from the database.
The object will be pessimistically locked on the database for the duration of the transaction.
If the object is already locked this method will wait until the lock is released.
A no wait option is available through setting the lock mode.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#refreshAndLockObject-java.lang.Object-short-"><code>refreshAndLockObject(Object, short)</code></a></dd>
</dl>
</li>
</ul>
<a name="refreshAndLockObject-java.lang.Object-short-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>refreshAndLockObject</h4>
<pre><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;refreshAndLockObject(<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;object,
short&nbsp;lockMode)</pre>
<div class="block">PUBLIC:
Refresh the attributes of the object and of all of its private parts from the database.
The object will be pessimistically locked on the database for the duration of the transaction.
<p>Lock Modes: ObjectBuildingQuery.NO_LOCK, LOCK, LOCK_NOWAIT</div>
</li>
</ul>
<a name="rollbackTransaction--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rollbackTransaction</h4>
<pre>void&nbsp;rollbackTransaction()
throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a></pre>
<div class="block">PUBLIC:
Rollback the active database transaction.
This allows a group of database modification to be committed or rolled back as a unit.
All writes/deletes will be sent to the database be will not be visible to other users until commit.
Although databases do not allow nested transaction,
EclipseLink supports nesting through only committing to the database on the outer commit.</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> - if the database connection is lost or the rollback fails.</dd>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/ConcurrencyException.html" title="class in org.eclipse.persistence.exceptions">ConcurrencyException</a></code> - if this session is not within a transaction.</dd>
</dl>
</li>
</ul>
<a name="setExternalTransactionController-org.eclipse.persistence.sessions.ExternalTransactionController-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setExternalTransactionController</h4>
<pre>void&nbsp;setExternalTransactionController(<a href="../../../../org/eclipse/persistence/sessions/ExternalTransactionController.html" title="interface in org.eclipse.persistence.sessions">ExternalTransactionController</a>&nbsp;etc)</pre>
<div class="block">PUBLIC:
Used for JTS integration. If your application requires to have JTS control transactions instead of EclipseLink an
external transaction controller must be specified. EclipseLink provides JTS controllers for JTS 1.0 and Weblogic's JTS.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/eclipse/persistence/sessions/Session.html#setExternalTransactionController-org.eclipse.persistence.sessions.ExternalTransactionController-">setExternalTransactionController</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="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/transaction/JTATransactionController.html" title="class in org.eclipse.persistence.transaction"><code>JTATransactionController</code></a>,
<a href="../../../../org/eclipse/persistence/platform/server/CustomServerPlatform.html" title="class in org.eclipse.persistence.platform.server"><code>CustomServerPlatform</code></a></dd>
</dl>
</li>
</ul>
<a name="getCommandManager--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCommandManager</h4>
<pre><a href="../../../../org/eclipse/persistence/sessions/coordination/CommandManager.html" title="interface in org.eclipse.persistence.sessions.coordination">CommandManager</a>&nbsp;getCommandManager()</pre>
<div class="block">ADVANCED:
Return the CommandManager that allows this session to act as a
CommandProcessor and receive or propagate commands from/to the
EclipseLink cluster.
This can be set to enable cache synchronization in a clustered environment where
multiple servers in the cluster update the same database.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The CommandManager instance that controls the remote command
service for this session.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/sessions/coordination/CommandManager.html" title="interface in org.eclipse.persistence.sessions.coordination"><code>CommandManager</code></a></dd>
</dl>
</li>
</ul>
<a name="setCommandManager-org.eclipse.persistence.sessions.coordination.CommandManager-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCommandManager</h4>
<pre>void&nbsp;setCommandManager(<a href="../../../../org/eclipse/persistence/sessions/coordination/CommandManager.html" title="interface in org.eclipse.persistence.sessions.coordination">CommandManager</a>&nbsp;commandManager)</pre>
<div class="block">ADVANCED:
Set the CommandManager that allows this session to act as a
CommandProcessor and receive or propagate commands from/to the
EclipseLink cluster.
This can be used to enable cache synchronization in a clustered environment where
multiple servers in the cluster update the same database.
To enable cache synchronization you must also set, setShouldPropagateChanges to true.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>commandManager</code> - The CommandManager instance to control the remote command
service for this session.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#setShouldPropagateChanges-boolean-"><code>setShouldPropagateChanges(boolean)</code></a>,
<a href="../../../../org/eclipse/persistence/sessions/coordination/CommandManager.html" title="interface in org.eclipse.persistence.sessions.coordination"><code>CommandManager</code></a></dd>
</dl>
</li>
</ul>
<a name="setShouldPropagateChanges-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShouldPropagateChanges</h4>
<pre>void&nbsp;setShouldPropagateChanges(boolean&nbsp;choice)</pre>
<div class="block">ADVANCED:
Set if cache changes should be propagated to other sessions or applications
in a EclipseLink cluster through the Remote Command Manager mechanism.
This can be used to enable cache synchronization in a clustered environment where
multiple servers in the cluster update the same database.
In order for this to occur the CommandManager must be set.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>choice</code> - If true (and the CommandManager is set) then propagation will occur.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#setCommandManager-org.eclipse.persistence.sessions.coordination.CommandManager-"><code>setCommandManager(CommandManager)</code></a></dd>
</dl>
</li>
</ul>
<a name="shouldPropagateChanges--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldPropagateChanges</h4>
<pre>boolean&nbsp;shouldPropagateChanges()</pre>
<div class="block">ADVANCED:
Return whether changes should be propagated to other sessions or applications
in a EclipseLink cluster through the Remote Command Manager mechanism. In order for
this to occur the CommandManager must be set.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if propagation is set to occur, false if not.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#setCommandManager-org.eclipse.persistence.sessions.coordination.CommandManager-"><code>setCommandManager(CommandManager)</code></a></dd>
</dl>
</li>
</ul>
<a name="setLogin-org.eclipse.persistence.sessions.Login-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setLogin</h4>
<pre>void&nbsp;setLogin(<a href="../../../../org/eclipse/persistence/sessions/Login.html" title="interface in org.eclipse.persistence.sessions">Login</a>&nbsp;login)</pre>
<div class="block">PUBLIC:
Set the login.</div>
</li>
</ul>
<a name="setDatasourceLogin-org.eclipse.persistence.sessions.Login-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDatasourceLogin</h4>
<pre>void&nbsp;setDatasourceLogin(<a href="../../../../org/eclipse/persistence/sessions/Login.html" title="interface in org.eclipse.persistence.sessions">Login</a>&nbsp;login)</pre>
<div class="block">PUBLIC:
Set the login.</div>
</li>
</ul>
<a name="updateObject-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateObject</h4>
<pre><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;updateObject(<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;domainObject)
throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a>,
<a href="../../../../org/eclipse/persistence/exceptions/OptimisticLockException.html" title="class in org.eclipse.persistence.exceptions">OptimisticLockException</a></pre>
<div class="block">PUBLIC:
Update the object and all of its privately owned parts in the database.
Update should only be used if the application knows that the object is new,
otherwise writeObject should be used.
The update operation can be customized through using an update query.</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>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/OptimisticLockException.html" title="class in org.eclipse.persistence.exceptions">OptimisticLockException</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/UpdateObjectQuery.html" title="class in org.eclipse.persistence.queries"><code>UpdateObjectQuery</code></a>,
<a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#writeObject-java.lang.Object-"><code>writeObject(Object)</code></a></dd>
</dl>
</li>
</ul>
<a name="writeAllObjects-java.util.Collection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>writeAllObjects</h4>
<pre>void&nbsp;writeAllObjects(<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>&nbsp;domainObjects)</pre>
<div class="block">PUBLIC:
Write all of the objects and all of their privately owned parts in the database.
The allows for a group of objects to be committed as a unit.
The objects will be committed through a single transactions.</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> - if an error occurs on the database,
these include constraint violations, security violations and general database errors.</dd>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/OptimisticLockException.html" title="class in org.eclipse.persistence.exceptions">OptimisticLockException</a></code> - if the object's descriptor is using optimistic locking and
the object has been updated or deleted by another user since it was last read.</dd>
</dl>
</li>
</ul>
<a name="writeObject-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>writeObject</h4>
<pre><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;writeObject(<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;domainObject)
throws <a href="../../../../org/eclipse/persistence/exceptions/DatabaseException.html" title="class in org.eclipse.persistence.exceptions">DatabaseException</a>,
<a href="../../../../org/eclipse/persistence/exceptions/OptimisticLockException.html" title="class in org.eclipse.persistence.exceptions">OptimisticLockException</a></pre>
<div class="block">PUBLIC:
Write the object and all of its privately owned parts in the database.
Write will determine if an insert or an update should be done,
it may go to the database to determine this (by default will check the identity map).
The write operation can be customized through using an write query.</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>
<dd><code><a href="../../../../org/eclipse/persistence/exceptions/OptimisticLockException.html" title="class in org.eclipse.persistence.exceptions">OptimisticLockException</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/eclipse/persistence/queries/WriteObjectQuery.html" title="class in org.eclipse.persistence.queries"><code>WriteObjectQuery</code></a>,
<a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#insertObject-java.lang.Object-"><code>insertObject(Object)</code></a>,
<a href="../../../../org/eclipse/persistence/sessions/DatabaseSession.html#updateObject-java.lang.Object-"><code>updateObject(Object)</code></a></dd>
</dl>
</li>
</ul>
<a name="getDatabaseEventListener--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDatabaseEventListener</h4>
<pre><a href="../../../../org/eclipse/persistence/platform/database/events/DatabaseEventListener.html" title="interface in org.eclipse.persistence.platform.database.events">DatabaseEventListener</a>&nbsp;getDatabaseEventListener()</pre>
<div class="block">Return the database event listener, this allows database events to invalidate the cache.</div>
</li>
</ul>
<a name="setDatabaseEventListener-org.eclipse.persistence.platform.database.events.DatabaseEventListener-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>setDatabaseEventListener</h4>
<pre>void&nbsp;setDatabaseEventListener(<a href="../../../../org/eclipse/persistence/platform/database/events/DatabaseEventListener.html" title="interface in org.eclipse.persistence.platform.database.events">DatabaseEventListener</a>&nbsp;databaseEventListener)</pre>
<div class="block">PUBLIC:
Set the database event listener, this allows database events to invalidate the cache.</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/sessions/DatabaseRecord.html" title="class in org.eclipse.persistence.sessions"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/eclipse/persistence/sessions/DatasourceLogin.html" title="class in org.eclipse.persistence.sessions"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/eclipse/persistence/sessions/DatabaseSession.html" target="_top">Frames</a></li>
<li><a href="DatabaseSession.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&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>