blob: 1bc02f5bf5d3a84aad956b23fa1f1029f9c0dfbd [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:12 UTC 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ServerPlatform (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="ServerPlatform (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};
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/platform/server/ServerLog.html" title="class in org.eclipse.persistence.platform.server"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatformBase.html" title="class in org.eclipse.persistence.platform.server"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/eclipse/persistence/platform/server/ServerPlatform.html" target="_top">Frames</a></li>
<li><a href="ServerPlatform.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.platform.server</div>
<h2 title="Interface ServerPlatform" class="title">Interface ServerPlatform</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><a href="../../../../../org/eclipse/persistence/platform/server/CustomServerPlatform.html" title="class in org.eclipse.persistence.platform.server">CustomServerPlatform</a>, <a href="../../../../../org/eclipse/persistence/platform/server/glassfish/GlassfishPlatform.html" title="class in org.eclipse.persistence.platform.server.glassfish">GlassfishPlatform</a>, <a href="../../../../../org/eclipse/persistence/platform/server/jboss/JBossPlatform.html" title="class in org.eclipse.persistence.platform.server.jboss">JBossPlatform</a>, <a href="../../../../../org/eclipse/persistence/platform/server/JMXServerPlatformBase.html" title="class in org.eclipse.persistence.platform.server">JMXServerPlatformBase</a>, <a href="../../../../../org/eclipse/persistence/platform/server/NoServerPlatform.html" title="class in org.eclipse.persistence.platform.server">NoServerPlatform</a>, <a href="../../../../../org/eclipse/persistence/platform/server/oc4j/Oc4jPlatform.html" title="class in org.eclipse.persistence.platform.server.oc4j">Oc4jPlatform</a>, <a href="../../../../../org/eclipse/persistence/platform/server/sap/SAPNetWeaver_7_1_Platform.html" title="class in org.eclipse.persistence.platform.server.sap">SAPNetWeaver_7_1_Platform</a>, <a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatformBase.html" title="class in org.eclipse.persistence.platform.server">ServerPlatformBase</a>, <a href="../../../../../org/eclipse/persistence/platform/server/wls/WebLogic_10_Platform.html" title="class in org.eclipse.persistence.platform.server.wls">WebLogic_10_Platform</a>, <a href="../../../../../org/eclipse/persistence/platform/server/wls/WebLogic_12_Platform.html" title="class in org.eclipse.persistence.platform.server.wls">WebLogic_12_Platform</a>, <a href="../../../../../org/eclipse/persistence/platform/server/wls/WebLogic_9_Platform.html" title="class in org.eclipse.persistence.platform.server.wls">WebLogic_9_Platform</a>, <a href="../../../../../org/eclipse/persistence/platform/server/wls/WebLogicPlatform.html" title="class in org.eclipse.persistence.platform.server.wls">WebLogicPlatform</a>, <a href="../../../../../org/eclipse/persistence/platform/server/was/WebSphere_6_1_Platform.html" title="class in org.eclipse.persistence.platform.server.was">WebSphere_6_1_Platform</a>, <a href="../../../../../org/eclipse/persistence/platform/server/was/WebSphere_7_Platform.html" title="class in org.eclipse.persistence.platform.server.was">WebSphere_7_Platform</a>, <a href="../../../../../org/eclipse/persistence/platform/server/was/WebSphere_EJBEmbeddable_Platform.html" title="class in org.eclipse.persistence.platform.server.was">WebSphere_EJBEmbeddable_Platform</a>, <a href="../../../../../org/eclipse/persistence/platform/server/was/WebSphere_Liberty_Platform.html" title="class in org.eclipse.persistence.platform.server.was">WebSphere_Liberty_Platform</a>, <a href="../../../../../org/eclipse/persistence/platform/server/was/WebSpherePlatform.html" title="class in org.eclipse.persistence.platform.server.was">WebSpherePlatform</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">ServerPlatform</span></pre>
<div class="block">PUBLIC:
This is the interface describing the behavior for ServerPlatformBase, and any other
class that wants to provide behavior for a server.
This interface provides the behavior for
- Which external transaction controller to use
- Whether or not to enable JTA (external transaction control)
- How to register/unregister for runtime services (JMX/MBean)
- Whether or not to enable runtime services
- How to launch container Threads
Any subclasses of ServerPlatformBase created by the user must implement this interface.
public API:
String getServerNameAndVersion()</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>
</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/platform/server/ServerPlatform.html#clearStatementCache-java.sql.Connection-">clearStatementCache</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html?is-external=true" title="class or interface in java.sql">Connection</a>&nbsp;connection)</code>
<div class="block">INTERNAL:
Clears statement cache of the wrapper connection.</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/platform/server/ServerPlatform.html#disableJTA--">disableJTA</a></span>()</code>
<div class="block">INTERNAL: disableJTA(): Configure the receiver such that my external transaction controller class will
be ignored, and will NOT be used to populate DatabaseSession's external transaction controller class
at runtime.</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/platform/server/ServerPlatform.html#disableRuntimeServices--">disableRuntimeServices</a></span>()</code>
<div class="block">INTERNAL: disableRuntimeServices(): Configure the receiver such that no JMX/MBean will be registered
to provide runtime services for my DatabaseSession at runtime.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html" title="interface in org.eclipse.persistence.sessions">DatabaseSession</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#getDatabaseSession--">getDatabaseSession</a></span>()</code>
<div class="block">INTERNAL: getDatabaseSession(): Answer the instance of DatabaseSession the receiver is helping.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#getExternalTransactionControllerClass--">getExternalTransactionControllerClass</a></span>()</code>
<div class="block">INTERNAL: getExternalTransactionControllerClass(): Answer the class of external transaction controller to use
For this server platform.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#getJNDIConnectorLookupType--">getJNDIConnectorLookupType</a></span>()</code>
<div class="block">INTERNAL: Get JNDIConnector lookupType value for this platform.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#getModuleName--">getModuleName</a></span>()</code>
<div class="block">INTERNAL: getModuleName(): Answer the name of the module (jar name) that my session
is associated with.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>org.eclipse.persistence.internal.helper.JPAClassLoaderHolder</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#getNewTempClassLoader-jakarta.persistence.spi.PersistenceUnitInfo-">getNewTempClassLoader</a></span>(jakarta.persistence.spi.PersistenceUnitInfo&nbsp;puInfo)</code>
<div class="block">INTERNAL:
JIRA EJBTHREE-572 requires that we use the real classLoader in place of the getNewTempClassLoader().</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#getPartitionID--">getPartitionID</a></span>()</code>
<div class="block">INTERNAL: Get Partition ID.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/eclipse/persistence/logging/SessionLog.html" title="interface in org.eclipse.persistence.logging">SessionLog</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#getServerLog--">getServerLog</a></span>()</code>
<div class="block">INTERNAL: getServerLog(): Return the ServerLog for this platform
Return the default ServerLog in the base</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#getServerNameAndVersion--">getServerNameAndVersion</a></span>()</code>
<div class="block">PUBLIC: getServerNameAndVersion(): Talk to the relevant server class library, and get the server name
and version</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#getThreadPoolSize--">getThreadPoolSize</a></span>()</code>
<div class="block">Return the thread pool size.</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/platform/server/ServerPlatform.html#initializeExternalTransactionController--">initializeExternalTransactionController</a></span>()</code>
<div class="block">INTERNAL: initializeExternalTransactionController(): Populate the DatabaseSession's
external transaction controller with an instance of my transaction controller class.</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/platform/server/ServerPlatform.html#isJTAEnabled--">isJTAEnabled</a></span>()</code>
<div class="block">INTERNAL: isJTAEnabled(): Answer true if the DatabaseSession's external transaction controller class will
be populated with my transaction controller class at runtime.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#isRuntimeServicesEnabled--">isRuntimeServicesEnabled</a></span>()</code>
<div class="block">INTERNAL: isRuntimeServicesEnabled(): Answer true if the JMX/MBean providing runtime services for
the receiver's DatabaseSession will be deployed at runtime.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#isRuntimeServicesEnabledDefault--">isRuntimeServicesEnabledDefault</a></span>()</code>
<div class="block">INTERNAL:
isRuntimeServicesEnabledDefault(): Answer true if the JMX/MBean providing runtime services for
the receiver's DatabaseSession will be deployed at runtime.</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/platform/server/ServerPlatform.html#launchContainerRunnable-java.lang.Runnable-">launchContainerRunnable</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</a>&nbsp;runnable)</code>
<div class="block">INTERNAL: launchContainerRunnable(Runnable runnable): Use the container library to
start the provided Runnable.</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/platform/server/ServerPlatform.html#registerMBean--">registerMBean</a></span>()</code>
<div class="block">INTERNAL: registerMBean(): Create and deploy the JMX MBean to provide runtime services for my
databaseSession.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#setExternalTransactionControllerClass-java.lang.Class-">setExternalTransactionControllerClass</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;newClass)</code>
<div class="block">INTERNAL: setExternalTransactionControllerClass(Class newClass): Set the class of external
transaction controller to use in the DatabaseSession.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#setThreadPoolSize-int-">setThreadPoolSize</a></span>(int&nbsp;threadPoolSize)</code>
<div class="block">Set the thread pool size.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#shouldUseDriverManager--">shouldUseDriverManager</a></span>()</code>
<div class="block">INTERNAL: shouldUseDriverManager(): Indicates whether DriverManager should be used while connecting DefaultConnector.</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/platform/server/ServerPlatform.html#shutdown--">shutdown</a></span>()</code>
<div class="block">INTERNAL: perform any require shutdown tasks.</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/platform/server/ServerPlatform.html#unregisterMBean--">unregisterMBean</a></span>()</code>
<div class="block">INTERNAL: unregisterMBean(): Unregister the JMX MBean that was providing runtime services for my
databaseSession.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html?is-external=true" title="class or interface in java.sql">Connection</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#unwrapConnection-java.sql.Connection-">unwrapConnection</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html?is-external=true" title="class or interface in java.sql">Connection</a>&nbsp;connection)</code>
<div class="block">INTERNAL: This method is used to unwrap the oracle connection wrapped by
the application server.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#usesPartitions--">usesPartitions</a></span>()</code>
<div class="block">INTERNAL: Some servers may support partitioning</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#wasFailureCommunicationBased-java.sql.SQLException-org.eclipse.persistence.internal.databaseaccess.Accessor-org.eclipse.persistence.internal.sessions.AbstractSession-">wasFailureCommunicationBased</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</a>&nbsp;exception,
org.eclipse.persistence.internal.databaseaccess.Accessor&nbsp;connection,
org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;sessionForProfile)</code>
<div class="block">INTERNAL:
A call to this method will perform a platform based check on the connection and exception
error code to determine if the connection is still valid or if a communication error has occurred.</div>
</td>
</tr>
</table>
</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="getDatabaseSession--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDatabaseSession</h4>
<pre><a href="../../../../../org/eclipse/persistence/sessions/DatabaseSession.html" title="interface in org.eclipse.persistence.sessions">DatabaseSession</a>&nbsp;getDatabaseSession()</pre>
<div class="block">INTERNAL: getDatabaseSession(): Answer the instance of DatabaseSession the receiver is helping.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>DatabaseSession</dd>
</dl>
</li>
</ul>
<a name="getServerNameAndVersion--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getServerNameAndVersion</h4>
<pre><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;getServerNameAndVersion()</pre>
<div class="block">PUBLIC: getServerNameAndVersion(): Talk to the relevant server class library, and get the server name
and version</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>String serverNameAndVersion</dd>
</dl>
</li>
</ul>
<a name="getModuleName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getModuleName</h4>
<pre><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;getModuleName()</pre>
<div class="block">INTERNAL: getModuleName(): Answer the name of the module (jar name) that my session
is associated with.
Answer "unknown" if there is no module name available.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>String moduleName</dd>
</dl>
</li>
</ul>
<a name="getExternalTransactionControllerClass--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getExternalTransactionControllerClass</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;getExternalTransactionControllerClass()</pre>
<div class="block">INTERNAL: getExternalTransactionControllerClass(): Answer the class of external transaction controller to use
For this server platform. This is read-only.
If the subclasses of the ServerPlatformBase do not provide the Class desired, then
a new subclass should be created to return the desired class.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Class externalTransactionControllerClass</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/ServerPlatform.html#isJTAEnabled--"><code>isJTAEnabled()</code></a>,
<a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#disableJTA--"><code>disableJTA()</code></a>,
<a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#initializeExternalTransactionController--"><code>initializeExternalTransactionController()</code></a></dd>
</dl>
</li>
</ul>
<a name="setExternalTransactionControllerClass-java.lang.Class-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setExternalTransactionControllerClass</h4>
<pre>void&nbsp;setExternalTransactionControllerClass(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;newClass)</pre>
<div class="block">INTERNAL: setExternalTransactionControllerClass(Class newClass): Set the class of external
transaction controller to use in the DatabaseSession.
This is defined by the user via the sessions.xml.</div>
<dl>
<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/ServerPlatform.html#isJTAEnabled--"><code>isJTAEnabled()</code></a>,
<a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#disableJTA--"><code>disableJTA()</code></a>,
<a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#initializeExternalTransactionController--"><code>initializeExternalTransactionController()</code></a></dd>
</dl>
</li>
</ul>
<a name="initializeExternalTransactionController--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initializeExternalTransactionController</h4>
<pre>void&nbsp;initializeExternalTransactionController()</pre>
<div class="block">INTERNAL: initializeExternalTransactionController(): Populate the DatabaseSession's
external transaction controller with an instance of my transaction controller class.
To change the external transaction controller class, we recommend creating a subclass of
ServerPlatformBase, and overriding getExternalTransactionControllerClass()</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="isJTAEnabled--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isJTAEnabled</h4>
<pre>boolean&nbsp;isJTAEnabled()</pre>
<div class="block">INTERNAL: isJTAEnabled(): Answer true if the DatabaseSession's external transaction controller class will
be populated with my transaction controller class at runtime. If the transaction controller class is
overridden in the DatabaseSession, my transaction controller class will be ignored.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>boolean isJTAEnabled</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#getExternalTransactionControllerClass--"><code>getExternalTransactionControllerClass()</code></a>,
<a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#disableJTA--"><code>disableJTA()</code></a></dd>
</dl>
</li>
</ul>
<a name="isRuntimeServicesEnabledDefault--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isRuntimeServicesEnabledDefault</h4>
<pre>boolean&nbsp;isRuntimeServicesEnabledDefault()</pre>
<div class="block">INTERNAL:
isRuntimeServicesEnabledDefault(): Answer true if the JMX/MBean providing runtime services for
the receiver's DatabaseSession will be deployed at runtime.
Provide the default value for <a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#isRuntimeServicesEnabled--"><code>isRuntimeServicesEnabled()</code></a> for a
ServerPlatform. By default this is <code>false</code> but some platforms
can choose to have MBeans deployed by default.</div>
</li>
</ul>
<a name="disableJTA--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>disableJTA</h4>
<pre>void&nbsp;disableJTA()</pre>
<div class="block">INTERNAL: disableJTA(): Configure the receiver such that my external transaction controller class will
be ignored, and will NOT be used to populate DatabaseSession's external transaction controller class
at runtime.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#getExternalTransactionControllerClass--"><code>getExternalTransactionControllerClass()</code></a>,
<a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#isJTAEnabled--"><code>isJTAEnabled()</code></a></dd>
</dl>
</li>
</ul>
<a name="isRuntimeServicesEnabled--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isRuntimeServicesEnabled</h4>
<pre>boolean&nbsp;isRuntimeServicesEnabled()</pre>
<div class="block">INTERNAL: isRuntimeServicesEnabled(): Answer true if the JMX/MBean providing runtime services for
the receiver's DatabaseSession will be deployed at runtime.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>boolean isRuntimeServicesEnabled</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#disableRuntimeServices--"><code>disableRuntimeServices()</code></a></dd>
</dl>
</li>
</ul>
<a name="disableRuntimeServices--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>disableRuntimeServices</h4>
<pre>void&nbsp;disableRuntimeServices()</pre>
<div class="block">INTERNAL: disableRuntimeServices(): Configure the receiver such that no JMX/MBean will be registered
to provide runtime services for my DatabaseSession at runtime.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#isRuntimeServicesEnabled--"><code>isRuntimeServicesEnabled()</code></a></dd>
</dl>
</li>
</ul>
<a name="registerMBean--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>registerMBean</h4>
<pre>void&nbsp;registerMBean()</pre>
<div class="block">INTERNAL: registerMBean(): Create and deploy the JMX MBean to provide runtime services for my
databaseSession.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#isRuntimeServicesEnabled--"><code>isRuntimeServicesEnabled()</code></a>,
<a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#disableRuntimeServices--"><code>disableRuntimeServices()</code></a>,
<a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#unregisterMBean--"><code>unregisterMBean()</code></a></dd>
</dl>
</li>
</ul>
<a name="unregisterMBean--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unregisterMBean</h4>
<pre>void&nbsp;unregisterMBean()</pre>
<div class="block">INTERNAL: unregisterMBean(): Unregister the JMX MBean that was providing runtime services for my
databaseSession.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#isRuntimeServicesEnabled--"><code>isRuntimeServicesEnabled()</code></a>,
<a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#disableRuntimeServices--"><code>disableRuntimeServices()</code></a>,
<a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatform.html#registerMBean--"><code>registerMBean()</code></a></dd>
</dl>
</li>
</ul>
<a name="shutdown--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shutdown</h4>
<pre>void&nbsp;shutdown()</pre>
<div class="block">INTERNAL: perform any require shutdown tasks.</div>
</li>
</ul>
<a name="getThreadPoolSize--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getThreadPoolSize</h4>
<pre>int&nbsp;getThreadPoolSize()</pre>
<div class="block">Return the thread pool size.</div>
</li>
</ul>
<a name="setThreadPoolSize-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setThreadPoolSize</h4>
<pre>void&nbsp;setThreadPoolSize(int&nbsp;threadPoolSize)</pre>
<div class="block">Set the thread pool size.</div>
</li>
</ul>
<a name="unwrapConnection-java.sql.Connection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unwrapConnection</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html?is-external=true" title="class or interface in java.sql">Connection</a>&nbsp;unwrapConnection(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html?is-external=true" title="class or interface in java.sql">Connection</a>&nbsp;connection)</pre>
<div class="block">INTERNAL: This method is used to unwrap the oracle connection wrapped by
the application server. TopLink needs this unwrapped connection for certain
database vendor specific support.
This is added as a workaround for bug 4460996</div>
</li>
</ul>
<a name="launchContainerRunnable-java.lang.Runnable-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>launchContainerRunnable</h4>
<pre>void&nbsp;launchContainerRunnable(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</a>&nbsp;runnable)</pre>
<div class="block">INTERNAL: launchContainerRunnable(Runnable runnable): Use the container library to
start the provided Runnable.
Default behavior is to use Thread(runnable).start()</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>runnable:</code> - the instance of runnable to be "started"</dd>
</dl>
</li>
</ul>
<a name="getServerLog--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getServerLog</h4>
<pre><a href="../../../../../org/eclipse/persistence/logging/SessionLog.html" title="interface in org.eclipse.persistence.logging">SessionLog</a>&nbsp;getServerLog()</pre>
<div class="block">INTERNAL: getServerLog(): Return the ServerLog for this platform
Return the default ServerLog in the base</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>org.eclipse.persistence.logging.SessionLog</dd>
</dl>
</li>
</ul>
<a name="shouldUseDriverManager--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseDriverManager</h4>
<pre>boolean&nbsp;shouldUseDriverManager()</pre>
<div class="block">INTERNAL: shouldUseDriverManager(): Indicates whether DriverManager should be used while connecting DefaultConnector.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>boolean</dd>
</dl>
</li>
</ul>
<a name="wasFailureCommunicationBased-java.sql.SQLException-org.eclipse.persistence.internal.databaseaccess.Accessor-org.eclipse.persistence.internal.sessions.AbstractSession-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>wasFailureCommunicationBased</h4>
<pre>boolean&nbsp;wasFailureCommunicationBased(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</a>&nbsp;exception,
org.eclipse.persistence.internal.databaseaccess.Accessor&nbsp;connection,
org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;sessionForProfile)</pre>
<div class="block">INTERNAL:
A call to this method will perform a platform based check on the connection and exception
error code to determine if the connection is still valid or if a communication error has occurred.
In the case of the server platform the connection pool itself may be tested.
If a communication error has occurred then the query may be retried.
If this platform is unable to determine if the error was communication based it will return
false forcing the error to be thrown to the user.</div>
</li>
</ul>
<a name="getNewTempClassLoader-jakarta.persistence.spi.PersistenceUnitInfo-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNewTempClassLoader</h4>
<pre>org.eclipse.persistence.internal.helper.JPAClassLoaderHolder&nbsp;getNewTempClassLoader(jakarta.persistence.spi.PersistenceUnitInfo&nbsp;puInfo)</pre>
<div class="block">INTERNAL:
JIRA EJBTHREE-572 requires that we use the real classLoader in place of the getNewTempClassLoader().
The override code should stay in place until the UCL3 loader does not throw a NPE on loadClass()</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>puInfo</code> - - the persistence unit info</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>ClassLoaderHolder - a composite object containing the classLoader and the flag
that is true if the classLoader returned is temporary</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>JPAClassLoaderHolder</code></dd>
</dl>
</li>
</ul>
<a name="clearStatementCache-java.sql.Connection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearStatementCache</h4>
<pre>void&nbsp;clearStatementCache(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html?is-external=true" title="class or interface in java.sql">Connection</a>&nbsp;connection)</pre>
<div class="block">INTERNAL:
Clears statement cache of the wrapper connection.
Required by Oracle proxy authentication: currently connection statement cache
becomes invalid on switching to/from proxy session.
This method is called by OracleJDBC_10_1_0_2ProxyConnectionCustomizer
before opening proxy session and before closing it.</div>
</li>
</ul>
<a name="getJNDIConnectorLookupType--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getJNDIConnectorLookupType</h4>
<pre>int&nbsp;getJNDIConnectorLookupType()</pre>
<div class="block">INTERNAL: Get JNDIConnector lookupType value for this platform.</div>
</li>
</ul>
<a name="usesPartitions--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>usesPartitions</h4>
<pre>boolean&nbsp;usesPartitions()</pre>
<div class="block">INTERNAL: Some servers may support partitioning</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if server supports partitions, false otherwise</dd>
</dl>
</li>
</ul>
<a name="getPartitionID--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getPartitionID</h4>
<pre><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;getPartitionID()</pre>
<div class="block">INTERNAL: Get Partition ID.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>partition ID</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/platform/server/ServerLog.html" title="class in org.eclipse.persistence.platform.server"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/eclipse/persistence/platform/server/ServerPlatformBase.html" title="class in org.eclipse.persistence.platform.server"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/eclipse/persistence/platform/server/ServerPlatform.html" target="_top">Frames</a></li>
<li><a href="ServerPlatform.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>