<?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:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.11.3">
  <bpmn:process id="CreateDeviceResource" name="CreateDeviceResource" isExecutable="true">
    <bpmn:endEvent id="EndEvent_1x6k78c" name="create Dev end">
      <bpmn:incoming>SequenceFlow_0auvfvm</bpmn:incoming>
    </bpmn:endEvent>
    <bpmn:scriptTask id="ScriptTask_1g5zyi6" name="Send Sync Ack Response" scriptFormat="groovy">
      <bpmn:incoming>SequenceFlow_05niqbf</bpmn:incoming>
      <bpmn:outgoing>SequenceFlow_0auvfvm</bpmn:outgoing>
      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
def csi = new  CreateDeviceResource()
csi.sendSyncResponse(execution)]]></bpmn:script>
    </bpmn:scriptTask>
    <bpmn:sequenceFlow id="SequenceFlow_05niqbf" sourceRef="Task_0bga3e8" targetRef="ScriptTask_1g5zyi6" />
    <bpmn:sequenceFlow id="SequenceFlow_0auvfvm" sourceRef="ScriptTask_1g5zyi6" targetRef="EndEvent_1x6k78c" />
    <bpmn:callActivity id="Task_0bga3e8" name="call Create SDNC Network Resource" calledElement="CreateSDNCNetworkResource">
      <bpmn:extensionElements>
        <camunda:in source="mso-request-id" target="mso-request-id" />
        <camunda:in source="requestAction" target="requestAction" />
        <camunda:in source="recipeParams" target="recipeParams" />
        <camunda:in source="resourceInput" target="resourceInput" />
        <camunda:in source="recipeParamXsd" target="recipeParamXsd" />
        <camunda:in source="operationId" target="operationId" />
        <camunda:in source="svcAction" target="svcAction" />
        <camunda:in source="requestAction" target="requestAction" />
        <camunda:in source="URN_mso_workflow_sdncadapter_callback" target="URN_mso_workflow_sdncadapter_callback" />
        <camunda:in source="networkRequest" target="networkRequest" />
      </bpmn:extensionElements>
      <bpmn:incoming>SequenceFlow_1gu13by</bpmn:incoming>
      <bpmn:outgoing>SequenceFlow_05niqbf</bpmn:outgoing>
    </bpmn:callActivity>
    <bpmn:startEvent id="StartEvent_1vjxae6" name="createDev_StartEvent">
      <bpmn:outgoing>SequenceFlow_1rwaeun</bpmn:outgoing>
    </bpmn:startEvent>
    <bpmn:intermediateThrowEvent id="IntermediateThrowEvent_1caax8u" name="GoTo StartCreateDevinSDNC">
      <bpmn:incoming>SequenceFlow_1ss02ik</bpmn:incoming>
      <bpmn:linkEventDefinition name="StartCreateDevinSDNC" />
    </bpmn:intermediateThrowEvent>
    <bpmn:scriptTask id="ScriptTask_00y93jj" name="Check DevType" scriptFormat="groovy">
      <bpmn:incoming>SequenceFlow_0rq2jb1</bpmn:incoming>
      <bpmn:outgoing>SequenceFlow_1hp2h5t</bpmn:outgoing>
      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
def dcsi = new CreateDeviceResource()
dcsi.checkDevType(execution)]]></bpmn:script>
    </bpmn:scriptTask>
    <bpmn:exclusiveGateway id="ExclusiveGateway_0kba700" name="Dev Type" default="SequenceFlow_0b5nrig">
      <bpmn:incoming>SequenceFlow_1hp2h5t</bpmn:incoming>
      <bpmn:outgoing>SequenceFlow_1ss02ik</bpmn:outgoing>
      <bpmn:outgoing>SequenceFlow_0h4378g</bpmn:outgoing>
      <bpmn:outgoing>SequenceFlow_0b5nrig</bpmn:outgoing>
    </bpmn:exclusiveGateway>
    <bpmn:intermediateThrowEvent id="IntermediateThrowEvent_1chnlq6" name="GoTo StartCreateDevinSDNC">
      <bpmn:incoming>SequenceFlow_0h4378g</bpmn:incoming>
      <bpmn:linkEventDefinition name="StartCreateDevinSDNC" />
    </bpmn:intermediateThrowEvent>
    <bpmn:sequenceFlow id="SequenceFlow_1ss02ik" name="VNF" sourceRef="ExclusiveGateway_0kba700" targetRef="IntermediateThrowEvent_1caax8u">
      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[#{(execution.getVariable("device_class" )  == "VNF" )}]]></bpmn:conditionExpression>
    </bpmn:sequenceFlow>
    <bpmn:sequenceFlow id="SequenceFlow_1hp2h5t" sourceRef="ScriptTask_00y93jj" targetRef="ExclusiveGateway_0kba700" />
    <bpmn:sequenceFlow id="SequenceFlow_0h4378g" name="PNF" sourceRef="ExclusiveGateway_0kba700" targetRef="IntermediateThrowEvent_1chnlq6">
      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[#{(execution.getVariable("device_class" )  == "PNF" )}]]></bpmn:conditionExpression>
    </bpmn:sequenceFlow>
    <bpmn:sequenceFlow id="SequenceFlow_1rwaeun" sourceRef="StartEvent_1vjxae6" targetRef="ScriptTask_14dav1d" />
    <bpmn:scriptTask id="ScriptTask_14dav1d" name="Pre Process Request" scriptFormat="groovy">
      <bpmn:incoming>SequenceFlow_1rwaeun</bpmn:incoming>
      <bpmn:outgoing>SequenceFlow_0rq2jb1</bpmn:outgoing>
      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
def dcsi = new CreateDeviceResource()
dcsi.preProcessRequest(execution)]]></bpmn:script>
    </bpmn:scriptTask>
    <bpmn:sequenceFlow id="SequenceFlow_0rq2jb1" sourceRef="ScriptTask_14dav1d" targetRef="ScriptTask_00y93jj" />
    <bpmn:intermediateCatchEvent id="IntermediateCatchEvent_0slgrxw" name="StartCreateDevinSDNC">
      <bpmn:outgoing>SequenceFlow_1gu13by</bpmn:outgoing>
      <bpmn:linkEventDefinition name="StartCreateDevinSDNC" />
    </bpmn:intermediateCatchEvent>
    <bpmn:sequenceFlow id="SequenceFlow_1gu13by" sourceRef="IntermediateCatchEvent_0slgrxw" targetRef="Task_0bga3e8" />
    <bpmn:scriptTask id="ScriptTask_0p4b5vu" name="Prepare Create resource progress" scriptFormat="groovy">
      <bpmn:incoming>SequenceFlow_0b5nrig</bpmn:incoming>
      <bpmn:outgoing>SequenceFlow_09s5dfc</bpmn:outgoing>
      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
execution.setVariable("progress", "100")
execution.setVariable("status", "finished")
execution.setVariable("statusDescription", "Finished for the devType")
def dcsi = new CreateDeviceResource()
dcsi.prepareUpdateProgress(execution)]]></bpmn:script>
    </bpmn:scriptTask>
    <bpmn:sequenceFlow id="SequenceFlow_0b5nrig" sourceRef="ExclusiveGateway_0kba700" targetRef="ScriptTask_0p4b5vu" />
    <bpmn:serviceTask id="ServiceTask_08e6hpm" name="resource progress update">
      <bpmn:extensionElements>
        <camunda:connector>
          <camunda:inputOutput>
            <camunda:inputParameter name="url">${CVFMI_dbAdapterEndpoint}</camunda:inputParameter>
            <camunda:inputParameter name="headers">
              <camunda:map>
                <camunda:entry key="content-type">application/soap+xml</camunda:entry>
                <camunda:entry key="Authorization">Basic YnBlbDpwYXNzd29yZDEk</camunda:entry>
              </camunda:map>
            </camunda:inputParameter>
            <camunda:inputParameter name="payload">${CVFMI_updateResOperStatusRequest}</camunda:inputParameter>
            <camunda:inputParameter name="method">POST</camunda:inputParameter>
            <camunda:outputParameter name="CVFMI_dbResponseCode">${statusCode}</camunda:outputParameter>
            <camunda:outputParameter name="CVFMI_dbResponse">${response}</camunda:outputParameter>
          </camunda:inputOutput>
          <camunda:connectorId>http-connector</camunda:connectorId>
        </camunda:connector>
      </bpmn:extensionElements>
      <bpmn:incoming>SequenceFlow_09s5dfc</bpmn:incoming>
      <bpmn:outgoing>SequenceFlow_0kt3xbf</bpmn:outgoing>
    </bpmn:serviceTask>
    <bpmn:sequenceFlow id="SequenceFlow_09s5dfc" sourceRef="ScriptTask_0p4b5vu" targetRef="ServiceTask_08e6hpm" />
    <bpmn:endEvent id="EndEvent_0ntv40y">
      <bpmn:incoming>SequenceFlow_0kt3xbf</bpmn:incoming>
    </bpmn:endEvent>
    <bpmn:sequenceFlow id="SequenceFlow_0kt3xbf" sourceRef="ServiceTask_08e6hpm" targetRef="EndEvent_0ntv40y" />
  </bpmn:process>
  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CreateDeviceResource">
      <bpmndi:BPMNShape id="EndEvent_15pcuuc_di" bpmnElement="EndEvent_1x6k78c">
        <dc:Bounds x="1026" y="111" width="36" height="36" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="994" y="153" width="75" height="12" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape id="ScriptTask_1g5zyi6_di" bpmnElement="ScriptTask_1g5zyi6">
        <dc:Bounds x="494" y="89" width="100" height="80" />
      </bpmndi:BPMNShape>
      <bpmndi:BPMNEdge id="SequenceFlow_05niqbf_di" bpmnElement="SequenceFlow_05niqbf">
        <di:waypoint xsi:type="dc:Point" x="191" y="129" />
        <di:waypoint xsi:type="dc:Point" x="494" y="129" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="297.5" y="104" width="90" height="20" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNEdge id="SequenceFlow_0auvfvm_di" bpmnElement="SequenceFlow_0auvfvm">
        <di:waypoint xsi:type="dc:Point" x="594" y="129" />
        <di:waypoint xsi:type="dc:Point" x="1026" y="129" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="765" y="104" width="90" height="20" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNShape id="CallActivity_0aywvn3_di" bpmnElement="Task_0bga3e8">
        <dc:Bounds x="91" y="89" width="100" height="80" />
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape id="StartEvent_1vjxae6_di" bpmnElement="StartEvent_1vjxae6">
        <dc:Bounds x="-188" y="-145" width="36" height="36" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="-211" y="-109" width="88" height="24" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape id="IntermediateThrowEvent_1caax8u_di" bpmnElement="IntermediateThrowEvent_1caax8u">
        <dc:Bounds x="1026" y="-145" width="36" height="36" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="1009" y="-104" width="78" height="36" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape id="ScriptTask_00y93jj_di" bpmnElement="ScriptTask_00y93jj">
        <dc:Bounds x="141" y="-167" width="100" height="80" />
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape id="ExclusiveGateway_0kba700_di" bpmnElement="ExclusiveGateway_0kba700" isMarkerVisible="true">
        <dc:Bounds x="334" y="-152" width="50" height="50" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="302" y="-166" width="48" height="12" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape id="IntermediateThrowEvent_1chnlq6_di" bpmnElement="IntermediateThrowEvent_1chnlq6">
        <dc:Bounds x="341" y="-28" width="36" height="36" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="325" y="13" width="78" height="36" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNShape>
      <bpmndi:BPMNEdge id="SequenceFlow_1ss02ik_di" bpmnElement="SequenceFlow_1ss02ik">
        <di:waypoint xsi:type="dc:Point" x="384" y="-127" />
        <di:waypoint xsi:type="dc:Point" x="1026" y="-127" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="696.8437500000002" y="-148" width="23" height="12" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNEdge id="SequenceFlow_1hp2h5t_di" bpmnElement="SequenceFlow_1hp2h5t">
        <di:waypoint xsi:type="dc:Point" x="241" y="-127" />
        <di:waypoint xsi:type="dc:Point" x="334" y="-127" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="242.5" y="-148" width="90" height="12" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNEdge id="SequenceFlow_0h4378g_di" bpmnElement="SequenceFlow_0h4378g">
        <di:waypoint xsi:type="dc:Point" x="359" y="-102" />
        <di:waypoint xsi:type="dc:Point" x="359" y="-28" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="365" y="-67.27272727272728" width="22" height="12" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNEdge id="SequenceFlow_1rwaeun_di" bpmnElement="SequenceFlow_1rwaeun">
        <di:waypoint xsi:type="dc:Point" x="-152" y="-127" />
        <di:waypoint xsi:type="dc:Point" x="-53" y="-127" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="-147.5" y="-148" width="90" height="12" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNShape id="ScriptTask_14dav1d_di" bpmnElement="ScriptTask_14dav1d">
        <dc:Bounds x="-53" y="-167" width="100" height="80" />
      </bpmndi:BPMNShape>
      <bpmndi:BPMNEdge id="SequenceFlow_0rq2jb1_di" bpmnElement="SequenceFlow_0rq2jb1">
        <di:waypoint xsi:type="dc:Point" x="47" y="-127" />
        <di:waypoint xsi:type="dc:Point" x="141" y="-127" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="49" y="-148" width="90" height="12" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNShape id="IntermediateCatchEvent_0slgrxw_di" bpmnElement="IntermediateCatchEvent_0slgrxw">
        <dc:Bounds x="-188" y="111" width="36" height="36" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="-203" y="147" width="79" height="24" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNShape>
      <bpmndi:BPMNEdge id="SequenceFlow_1gu13by_di" bpmnElement="SequenceFlow_1gu13by">
        <di:waypoint xsi:type="dc:Point" x="-152" y="129" />
        <di:waypoint xsi:type="dc:Point" x="91" y="129" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="-75.5" y="108" width="90" height="12" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNShape id="ScriptTask_0p4b5vu_di" bpmnElement="ScriptTask_0p4b5vu">
        <dc:Bounds x="309" y="-290" width="100" height="80" />
      </bpmndi:BPMNShape>
      <bpmndi:BPMNEdge id="SequenceFlow_0b5nrig_di" bpmnElement="SequenceFlow_0b5nrig">
        <di:waypoint xsi:type="dc:Point" x="359" y="-152" />
        <di:waypoint xsi:type="dc:Point" x="359" y="-181" />
        <di:waypoint xsi:type="dc:Point" x="359" y="-181" />
        <di:waypoint xsi:type="dc:Point" x="359" y="-210" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="374" y="-187" width="0" height="12" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNShape id="ServiceTask_08e6hpm_di" bpmnElement="ServiceTask_08e6hpm">
        <dc:Bounds x="530" y="-290" width="100" height="80" />
      </bpmndi:BPMNShape>
      <bpmndi:BPMNEdge id="SequenceFlow_09s5dfc_di" bpmnElement="SequenceFlow_09s5dfc">
        <di:waypoint xsi:type="dc:Point" x="409" y="-250" />
        <di:waypoint xsi:type="dc:Point" x="477" y="-250" />
        <di:waypoint xsi:type="dc:Point" x="477" y="-250" />
        <di:waypoint xsi:type="dc:Point" x="530" y="-250" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="492" y="-256" width="0" height="12" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNShape id="EndEvent_0ntv40y_di" bpmnElement="EndEvent_0ntv40y">
        <dc:Bounds x="705" y="-268" width="36" height="36" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="723" y="-228" width="0" height="12" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNShape>
      <bpmndi:BPMNEdge id="SequenceFlow_0kt3xbf_di" bpmnElement="SequenceFlow_0kt3xbf">
        <di:waypoint xsi:type="dc:Point" x="630" y="-250" />
        <di:waypoint xsi:type="dc:Point" x="705" y="-250" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="667.5" y="-271" width="0" height="12" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNEdge>
    </bpmndi:BPMNPlane>
  </bpmndi:BPMNDiagram>
</bpmn:definitions>