域名网站怎么做的廊坊关键词优化平台
camunda工作流引擎是一个开放的架构,除了流程引擎默认提供的功能外,开发者可以通过流程插件机制,对流程引擎功能进行扩展。即流程引擎插件是流程引擎配置的扩展。插件必须提供 ProcessEnginePlugin 接口的实现。
下面以全局任务事件监听器为例说明插件如何使用:
流程引擎支持定义两种类型的事件监听器:任务事件监听器Task Event Listener和执行事件监听器Execution Event Listener。任务事件监听器允许对任务事件做出反应(任务被创建、分配、完成)。执行监听器允许对图表中执行过程中触发的事件做出反应:活动已开始、结束和正在进行转换。
除了在 BPMN 2.0 XML 中显式配置的执行和任务侦听器之外,流程应用程序 API 支持定义全局 ExecutionListener 和全局 TaskListener,它们会收到有关流程应用程序部署的流程中发生的所有事件的通知:
@ProcessApplication
public class InvoiceProcessApplication extends ServletProcessApplication {public TaskListener getTaskListener() {return new TaskListener() {public void notify(DelegateTask delegateTask) {// handle all Task Events from Invoice Process}};}public ExecutionListener getExecutionListener() {return new ExecutionListener() {public void notify(DelegateExecution execution) throws Exception {// handle all Execution Events from Invoice Process}};}
}
要使用全局流程应用事件监听器,您需要激活相应的流程引擎插件:
<process-engine name="default">...<plugins><plugin><class>org.camunda.bpm.application.impl.event.ProcessApplicationEventListenerPlugin</class></plugin></plugins>
</process-engine>
camunda流程平台的插件机制是一个很强大的功能,在实际业务中,有很多需求都可以使用插件实现,比如:
- LDAP 身份服务插件
- 管理员授权插件
- 流程应用程序事件监听器插件
- 邮件、短信发送插件
- 任务办理预警、超时提醒插件