blob: b94d93b285985258e44b05869f848a5b97cc83cd [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>ManagedTask</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="ManagedTask";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":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>
<div class="subNav">
<ul class="navList">
<li><a href="../../../javax/enterprise/concurrent/ManagedScheduledExecutorService.html" title="interface in javax.enterprise.concurrent"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../javax/enterprise/concurrent/ManagedTaskListener.html" title="interface in javax.enterprise.concurrent"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?javax/enterprise/concurrent/ManagedTask.html" target="_top">Frames</a></li>
<li><a href="ManagedTask.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>Constr&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>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">javax.enterprise.concurrent</div>
<h2 title="Interface ManagedTask" class="title">Interface ManagedTask</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public interface <span class="typeNameLabel">ManagedTask</span></pre>
<div class="block">A task submitted to an <a href="../../../javax/enterprise/concurrent/ManagedExecutorService.html" title="interface in javax.enterprise.concurrent"><code>ManagedExecutorService</code></a> or
<a href="../../../javax/enterprise/concurrent/ManagedScheduledExecutorService.html" title="interface in javax.enterprise.concurrent"><code>ManagedScheduledExecutorService</code></a> can optionally implement this
interface to provide identifying information about the task, to provide
a <a href="../../../javax/enterprise/concurrent/ManagedTaskListener.html" title="interface in javax.enterprise.concurrent"><code>ManagedTaskListener</code></a> to get notification of lifecycle events of
the task, or to provide additional execution properties.
<p>
See also <a href="../../../javax/enterprise/concurrent/ManagedExecutors.html#managedTask-java.util.concurrent.Callable-java.util.Map-javax.enterprise.concurrent.ManagedTaskListener-"><code>ManagedExecutors.managedTask()</code></a>.
<p></div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.0</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/enterprise/concurrent/ManagedTask.html#IDENTITY_NAME">IDENTITY_NAME</a></span></code>
<div class="block">Execution property to be returned in <a href="../../../javax/enterprise/concurrent/ManagedTask.html#getExecutionProperties--"><code>getExecutionProperties()</code></a> or
<a href="../../../javax/enterprise/concurrent/ContextService.html#createContextualProxy-T-java.util.Map-java.lang.Class-"><code>ContextService.createContextualProxy()</code></a>
to provide a String that identifies the task.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/enterprise/concurrent/ManagedTask.html#LONGRUNNING_HINT">LONGRUNNING_HINT</a></span></code>
<div class="block">Execution property to be returned in <a href="../../../javax/enterprise/concurrent/ManagedTask.html#getExecutionProperties--"><code>getExecutionProperties()</code></a> or
<a href="../../../javax/enterprise/concurrent/ContextService.html#createContextualProxy-T-java.util.Map-java.lang.Class-"><code>ContextService.createContextualProxy()</code></a>
to provide hint about whether the task could take a long time to complete.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/enterprise/concurrent/ManagedTask.html#SUSPEND">SUSPEND</a></span></code>
<div class="block">Constant for the "SUSPEND" value of the TRANSACTION execution property.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/enterprise/concurrent/ManagedTask.html#TRANSACTION">TRANSACTION</a></span></code>
<div class="block">Execution property to be returned in <a href="../../../javax/enterprise/concurrent/ManagedTask.html#getExecutionProperties--"><code>getExecutionProperties()</code></a> or
<a href="../../../javax/enterprise/concurrent/ContextService.html#createContextualProxy-T-java.util.Map-java.lang.Class-"><code>ContextService.createContextualProxy()</code></a>
to inform the Java&trade; EE Product Provider under which transaction
should the task or proxy method of contextual proxy object be executed
in.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/enterprise/concurrent/ManagedTask.html#USE_TRANSACTION_OF_EXECUTION_THREAD">USE_TRANSACTION_OF_EXECUTION_THREAD</a></span></code>
<div class="block">Constant for the "USE_TRANSACTION_OF_EXECUTION_THREAD" value of the
TRANSACTION execution property.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="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>java.util.Map&lt;java.lang.String,java.lang.String&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/enterprise/concurrent/ManagedTask.html#getExecutionProperties--">getExecutionProperties</a></span>()</code>
<div class="block">Provides additional information to the <a href="../../../javax/enterprise/concurrent/ManagedExecutorService.html" title="interface in javax.enterprise.concurrent"><code>ManagedExecutorService</code></a> or
<a href="../../../javax/enterprise/concurrent/ManagedScheduledExecutorService.html" title="interface in javax.enterprise.concurrent"><code>ManagedScheduledExecutorService</code></a> when executing this task.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../../javax/enterprise/concurrent/ManagedTaskListener.html" title="interface in javax.enterprise.concurrent">ManagedTaskListener</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/enterprise/concurrent/ManagedTask.html#getManagedTaskListener--">getManagedTaskListener</a></span>()</code>
<div class="block">The <a href="../../../javax/enterprise/concurrent/ManagedTaskListener.html" title="interface in javax.enterprise.concurrent"><code>ManagedTaskListener</code></a> to receive notification of lifecycle
events of this task.</div>
</td>
</tr>
</table>
</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="LONGRUNNING_HINT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LONGRUNNING_HINT</h4>
<pre>static final&nbsp;java.lang.String LONGRUNNING_HINT</pre>
<div class="block">Execution property to be returned in <a href="../../../javax/enterprise/concurrent/ManagedTask.html#getExecutionProperties--"><code>getExecutionProperties()</code></a> or
<a href="../../../javax/enterprise/concurrent/ContextService.html#createContextualProxy-T-java.util.Map-java.lang.Class-"><code>ContextService.createContextualProxy()</code></a>
to provide hint about whether the task could take a long time to complete.
Java&trade; EE Product Providers may make use of this hint value to
decide how to allocate thread resource for running this task.
Valid values are "true" or "false".</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../constant-values.html#javax.enterprise.concurrent.ManagedTask.LONGRUNNING_HINT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="TRANSACTION">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TRANSACTION</h4>
<pre>static final&nbsp;java.lang.String TRANSACTION</pre>
<div class="block">Execution property to be returned in <a href="../../../javax/enterprise/concurrent/ManagedTask.html#getExecutionProperties--"><code>getExecutionProperties()</code></a> or
<a href="../../../javax/enterprise/concurrent/ContextService.html#createContextualProxy-T-java.util.Map-java.lang.Class-"><code>ContextService.createContextualProxy()</code></a>
to inform the Java&trade; EE Product Provider under which transaction
should the task or proxy method of contextual proxy object be executed
in.
Valid values are:
<p>
"SUSPEND" (the default if unspecified) - Any transaction that is currently
active on the thread will be suspended and a
<code>javax.transaction.UserTransaction</code> (accessible in the local
JNDI namespace as "java:comp/UserTransaction") will be available. The
original transaction, if any was active on the thread, will be resumed
when the task or contextual proxy object method returns.
<p>
"USE_TRANSACTION_OF_EXECUTION_THREAD" - The contextual proxy object method
will run within the transaction (if any) of the execution thread. A
<code>javax.transaction.UserTransaction</code> will only be available if it is
also available in the execution thread (for example, when the proxy method
is invoked from a Servlet or Bean Managed Transaction EJB). When there is
no existing transaction on the execution thread, such as when running tasks
that are submitted to a <a href="../../../javax/enterprise/concurrent/ManagedExecutorService.html" title="interface in javax.enterprise.concurrent"><code>ManagedExecutorService</code></a> or a
<a href="../../../javax/enterprise/concurrent/ManagedScheduledExecutorService.html" title="interface in javax.enterprise.concurrent"><code>ManagedScheduledExecutorService</code></a>, a
<code>javax.transaction.UserTransaction</code> will be available.
<P></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../constant-values.html#javax.enterprise.concurrent.ManagedTask.TRANSACTION">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="SUSPEND">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SUSPEND</h4>
<pre>static final&nbsp;java.lang.String SUSPEND</pre>
<div class="block">Constant for the "SUSPEND" value of the TRANSACTION execution property.
See <a href="../../../javax/enterprise/concurrent/ManagedTask.html#TRANSACTION"><code>TRANSACTION</code></a>.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../constant-values.html#javax.enterprise.concurrent.ManagedTask.SUSPEND">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="USE_TRANSACTION_OF_EXECUTION_THREAD">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>USE_TRANSACTION_OF_EXECUTION_THREAD</h4>
<pre>static final&nbsp;java.lang.String USE_TRANSACTION_OF_EXECUTION_THREAD</pre>
<div class="block">Constant for the "USE_TRANSACTION_OF_EXECUTION_THREAD" value of the
TRANSACTION execution property.
See <a href="../../../javax/enterprise/concurrent/ManagedTask.html#TRANSACTION"><code>TRANSACTION</code></a>.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../constant-values.html#javax.enterprise.concurrent.ManagedTask.USE_TRANSACTION_OF_EXECUTION_THREAD">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="IDENTITY_NAME">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>IDENTITY_NAME</h4>
<pre>static final&nbsp;java.lang.String IDENTITY_NAME</pre>
<div class="block">Execution property to be returned in <a href="../../../javax/enterprise/concurrent/ManagedTask.html#getExecutionProperties--"><code>getExecutionProperties()</code></a> or
<a href="../../../javax/enterprise/concurrent/ContextService.html#createContextualProxy-T-java.util.Map-java.lang.Class-"><code>ContextService.createContextualProxy()</code></a>
to provide a String that identifies the task. It may be the name or ID that
allow management facilities to inspect the task to determine the intent
of the task and its state. Implementations should not depend upon
any thread execution context and should typically return only
readily-available instance data to identify the task.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../constant-values.html#javax.enterprise.concurrent.ManagedTask.IDENTITY_NAME">Constant Field Values</a></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="getManagedTaskListener--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getManagedTaskListener</h4>
<pre><a href="../../../javax/enterprise/concurrent/ManagedTaskListener.html" title="interface in javax.enterprise.concurrent">ManagedTaskListener</a>&nbsp;getManagedTaskListener()</pre>
<div class="block">The <a href="../../../javax/enterprise/concurrent/ManagedTaskListener.html" title="interface in javax.enterprise.concurrent"><code>ManagedTaskListener</code></a> to receive notification of lifecycle
events of this task.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The <a href="../../../javax/enterprise/concurrent/ManagedTaskListener.html" title="interface in javax.enterprise.concurrent"><code>ManagedTaskListener</code></a> to receive notification of
lifecycle events of this task, or null if it is not necessary to get
notified of such events.</dd>
</dl>
</li>
</ul>
<a name="getExecutionProperties--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getExecutionProperties</h4>
<pre>java.util.Map&lt;java.lang.String,java.lang.String&gt;&nbsp;getExecutionProperties()</pre>
<div class="block">Provides additional information to the <a href="../../../javax/enterprise/concurrent/ManagedExecutorService.html" title="interface in javax.enterprise.concurrent"><code>ManagedExecutorService</code></a> or
<a href="../../../javax/enterprise/concurrent/ManagedScheduledExecutorService.html" title="interface in javax.enterprise.concurrent"><code>ManagedScheduledExecutorService</code></a> when executing this task.<p>
Some standard property keys are defined in this class.
Custom property keys may be defined but must not begin with
"javax.enterprise.concurrent.".</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A Map&lt;String, String&gt; containing additional execution properties, or
null if no additional information is provided for this task.</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="../../../javax/enterprise/concurrent/ManagedScheduledExecutorService.html" title="interface in javax.enterprise.concurrent"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../javax/enterprise/concurrent/ManagedTaskListener.html" title="interface in javax.enterprise.concurrent"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?javax/enterprise/concurrent/ManagedTask.html" target="_top">Frames</a></li>
<li><a href="ManagedTask.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>Constr&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>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 ======= -->
</body>
</html>