JBPM4的常用方法

TaskService的常用方法:

      TaskService是一个接口,他的一个常用的实现类是TaskServiceImpl。它的常用的方法有:

      (1): String saveTask(Task task);//Saves the given task to persistent storage,return the taskId

      (2): Task getTask(String taskId);//根据taskId查找任务

      (3): void assignTask(String taskId, String userId);//assigns this task to the given assignee

      (4): void takeTask(String taskId, String userId);//当执行了改方法后,JBPM将会阻止组当中的其他成员再使用改任务,而反过来,如果想把据为己有的任务再放回组当中,则可以如下调用taskService.assignTask(taskId, null);

      (5): void completeTask(String taskId);//完成一个任务

      (6): void completeTask(String taskId, Map<String, ?> variables);//完成一个任务,并设置相应的流程变量

      (7): void completeTask(String taskId, String outcome);//完成任务,并指定一个向外的流向

      (8): void deleteTask(String taskId);//删除一个任务,但保留历史信息

      (9): void deleteTaskCascade(String taskId);//删除一个任务,包括历史信息

      (10):  List<Participation> getTaskParticipations(String taskId);//返回一个任务的参与者集合

      (11):TaskQuery createTaskQuery();//建立一个查询的任务

      (12):List<Task> findPersonalTasks(String userId);

      (13):List<Task> findGroupTasks(String userId);

      (14):void setVariables(String taskId, Map<String, ?> variables);//设置任务变量,好像和Execution的变量是一样的

      (15):Object getVariable(String taskId, String variableName);//获得流程变量

      (16):Set<String> getVariableNames(String taskId);//的到所有的变量集合

      (17):Set<String> getOutcomes(String taskId);

 

TaskQuery的常用方法;

      TaskQuery是一个接口,包含了任务查询的常用方法:

      (1):TaskQuery assignee(String userId);//通过指定的人查找任务

      (2):TaskQuery unassigned();//返回未被指派的任务,即JBPM4_TASK表中ASSIGNEE_字段null

      (3):TaskQuery candidate(String userId);

      (4):TaskQuery executionId(String executionId);//通过指定的流程实例Id查找所有任务

      (5):TaskQuery processInstanceId(String processInstanceId);

      (6):TaskQuery processDefinitionId(String processDefinitionId);//查找一个流程定义底下的所有任务

      (7):TaskQuery activityName(String activityName);//根据指定的流程节点查找该处的所有任务

      (8):TaskQuery page(int firstResult, int maxResults);//分页查找任务

      (9):TaskQuery orderAsc(String property);//排序方法,property是TaskQuery的成员

      (10):TaskQuery orderDesc(String property);

      (11):long count();//得到记录总数

      (12):List<Task> list();//返回任务集合

      (13):Task uniqueResult();

 

ExecutionService的常用方法:

      ExecutionService是一个接口,包含了流程实例方面的大量操作

      (1):ProcessInstance startProcessInstanceById(String processDefinitionId);//通过流程定义Id开启一个新的流程实例

      (2):ProcessInstance startProcessInstanceById(String processDefinitionId, Map<String, ?> variables);//开启一个流程实例,Map集合是设置流程变量之用,和taskService.setVariables(String executionId, Map<String, ?> variables)的效果一致。ExecutionService中还包含很多开启流程的方法,但常用的基本就这两个

      (3):Execution findExecutionById(String executionId);

      (4):ProcessInstance findProcessInstanceById(String processInstanceId);

      (5):ProcessInstanceQuery createProcessInstanceQuery();//创建一个流程实例的查询方法

      (6):void setVariable(String executionId, String name, Object value);//设置一个全局的变量,即流程变量

      (7):void setVariables(String executionId, Map<String, ?> variables);

      (8):Object getVariable(String executionId, String variableName);//根据流程Id得到一个流程变量

      (9):void endProcessInstance(String processInstanceId, String state);

      (10):void deleteProcessInstance(String processInstanceId);//删除一个流程实例,但保留历史

      (11):void deleteProcessInstanceCascade(String processInstanceId);//删除一个流程实例,同时删除历史信息

 

ProcessInstanceQuery的常用方法

        ProcessInstanceQuery是一个接口,包含了流程实例的查询操作

     (1):ProcessInstanceQuery processDefinitionId(String processDefinitionId);//根据流程定义的ID查找所有的实例

     (2):ProcessInstanceQuery processInstanceId(String processInstanceId);//根据流程实例的ID查找,返回接口肯定只有一个

     (3):ProcessInstanceQuery orderAsc(String property);

     (4):ProcessInstanceQuery orderDesc(String property);

     (5):ProcessInstanceQuery page(int firstResult, int maxResults);//分页查询

     (6):List<ProcessInstance> list();//返回记录的集合

     (7):ProcessInstance uniqueResult();//返回唯一记录

     (8):long count();//返回总记录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值