java.lang.Object
jakarta.enterprise.concurrent.ManagedExecutors
Utility methods for classes defined in this package.
- Since:
- 1.0
-
Method Summary
Modifier and TypeMethodDescriptionstatic boolean
Utility method for checking theisShutdown()
value of the current thread if it is aManageableThread
created fromManagedThreadFactory.newThread()
.static Runnable
managedTask
(Runnable task, ManagedTaskListener taskListener) Returns aRunnable
object that also implementsManagedTask
interface so it can receive notification of lifecycle events with the providedManagedTaskListener
when the task is submitted to aManagedExecutorService
or aManagedScheduledExecutorService
.static Runnable
managedTask
(Runnable task, Map<String, String> executionProperties, ManagedTaskListener taskListener) Returns aRunnable
object that also implementsManagedTask
interface so it can receive notification of lifecycle events with the providedManagedTaskListener
and to provide additional execution properties when the task is submitted to aManagedExecutorService
or aManagedScheduledExecutorService
.static <V> Callable
<V> managedTask
(Callable<V> task, ManagedTaskListener taskListener) Returns aCallable
object that also implementsManagedTask
interface so it can receive notification of lifecycle events with the providedManagedTaskListener
when the task is submitted to aManagedExecutorService
or aManagedScheduledExecutorService
.static <V> Callable
<V> managedTask
(Callable<V> task, Map<String, String> executionProperties, ManagedTaskListener taskListener) Returns aCallable
object that also implementsManagedTask
interface so it can receive notification of lifecycle events with the providedManagedTaskListener
and to provide additional execution properties when the task is submitted to aManagedExecutorService
or aManagedScheduledExecutorService
.
-
Method Details
-
isCurrentThreadShutdown
public static boolean isCurrentThreadShutdown()Utility method for checking theisShutdown()
value of the current thread if it is aManageableThread
created fromManagedThreadFactory.newThread()
.- Returns:
- Returns the
isShutdown()
value if the current thread is aManageableThread
created byManagedThreadFactory
, or false if the current thread is not aManageableThread
.
-
managedTask
public static Runnable managedTask(Runnable task, ManagedTaskListener taskListener) throws IllegalArgumentException Returns aRunnable
object that also implementsManagedTask
interface so it can receive notification of lifecycle events with the providedManagedTaskListener
when the task is submitted to aManagedExecutorService
or aManagedScheduledExecutorService
.Example:
Runnable task = ...; ManagedTaskListener myTaskListener = ...; ManagedExecutorService executor = ...; Runnable taskWithListener = ManagedExecutors.managedTask(task, myTaskListener); executor.submit(taskWithListener);
- Parameters:
task
- the task to have the given ManagedTaskListener associated withtaskListener
- (optional) theManagedTaskListener
to receive lifecycle events notification when the task is submitted. Iftask
implementsManagedTask
, andtaskListener
is notnull
, theManagedTaskListener
interface methods of the task will not be called.- Returns:
- a Runnable object
- Throws:
IllegalArgumentException
- iftask
isnull
-
managedTask
public static Runnable managedTask(Runnable task, Map<String, String> executionProperties, ManagedTaskListener taskListener) throws IllegalArgumentExceptionReturns aRunnable
object that also implementsManagedTask
interface so it can receive notification of lifecycle events with the providedManagedTaskListener
and to provide additional execution properties when the task is submitted to aManagedExecutorService
or aManagedScheduledExecutorService
.- Parameters:
task
- the task to have the given ManagedTaskListener associated withexecutionProperties
- (optional) execution properties to provide additional hints toManagedExecutorService
orManagedScheduledExecutorService
when the task is submitted. Iftask
implementsManagedTask
with non-empty execution properties, theRunnable
returned will contain the union of the execution properties specified in thetask
and theexecutionProperties
argument, with the latter taking precedence if the same property key is specified in both. After the method is called, further changes to theMap
object will not be reflected in theRunnable
returned by this method.taskListener
- (optional) theManagedTaskListener
to receive lifecycle events notification when the task is submitted. Iftask
implementsManagedTask
, andtaskListener
is notnull
, theManagedTaskListener
interface methods of the task will not be called.- Returns:
- a Runnable object
- Throws:
IllegalArgumentException
- iftask
isnull
-
managedTask
public static <V> Callable<V> managedTask(Callable<V> task, ManagedTaskListener taskListener) throws IllegalArgumentException Returns aCallable
object that also implementsManagedTask
interface so it can receive notification of lifecycle events with the providedManagedTaskListener
when the task is submitted to aManagedExecutorService
or aManagedScheduledExecutorService
.- Type Parameters:
V
- the return type of the Callable- Parameters:
task
- the task to have the given ManagedTaskListener associated withtaskListener
- (optional) theManagedTaskListener
to receive lifecycle events notification when the task is submitted. Iftask
implementsManagedTask
, andtaskListener
is notnull
, theManagedTaskListener
interface methods of the task will not be called.- Returns:
- a Callable object
- Throws:
IllegalArgumentException
- iftask
isnull
-
managedTask
public static <V> Callable<V> managedTask(Callable<V> task, Map<String, String> executionProperties, ManagedTaskListener taskListener) throws IllegalArgumentExceptionReturns aCallable
object that also implementsManagedTask
interface so it can receive notification of lifecycle events with the providedManagedTaskListener
and to provide additional execution properties when the task is submitted to aManagedExecutorService
or aManagedScheduledExecutorService
.- Type Parameters:
V
- the result type of the Callable- Parameters:
task
- the task to have the given ManagedTaskListener associated withexecutionProperties
- (optional) execution properties to provide additional hints toManagedExecutorService
orManagedScheduledExecutorService
when the task is submitted. Iftask
implementsManagedTask
with non-empty execution properties, theRunnable
returned will contain the union of the execution properties specified in thetask
and theexecutionProperties
argument, with the latter taking precedence if the same property key is specified in both. After the method is called, further changes to theMap
object will not be reflected in theCallable
returned by this method.taskListener
- (optional) theManagedTaskListener
to receive lifecycle events notification when the task is submitted. Iftask
implementsManagedTask
, andtaskListener
is notnull
, theManagedTaskListener
interface methods of the task will not be called.- Returns:
- a Callable object
- Throws:
IllegalArgumentException
- iftask
isnull
-