blob: 9c9f1fbb37d99f129d4637d974e91ebb619764e4 [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>
<title>EndpointHandler</title>
<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="EndpointHandler";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/openejb/core/mdb/EndpointFactory.html" title="class in org.apache.openejb.core.mdb"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/openejb/core/mdb/InboundRecovery.html" title="interface in org.apache.openejb.core.mdb"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/openejb/core/mdb/EndpointHandler.html" target="_top">Frames</a></li>
<li><a href="EndpointHandler.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.openejb.core.mdb</div>
<h2 title="Class EndpointHandler" class="title">Class EndpointHandler</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.apache.openejb.core.mdb.EndpointHandler</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd>java.lang.reflect.InvocationHandler, <a href="../../../../../javax/resource/spi/endpoint/MessageEndpoint.html" title="interface in javax.resource.spi.endpoint">MessageEndpoint</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">EndpointHandler</span>
extends java.lang.Object</pre>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../org/apache/openejb/core/mdb/BaseMdbContainer.html" title="interface in org.apache.openejb.core.mdb">BaseMdbContainer</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/openejb/core/mdb/EndpointHandler.html#container">container</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected java.lang.Object</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/openejb/core/mdb/EndpointHandler.html#instance">instance</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected java.lang.Boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/openejb/core/mdb/EndpointHandler.html#isAmq">isAmq</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected org.apache.openejb.core.mdb.State</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/openejb/core/mdb/EndpointHandler.html#state">state</a></span></code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/openejb/core/mdb/EndpointHandler.html#EndpointHandler-org.apache.openejb.core.mdb.BaseMdbContainer-org.apache.openejb.BeanContext-org.apache.openejb.core.mdb.MdbInstanceFactory-javax.transaction.xa.XAResource-">EndpointHandler</a></span>(<a href="../../../../../org/apache/openejb/core/mdb/BaseMdbContainer.html" title="interface in org.apache.openejb.core.mdb">BaseMdbContainer</a>&nbsp;container,
<a href="../../../../../org/apache/openejb/BeanContext.html" title="class in org.apache.openejb">BeanContext</a>&nbsp;deployment,
<a href="../../../../../org/apache/openejb/core/mdb/MdbInstanceFactory.html" title="class in org.apache.openejb.core.mdb">MdbInstanceFactory</a>&nbsp;instanceFactory,
javax.transaction.xa.XAResource&nbsp;xaResource)</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/openejb/core/mdb/EndpointHandler.html#afterDelivery--">afterDelivery</a></span>()</code>
<div class="block">This is called by a resource adapter after a message is delivered.</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/apache/openejb/core/mdb/EndpointHandler.html#beforeDelivery-java.lang.reflect.Method-">beforeDelivery</a></span>(java.lang.reflect.Method&nbsp;method)</code>
<div class="block">This is called by a resource adapter before a message is delivered.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>java.lang.Object</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/openejb/core/mdb/EndpointHandler.html#deliverMessage-java.lang.reflect.Method-java.lang.Object:A-">deliverMessage</a></span>(java.lang.reflect.Method&nbsp;method,
java.lang.Object[]&nbsp;args)</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>java.lang.Object</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/openejb/core/mdb/EndpointHandler.html#invoke-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-">invoke</a></span>(java.lang.Object&nbsp;proxy,
java.lang.reflect.Method&nbsp;method,
java.lang.Object[]&nbsp;args)</code>&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/openejb/core/mdb/EndpointHandler.html#recreateInstance-boolean-">recreateInstance</a></span>(boolean&nbsp;exceptionAlreadyThrown)</code>&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/openejb/core/mdb/EndpointHandler.html#release--">release</a></span>()</code>
<div class="block">This method may be called by the resource adapter to indicate that it
no longer needs a proxy endpoint instance.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="state">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>state</h4>
<pre>protected&nbsp;org.apache.openejb.core.mdb.State state</pre>
</li>
</ul>
<a name="isAmq">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAmq</h4>
<pre>protected volatile&nbsp;java.lang.Boolean isAmq</pre>
</li>
</ul>
<a name="instance">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>instance</h4>
<pre>protected&nbsp;java.lang.Object instance</pre>
</li>
</ul>
<a name="container">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>container</h4>
<pre>protected final&nbsp;<a href="../../../../../org/apache/openejb/core/mdb/BaseMdbContainer.html" title="interface in org.apache.openejb.core.mdb">BaseMdbContainer</a> container</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="EndpointHandler-org.apache.openejb.core.mdb.BaseMdbContainer-org.apache.openejb.BeanContext-org.apache.openejb.core.mdb.MdbInstanceFactory-javax.transaction.xa.XAResource-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>EndpointHandler</h4>
<pre>public&nbsp;EndpointHandler(<a href="../../../../../org/apache/openejb/core/mdb/BaseMdbContainer.html" title="interface in org.apache.openejb.core.mdb">BaseMdbContainer</a>&nbsp;container,
<a href="../../../../../org/apache/openejb/BeanContext.html" title="class in org.apache.openejb">BeanContext</a>&nbsp;deployment,
<a href="../../../../../org/apache/openejb/core/mdb/MdbInstanceFactory.html" title="class in org.apache.openejb.core.mdb">MdbInstanceFactory</a>&nbsp;instanceFactory,
javax.transaction.xa.XAResource&nbsp;xaResource)
throws <a href="../../../../../javax/resource/spi/UnavailableException.html" title="class in javax.resource.spi">UnavailableException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../javax/resource/spi/UnavailableException.html" title="class in javax.resource.spi">UnavailableException</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="beforeDelivery-java.lang.reflect.Method-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>beforeDelivery</h4>
<pre>public&nbsp;void&nbsp;beforeDelivery(java.lang.reflect.Method&nbsp;method)
throws <a href="../../../../../javax/resource/spi/ApplicationServerInternalException.html" title="class in javax.resource.spi">ApplicationServerInternalException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../javax/resource/spi/endpoint/MessageEndpoint.html#beforeDelivery-java.lang.reflect.Method-">MessageEndpoint</a></code></span></div>
<div class="block">This is called by a resource adapter before a message is delivered.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../javax/resource/spi/endpoint/MessageEndpoint.html#beforeDelivery-java.lang.reflect.Method-">beforeDelivery</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../javax/resource/spi/endpoint/MessageEndpoint.html" title="interface in javax.resource.spi.endpoint">MessageEndpoint</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>method</code> - description of a target method. This information about
the intended target method allows an application server to decide
whether to start a transaction during this method call, depending
on the transaction preferences of the target method.
The processing (by the application server) of the actual message
delivery method call on the endpoint must be independent of the
class loader associated with this descriptive method object.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../javax/resource/spi/ApplicationServerInternalException.html" title="class in javax.resource.spi">ApplicationServerInternalException</a></code> - indicates an error
condition in the application server.</dd>
</dl>
</li>
</ul>
<a name="recreateInstance-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>recreateInstance</h4>
<pre>protected&nbsp;void&nbsp;recreateInstance(boolean&nbsp;exceptionAlreadyThrown)
throws <a href="../../../../../javax/resource/spi/UnavailableException.html" title="class in javax.resource.spi">UnavailableException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../javax/resource/spi/UnavailableException.html" title="class in javax.resource.spi">UnavailableException</a></code></dd>
</dl>
</li>
</ul>
<a name="release--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>release</h4>
<pre>public&nbsp;void&nbsp;release()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../javax/resource/spi/endpoint/MessageEndpoint.html#release--">MessageEndpoint</a></code></span></div>
<div class="block">This method may be called by the resource adapter to indicate that it
no longer needs a proxy endpoint instance. This hint may be used by
the application server for endpoint pooling decisions.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../javax/resource/spi/endpoint/MessageEndpoint.html#release--">release</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../javax/resource/spi/endpoint/MessageEndpoint.html" title="interface in javax.resource.spi.endpoint">MessageEndpoint</a></code></dd>
</dl>
</li>
</ul>
<a name="invoke-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invoke</h4>
<pre>public&nbsp;java.lang.Object&nbsp;invoke(java.lang.Object&nbsp;proxy,
java.lang.reflect.Method&nbsp;method,
java.lang.Object[]&nbsp;args)
throws java.lang.Throwable</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>invoke</code>&nbsp;in interface&nbsp;<code>java.lang.reflect.InvocationHandler</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.Throwable</code></dd>
</dl>
</li>
</ul>
<a name="deliverMessage-java.lang.reflect.Method-java.lang.Object:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deliverMessage</h4>
<pre>public&nbsp;java.lang.Object&nbsp;deliverMessage(java.lang.reflect.Method&nbsp;method,
java.lang.Object[]&nbsp;args)
throws java.lang.Throwable</pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.Throwable</code></dd>
</dl>
</li>
</ul>
<a name="afterDelivery--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>afterDelivery</h4>
<pre>public&nbsp;void&nbsp;afterDelivery()
throws <a href="../../../../../javax/resource/spi/ApplicationServerInternalException.html" title="class in javax.resource.spi">ApplicationServerInternalException</a>,
<a href="../../../../../javax/resource/spi/UnavailableException.html" title="class in javax.resource.spi">UnavailableException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../javax/resource/spi/endpoint/MessageEndpoint.html#afterDelivery--">MessageEndpoint</a></code></span></div>
<div class="block">This is called by a resource adapter after a message is delivered.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../javax/resource/spi/endpoint/MessageEndpoint.html#afterDelivery--">afterDelivery</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../javax/resource/spi/endpoint/MessageEndpoint.html" title="interface in javax.resource.spi.endpoint">MessageEndpoint</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../javax/resource/spi/ApplicationServerInternalException.html" title="class in javax.resource.spi">ApplicationServerInternalException</a></code> - indicates an error
condition in the application server.</dd>
<dd><code><a href="../../../../../javax/resource/spi/UnavailableException.html" title="class in javax.resource.spi">UnavailableException</a></code> - indicates that the endpoint is not
available.</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>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/openejb/core/mdb/EndpointFactory.html" title="class in org.apache.openejb.core.mdb"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/openejb/core/mdb/InboundRecovery.html" title="interface in org.apache.openejb.core.mdb"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/openejb/core/mdb/EndpointHandler.html" target="_top">Frames</a></li>
<li><a href="EndpointHandler.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>