javax.enterprise.concurrent

## Class ManagedExecutors

- java.lang.Object
- - javax.enterprise.concurrent.ManagedExecutors

-     public class ManagedExecutors
      extends Object

  Utility methods for classes defined in this package.
  Since:
    1.0

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static boolean` | `isCurrentThreadShutdown()` Utility method for checking the `isShutdown()` value of the current thread if it is a `ManageableThread` created from `ManagedThreadFactory.newThread()` .
    `static <V> Callable<V>` | `managedTask(Callable<V> task, ManagedTaskListener taskListener)` Returns a `Callable` object that also implements `ManagedTask` interface so it can receive notification of lifecycle events with the provided `ManagedTaskListener` when the task is submitted to a `ManagedExecutorService` or a `ManagedScheduledExecutorService`.
    `static <V> Callable<V>` | `managedTask(Callable<V> task, Map<String,String> executionProperties, ManagedTaskListener taskListener)` Returns a `Callable` object that also implements `ManagedTask` interface so it can receive notification of lifecycle events with the provided `ManagedTaskListener` and to provide additional execution properties when the task is submitted to a `ManagedExecutorService` or a `ManagedScheduledExecutorService`.
    `static Runnable` | `managedTask(Runnable task, ManagedTaskListener taskListener)` Returns a `Runnable` object that also implements `ManagedTask` interface so it can receive notification of lifecycle events with the provided `ManagedTaskListener` when the task is submitted to a `ManagedExecutorService` or a `ManagedScheduledExecutorService`.
    `static Runnable` | `managedTask(Runnable task, Map<String,String> executionProperties, ManagedTaskListener taskListener)` Returns a `Runnable` object that also implements `ManagedTask` interface so it can receive notification of lifecycle events with the provided `ManagedTaskListener` and to provide additional execution properties when the task is submitted to a `ManagedExecutorService` or a `ManagedScheduledExecutorService`.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### isCurrentThreadShutdown

          public static boolean isCurrentThreadShutdown()

      Utility method for checking the `isShutdown()` value of the current thread if it is a `ManageableThread` created from `ManagedThreadFactory.newThread()` .
      Returns:
        Returns the `isShutdown()` value if the current thread is a `ManageableThread` created by `ManagedThreadFactory`, or false if the current thread is not a `ManageableThread`.

    - #### managedTask

          public static Runnable managedTask(Runnable task,
                             ManagedTaskListener taskListener)
                                      throws IllegalArgumentException

      Returns a `Runnable` object that also implements `ManagedTask` interface so it can receive notification of lifecycle events with the provided `ManagedTaskListener` when the task is submitted to a `ManagedExecutorService` or a `ManagedScheduledExecutorService`.

      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 with
        `taskListener` - (optional) the `ManagedTaskListener` to receive lifecycle events notification when the task is submitted. If `task` implements `ManagedTask`, and `taskListener` is not `null`, the `ManagedTaskListener` interface methods of the task will not be called.
      Returns:
        a Runnable object
      Throws:
        `IllegalArgumentException` - if `task` is `null`

    - #### managedTask

          public static Runnable managedTask(Runnable task,
                             Map<String,String> executionProperties,
                             ManagedTaskListener taskListener)
                                      throws IllegalArgumentException

      Returns a `Runnable` object that also implements `ManagedTask` interface so it can receive notification of lifecycle events with the provided `ManagedTaskListener` and to provide additional execution properties when the task is submitted to a `ManagedExecutorService` or a `ManagedScheduledExecutorService`.
      Parameters:
        `task` - the task to have the given ManagedTaskListener associated with
        `taskListener` - (optional) the `ManagedTaskListener` to receive lifecycle events notification when the task is submitted. If `task` implements `ManagedTask`, and `taskListener` is not `null`, the `ManagedTaskListener` interface methods of the task will not be called.
        `executionProperties` - (optional) execution properties to provide additional hints to `ManagedExecutorService` or `ManagedScheduledExecutorService` when the task is submitted. If `task` implements `ManagedTask` with non-empty execution properties, the `Runnable` returned will contain the union of the execution properties specified in the `task` and the `executionProperties` argument, with the latter taking precedence if the same property key is specified in both. After the method is called, further changes to the `Map` object will not be reflected in the `Runnable` returned by this method.
      Returns:
        a Runnable object
      Throws:
        `IllegalArgumentException` - if `task` is `null`

    - #### managedTask

          public static <V> Callable<V> managedTask(Callable<V> task,
                                    ManagedTaskListener taskListener)
                                         throws IllegalArgumentException

      Returns a `Callable` object that also implements `ManagedTask` interface so it can receive notification of lifecycle events with the provided `ManagedTaskListener` when the task is submitted to a `ManagedExecutorService` or a `ManagedScheduledExecutorService`.
      Parameters:
        `task` - the task to have the given ManagedTaskListener associated with
        `taskListener` - (optional) the `ManagedTaskListener` to receive lifecycle events notification when the task is submitted. If `task` implements `ManagedTask`, and `taskListener` is not `null`, the `ManagedTaskListener` interface methods of the task will not be called.
      Returns:
        a Callable object
      Throws:
        `IllegalArgumentException` - if `task` is `null`

    - #### managedTask

          public static <V> Callable<V> managedTask(Callable<V> task,
                                    Map<String,String> executionProperties,
                                    ManagedTaskListener taskListener)
                                         throws IllegalArgumentException

      Returns a `Callable` object that also implements `ManagedTask` interface so it can receive notification of lifecycle events with the provided `ManagedTaskListener` and to provide additional execution properties when the task is submitted to a `ManagedExecutorService` or a `ManagedScheduledExecutorService`.
      Parameters:
        `task` - the task to have the given ManagedTaskListener associated with
        `taskListener` - (optional) the `ManagedTaskListener` to receive lifecycle events notification when the task is submitted. If `task` implements `ManagedTask`, and `taskListener` is not `null`, the `ManagedTaskListener` interface methods of the task will not be called.
        `executionProperties` - (optional) execution properties to provide additional hints to `ManagedExecutorService` or `ManagedScheduledExecutorService` when the task is submitted. If `task` implements `ManagedTask` with non-empty execution properties, the `Runnable` returned will contain the union of the execution properties specified in the `task` and the `executionProperties` argument, with the latter taking precedence if the same property key is specified in both. After the method is called, further changes to the `Map` object will not be reflected in the `Callable` returned by this method.
      Returns:
        a Callable object
      Throws:
        `IllegalArgumentException` - if `task` is `null`

Copyright © 1996-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.