原文地址: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 */
-
-
}
敬請期待。