shark 工作流引擎新特性 HistoryRelated assigment
shark 新特性:



I've attached the latest HistoryRelatedAssignmentManager class and also an updated version of test-JavaScript.xpdl. The class now supports the following extended attributes (the names of which can be redefined in Shark.conf): * ReassignToOriginalPerformer * ReassignToOriginalPerformer * DoNotAssignToPerformerOfActivity As mentioned in the comments, one of each extended attribute should be associated with any single activity definition. If anybody wishes to extend/modify this class in any way, one obvious improvment would be to allow multiple copies of each extended attribute to be assigned to a single activity. I would ideally have liked to do this, but I don't need such functionality at the moment, and unfortunately don't have any more time to spend on it. In order to get the class working, the following properties need to be specified in Shark.conf:The XPDL example is a "publish document" process that describes the workflow that may occur when publishing a web-based document. Note that in the following, a question mark represents either "1" or "2" depending on which moderator we are referring to: * Initially, an author creates a document and submits it to two moderators. The "DoNotAssignToPerformerOfActivity" ext attrib is used for each moderate_document_? activity to ensure that two different moderators moderate the document and that the same moderator cannot moderate it twice. * Each moderator moderates the document and says whether or not it is ok by setting the values of the moderate_?_ok WRD. If OK, the moderator then has to submit the document. Note that the AssignToPerformerOfActivity ext attrib is used to ensure that the moderator who moderated the document is assigned the appropriate submit_document_? activity. * If either moderator rejects the document, then the author has to update it. Again, we use the AssignToPerformerOfActivity ext attrib to ensure that the author who originally created the document has to update it. * When updated, the author has to re-submit the document using the same submit_document activity. We use the ReassignToOriginalPerformer ext attrib to ensure that the author who resubmits the document is the same author that originally submitted it. * Finally, when both the moderators are happy with the document, a publisher reviews it (if he rejects it, we head back to "update document" - in exactly the same way as if a moderator rejects it). When the publisher is happy with the document, he publishes it. We use the AssignToPerformerOfActivity ext attrib to ensure that the publisher who publishes the document is the same publisher that reviewed it. That's it... I've tested both the class and the XPDL to some extent, but both could do with some more testing if anybody would like to do it. Let me know if you have any questions.#
# HistoryRelated assigment manager
#
AssignmentManagerClassName=org.enhydra.shark.assignment.HistoryRelatedAssignmentManager
HistoryRelatedAssignmentManager.username=admin
HistoryRelatedAssignmentManager.password=enhydra
HistoryRelatedAssignmentManager.extAttrReassignToOriginalPerformer=ReassignToOriginalPerformer
HistoryRelatedAssignmentManager.extAttrAssignToPerformerOfActivity=AssignToPerformerOfActivity
HistoryRelatedAssignmentManager.extAttrDoNotAssignToPerformerOfActivity=DoNotAssignToPerformerOfActivity
方向:分布式系統設計
posted on 2005-04-30 14:16 java光環 閱讀(569) 評論(0) 編輯 收藏 所屬分類: workflow