Activiti7基本介绍( 四 )

激活流程实例/*** 激活指定流程Id的流程实例*/void activateProcessInstanceById(String processInstanceId);删除流程实例/** * 删除实例 * @param processInstanceId 流程实例Id * @param deleteReason 删除原因 */void deleteProcessInstance(String processInstanceId, String deleteReason);获取传入参数/** * 给定执行作用域(包括父作用域)中可见的所有变量 。* @param executionId 启动的实例的ID */Map<String, Object> getVariables(String executionId);任务管理

任务管理的接口是通过TaskService来实现的 。而最新的是使用TaskRuntime接口来实现的,当然TaskRuntime底层也是通过TaskService来实现的 。
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();TaskService taskService = processEngine.getTaskService();获取我的任务// 获取任务查询器TaskQuery taskQuery = taskService.createTaskQuery();// 查询器获取列表List<Task> tasks = taskQuery.taskAssignee("you ID").list();拾取任务
有的时候,某个任务节点可能没有直接指定责任人,但是指定了候选人列表或者候选组 。这个时候你还是可以将这个任务查询出来的,但是需要主动拾取任务 。
TaskQuery taskQuery = taskService.createTaskQuery();Task task = taskQuery.processInstanceBusinessKey("businessKey").singleResult();// 拾取任务taskService.claim(task.getId(),"userId");解开任务
如果拾取任务错了或者想将任务转给别人 , 可以调用解开任务的接口,其实也就是将责任人置空
taskService.unclaim(String taskId);完成任务/*** 在任务成功执行时调用,并且所需的任务参数由最终用户给定 。* @param taskId 任务ID* @param variables 参数对象*/void complete(String taskId, Map<String, Object> variables);Activiti7主要对象与接口对象
  • Deployment:流程部署对象 , 部署一个流程时创建
  • ProcessDefinitions;流程定义,部署成功后自动创建
  • ProcessInstances:流程实例,启动流程时创建
  • Task:任务,在Activiti中Task仅指有角色参与的任务,即定义中的UserTask
  • Execution:执行计划 , 流程实例和流程执行中的所以节点都是Execution
接口
  • ProcessEngine:流程引擎的抽象,通过它我们可以获得我们需要的一切服务
  • RepositoryServicez:Acitviti中每一个不同版本的业务流程的定义都需要使用一些定义文件 , 部署文件和支持数据(例如BPMN2.0 XML文件,表单定义文件,流程定义图像文件等),这些文件都存储在Activiti内建的Repository中 。RepositoryService提供了对repository的存取服务
  • RuntimeService:在Activi中,每当一个流程定义被启动一次之后,都会生成一个相应的流程对象实例 。RuntimeService提供了启动流程 , 查询流程实例 , 设置获取流程实例变量等功能 。此外它还提供了对流程部署,流程定义和流程实例的存取服务
  • TaskService:在Activiti中业务流程定义中的每一个执行节点被称为一个Task , 对流程中的数据存取 , 状态变更等操作均需要在Task中完成 。TaskService提供了对用户Task和form相关的操作 。它提供了运行时任务查询,领取,完成,删除以及变量设置等功能
  • IdentityServjice:Activiti中内置了用户以及组管理的功能,必须使用这些用户和组的信息才能获取到相应的Task 。IdentityService提供了对Activiti系统中的用户和组的管理功能
  • ManagementService:提供了对Activiti流程引擎的管理和维护功能,
  • HistoryService:用于获取正在运行或已经完成的流程实例的信息,与RuntimeService中获取的流程信息不同,历史信息包含已经持久化存储的永久信息,并已经被针对查询优化
原文链接
Activiti初学者教程链接
【Activiti7基本介绍】

推荐阅读