说明
通过 ProcessEngine
可以创建下面类对象:
RepositoryService
RuntimeService
TaskService
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
RuntimeService runtimeService = processEngine.getRuntimeService();
RepositoryService repositoryService = processEngine.getRepositoryService();
TaskService taskService = processEngine.getTaskService();
RepositoryService
管理、部署(deployments)流程定义(process definitions)的。
很可能是使用Flowable引擎要用的第一个服务
由以下功能:
查询引擎现有的部署与流程定义。
暂停或激活部署中的某些流程,或整个部署。暂停意味着不能再对它进行操作,激活刚好相反,重新使它可以操作。
获取各种资源,比如部署中保存的文件,或者引擎自动生成的流程图。
获取POJO版本的流程定义。它可以用Java而不是XML的方式查看流程。
RuntimeService
启动流程定义
读取与存储流程变量。流程变量是流程实例中的数据,可以在流程的许多地方使用(例如排他网关经常使用流程变量判断流程下一步要走的路径)。
查询流程实例与执行(Execution)。执行也就是BPMN 2.0中 ‘token’ 的概念。通常执行是指向流程实例当前位置的指针。
TaskService
提供任务相关的功能:
查询分派给用户或组的任务
决定任务的执行用户(assignee),或者将用户通过某种方式与任务关联。
认领(claim)与完成(complete)任务。认领是指某人决定成为任务的执行用户,也即他将会完成这个任务。完成任务是指“做这个任务要求的工作”,通常是填写某个表单。
创建独立运行(standalone)任务。这是没有关联到流程实例的任务。