Finished refactoring InvitationServiceImpl to use Activiti worklfow engine.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@30084 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
N Smith
2011-08-26 10:17:35 +00:00
parent 578a58bbc8
commit 2489bf0bdf
15 changed files with 448 additions and 301 deletions

View File

@@ -20,7 +20,6 @@
<type name="imwf:moderatedInvitationSubmitTask">
<parent>bpm:startTask</parent>
<mandatory-aspects>
<aspect>bpm:assignee</aspect>
<aspect>bpm:groupAssignee</aspect>
<aspect>imwf:moderatedInvitationStats</aspect>
</mandatory-aspects>
@@ -40,7 +39,6 @@
<properties>
<property name="imwf:reviewOutcome">
<type>d:text</type>
<default>reject</default>
<constraints>
<constraint name="imwf:reviewOutcomeOptions"
type="LIST">
@@ -56,8 +54,7 @@
</properties>
<overrides>
<property name="bpm:outcomePropertyName">
<default>{http://www.alfresco.org/model/workflow/invite/moderated/1.0}reviewOutcome
</default>
<default>{http://www.alfresco.org/model/workflow/invite/moderated/1.0}reviewOutcome</default>
</property>
</overrides>
<mandatory-aspects>

View File

@@ -28,6 +28,7 @@
<activiti:field name="script">
<activiti:string>
execution.setVariable('imwf_reviewOutcome', task.getVariable('imwf_reviewOutcome'));
execution.setVariable('imwf_reviewer', person.properties.userName);
</activiti:string>
</activiti:field>
</activiti:taskListener>
@@ -44,7 +45,7 @@
<exclusiveGateway id="reviewDecision" name="Review Decision" />
<sequenceFlow id="flow3" sourceRef="reviewDecision" targetRef="approved">
<conditionExpression xsi:type="tFormalExpression">${imwf_reviewOutcome == 'Approve'}</conditionExpression>
<conditionExpression xsi:type="tFormalExpression">${imwf_reviewOutcome=='approve'}</conditionExpression>
</sequenceFlow>
<serviceTask id="approved" name="Approved" activiti:delegateExpression="${ApproveModeratedInviteDelegate}" />

View File

@@ -57,16 +57,55 @@
<sequenceFlow id="flow7" sourceRef="inviteGateway" targetRef="cancelled" />
<serviceTask id="accepted" name="Accepted" activiti:delegateExpression="${AcceptNominatedInviteDelegate}" />
<sequenceFlow id="flow6" sourceRef="accepted" targetRef="end" />
<sequenceFlow id="flow6" sourceRef="accepted" targetRef="inviteAccepted" />
<serviceTask id="rejected" name="Rejected" activiti:delegateExpression="${RejectNominatedInviteDelegate}" />
<sequenceFlow id="flow8" sourceRef="rejected" targetRef="end" />
<sequenceFlow id="flow8" sourceRef="rejected" targetRef="inviteRejected" />
<serviceTask id="cancelled" name="Cancelled" activiti:delegateExpression="${CancelNominatedInviteDelegate}" />
<sequenceFlow id="flow9" sourceRef="cancelled" targetRef="end" />
<userTask id="inviteAccepted" name="Invitation Accepted"
activiti:formKey="inwf:acceptInviteTask" >
<extensionElements>
<activiti:taskListener event="create" class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener">
<activiti:field name="script">
<activiti:string>
if (typeof bpm_workflowPriority != 'undefined') task.priority = bpm_workflowPriority;
</activiti:string>
</activiti:field>
</activiti:taskListener>
</extensionElements>
<humanPerformer>
<resourceAssignmentExpression>
<formalExpression>${initiator.properties.userName}</formalExpression>
</resourceAssignmentExpression>
</humanPerformer>
</userTask>
<sequenceFlow id="flow10" sourceRef="inviteAccepted" targetRef="end" />
<userTask id="inviteRejected" name="Invitation Rejected"
activiti:formKey="inwf:rejectInviteTask" >
<extensionElements>
<activiti:taskListener event="create" class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener">
<activiti:field name="script">
<activiti:string>
if (typeof bpm_workflowPriority != 'undefined') task.priority = bpm_workflowPriority;
</activiti:string>
</activiti:field>
</activiti:taskListener>
</extensionElements>
<humanPerformer>
<resourceAssignmentExpression>
<formalExpression>${initiator.properties.userName}</formalExpression>
</resourceAssignmentExpression>
</humanPerformer>
</userTask>
<sequenceFlow id="flow11" sourceRef="inviteRejected" targetRef="end" />
<endEvent id="end" />
</process>