As we transition to the new Hyland Community, some post links may be temporarily disrupted as we finalize redirects. We apologize for the inconvenience and are working to resolve this as quickly as possible. Details.
<?xml version="1.0" encoding="UTF-8"?> <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://www.activiti.org/test"> <process id="websalesWorkflow" name="Websales Workflow" isExecutable="true"> <startEvent id="startevent1" name="Start" activiti:initiator="Initiator"></startEvent> <userTask id="submitPlayData" name="Submit Play Data" activiti:assignee="${Initiator}"> <extensionElements> <activiti:formProperty id="userName" name="User Name" type="string" variable="username" required="true"></activiti:formProperty> <activiti:formProperty id="playData" name="Play Data" type="string" variable="playdata" required="true"></activiti:formProperty> <activiti:formProperty id="calculatedPurchaseValue" name="Calculated Purchase Value" type="string" variable="calcval" required="true"></activiti:formProperty> </extensionElements> </userTask> <serviceTask id="checkDailyLimit" name="Check Daily Limit" activiti:class="com.cbnco.activiti.websales.WebsalesCheckDailyLimit"></serviceTask> <exclusiveGateway id="dailyLimitCheckResult" name="Daily Limit Check Result"></exclusiveGateway> <endEvent id="limitCheckFailedEndEvent" name="Daily Limit Check Failed End Event"></endEvent> <serviceTask id="checkWalletBalence" name="Check Wallet Balence" activiti:class="com.cbnco.activiti.websales.WebsalesCheckEWalletBalance"></serviceTask> <callActivity id="callTopupProcess" name="Call Top Up Process" calledElement="WalletTopupProcess"> <extensionElements> <activiti:in source="Initiator" target="Initiator"></activiti:in> <activiti:in source="username" target="username"></activiti:in> <activiti:out source="topUpSuccessful" target="topUpSuccessful"></activiti:out> <activiti:out source="topUpMessage" target="topUpMessage"></activiti:out> <activiti:out source="topUpRuns" target="topUpRuns"></activiti:out> </extensionElements> </callActivity> <exclusiveGateway id="topupResult" name="Top Up Result"></exclusiveGateway> <serviceTask id="purchaseTicket" name="Purchase Ticket" activiti:class="com.cbnco.activiti.websales.WebsalesPurchase"></serviceTask> <exclusiveGateway id="purchaseTicketResult" name="Purchase Ticket Result"></exclusiveGateway> <endEvent id="purchaseSuccessEndEvent" name="Purchase Success End Event"></endEvent> <sequenceFlow id="startFlow" name="Start" sourceRef="startevent1" targetRef="submitPlayData"></sequenceFlow> <sequenceFlow id="checkLimitFlow" name="Check Limit" sourceRef="submitPlayData" targetRef="checkDailyLimit"></sequenceFlow> <sequenceFlow id="checkLimitResultFlow" name="Check Limit Result" sourceRef="checkDailyLimit" targetRef="dailyLimitCheckResult"></sequenceFlow> <sequenceFlow id="checkLimitFailedFlow" name="Limit Exceeded" sourceRef="dailyLimitCheckResult" targetRef="limitCheckFailedEndEvent"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${limitCheckResult == false}]]></conditionExpression> </sequenceFlow> <sequenceFlow id="limitOkFlow" name="Limit Ok" sourceRef="dailyLimitCheckResult" targetRef="checkWalletBalence"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${limitCheckResult == true}]]></conditionExpression> </sequenceFlow> <exclusiveGateway id="checkWalletResult" name="Check Wallet Result"></exclusiveGateway> <sequenceFlow id="needTopUpFlow" name="Need Top Up" sourceRef="checkWalletResult" targetRef="callTopupProcess"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${eWalletCheckResult == false}]]></conditionExpression> </sequenceFlow> <sequenceFlow id="walletOkFlow" name="Wallet Ok" sourceRef="checkWalletResult" targetRef="purchaseTicket"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${eWalletCheckResult == true}]]></conditionExpression> </sequenceFlow> <sequenceFlow id="checkWalletFlow" name="Check Wallet" sourceRef="checkWalletBalence" targetRef="checkWalletResult"></sequenceFlow> <sequenceFlow id="topUpResultFlow" sourceRef="callTopupProcess" targetRef="topupResult"></sequenceFlow> <sequenceFlow id="purchaseTicketFlow" sourceRef="topupResult" targetRef="purchaseTicket"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${topUpSuccessful == true}]]></conditionExpression> </sequenceFlow> <sequenceFlow id="topUpBadResultFlow" sourceRef="topupResult" targetRef="callTopupProcess"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${topUpSuccessful == false}]]></conditionExpression> </sequenceFlow> <sequenceFlow id="purchaseTicketResultFlow" sourceRef="purchaseTicket" targetRef="purchaseTicketResult"></sequenceFlow> <sequenceFlow id="purchaseSuccessful" name="Purchase Successful" sourceRef="purchaseTicketResult" targetRef="purchaseSuccessEndEvent"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${purchaseSuccessful == true}]]></conditionExpression> </sequenceFlow> <boundaryEvent id="topUpProcessTimer" name="Top Up Process Timer" attachedToRef="callTopupProcess" cancelActivity="true"> <timerEventDefinition> <timeDuration>PT5M</timeDuration> </timerEventDefinition> </boundaryEvent> <endEvent id="TopUpTimeOutEndEvent" name="Top Up Time Out End Event"></endEvent> <sequenceFlow id="topUpTimeoutFlow" name="Top Up Timed Out" sourceRef="topUpProcessTimer" targetRef="TopUpTimeOutEndEvent"></sequenceFlow> <sequenceFlow id="tooManyTopUpsFlow" sourceRef="topupResult" targetRef="TopUpTimeOutEndEvent"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${topUpRuns == "10"}]]></conditionExpression> </sequenceFlow> <endEvent id="purchaseErrorEndEvent" name="Purchase Error End Event"></endEvent> <sequenceFlow id="purchaseFailed" name="Purchase Failed" sourceRef="purchaseTicketResult" targetRef="purchaseErrorEndEvent"></sequenceFlow> </process> <bpmndi:BPMNDiagram id="BPMNDiagram_websalesWorkflow"> <bpmndi:BPMNPlane bpmnElement="websalesWorkflow" id="BPMNPlane_websalesWorkflow"> <bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1"> <omgdc:Bounds height="35.0" width="35.0" x="40.0" y="290.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="submitPlayData" id="BPMNShape_submitPlayData"> <omgdc:Bounds height="105.0" width="105.0" x="158.0" y="254.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="checkDailyLimit" id="BPMNShape_checkDailyLimit"> <omgdc:Bounds height="109.0" width="105.0" x="342.0" y="254.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="dailyLimitCheckResult" id="BPMNShape_dailyLimitCheckResult"> <omgdc:Bounds height="40.0" width="40.0" x="590.0" y="287.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="limitCheckFailedEndEvent" id="BPMNShape_limitCheckFailedEndEvent"> <omgdc:Bounds height="35.0" width="35.0" x="593.0" y="410.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="checkWalletBalence" id="BPMNShape_checkWalletBalence"> <omgdc:Bounds height="111.0" width="105.0" x="558.0" y="100.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="callTopupProcess" id="BPMNShape_callTopupProcess"> <omgdc:Bounds height="141.0" width="105.0" x="820.0" y="-90.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="topUpProcessTimer" id="BPMNShape_topUpProcessTimer"> <omgdc:Bounds height="30.0" width="30.0" x="880.0" y="-70.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="topupResult" id="BPMNShape_topupResult"> <omgdc:Bounds height="40.0" width="40.0" x="980.0" y="-40.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="purchaseTicket" id="BPMNShape_purchaseTicket"> <omgdc:Bounds height="89.0" width="105.0" x="948.0" y="152.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="purchaseTicketResult" id="BPMNShape_purchaseTicketResult"> <omgdc:Bounds height="40.0" width="40.0" x="980.0" y="286.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="purchaseSuccessEndEvent" id="BPMNShape_purchaseSuccessEndEvent"> <omgdc:Bounds height="35.0" width="35.0" x="983.0" y="409.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="checkWalletResult" id="BPMNShape_checkWalletResult"> <omgdc:Bounds height="40.0" width="40.0" x="740.0" y="77.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="TopUpTimeOutEndEvent" id="BPMNShape_TopUpTimeOutEndEvent"> <omgdc:Bounds height="35.0" width="35.0" x="1160.0" y="-73.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="purchaseErrorEndEvent" id="BPMNShape_purchaseErrorEndEvent"> <omgdc:Bounds height="35.0" width="35.0" x="1240.0" y="290.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNEdge bpmnElement="startFlow" id="BPMNEdge_startFlow"> <omgdi:waypoint x="75.0" y="307.0"></omgdi:waypoint> <omgdi:waypoint x="158.0" y="306.0"></omgdi:waypoint> <bpmndi:BPMNLabel> <omgdc:Bounds height="12.0" width="23.0" x="85.0" y="307.0"></omgdc:Bounds> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="checkLimitFlow" id="BPMNEdge_checkLimitFlow"> <omgdi:waypoint x="263.0" y="306.0"></omgdi:waypoint> <omgdi:waypoint x="342.0" y="308.0"></omgdi:waypoint> <bpmndi:BPMNLabel> <omgdc:Bounds height="12.0" width="57.0" x="273.0" y="306.0"></omgdc:Bounds> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="checkLimitResultFlow" id="BPMNEdge_checkLimitResultFlow"> <omgdi:waypoint x="447.0" y="308.0"></omgdi:waypoint> <omgdi:waypoint x="590.0" y="307.0"></omgdi:waypoint> <bpmndi:BPMNLabel> <omgdc:Bounds height="12.0" width="91.0" x="457.0" y="308.0"></omgdc:Bounds> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="checkLimitFailedFlow" id="BPMNEdge_checkLimitFailedFlow"> <omgdi:waypoint x="610.0" y="327.0"></omgdi:waypoint> <omgdi:waypoint x="610.0" y="410.0"></omgdi:waypoint> <bpmndi:BPMNLabel> <omgdc:Bounds height="12.0" width="74.0" x="620.0" y="327.0"></omgdc:Bounds> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="limitOkFlow" id="BPMNEdge_limitOkFlow"> <omgdi:waypoint x="610.0" y="287.0"></omgdi:waypoint> <omgdi:waypoint x="610.0" y="211.0"></omgdi:waypoint> <bpmndi:BPMNLabel> <omgdc:Bounds height="12.0" width="40.0" x="620.0" y="287.0"></omgdc:Bounds> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="needTopUpFlow" id="BPMNEdge_needTopUpFlow"> <omgdi:waypoint x="760.0" y="77.0"></omgdi:waypoint> <omgdi:waypoint x="759.0" y="6.0"></omgdi:waypoint> <omgdi:waypoint x="820.0" y="-20.0"></omgdi:waypoint> <bpmndi:BPMNLabel> <omgdc:Bounds height="12.0" width="65.0" x="770.0" y="77.0"></omgdc:Bounds> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="walletOkFlow" id="BPMNEdge_walletOkFlow"> <omgdi:waypoint x="760.0" y="117.0"></omgdi:waypoint> <omgdi:waypoint x="760.0" y="179.0"></omgdi:waypoint> <omgdi:waypoint x="948.0" y="196.0"></omgdi:waypoint> <bpmndi:BPMNLabel> <omgdc:Bounds height="12.0" width="47.0" x="770.0" y="117.0"></omgdc:Bounds> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="checkWalletFlow" id="BPMNEdge_checkWalletFlow"> <omgdi:waypoint x="663.0" y="155.0"></omgdi:waypoint> <omgdi:waypoint x="760.0" y="117.0"></omgdi:waypoint> <bpmndi:BPMNLabel> <omgdc:Bounds height="12.0" width="64.0" x="673.0" y="155.0"></omgdc:Bounds> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="topUpResultFlow" id="BPMNEdge_topUpResultFlow"> <omgdi:waypoint x="925.0" y="-20.0"></omgdi:waypoint> <omgdi:waypoint x="980.0" y="-20.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="purchaseTicketFlow" id="BPMNEdge_purchaseTicketFlow"> <omgdi:waypoint x="1000.0" y="0.0"></omgdi:waypoint> <omgdi:waypoint x="1000.0" y="152.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="topUpBadResultFlow" id="BPMNEdge_topUpBadResultFlow"> <omgdi:waypoint x="980.0" y="-20.0"></omgdi:waypoint> <omgdi:waypoint x="925.0" y="-20.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="purchaseTicketResultFlow" id="BPMNEdge_purchaseTicketResultFlow"> <omgdi:waypoint x="1000.0" y="241.0"></omgdi:waypoint> <omgdi:waypoint x="1000.0" y="286.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="purchaseSuccessful" id="BPMNEdge_purchaseSuccessful"> <omgdi:waypoint x="1000.0" y="326.0"></omgdi:waypoint> <omgdi:waypoint x="1000.0" y="409.0"></omgdi:waypoint> <bpmndi:BPMNLabel> <omgdc:Bounds height="36.0" width="100.0" x="1010.0" y="326.0"></omgdc:Bounds> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="topUpTimeoutFlow" id="BPMNEdge_topUpTimeoutFlow"> <omgdi:waypoint x="910.0" y="-55.0"></omgdi:waypoint> <omgdi:waypoint x="1160.0" y="-56.0"></omgdi:waypoint> <bpmndi:BPMNLabel> <omgdc:Bounds height="12.0" width="90.0" x="1085.0" y="-220.0"></omgdc:Bounds> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="tooManyTopUpsFlow" id="BPMNEdge_tooManyTopUpsFlow"> <omgdi:waypoint x="1000.0" y="-40.0"></omgdi:waypoint> <omgdi:waypoint x="1000.0" y="-56.0"></omgdi:waypoint> <omgdi:waypoint x="1160.0" y="-56.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="purchaseFailed" id="BPMNEdge_purchaseFailed"> <omgdi:waypoint x="1020.0" y="306.0"></omgdi:waypoint> <omgdi:waypoint x="1240.0" y="307.0"></omgdi:waypoint> <bpmndi:BPMNLabel> <omgdc:Bounds height="12.0" width="79.0" x="1030.0" y="306.0"></omgdc:Bounds> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> </bpmndi:BPMNPlane> </bpmndi:BPMNDiagram> </definitions>