Class SpringJobExecutor

java.lang.Object
org.camunda.bpm.engine.impl.jobexecutor.JobExecutor
org.camunda.bpm.engine.spring.components.jobexecutor.SpringJobExecutor

public class SpringJobExecutor extends org.camunda.bpm.engine.impl.jobexecutor.JobExecutor

This is a spring based implementation of the JobExecutor using spring abstraction TaskExecutor for performing background task execution.

The idea behind this implementation is to externalize the configuration of the task executor, so it can leverage to Application servers controller thread pools, for example using the commonj API. The use of unmanaged thread in application servers is discouraged by the Java EE spec.

Author:
Pablo Ganga
  • Field Summary

    Fields inherited from class org.camunda.bpm.engine.impl.jobexecutor.JobExecutor

    acquireJobsCmdFactory, acquireJobsRunnable, backoffDecreaseThreshold, backoffTimeInMillis, isActive, isAutoActivate, jobAcquisitionThread, lockOwner, lockTimeInMillis, maxBackoff, maxJobsPerAcquisition, maxWait, name, processEngines, rejectedJobsHandler, waitIncreaseFactor, waitTimeInMillis
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    executeJobs(List<String> jobIds, org.camunda.bpm.engine.impl.ProcessEngineImpl processEngine)
     
    org.springframework.core.task.TaskExecutor
     
    void
    setTaskExecutor(org.springframework.core.task.TaskExecutor taskExecutor)
    Required spring injected TaskExecutor} implementation that will be used to execute runnable jobs.
    protected void
     
    protected void
     

    Methods inherited from class org.camunda.bpm.engine.impl.jobexecutor.JobExecutor

    engineIterator, ensureCleanup, ensureInitialization, executeJobs, getAcquireJobsCmd, getAcquireJobsCmdFactory, getAcquireJobsRunnable, getBackoffDecreaseThreshold, getBackoffTimeInMillis, getCommandExecutor, getExecuteJobsRunnable, getLockOwner, getLockTimeInMillis, getMaxBackoff, getMaxJobsPerAcquisition, getMaxWait, getName, getProcessEngines, getRejectedJobsHandler, getWaitIncreaseFactor, getWaitTimeInMillis, hasRegisteredEngine, isActive, isAutoActivate, jobWasAdded, logAcquiredJobs, logAcquisitionAttempt, logAcquisitionFailureJobs, logRejectedExecution, registerProcessEngine, setAcquireJobsCmdFactory, setAutoActivate, setBackoffDecreaseThreshold, setBackoffTimeInMillis, setCommandExecutor, setLockOwner, setLockTimeInMillis, setMaxBackoff, setMaxJobsPerAcquisition, setMaxWait, setProcessEngines, setRejectedJobsHandler, setWaitIncreaseFactor, setWaitTimeInMillis, shutdown, start, startJobAcquisitionThread, stopJobAcquisitionThread, unregisterProcessEngine

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • SpringJobExecutor

      public SpringJobExecutor()
  • Method Details

    • getTaskExecutor

      public org.springframework.core.task.TaskExecutor getTaskExecutor()
    • setTaskExecutor

      public void setTaskExecutor(org.springframework.core.task.TaskExecutor taskExecutor)
      Required spring injected TaskExecutor} implementation that will be used to execute runnable jobs.
      Parameters:
      taskExecutor -
    • executeJobs

      public void executeJobs(List<String> jobIds, org.camunda.bpm.engine.impl.ProcessEngineImpl processEngine)
      Specified by:
      executeJobs in class org.camunda.bpm.engine.impl.jobexecutor.JobExecutor
    • startExecutingJobs

      protected void startExecutingJobs()
      Specified by:
      startExecutingJobs in class org.camunda.bpm.engine.impl.jobexecutor.JobExecutor
    • stopExecutingJobs

      protected void stopExecutingJobs()
      Specified by:
      stopExecutingJobs in class org.camunda.bpm.engine.impl.jobexecutor.JobExecutor