服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

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)        找到开始状态的转换,让其接收令牌。

 

二、invocationlog endofstate(long tokenid, map variables,

                                 string transitionname)

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

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

        3)        创建记录invocationlog

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

        5)        触发state_leave事件;

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

扫描关注微信公众号