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基本介紹】

推薦閱讀