Managing jobs and asynchronous commands' execution
Starting from jBPM 6, the platform features a new scheduler service (called Executor
), which lets you schedule, execute, and manage asynchronous jobs tasks. Executor can be used either as a general-purpose Java batch scheduling facility or as a service able to execute asynchronous process tasks (see Chapter 5, BPMN constructs, the Async task section for more details). The asset management feature, for instance, internally schedules different types of commands (to get an idea, open the Deploy | Jobs window, as shown in the following screenshot): CreateBranchCommand
, ListCommitsCommand
, BuildProjectCommand
, MavenDeployProjectCommand
, and so on.
The Executor service executes preconfigured Command
classes; a Command
is a Java class that executes a set of business statements running outside the jBPM process context and communicating with Executor through a set of interfaces (CommandContext
and ExecutionResults
), which enforce parameter passing...