Dan b8d3d5d84b Squashed 'SpiffWorkflow/' changes from 450ef3bcd..98c6294f1
98c6294f1 Merge pull request #287 from sartography/feature/workflow_data_exceptions
d40a1da59 Workflow Data Exceptions were broken in the previous error refactor.  This assures we are getting good messages from these errors.
a156378e1 Merge pull request #286 from sartography/feature/inclusive-gateway-support
7f6e398c2 bypass unnecessary checks in gateway joins
ade21a894 revert a few things
e1cf75202 Merge branch 'main' into feature/inclusive-gateway-support
15a0a4414 revert change to MultiChoice and handle no defaults in BPMN specs
e1469e6bb add support for diverging inclusive gateways
71fd86386 really prevent non-default flows without conditions
924759d9b clean up join specs
7378639d3 Merge pull request #284 from sartography/feature/improved-timer-events
dc8d139d2 remove useless method
530f23697 Merge branch 'main' into feature/improved-timer-events
307cca9c5 partially clean up existing gateways
0a344285e clean up task parsers
2cef997d1 add waiting_events method to bpmn workflow
48091c407 serializer migration script and miscellaneous fixes to serialization
61316854b store internal timer data as string/float
389c14c4c add some tests for parsing durations
582bc9482 convert timers to iso 8601
6dfd7ebe9 remove extraneous calls to update
6bd429529 clean up tests
d56e9912f remove useless method

git-subtree-dir: SpiffWorkflow
git-subtree-split: 98c6294f1240aee599cd98bcee58d121cb57b331
2023-01-26 18:17:35 -05:00

162 lines
8.4 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="Definitions_10tix8p" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="4.11.1">
<bpmn:process id="boundary_event" name="&#10;&#10;" isExecutable="true">
<bpmn:startEvent id="StartEvent_1">
<bpmn:outgoing>Flow_1pbxbk9</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:subProcess id="Subworkflow">
<bpmn:incoming>Flow_1jnwt7c</bpmn:incoming>
<bpmn:outgoing>Flow_0f0f7wg</bpmn:outgoing>
<bpmn:startEvent id="Event_0jwaisd">
<bpmn:outgoing>Flow_0vmzw8v</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:userTask id="Activity_Pester_Dad" name="Are we there yet?&#10;&#10;" camunda:formKey="PesterForm">
<bpmn:extensionElements>
<camunda:formData>
<camunda:formField id="answer" label="Are We There Yet" type="string" defaultValue="No" />
</camunda:formData>
</bpmn:extensionElements>
<bpmn:incoming>Flow_0vmzw8v</bpmn:incoming>
<bpmn:incoming>Flow_0hkqchr</bpmn:incoming>
<bpmn:outgoing>Flow_0axldsu</bpmn:outgoing>
</bpmn:userTask>
<bpmn:sequenceFlow id="Flow_0vmzw8v" sourceRef="Event_0jwaisd" targetRef="Activity_Pester_Dad" />
<bpmn:endEvent id="Event_0lasqgj">
<bpmn:incoming>Flow_0q65w45</bpmn:incoming>
</bpmn:endEvent>
<bpmn:exclusiveGateway id="Gateway_17zgs3c" default="Flow_0hkqchr">
<bpmn:incoming>Flow_0axldsu</bpmn:incoming>
<bpmn:outgoing>Flow_0q65w45</bpmn:outgoing>
<bpmn:outgoing>Flow_0hkqchr</bpmn:outgoing>
</bpmn:exclusiveGateway>
<bpmn:sequenceFlow id="Flow_0axldsu" sourceRef="Activity_Pester_Dad" targetRef="Gateway_17zgs3c" />
<bpmn:sequenceFlow id="Flow_0q65w45" name="Yes" sourceRef="Gateway_17zgs3c" targetRef="Event_0lasqgj">
<bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">answer == 'Yes'</bpmn:conditionExpression>
</bpmn:sequenceFlow>
<bpmn:sequenceFlow id="Flow_0hkqchr" name="No" sourceRef="Gateway_17zgs3c" targetRef="Activity_Pester_Dad" />
</bpmn:subProcess>
<bpmn:manualTask id="Activity_1ya1db2" name="Scream head off">
<bpmn:incoming>Flow_0yzqey7</bpmn:incoming>
<bpmn:outgoing>Flow_1v53za5</bpmn:outgoing>
</bpmn:manualTask>
<bpmn:sequenceFlow id="Flow_0yzqey7" sourceRef="Event_0iiih8g" targetRef="Activity_1ya1db2" />
<bpmn:sequenceFlow id="Flow_1pbxbk9" sourceRef="StartEvent_1" targetRef="Activity_09c27ms" />
<bpmn:sequenceFlow id="Flow_0f0f7wg" sourceRef="Subworkflow" targetRef="StopCar" />
<bpmn:sequenceFlow id="Flow_1v53za5" sourceRef="Activity_1ya1db2" targetRef="StopCar" />
<bpmn:endEvent id="Event_000aj7r">
<bpmn:incoming>Flow_0jqkm6y</bpmn:incoming>
</bpmn:endEvent>
<bpmn:sequenceFlow id="Flow_0jqkm6y" sourceRef="StopCar" targetRef="Event_000aj7r" />
<bpmn:manualTask id="StopCar" name="Stop Car">
<bpmn:incoming>Flow_0f0f7wg</bpmn:incoming>
<bpmn:incoming>Flow_1v53za5</bpmn:incoming>
<bpmn:outgoing>Flow_0jqkm6y</bpmn:outgoing>
</bpmn:manualTask>
<bpmn:sequenceFlow id="Flow_1jnwt7c" sourceRef="Activity_09c27ms" targetRef="Subworkflow" />
<bpmn:userTask id="Activity_09c27ms" name="ReadyTogo" camunda:formKey="ReadyToGo">
<bpmn:extensionElements>
<camunda:formData>
<camunda:formField id="initialstuff" label="Ready to go?" type="string" />
</camunda:formData>
</bpmn:extensionElements>
<bpmn:incoming>Flow_1pbxbk9</bpmn:incoming>
<bpmn:outgoing>Flow_1jnwt7c</bpmn:outgoing>
</bpmn:userTask>
<bpmn:boundaryEvent id="Event_0iiih8g" name="FedUp" attachedToRef="Subworkflow">
<bpmn:outgoing>Flow_0yzqey7</bpmn:outgoing>
<bpmn:timerEventDefinition id="TimerEventDefinition_0irxg9m">
<bpmn:timeDuration xsi:type="bpmn:tFormalExpression">"PT0.03S"</bpmn:timeDuration>
</bpmn:timerEventDefinition>
</bpmn:boundaryEvent>
</bpmn:process>
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
<bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="boundary_event">
<bpmndi:BPMNEdge id="Flow_1jnwt7c_di" bpmnElement="Flow_1jnwt7c">
<di:waypoint x="320" y="229" />
<di:waypoint x="370" y="229" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0jqkm6y_di" bpmnElement="Flow_0jqkm6y">
<di:waypoint x="1280" y="220" />
<di:waypoint x="1402" y="220" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1v53za5_di" bpmnElement="Flow_1v53za5">
<di:waypoint x="1000" y="510" />
<di:waypoint x="1230" y="510" />
<di:waypoint x="1230" y="260" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0f0f7wg_di" bpmnElement="Flow_0f0f7wg">
<di:waypoint x="1060" y="220" />
<di:waypoint x="1180" y="220" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1pbxbk9_di" bpmnElement="Flow_1pbxbk9">
<di:waypoint x="198" y="229" />
<di:waypoint x="220" y="229" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0yzqey7_di" bpmnElement="Flow_0yzqey7">
<di:waypoint x="950" y="398" />
<di:waypoint x="950" y="470" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">
<dc:Bounds x="162" y="211" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0ytsuvr_di" bpmnElement="Activity_1ya1db2">
<dc:Bounds x="900" y="470" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0zzr7a4_di" bpmnElement="Subworkflow" isExpanded="true">
<dc:Bounds x="370" y="77" width="690" height="303" />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="Flow_0hkqchr_di" bpmnElement="Flow_0hkqchr">
<di:waypoint x="750" y="202" />
<di:waypoint x="750" y="320" />
<di:waypoint x="620" y="320" />
<di:waypoint x="620" y="217" />
<bpmndi:BPMNLabel>
<dc:Bounds x="678" y="302" width="15" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0q65w45_di" bpmnElement="Flow_0q65w45">
<di:waypoint x="775" y="177" />
<di:waypoint x="952" y="177" />
<bpmndi:BPMNLabel>
<dc:Bounds x="855" y="159" width="19" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0axldsu_di" bpmnElement="Flow_0axldsu">
<di:waypoint x="670" y="177" />
<di:waypoint x="725" y="177" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0vmzw8v_di" bpmnElement="Flow_0vmzw8v">
<di:waypoint x="446" y="177" />
<di:waypoint x="570" y="177" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="Event_0jwaisd_di" bpmnElement="Event_0jwaisd">
<dc:Bounds x="410" y="159" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_11rkn53_di" bpmnElement="Activity_Pester_Dad">
<dc:Bounds x="570" y="137" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_0lasqgj_di" bpmnElement="Event_0lasqgj">
<dc:Bounds x="952" y="159" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Gateway_17zgs3c_di" bpmnElement="Gateway_17zgs3c" isMarkerVisible="true">
<dc:Bounds x="725" y="152" width="50" height="50" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_000aj7r_di" bpmnElement="Event_000aj7r">
<dc:Bounds x="1402" y="202" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1vjvfhi_di" bpmnElement="StopCar">
<dc:Bounds x="1180" y="180" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0q76z8e_di" bpmnElement="Activity_09c27ms">
<dc:Bounds x="220" y="189" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_0fi0bbx_di" bpmnElement="Event_0iiih8g">
<dc:Bounds x="932" y="362" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="934" y="405" width="34" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</bpmn:definitions>