ALF-9621 Added invitation (nominated and moderated) processes and JavaDelegate for activiti (WIP)

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@29449 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Frederik Heremans
2011-07-29 08:31:38 +00:00
parent 874a165cbb
commit 65cb62ceb8
13 changed files with 672 additions and 2 deletions

View File

@@ -10,7 +10,6 @@
<startEvent id="start"
activiti:formKey="wf:submitAdhocTask" />
<sequenceFlow id='flow1'
sourceRef='start'
targetRef='adhocTask' />

View File

@@ -0,0 +1,63 @@
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:activiti="http://activiti.org/bpmn"
xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC"
xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema"
expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://alfresco.org">
<process id="activitiInvitationModerated" name="Moderated activiti invitation process">
<startEvent id="start" activiti:formKey="imwf:moderatedInvitationSubmitTask" />
<sequenceFlow id="flow1" sourceRef="start" targetRef="reviewTask" />
<userTask id="reviewTask" name="Review Task"
activiti:formKey="imwf:moderatedInvitationReviewTask">
<extensionElements>
<activiti:taskListener event="create"
class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener">
<activiti:field name="script">
<activiti:string>
if (typeof bpm_workflowDueDate != 'undefined')
task.setVariable('bpm_dueDate', bpm_workflowDueDate);
if (typeof bpm_workflowPriority != 'undefined')
task.priority = bpm_workflowPriority;
</activiti:string>
</activiti:field>
</activiti:taskListener>
<activiti:taskListener event="complete" class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener">
<activiti:field name="script">
<activiti:string>
execution.setVariable('wf_reviewOutcome', task.getVariable('wf_reviewOutcome'));
execution.setVariable('imwf_reviewer'), person.properties.userName);
</activiti:string>
</activiti:field>
</activiti:taskListener>
</extensionElements>
<potentialOwner>
<resourceAssignmentExpression>
<formalExpression>${bpm_groupAssignee.properties.authorityName}
</formalExpression>
</resourceAssignmentExpression>
</potentialOwner>
</userTask>
<sequenceFlow id="flow2" sourceRef="reviewTask" targetRef="reviewDecision" />
<exclusiveGateway id="reviewDecision" name="Review Decision" />
<sequenceFlow id="flow3" sourceRef="reviewDecision" targetRef="approved">
<conditionExpression xsi:type="tFormalExpression">${wf_reviewOutcome == 'Approve'}</conditionExpression>
</sequenceFlow>
<serviceTask id="approved" name="Approved" activiti:class="org.alfresco.repo.invitation.ModerationApproveDelegate" />
<sequenceFlow id="flow5" sourceRef="approved" targetRef="end" />
<sequenceFlow id="flow4" sourceRef="reviewDecision" targetRef="rejected" />
<serviceTask id="rejected" name="Rejected" activiti:class="org.alfresco.repo.invitation.ModerationRejectDelegate" />
<sequenceFlow id='flow6' sourceRef='rejected' targetRef='end' />
<endEvent id="end" />
</process>
</definitions>

View File

@@ -0,0 +1,66 @@
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:activiti="http://activiti.org/bpmn"
xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC"
xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema"
expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://alfresco.org">
<process id="activitiInvitationNominated" name="Nominated activiti invitation process">
<startEvent id="start" activiti:formKey="inwf:inviteToSiteTask" />
<sequenceFlow id="flow1" sourceRef="start" targetRef="sendInvite" />
<serviceTask id="sendInvite" name="Send Invite" activiti:class="org.alfresco.repo.invitation.SendInvitationDelegate" />
<sequenceFlow id="flow2" sourceRef="sendInvite" targetRef="invitePending" />
<userTask id="invitePending" name="Invite Pending"
activiti:formKey="inwf:invitePendingTask">
<extensionElements>
<activiti:taskListener event="create"
class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener">
<activiti:field name="script">
<activiti:string>
if (typeof bpm_workflowDueDate != 'undefined')
task.setVariable('bpm_dueDate', bpm_workflowDueDate);
if (typeof bpm_workflowPriority != 'undefined')
task.priority = bpm_workflowPriority;
</activiti:string>
</activiti:field>
</activiti:taskListener>
</extensionElements>
<humanPerformer>
<resourceAssignmentExpression>
<formalExpression>${bpm_assignee.properties.userName}</formalExpression>
</resourceAssignmentExpression>
</humanPerformer>
</userTask>
<sequenceFlow id="flow3" sourceRef="invitePending" targetRef="inviteGateway" />
<exclusiveGateway id="inviteGateway" name="Invite Gateway" />
<sequenceFlow id="flow4" sourceRef="inviteGateway" targetRef="accepted">
<conditionExpression xsi:type="tFormalExpression">${inwf_inviteOutcome == 'accept'}</conditionExpression>
</sequenceFlow>
<sequenceFlow id="flow5" sourceRef="inviteGateway" targetRef="rejected">
<conditionExpression xsi:type="tFormalExpression">${inwf_inviteOutcome == 'reject'}</conditionExpression>
</sequenceFlow>
<sequenceFlow id="flow7" sourceRef="inviteGateway" targetRef="cancelled" />
<serviceTask id="accepted" name="Accepted" activiti:class="org.alfresco.repo.invitation.AcceptInviteDelegate" />
<sequenceFlow id="flow6" sourceRef="accepted" targetRef="end" />
<serviceTask id="rejected" name="Rejected" activiti:class="org.alfresco.repo.invitation.RejectInviteDelegate" />
<sequenceFlow id="flow8" sourceRef="rejected" targetRef="end" />
<serviceTask id="cancelled" name="Cancelled" activiti:class="org.alfresco.repo.invitation.CancelInviteDelegate" />
<sequenceFlow id="flow9" sourceRef="cancelled" targetRef="end" />
<endEvent id="end" />
</process>
</definitions>