原文地址:http://www.jboss.org/feeds/post/jbpm_task_management_a_look_at_the_participation_model
jBPM 任务管理:参与模式一瞥
Posted on 2009-03-30 09:41:00.0 by Heiko Braun
Since 4.0.0 Beta1
重新回顾jBPM中的任务管理模型,引进了一个新的概念:任务参与。参与模型描述了identies(用户或组)和任务在实际完成中的参与类型:
示例1:用户和业务管理员参与
在此与这个模型非常适合的一个通常的案例是在一个实际执行任务的用户和一个业务管理员监控进展情况之间的区别。依赖于参与类型,某些规则将实际起作用,而其它的将确保任务在给定的约束内被执行(例如,优先级,预定日期等)。
示例2:具有不同的参与类型的任务利益相关者
另一个例子可能是利益相关者监控任务的实际输出,或者是在一个任务上互相协作的不同参与者之间的委托。在这个案例中,一个任务的发起人,一个候选人执行这个工作并且最终的与受者可能是不同的参与类型。
The TaskService API已经反映了那些变化:
-
org.jbpm.TaskService{
-
-
[...]
-
-
/**
-
* retrieves a list of tasks for a user
-
* and a particular {@link org.jbpm.task.Participation} type
-
*
-
* @see org.jbpm.TaskQuery
-
*/
-
-
List
findTasksByParticipation
(String participation, UserRef user
);
-
-
/**
-
* retrieves a list of tasks for a group
-
* and a particular {@link org.jbpm.task.Participation} type
-
*
-
* @see org.jbpm.TaskQuery
-
*/
-
-
List
findTasksByParticipation
(String participation, GroupRef...
groups);
-
-
}
目前,我们封装了一些默认的参与类型,其中仅仅支持“候选人”模型,但是你可以期待这些将在不久的将来被扩展实现。
-
org.jbpm.task.Participation{
-
[...]
-
String
CANDIDATE =
"candidate";
-
IdentityRef getIdentityRef();
-
/** see constants for default participations */
-
-
}
敬请期待。