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

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

一、InvocationLog startProcessInstance(Long definitionId, Map variables, 

                                           String transitionName)

功能:启动一个工作流示例。
1)       
根据definitionId得到工作流定义并初始化一个流程实例;

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

        3)        流程实例持久化;

        4)        初始化执行上下文;

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

        6)        触发PROCESS_START事件;

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

<o:p> </o:p>

二、InvocationLog endOfState(Long tokenId, Map variables,

                                 String transitionName)

功能:使工作流进入下一个状态。
1)       
根据tokenId从数据库得到令牌;

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

        3)        创建记录InvocationLog

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

        5)        触发STATE_LEAVE事件;

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值