WCM Content Launch:

- submit process now allows for delayed submissions (launch date may be entered during submit)
- in case of delayed submission, initiator is sent "submission pending" task with actions for cancelling submission and submitting now.  On launch date, submission is made, removing "pending" task from initiator.
- approved task is now submitted task

Fixes to jBPM Timers:
- fix to ensure task is ended when associated timer is fired
- fix to ensure Alfresco transaction is active when triggered node action is executed

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5687 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
David Caruana
2007-05-15 17:43:50 +00:00
parent 86e699a71f
commit a71b9e4191
7 changed files with 280 additions and 10 deletions

View File

@@ -111,22 +111,59 @@
<!-- -->
<decision name="endreview">
<transition name="rejected" to="rejected">
<action class="org.alfresco.repo.avm.wf.AVMClearSubmittedHandler"/>
</transition>
<transition name="approved" to="approved">
<transition name="rejected" to="rejected" />
<transition name="approved" to="onapprove">
<condition>#{wcmwf_approveCnt == wcmwf_reviewerCnt}</condition>
<action class="org.alfresco.repo.avm.wf.AVMSubmitPackageHandler"/>
</transition>
</decision>
<decision name="onapprove">
<transition name="launchnow" to="submitted" />
<transition name="launchpending" to="submitpending">
<condition>#{wcmwf_launchDate != null}</condition>
</transition>
</decision>
<task-node name="rejected">
<event type="node-enter">
<action class="org.alfresco.repo.avm.wf.AVMClearSubmittedHandler"/>
</event>
<task name="wcmwf:rejectedTask" swimlane="initiator" />
<transition name="" to="end" />
</task-node>
<task-node name="approved">
<task name="wcmwf:approvedTask" swimlane="initiator" />
<task-node name="submitpending">
<task name="wcmwf:submitpendingTask" swimlane="initiator">
<event type="task-create">
<script>
taskInstance.dueDate = wcmwf_launchDate;
</script>
</event>
<timer duedate="#{wcmwf_launchDate}" transition="launch" >
<action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
<script>
logger.log("WCM Submission " + bpm_workflowDescription + " submitted at " + wcmwf_launchDate + " by " + person.properties.userName);
</script>
</action>
</timer>
</task>
<transition name="cancel" to="submitcancelled" />
<transition name="launch" to="submitted" />
</task-node>
<task-node name="submitcancelled">
<event type="node-enter">
<action class="org.alfresco.repo.avm.wf.AVMClearSubmittedHandler"/>
</event>
<task name="wcmwf:submitcancelledTask" swimlane="initiator" />
<transition name="" to="end" />
</task-node>
<task-node name="submitted">
<event type="node-enter">
<action class="org.alfresco.repo.avm.wf.AVMSubmitPackageHandler"/>
</event>
<task name="wcmwf:submittedTask" swimlane="initiator" />
<transition name="" to="end" />
</task-node>

View File

@@ -14,6 +14,10 @@ wcmwf_submit.node.parallelreview.transition.reject.title=Reject
wcmwf_submit.node.parallelreview.transition.reject.description=Reject
wcmwf_submit.node.parallelreview.transition.approve.title=Approve
wcmwf_submit.node.parallelreview.transition.approve.description=Approve
wcmwf_submit.node.submitpending.transition.cancel.title=Abort Submission
wcmwf_submit.node.submitpending.transition.cancel.description=Abort Submission
wcmwf_submit.node.submitpending.transition.launch.title=Submit Now
wcmwf_submit.node.submitpending.transition.launch.description=Submit Now
# Submit Task Definitions
@@ -25,6 +29,12 @@ wcmwf_workflowmodel.type.wcmwf_rejectedTask.title=Rejected
wcmwf_workflowmodel.type.wcmwf_rejectedTask.description=Rejected
wcmwf_workflowmodel.type.wcmwf_approvedTask.title=Approved
wcmwf_workflowmodel.type.wcmwf_approvedTask.description=Approved
wcmwf_workflowmodel.type.wcmwf_submittedTask.title=Submitted
wcmwf_workflowmodel.type.wcmwf_submittedTask.description=Submitted
wcmwf_workflowmodel.type.wcmwf_submitpendingTask.title=Submission Pending
wcmwf_workflowmodel.type.wcmwf_submitpendingTask.description=Submission Pending
wcmwf_workflowmodel.type.wcmwf_submitcancelledTask.title=Submission Aborted
wcmwf_workflowmodel.type.wcmwf_submitcancelledTask.description=Submission Aborted
wcmwf_workflowmodel.property.wcmwf_reviewType.title=Type of Review
wcmwf_workflowmodel.property.wcmwf_reviewType.description=Serial or parallel review

View File

@@ -96,7 +96,38 @@
</mandatory-aspects>
</type>
<type name="wcmwf:approvedTask">
<type name="wcmwf:submitpendingTask">
<parent>wcmwf:workflowTask</parent>
<mandatory-aspects>
<aspect>bpm:assignees</aspect>
<aspect>wcmwf:reviewType</aspect>
<aspect>wcmwf:reviewInfo</aspect>
<aspect>wcmwf:submission</aspect>
</mandatory-aspects>
</type>
<type name="wcmwf:submitcancelledTask">
<parent>wcmwf:workflowTask</parent>
<mandatory-aspects>
<aspect>bpm:assignees</aspect>
<aspect>wcmwf:reviewType</aspect>
<aspect>wcmwf:reviewInfo</aspect>
<aspect>wcmwf:submission</aspect>
</mandatory-aspects>
</type>
<type name="wcmwf:submittedTask">
<parent>wcmwf:workflowTask</parent>
<mandatory-aspects>
<aspect>bpm:assignees</aspect>
<aspect>wcmwf:reviewType</aspect>
<aspect>wcmwf:reviewInfo</aspect>
<aspect>wcmwf:submission</aspect>
</mandatory-aspects>
</type>
<!-- NOTE: kept for backwards compatibility only - for v2.0 wcm submit process definition -->
<type name="wcmwf:approvedTask">
<parent>wcmwf:workflowTask</parent>
<mandatory-aspects>
<aspect>bpm:assignees</aspect>