org.camunda.bpm.engine.impl.jobexecutor
Class JobExecutor

java.lang.Object
  extended by org.camunda.bpm.engine.impl.jobexecutor.JobExecutor
Direct Known Subclasses:
RuntimeContainerJobExecutor, ThreadPoolJobExecutor

public abstract class JobExecutor
extends Object

Interface to the component responsible for performing background work (Jobs).

The JobExecutor is capable of dispatching to multiple process engines, ie. multiple process engines can share a single Thread Pool for performing Background Work.

In clustered situations, you can have multiple Job Executors running against the same queue + pending job list.

Author:
Daniel Meyer

Field Summary
protected  Command<AcquiredJobs> acquireJobsCmd
           
protected  AcquireJobsRunnable acquireJobsRunnable
           
protected  boolean isActive
           
protected  boolean isAutoActivate
           
protected  Thread jobAcquisitionThread
           
protected  String lockOwner
           
protected  int lockTimeInMillis
           
protected  int maxJobsPerAcquisition
           
protected  String name
           
protected  List<ProcessEngineImpl> processEngines
           
protected  RejectedJobsHandler rejectedJobsHandler
           
protected  int waitTimeInMillis
           
 
Constructor Summary
JobExecutor()
           
 
Method Summary
protected  void ensureCleanup()
           
protected  void ensureInitialization()
           
 void executeJobs(List<String> jobIds)
          Deprecated. 
abstract  void executeJobs(List<String> jobIds, ProcessEngineImpl processEngine)
           
 Command<AcquiredJobs> getAcquireJobsCmd()
           
 AcquireJobsRunnable getAcquireJobsRunnable()
           
 CommandExecutor getCommandExecutor()
          Deprecated. 
 String getLockOwner()
           
 int getLockTimeInMillis()
           
 int getMaxJobsPerAcquisition()
           
 String getName()
           
 List<ProcessEngineImpl> getProcessEngines()
           
 RejectedJobsHandler getRejectedJobsHandler()
           
 int getWaitTimeInMillis()
           
 boolean isActive()
           
 boolean isAutoActivate()
           
 void jobWasAdded()
           
 void registerProcessEngine(ProcessEngineImpl processEngine)
           
 void setAcquireJobsCmd(Command<AcquiredJobs> acquireJobsCmd)
           
 void setAutoActivate(boolean isAutoActivate)
           
 void setCommandExecutor(CommandExecutor commandExecutorTxRequired)
          Deprecated. 
 void setLockOwner(String lockOwner)
           
 void setLockTimeInMillis(int lockTimeInMillis)
           
 void setMaxJobsPerAcquisition(int maxJobsPerAcquisition)
           
 void setProcessEngines(List<ProcessEngineImpl> processEngines)
           
 void setRejectedJobsHandler(RejectedJobsHandler rejectedJobsHandler)
           
 void setWaitTimeInMillis(int waitTimeInMillis)
           
 void shutdown()
           
 void start()
           
protected abstract  void startExecutingJobs()
           
protected  void startJobAcquisitionThread()
           
protected abstract  void stopExecutingJobs()
           
protected  void stopJobAcquisitionThread()
           
 void unregisterProcessEngine(ProcessEngineImpl processEngine)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

name

protected String name

processEngines

protected List<ProcessEngineImpl> processEngines

acquireJobsCmd

protected Command<AcquiredJobs> acquireJobsCmd

acquireJobsRunnable

protected AcquireJobsRunnable acquireJobsRunnable

rejectedJobsHandler

protected RejectedJobsHandler rejectedJobsHandler

jobAcquisitionThread

protected Thread jobAcquisitionThread

isAutoActivate

protected boolean isAutoActivate

isActive

protected boolean isActive

maxJobsPerAcquisition

protected int maxJobsPerAcquisition

waitTimeInMillis

protected int waitTimeInMillis

lockOwner

protected String lockOwner

lockTimeInMillis

protected int lockTimeInMillis
Constructor Detail

JobExecutor

public JobExecutor()
Method Detail

start

public void start()

shutdown

public void shutdown()

ensureInitialization

protected void ensureInitialization()

ensureCleanup

protected void ensureCleanup()

jobWasAdded

public void jobWasAdded()

registerProcessEngine

public void registerProcessEngine(ProcessEngineImpl processEngine)

unregisterProcessEngine

public void unregisterProcessEngine(ProcessEngineImpl processEngine)

startExecutingJobs

protected abstract void startExecutingJobs()

stopExecutingJobs

protected abstract void stopExecutingJobs()

executeJobs

public abstract void executeJobs(List<String> jobIds,
                                 ProcessEngineImpl processEngine)

executeJobs

@Deprecated
public void executeJobs(List<String> jobIds)
Deprecated. 

Deprecated: use executeJobs(List, ProcessEngineImpl) instead

Parameters:
jobIds -

getProcessEngines

public List<ProcessEngineImpl> getProcessEngines()

getCommandExecutor

@Deprecated
public CommandExecutor getCommandExecutor()
Deprecated. 

Deprecated: use getProcessEngines() instead


setCommandExecutor

@Deprecated
public void setCommandExecutor(CommandExecutor commandExecutorTxRequired)
Deprecated. 

Deprecated: use registerProcessEngine(ProcessEngineImpl) instead

Parameters:
commandExecutorTxRequired -

getWaitTimeInMillis

public int getWaitTimeInMillis()

setWaitTimeInMillis

public void setWaitTimeInMillis(int waitTimeInMillis)

getLockTimeInMillis

public int getLockTimeInMillis()

setLockTimeInMillis

public void setLockTimeInMillis(int lockTimeInMillis)

getLockOwner

public String getLockOwner()

setLockOwner

public void setLockOwner(String lockOwner)

isAutoActivate

public boolean isAutoActivate()

setProcessEngines

public void setProcessEngines(List<ProcessEngineImpl> processEngines)

setAutoActivate

public void setAutoActivate(boolean isAutoActivate)

getMaxJobsPerAcquisition

public int getMaxJobsPerAcquisition()

setMaxJobsPerAcquisition

public void setMaxJobsPerAcquisition(int maxJobsPerAcquisition)

getName

public String getName()

getAcquireJobsCmd

public Command<AcquiredJobs> getAcquireJobsCmd()

setAcquireJobsCmd

public void setAcquireJobsCmd(Command<AcquiredJobs> acquireJobsCmd)

isActive

public boolean isActive()

getRejectedJobsHandler

public RejectedJobsHandler getRejectedJobsHandler()

setRejectedJobsHandler

public void setRejectedJobsHandler(RejectedJobsHandler rejectedJobsHandler)

startJobAcquisitionThread

protected void startJobAcquisitionThread()

stopJobAcquisitionThread

protected void stopJobAcquisitionThread()

getAcquireJobsRunnable

public AcquireJobsRunnable getAcquireJobsRunnable()


Copyright © 2015 camunda services GmbH. All rights reserved.