流程引擎UML
2019-08-21 13:20:47 0 举报
流程引擎源码剖析
作者其他创作
大纲/内容
ActivityFinishListener
IProcessInstanceService
IWorkItemService
单一分支
AbstractProcessListener
onApplicationEvent(ApplicationContextEvent event) processStart(ProcessStartEvent event)processEnd(ProcessFinishEvent event)activityCreate(ActivityCreateEvent event)activityStart(ActivityStartEvent event)activityEnd(ActivityFinishEvent event)
ProcessInstanceService
final ProcessEngine processEngineProcessInstance ProcessInstanceService(ProcessEngine processEngine)// 流程启动前触发事件//创建流程实例createProcess(long processInstId) startProcess(long processInstId)span style=\"font-size: inherit;\
ApplicationContextEvent
ApplicationContextEvent(ApplicationContext source)
根据分支策略不同,创建环节实例,发布开始环节事件
ProcessFinishEvent
ProcessFinishEvent(ProcessEngine processEngine)
ActivityCreateEvent
ActivityInst activityInstActivityCreateEvent(ProcessEngine processEngine)
ActivityStartListener
activityStart(ActivityStartEvent event) {//1.人工环节//处理工作项相关//环节触发事件//2.子流程创建子流程实例。。。//发布流程结束事件(人工环节除外,需要手动关闭)}
ProcessFinishListener
processEnd(ProcessFinishEvent event){//执行流程完成后触发事件// 判断当前流程是否为子流程。//是子流程且是同步策略,则发布环节结束事件// 异步子流程,不再需要发布结束事件}
ActivityStartEvent
ActivityInst activityInstActivityElement activityXmlActivityStartEvent(ProcessEngine processEngine)
ProcessStartListener
多路分支
ProcessStartEvent
ProcessStartEvent(ProcessEngine processEngine)
ProcessEngine
IProcessDefineService processDefineService; IProcessInstanceService processInstanceService; IActivityInstService activityInstService; IFreeFlowService freeFlowService; IWorkItemService workItemService; IWIConsignationService consignationService; ApplicationContext applicationContext; TransactionTemplate transactionTemplate; TransactionTemplate globalTransactionTemplate; Configuration configuration; // ScriptEngine Manager ScriptEngineManager scriptEngineManager; @SuppressWarnings(\"rawtypes\
IProcessDefineService
全部分支
AbstractFlowEvent
ProcessEngine processEngineProcessInstance processInstanceProcessElement processElement;ActivityElement preActivityXml;IProcessInstanceRepository procInstRepIActivityInstRepository actInstRepIWorkItemRepository workItemRep
实现
继承
关联
ProcessDefineParser
//解析XML//解析环节,解析轨迹,解析连线。。。//封装在ProcessElementProcessElement createProcessXml(String xml)
用户创建流程
IActivityInstService
ActivityCreateListener
FlowService
FlowServiceImpl
ProcessEngineBuilder
ProcessEngine processEngine
//初始化创建引擎ProcessEngine buildProcessEngine()
ActivityFinishEvent
ActivityInst activityInst; ActivityFinishEvent(ProcessEngine processEngine)
ActivityInstService
聚合
ApplicationListeneronApplicationEvent(E event)
0 条评论
下一页