DefaultManagedTaskExecutor
を推奨 @DeprecatedSE public class WorkManagerTaskExecutor extends JndiLocatorSupport implements AsyncListenableTaskExecutor, SchedulingTaskExecutor, WorkManagerSE, InitializingBean
WorkManager
SE インターフェースを実装します。これは、参照として、または JNDI 名を介して指定する必要があります。これは、Spring コンテキストで CommonJ WorkManager を設定するための中心的な便利なクラスです。
また、CommonJ WorkManager インターフェース自体を実装し、すべての呼び出しをターゲット WorkManager に委譲します。呼び出し元は、Spring TaskExecutor インターフェースまたは CommonJ WorkManager インターフェースを介してこのエグゼキューターと通信するかどうかを選択できます。
CommonJ WorkManager は通常、サーバーの管理コンソールで定義されているように、アプリケーションサーバーの JNDI 環境から取得されます。
メモ: WebLogic および WebSphere の次の EE 7 準拠バージョンでは、Java EE 7 での JSR-236 サポートに従って、DefaultManagedTaskExecutor
が推奨されます。
CONTAINER_PREFIX
logger
TIMEOUT_IMMEDIATE, TIMEOUT_INDEFINITE
IMMEDIATESE, INDEFINITESE
コンストラクターと説明 |
---|
WorkManagerTaskExecutor() 使用すべきではありません。 |
修飾子と型 | メソッドと説明 |
---|---|
void | afterPropertiesSet() 使用すべきではありません。 |
void | execute(RunnableSE task) 使用すべきではありません。 指定された task を実行します。 |
void | execute(RunnableSE task, long startTimeout) 使用すべきではありません。 指定された task を実行します。 |
WorkItemSE | schedule(WorkSE work) 使用すべきではありません。 |
WorkItemSE | schedule(WorkSE work, WorkListenerSE workListener) 使用すべきではありません。 |
void | setTaskDecorator(TaskDecorator taskDecorator) 使用すべきではありません。 実行しようとしている Runnable SE に適用するカスタム TaskDecorator を指定します。 |
void | setWorkListener(WorkListenerSE workListener) 使用すべきではありません。 適用する CommonJ WorkListener を指定します(ある場合)。 |
void | setWorkManager(WorkManagerSE workManager) 使用すべきではありません。 委譲先の CommonJ WorkManager を指定します。 |
void | setWorkManagerName(StringSE workManagerName) 使用すべきではありません。 CommonJ WorkManager の JNDI 名を設定します。 |
<T> FutureSE<T> | submit(CallableSE<T> task) 使用すべきではありません。 Callable タスクを送信して実行し、そのタスクを表す Future を受け取ります。 |
FutureSE<?> | submit(RunnableSE task) 使用すべきではありません。 実行可能な Runnable タスクを送信し、そのタスクを表す Future を受け取ります。 |
<T> ListenableFuture<T> | submitListenable(CallableSE<T> task) 使用すべきではありません。 Callable タスクを実行のために送信し、そのタスクを表す ListenableFuture を受け取ります。 |
ListenableFuture<?> | submitListenable(RunnableSE task) 使用すべきではありません。 Runnable タスクを実行のために送信し、そのタスクを表す ListenableFuture を受け取ります。 |
boolean | waitForAll(CollectionSE workItems, long timeout) 使用すべきではありません。 |
CollectionSE | waitForAny(CollectionSE workItems, long timeout) 使用すべきではありません。 |
convertJndiName, isResourceRef, lookup, lookup, setResourceRef
getJndiEnvironment, getJndiTemplate, setJndiEnvironment, setJndiTemplate
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
prefersShortLivedTasks
public void setWorkManager(WorkManagerSE workManager)
または、ターゲット WorkManager の JNDI 名を指定することもできます。
public void setWorkManagerName(StringSE workManagerName)
これは、完全修飾 JNDI 名、または "resourceRef" が "true" に設定されている場合は現在の環境命名コンテキストに相対的な JNDI 名のいずれかになります。
public void setWorkListener(WorkListenerSE workListener)
この共有 WorkListener インスタンスは、この TaskExecutor のすべての execute(java.lang.Runnable)
呼び出しによって WorkManager に渡されます。
public void setTaskDecorator(TaskDecorator taskDecorator)
Runnable
SE に適用するカスタム TaskDecorator
を指定します。 このようなデコレータは、必ずしもユーザー提供の Runnable
/Callable
に適用されるのではなく、実際の実行コールバック(ユーザー提供のタスクのラッパーである可能性があります)に適用されることに注意してください。
主な使用例は、タスクの呼び出しの周囲に実行コンテキストを設定するか、タスク実行の監視 / 統計を提供することです。
public void afterPropertiesSet() throws NamingExceptionSE
InitializingBean
BeanFactoryAware
、ApplicationContextAware
などを満たした後、包含 BeanFactory
によって呼び出されます。このメソッドにより、Bean インスタンスは、すべての Bean プロパティが設定されたときに、その全体的な構成の検証と最終的な初期化を実行できます。
InitializingBean
の afterPropertiesSet
NamingExceptionSE
public void execute(RunnableSE task)
TaskExecutor
task
を実行します。実装が非同期実行戦略を使用している場合、呼び出しはすぐに戻るか、同期実行の場合はブロックする可能性があります。
ExecutorSE
の executeSE
TaskExecutor
の execute
task
- 実行する Runnable
(非 null
)public void execute(RunnableSE task, long startTimeout)
AsyncTaskExecutor
task
を実行します。AsyncTaskExecutor
の execute
task
- 実行する Runnable
(非 null
)startTimeout
- タスクが開始される予定の期間(ミリ秒)。これはエグゼキューターへのヒントとして意図されており、即時タスクの優先処理を可能にします。一般的な値は AsyncTaskExecutor.TIMEOUT_IMMEDIATE
または AsyncTaskExecutor.TIMEOUT_INDEFINITE
(TaskExecutor.execute(Runnable)
で使用されるデフォルト)です。public FutureSE<?> submit(RunnableSE task)
AsyncTaskExecutor
null
の結果を返します。AsyncTaskExecutor
の submit
task
- 実行する Runnable
(非 null
)public <T> FutureSE<T> submit(CallableSE<T> task)
AsyncTaskExecutor
AsyncTaskExecutor
の submit
task
- 実行する Callable
(非 null
)public ListenableFuture<?> submitListenable(RunnableSE task)
AsyncListenableTaskExecutor
Runnable
タスクを実行のために送信し、そのタスクを表す ListenableFuture
を受け取ります。Future は完了時に null
の結果を返します。AsyncListenableTaskExecutor
の submitListenable
task
- 実行する Runnable
(非 null
)ListenableFuture
public <T> ListenableFuture<T> submitListenable(CallableSE<T> task)
AsyncListenableTaskExecutor
Callable
タスクを実行のために送信し、そのタスクを表す ListenableFuture
を受け取ります。Future は、完了時に Callable の結果を返します。AsyncListenableTaskExecutor
の submitListenable
task
- 実行する Callable
(非 null
)ListenableFuture
public WorkItemSE schedule(WorkSE work) throws WorkExceptionSE, IllegalArgumentExceptionSE
WorkManagerSE
の scheduleSE
WorkExceptionSE
IllegalArgumentExceptionSE
public WorkItemSE schedule(WorkSE work, WorkListenerSE workListener) throws WorkExceptionSE
WorkManagerSE
の scheduleSE
WorkExceptionSE
public boolean waitForAll(CollectionSE workItems, long timeout) throws InterruptedExceptionSE
WorkManagerSE
の waitForAllSE
InterruptedExceptionSE
public CollectionSE waitForAny(CollectionSE workItems, long timeout) throws InterruptedExceptionSE
WorkManagerSE
の waitForAnySE
InterruptedExceptionSE