Class AsyncEjbBatchThreadPoolService

  • All Implemented Interfaces:
    BatchService, BatchThreadPoolService

    public class AsyncEjbBatchThreadPoolService
    extends Object
    implements BatchThreadPoolService
    This is an implementation of a BatchThreadPoolService which uses an @Asynchronous EJB method to spawn new Threads. The main reason for doing this is to have properly setup JavaEE Threads even in JavaEE 6 environments where BatchEE is not deeply integrated in other ways. Activate this class in a batchee.properties files as
     BatchThreadPoolService=org.apache.batchee.tools.services.thread.AsyncEjbBatchThreadPoolService
     
    For some containers you might additionally need to enable the UserTransactionTransactionService for proper JTA transaction handling.
    • Constructor Detail

      • AsyncEjbBatchThreadPoolService

        public AsyncEjbBatchThreadPoolService()
    • Method Detail

      • executeTask

        public void executeTask​(Runnable work,
                                Object config)
        Description copied from interface: BatchThreadPoolService
        (Required) Runs the given task. A task is usually short lived
        Specified by:
        executeTask in interface BatchThreadPoolService
        Parameters:
        work - The task to execute
        config - Optional configuration to customize the execution. The Container always passes a null value. Typically used when other user plugins wish to use the ExecutorService to execute tasks.