JBPM源码分析(三)---ExecutionServiceImpl类

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

ExecutionServiceImpl是JBPM的核心类,通过它用户可以启动工作流、使工作流进入下一个节点等等。

一、InvocationLog startProcessInstance(Long definitionId, Map variables,

String transitionName)

功能:启动一个工作流示例。

1) 根据definitionId得到工作流定义并初始化一个流程实例;

2) 得到示例的根令牌,并在令牌中记录InvocationLog;

3) 流程实例持久化;

4) 初始化执行上下文;

5) 假如根令牌分配了actor,则将actor存储在上下文中;

6) 触发PROCESS_START事件;

7) 找到开始状态的转换,让其接收令牌。

二、InvocationLog endOfState(Long tokenId, Map variables,

String transitionName)

功能:使工作流进入下一个状态。

1) 根据tokenId从数据库得到令牌;

2) 检查令牌是否满足认证要求;

3) 创建记录InvocationLog;

4) 创建运行上下文,并初始化上下文变量;

5) 触发STATE_LEAVE事件;

6) 令牌状态的转换接受令牌;

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航