modify deployment process
authorDavid Kaufmann <david.kaufmann@student.tuwien.ac.at>
Thu, 8 Nov 2018 21:38:39 +0000 (22:38 +0100)
committerDavid Kaufmann <david.kaufmann@student.tuwien.ac.at>
Thu, 8 Nov 2018 21:40:44 +0000 (22:40 +0100)
camunda-overlay/camunda-deploy.sh [deleted file]
camunda-overlay/camunda.py [new file with mode: 0755]
camunda-overlay/sentiment-analysis.bpmn

diff --git a/camunda-overlay/camunda-deploy.sh b/camunda-overlay/camunda-deploy.sh
deleted file mode 100755 (executable)
index 1158825..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/bin/sh
-
-camunda="http://localhost:8080"
-camunda_deployment="${camunda}/engine-rest/deployment"
-deployment_name="Sentiment Analysis"
-
-# find old deployments named ${deployment_name}
-old_ids=`curl -s ${camunda_deployment}/ | python3 -c "import sys, json; doc = json.load(sys.stdin); items = [deployment['id'] for deployment in doc if deployment['name'] == '${deployment_name}']; print (*items, sep = '\n')"`
-# delete all old deployments
-for old_id in ${old_ids}; do
-       curl -s -X DELETE "${camunda_deployment}/${old_id}?cascade=true"
-done
-
-# deploy new verson
-curl -si "${camunda_deployment}/create" \
-        -H "Expect:" \
-        -F "deployment-name=${deployment_name}" \
-        -F "sentiment-analysis.bpmn=@sentiment-analysis.bpmn" \
-        -F "input-forms.html=@forms/input-terms.html" \
-        -F "download-pdf.html=@forms/download-pdf.html"
diff --git a/camunda-overlay/camunda.py b/camunda-overlay/camunda.py
new file mode 100755 (executable)
index 0000000..486e8a2
--- /dev/null
@@ -0,0 +1,62 @@
+#!/usr/bin/env python3
+
+import sys
+import os
+import json
+import requests
+import argparse
+
+CAMUNDA="http://localhost:8080/engine-rest/"
+
+def get_current_deployments(key = 'sentiment-analysis'):
+    res = requests.get(CAMUNDA + "deployment")
+    return [proc for proc in res.json() if proc['name'] == key]
+
+def cleanup_old_deployments(key='sentiment-analysis'):
+    print ("Cleaning up old deployments")
+    for deployment in get_current_deployments(key):
+        res = requests.delete(CAMUNDA + "deployment/" + deployment['id'] + "?cascade=true")
+        if (res.status_code == 204):
+            print ("Cleaned up deployment {}".format(deployment['id']))
+        else:
+            print ("Error cleaning old deployment {}: Code: {}".format(deployment['id'], res.status_code))
+
+def create_deployment(initial=False):
+    files = [
+            ("deployment-name", "sentiment-analysis"),
+            ("file1", open("sentiment-analysis.bpmn")),
+            ("file2", open("forms/input-terms.html")),
+            ("file3", open("forms/download-pdf.html")),
+            ]
+    if not initial:
+        cleanup_old_deployments()
+    res = requests.post(CAMUNDA + "deployment/create", files=files)
+    if (res.status_code == 200):
+        print ("Successfully deployed Sentiment Analysis")
+    else:
+        from pprint import pprint
+        pprint ("Status Code: {}".format(res.status_code))
+        try:
+            pprint(res.json())
+        except:
+            pprint(res.content)
+
+def submit_terms(terms=[]):
+    termlist = [{'term': term} for term in terms]
+    # submit to camunda
+    pass
+
+if __name__ == "__main__":
+    parser = argparse.ArgumentParser()
+    parser.add_argument('--deploy', dest='deploy', default=True, action='store_false', help="Do deployment step")
+    parser.add_argument('--initial', dest='initial', default=False, action='store_true', help="Initial deploy does not need cleanup")
+    parser.add_argument('--autoclick', dest='autoclick', type=int, nargs=1, help="How many steps to autoclick")
+    args = parser.parse_args()
+
+    if args.deploy:
+        # initialize camunda process
+        create_deployment(initial=args.initial)
+
+    if args.autoclick >= 1:
+        # start clicking
+        submit_terms(["voting", "phonegate", "35c3"])
index 29e6337acdd96d5932eb9a56143a913711caf71c..f5a55e8d6a1e87bebc6ecfd81079dfb6cb3eb0a1 100644 (file)
@@ -1,29 +1,10 @@
 <?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:di="http://www.omg.org/spec/DD/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" id="Definitions_0co5an7" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="2.0.3">
   <bpmn:collaboration id="Collaboration_1x8eoy3">
-    <bpmn:participant id="Participant_0gzc3m9" name="Sentiment Analysis" processRef="Sentiment_Analysis" />
+    <bpmn:participant id="Participant_0gzc3m9" name="Sentiment Analysis" processRef="sentiment-analysis" />
   </bpmn:collaboration>
-  <bpmn:process id="Sentiment_Analysis" name="Sentiment Analysis" isExecutable="true" camunda:versionTag="0.0.1">
+  <bpmn:process id="sentiment-analysis" name="Sentiment Analysis" isExecutable="true" camunda:versionTag="0.0.1">
     <bpmn:laneSet id="LaneSet_1u08y0e" />
-    <bpmn:sequenceFlow id="SequenceFlow_0ez6lnk" sourceRef="Task_1tosag4" targetRef="Task_1e7059p" />
-    <bpmn:sequenceFlow id="SequenceFlow_0f33zny" sourceRef="Task_14xmt44" targetRef="IntermediateCatchEvent_050nd2m" />
-    <bpmn:sequenceFlow id="SequenceFlow_11xavl5" sourceRef="StartEvent_1t6nxib" targetRef="Task_14xmt44" />
-    <bpmn:sequenceFlow id="SequenceFlow_0tu3w40" sourceRef="IntermediateThrowEvent_1u3snd0" targetRef="EndEvent_0bmuv13" />
-    <bpmn:sequenceFlow id="SequenceFlow_0ra8hjs" sourceRef="IntermediateThrowEvent_09eb9xc" targetRef="Task_1tosag4" />
-    <bpmn:sequenceFlow id="SequenceFlow_0yqo6md" sourceRef="IntermediateThrowEvent_1pwlz5c" targetRef="ExclusiveGateway_0onybdl" />
-    <bpmn:sequenceFlow id="SequenceFlow_0e9hshn" sourceRef="IntermediateThrowEvent_0d8ns1p" targetRef="Task_1kanz3j" />
-    <bpmn:sequenceFlow id="SequenceFlow_12s5p9s" sourceRef="IntermediateThrowEvent_1rxh4ec" targetRef="Task_1n6iu8h" />
-    <bpmn:sequenceFlow id="SequenceFlow_0fct5f2" sourceRef="IntermediateThrowEvent_192yjst" targetRef="Task_1cfglzc" />
-    <bpmn:sequenceFlow id="SequenceFlow_1inwzje" sourceRef="IntermediateThrowEvent_0zbs0zv" targetRef="Task_1rt5mbt" />
-    <bpmn:sequenceFlow id="SequenceFlow_1gdqfur" sourceRef="Task_1kanz3j" targetRef="IntermediateThrowEvent_0zbs0zv" />
-    <bpmn:sequenceFlow id="SequenceFlow_0jebdb9" sourceRef="Task_1e7059p" targetRef="IntermediateThrowEvent_1u3snd0" />
-    <bpmn:sequenceFlow id="SequenceFlow_03ohp0o" sourceRef="Task_1tosag4" targetRef="IntermediateThrowEvent_1rxh4ec" />
-    <bpmn:sequenceFlow id="SequenceFlow_0okj60f" name="All terms are analyzed" sourceRef="ExclusiveGateway_0onybdl" targetRef="IntermediateThrowEvent_09eb9xc">
-      <bpmn:documentation>All terms are analyzed</bpmn:documentation>
-      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${terms}==[]</bpmn:conditionExpression>
-    </bpmn:sequenceFlow>
-    <bpmn:sequenceFlow id="SequenceFlow_10v2c9r" sourceRef="ExclusiveGateway_0onybdl" targetRef="IntermediateThrowEvent_0d8ns1p" />
-    <bpmn:sequenceFlow id="SequenceFlow_1gbx7mw" sourceRef="Task_1kanz3j" targetRef="IntermediateThrowEvent_1pwlz5c" />
     <bpmn:endEvent id="EndEvent_0bmuv13">
       <bpmn:incoming>SequenceFlow_0tu3w40</bpmn:incoming>
     </bpmn:endEvent>
@@ -62,8 +43,6 @@
       <bpmn:incoming>SequenceFlow_1inwzje</bpmn:incoming>
       <bpmn:outgoing>SequenceFlow_0h1h7gs</bpmn:outgoing>
     </bpmn:task>
-    <bpmn:sequenceFlow id="SequenceFlow_0h1h7gs" sourceRef="Task_1rt5mbt" targetRef="IntermediateCatchEvent_1h9izac" />
-    <bpmn:sequenceFlow id="SequenceFlow_0bzf3di" sourceRef="Task_1slpwnp" targetRef="IntermediateThrowEvent_192yjst" />
     <bpmn:task id="Task_1cfglzc" name="Analysis Service">
       <bpmn:incoming>SequenceFlow_0fct5f2</bpmn:incoming>
     </bpmn:task>
@@ -85,7 +64,6 @@
         <bpmn:timeDuration xsi:type="bpmn:tFormalExpression">PT1M</bpmn:timeDuration>
       </bpmn:timerEventDefinition>
     </bpmn:intermediateCatchEvent>
-    <bpmn:sequenceFlow id="SequenceFlow_07bm292" sourceRef="IntermediateCatchEvent_1h9izac" targetRef="Task_1slpwnp" />
     <bpmn:intermediateCatchEvent id="IntermediateThrowEvent_1pwlz5c">
       <bpmn:incoming>SequenceFlow_1gbx7mw</bpmn:incoming>
       <bpmn:outgoing>SequenceFlow_0yqo6md</bpmn:outgoing>
       <bpmn:outgoing>SequenceFlow_1gbx7mw</bpmn:outgoing>
       <bpmn:script>""</bpmn:script>
     </bpmn:scriptTask>
-    <bpmn:sequenceFlow id="SequenceFlow_11ge7w6" sourceRef="IntermediateCatchEvent_050nd2m" targetRef="Task_1kanz3j" />
     <bpmn:intermediateCatchEvent id="IntermediateCatchEvent_050nd2m">
       <bpmn:incoming>SequenceFlow_0f33zny</bpmn:incoming>
       <bpmn:outgoing>SequenceFlow_11ge7w6</bpmn:outgoing>
@@ -145,167 +122,190 @@ nt["term"] = "newterm"
 terms += nt
 return ""</bpmn:script>
     </bpmn:scriptTask>
-    <bpmn:association id="Association_1bcr79m" sourceRef="Task_1cfglzc" targetRef="TextAnnotation_08dib8t" />
+    <bpmn:sequenceFlow id="SequenceFlow_0ez6lnk" sourceRef="Task_1tosag4" targetRef="Task_1e7059p" />
+    <bpmn:sequenceFlow id="SequenceFlow_0f33zny" sourceRef="Task_14xmt44" targetRef="IntermediateCatchEvent_050nd2m" />
+    <bpmn:sequenceFlow id="SequenceFlow_11xavl5" sourceRef="StartEvent_1t6nxib" targetRef="Task_14xmt44" />
+    <bpmn:sequenceFlow id="SequenceFlow_0tu3w40" sourceRef="IntermediateThrowEvent_1u3snd0" targetRef="EndEvent_0bmuv13" />
+    <bpmn:sequenceFlow id="SequenceFlow_0ra8hjs" sourceRef="IntermediateThrowEvent_09eb9xc" targetRef="Task_1tosag4" />
+    <bpmn:sequenceFlow id="SequenceFlow_0yqo6md" sourceRef="IntermediateThrowEvent_1pwlz5c" targetRef="ExclusiveGateway_0onybdl" />
+    <bpmn:sequenceFlow id="SequenceFlow_0e9hshn" sourceRef="IntermediateThrowEvent_0d8ns1p" targetRef="Task_1kanz3j" />
+    <bpmn:sequenceFlow id="SequenceFlow_12s5p9s" sourceRef="IntermediateThrowEvent_1rxh4ec" targetRef="Task_1n6iu8h" />
+    <bpmn:sequenceFlow id="SequenceFlow_0fct5f2" sourceRef="IntermediateThrowEvent_192yjst" targetRef="Task_1cfglzc" />
+    <bpmn:sequenceFlow id="SequenceFlow_1inwzje" sourceRef="IntermediateThrowEvent_0zbs0zv" targetRef="Task_1rt5mbt" />
+    <bpmn:sequenceFlow id="SequenceFlow_1gdqfur" sourceRef="Task_1kanz3j" targetRef="IntermediateThrowEvent_0zbs0zv" />
+    <bpmn:sequenceFlow id="SequenceFlow_0jebdb9" sourceRef="Task_1e7059p" targetRef="IntermediateThrowEvent_1u3snd0" />
+    <bpmn:sequenceFlow id="SequenceFlow_03ohp0o" sourceRef="Task_1tosag4" targetRef="IntermediateThrowEvent_1rxh4ec" />
+    <bpmn:sequenceFlow id="SequenceFlow_0okj60f" name="All terms are analyzed" sourceRef="ExclusiveGateway_0onybdl" targetRef="IntermediateThrowEvent_09eb9xc">
+      <bpmn:documentation>All terms are analyzed</bpmn:documentation>
+      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${terms}==[]</bpmn:conditionExpression>
+    </bpmn:sequenceFlow>
+    <bpmn:sequenceFlow id="SequenceFlow_10v2c9r" sourceRef="ExclusiveGateway_0onybdl" targetRef="IntermediateThrowEvent_0d8ns1p" />
+    <bpmn:sequenceFlow id="SequenceFlow_1gbx7mw" sourceRef="Task_1kanz3j" targetRef="IntermediateThrowEvent_1pwlz5c" />
+    <bpmn:sequenceFlow id="SequenceFlow_0h1h7gs" sourceRef="Task_1rt5mbt" targetRef="IntermediateCatchEvent_1h9izac" />
+    <bpmn:sequenceFlow id="SequenceFlow_0bzf3di" sourceRef="Task_1slpwnp" targetRef="IntermediateThrowEvent_192yjst" />
+    <bpmn:sequenceFlow id="SequenceFlow_07bm292" sourceRef="IntermediateCatchEvent_1h9izac" targetRef="Task_1slpwnp" />
+    <bpmn:sequenceFlow id="SequenceFlow_11ge7w6" sourceRef="IntermediateCatchEvent_050nd2m" targetRef="Task_1kanz3j" />
     <bpmn:textAnnotation id="TextAnnotation_08dib8t">
       <bpmn:text>collect all analyze results</bpmn:text>
     </bpmn:textAnnotation>
+    <bpmn:association id="Association_1bcr79m" sourceRef="Task_1cfglzc" targetRef="TextAnnotation_08dib8t" />
   </bpmn:process>
   <bpmndi:BPMNDiagram id="BPMNDiagram_1">
     <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Collaboration_1x8eoy3">
       <bpmndi:BPMNShape id="Participant_0gzc3m9_di" bpmnElement="Participant_0gzc3m9">
-        <dc:Bounds x="93" y="-237" width="1444" height="543" />
+        <dc:Bounds x="0" y="0" width="1380" height="352" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape id="EndEvent_0bmuv13_di" bpmnElement="EndEvent_0bmuv13">
-        <dc:Bounds x="1393" y="185" width="36" height="36" />
+        <dc:Bounds x="1306" y="231" width="36" height="36" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape id="StartEvent_1t6nxib_di" bpmnElement="StartEvent_1t6nxib">
-        <dc:Bounds x="137" y="185" width="36" height="36" />
+        <dc:Bounds x="50" y="231" width="36" height="36" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNEdge id="SequenceFlow_03ohp0o_di" bpmnElement="SequenceFlow_03ohp0o">
-        <di:waypoint x="1070" y="163" />
-        <di:waypoint x="1070" y="132" />
+        <di:waypoint x="983" y="209" />
+        <di:waypoint x="983" y="178" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNEdge id="SequenceFlow_0okj60f_di" bpmnElement="SequenceFlow_0okj60f">
-        <di:waypoint x="701" y="203" />
-        <di:waypoint x="875" y="203" />
+        <di:waypoint x="614" y="249" />
+        <di:waypoint x="788" y="249" />
         <bpmndi:BPMNLabel>
-          <dc:Bounds x="753" y="189" width="62" height="27" />
+          <dc:Bounds x="666" y="235" width="62" height="27" />
         </bpmndi:BPMNLabel>
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNEdge id="SequenceFlow_10v2c9r_di" bpmnElement="SequenceFlow_10v2c9r">
-        <di:waypoint x="676" y="228" />
-        <di:waypoint x="676" y="277" />
-        <di:waypoint x="566" y="277" />
+        <di:waypoint x="589" y="274" />
+        <di:waypoint x="589" y="323" />
+        <di:waypoint x="479" y="323" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNEdge id="SequenceFlow_1gbx7mw_di" bpmnElement="SequenceFlow_1gbx7mw">
-        <di:waypoint x="477" y="203" />
-        <di:waypoint x="530" y="203" />
+        <di:waypoint x="390" y="249" />
+        <di:waypoint x="443" y="249" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNShape id="ExclusiveGateway_0pzjnfx_di" bpmnElement="ExclusiveGateway_0onybdl" isMarkerVisible="true">
-        <dc:Bounds x="651" y="178" width="50" height="50" />
+        <dc:Bounds x="564" y="224" width="50" height="50" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNEdge id="SequenceFlow_0jebdb9_di" bpmnElement="SequenceFlow_0jebdb9">
-        <di:waypoint x="1286" y="203" />
-        <di:waypoint x="1320" y="203" />
+        <di:waypoint x="1199" y="249" />
+        <di:waypoint x="1233" y="249" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNShape id="UserTask_0iooc2g_di" bpmnElement="Task_1e7059p">
-        <dc:Bounds x="1186" y="163" width="100" height="80" />
+        <dc:Bounds x="1099" y="209" width="100" height="80" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape id="IntermediateCatchEvent_1dguuge_di" bpmnElement="IntermediateThrowEvent_0zbs0zv">
-        <dc:Bounds x="409" y="96" width="36" height="36" />
+        <dc:Bounds x="322" y="142" width="36" height="36" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNEdge id="SequenceFlow_1gdqfur_di" bpmnElement="SequenceFlow_1gdqfur">
-        <di:waypoint x="427" y="163" />
-        <di:waypoint x="427" y="132" />
+        <di:waypoint x="340" y="209" />
+        <di:waypoint x="340" y="178" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNEdge id="SequenceFlow_1inwzje_di" bpmnElement="SequenceFlow_1inwzje">
-        <di:waypoint x="427" y="96" />
-        <di:waypoint x="427" y="66" />
+        <di:waypoint x="340" y="142" />
+        <di:waypoint x="340" y="112" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNEdge id="SequenceFlow_0fct5f2_di" bpmnElement="SequenceFlow_0fct5f2">
-        <di:waypoint x="804" y="26" />
-        <di:waypoint x="843" y="26" />
+        <di:waypoint x="717" y="72" />
+        <di:waypoint x="756" y="72" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNShape id="IntermediateCatchEvent_1vje2lu_di" bpmnElement="IntermediateThrowEvent_192yjst">
-        <dc:Bounds x="768" y="8" width="36" height="36" />
+        <dc:Bounds x="681" y="54" width="36" height="36" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNEdge id="SequenceFlow_12s5p9s_di" bpmnElement="SequenceFlow_12s5p9s">
-        <di:waypoint x="1070" y="96" />
-        <di:waypoint x="1070" y="66" />
+        <di:waypoint x="983" y="142" />
+        <di:waypoint x="983" y="112" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNEdge id="SequenceFlow_0e9hshn_di" bpmnElement="SequenceFlow_0e9hshn">
-        <di:waypoint x="530" y="277" />
-        <di:waypoint x="427" y="277" />
-        <di:waypoint x="427" y="243" />
+        <di:waypoint x="443" y="323" />
+        <di:waypoint x="340" y="323" />
+        <di:waypoint x="340" y="289" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNEdge id="SequenceFlow_0yqo6md_di" bpmnElement="SequenceFlow_0yqo6md">
-        <di:waypoint x="566" y="203" />
-        <di:waypoint x="651" y="203" />
+        <di:waypoint x="479" y="249" />
+        <di:waypoint x="564" y="249" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNEdge id="SequenceFlow_0ra8hjs_di" bpmnElement="SequenceFlow_0ra8hjs">
-        <di:waypoint x="911" y="203" />
-        <di:waypoint x="1020" y="203" />
+        <di:waypoint x="824" y="249" />
+        <di:waypoint x="933" y="249" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNEdge id="SequenceFlow_0tu3w40_di" bpmnElement="SequenceFlow_0tu3w40">
-        <di:waypoint x="1356" y="203" />
-        <di:waypoint x="1393" y="203" />
+        <di:waypoint x="1269" y="249" />
+        <di:waypoint x="1306" y="249" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNShape id="IntermediateCatchEvent_15xr8tf_di" bpmnElement="IntermediateThrowEvent_0d8ns1p">
-        <dc:Bounds x="530" y="259" width="36" height="36" />
+        <dc:Bounds x="443" y="305" width="36" height="36" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape id="IntermediateCatchEvent_16kp9qx_di" bpmnElement="IntermediateThrowEvent_1pwlz5c">
-        <dc:Bounds x="530" y="185" width="36" height="36" />
+        <dc:Bounds x="443" y="231" width="36" height="36" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape id="IntermediateCatchEvent_1k8uu2s_di" bpmnElement="IntermediateThrowEvent_09eb9xc">
-        <dc:Bounds x="875" y="185" width="36" height="36" />
+        <dc:Bounds x="788" y="231" width="36" height="36" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape id="IntermediateCatchEvent_0l6h0iz_di" bpmnElement="IntermediateThrowEvent_1rxh4ec">
-        <dc:Bounds x="1052" y="96" width="36" height="36" />
+        <dc:Bounds x="965" y="142" width="36" height="36" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape id="IntermediateCatchEvent_14dhjgv_di" bpmnElement="IntermediateThrowEvent_1u3snd0">
-        <dc:Bounds x="1320" y="185" width="36" height="36" />
+        <dc:Bounds x="1233" y="231" width="36" height="36" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape id="Task_19kl2q9_di" bpmnElement="Task_1rt5mbt">
-        <dc:Bounds x="377" y="-14" width="100" height="80" />
+        <dc:Bounds x="290" y="32" width="100" height="80" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape id="Task_1walrai_di" bpmnElement="Task_1cfglzc">
-        <dc:Bounds x="843" y="-14" width="100" height="80" />
+        <dc:Bounds x="756" y="32" width="100" height="80" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape id="Task_0pek2di_di" bpmnElement="Task_1n6iu8h">
-        <dc:Bounds x="1020" y="-14" width="100" height="80" />
+        <dc:Bounds x="933" y="32" width="100" height="80" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape id="ScriptTask_1ui5yru_di" bpmnElement="Task_14xmt44">
-        <dc:Bounds x="203" y="163" width="100" height="80" />
+        <dc:Bounds x="116" y="209" width="100" height="80" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNEdge id="SequenceFlow_11xavl5_di" bpmnElement="SequenceFlow_11xavl5">
-        <di:waypoint x="173" y="203" />
-        <di:waypoint x="203" y="203" />
+        <di:waypoint x="86" y="249" />
+        <di:waypoint x="116" y="249" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNEdge id="SequenceFlow_0f33zny_di" bpmnElement="SequenceFlow_0f33zny">
-        <di:waypoint x="303" y="203" />
-        <di:waypoint x="323" y="203" />
+        <di:waypoint x="216" y="249" />
+        <di:waypoint x="236" y="249" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNEdge id="SequenceFlow_0ez6lnk_di" bpmnElement="SequenceFlow_0ez6lnk">
-        <di:waypoint x="1120" y="203" />
-        <di:waypoint x="1186" y="203" />
+        <di:waypoint x="1033" y="249" />
+        <di:waypoint x="1099" y="249" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNEdge id="SequenceFlow_0h1h7gs_di" bpmnElement="SequenceFlow_0h1h7gs">
-        <di:waypoint x="477" y="26" />
-        <di:waypoint x="530" y="26" />
+        <di:waypoint x="390" y="72" />
+        <di:waypoint x="443" y="72" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNEdge id="SequenceFlow_0bzf3di_di" bpmnElement="SequenceFlow_0bzf3di">
-        <di:waypoint x="726" y="26" />
-        <di:waypoint x="768" y="26" />
+        <di:waypoint x="639" y="72" />
+        <di:waypoint x="681" y="72" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNShape id="ScriptTask_1wgv8e0_di" bpmnElement="Task_1slpwnp">
-        <dc:Bounds x="626" y="-14" width="100" height="80" />
+        <dc:Bounds x="539" y="32" width="100" height="80" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape id="TextAnnotation_08dib8t_di" bpmnElement="TextAnnotation_08dib8t">
-        <dc:Bounds x="908" y="112" width="100" height="40" />
+        <dc:Bounds x="821" y="158" width="100" height="40" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNEdge id="Association_1bcr79m_di" bpmnElement="Association_1bcr79m">
-        <di:waypoint x="918" y="66" />
-        <di:waypoint x="946" y="112" />
+        <di:waypoint x="831" y="112" />
+        <di:waypoint x="859" y="158" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNShape id="ScriptTask_0h8sco9_di" bpmnElement="Task_1tosag4">
-        <dc:Bounds x="1020" y="163" width="100" height="80" />
+        <dc:Bounds x="933" y="209" width="100" height="80" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape id="IntermediateCatchEvent_1h9izac_di" bpmnElement="IntermediateCatchEvent_1h9izac">
-        <dc:Bounds x="530" y="8" width="36" height="36" />
+        <dc:Bounds x="443" y="54" width="36" height="36" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNEdge id="SequenceFlow_07bm292_di" bpmnElement="SequenceFlow_07bm292">
-        <di:waypoint x="566" y="26" />
-        <di:waypoint x="626" y="26" />
+        <di:waypoint x="479" y="72" />
+        <di:waypoint x="539" y="72" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNShape id="ScriptTask_1yoc45k_di" bpmnElement="Task_1kanz3j">
-        <dc:Bounds x="377" y="163" width="100" height="80" />
+        <dc:Bounds x="290" y="209" width="100" height="80" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape id="IntermediateCatchEvent_050nd2m_di" bpmnElement="IntermediateCatchEvent_050nd2m">
-        <dc:Bounds x="323" y="185" width="36" height="36" />
+        <dc:Bounds x="236" y="231" width="36" height="36" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNEdge id="SequenceFlow_11ge7w6_di" bpmnElement="SequenceFlow_11ge7w6">
-        <di:waypoint x="359" y="203" />
-        <di:waypoint x="377" y="203" />
+        <di:waypoint x="272" y="249" />
+        <di:waypoint x="290" y="249" />
       </bpmndi:BPMNEdge>
     </bpmndi:BPMNPlane>
   </bpmndi:BPMNDiagram>