wan-connection bug fix for ccvpn 05/70905/1
authorZhuoyao Huang <10112215@zte.com.cn>
Mon, 22 Oct 2018 01:45:28 +0000 (09:45 +0800)
committerZhuoyao Huang <10112215@zte.com.cn>
Mon, 22 Oct 2018 01:45:28 +0000 (09:45 +0800)
Issue-ID: SDNC-354

Change-Id: I3f867b657b2f86f4c2ee0b49580d2cfad1bdd6d9
Signed-off-by: Zhuoyao Huang <10112215@zte.com.cn>
Former-commit-id: 75163854e97cc1d7fc71df510c8ea6c4458e537e

platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-activate.json
platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-create.json
platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-activate.xml
platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-create.xml

index 5fd9bb3..7c05076 100644 (file)
@@ -1,16 +1,16 @@
 [{
-       "id": "17edfd48.067fb3",
+       "id": "dbc4ca7a.fecf48",
        "type": "dgstart",
        "name": "DGSTART",
        "outputs": 1,
-       "x": 100.01040649414062,
-       "y": 68.01041412353516,
-       "z": "e09ddcb4.62be2",
+       "x": 134.03125,
+       "y": 92.03125,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["e615e2a2.ccf4f"]
+               ["72a66a2c.06a7e4"]
        ]
 }, {
-       "id": "e615e2a2.ccf4f",
+       "id": "72a66a2c.06a7e4",
        "type": "service-logic",
        "name": "GENERIC-RESOURCE-API ${project.version}",
        "module": "GENERIC-RESOURCE-API",
        "comments": "",
        "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
        "outputs": 1,
-       "x": 312.0104103088379,
-       "y": 140.01043128967285,
-       "z": "e09ddcb4.62be2",
+       "x": 346.03125381469727,
+       "y": 164.0312671661377,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["759cd8cf.a97478"]
+               ["95bab60a.026fe8"]
        ]
 }, {
-       "id": "759cd8cf.a97478",
+       "id": "95bab60a.026fe8",
        "type": "method",
        "name": "wan-connection-topology-operation-activate",
        "xml": "<method rpc='wan-connection-topology-operation-activate' mode='sync'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 300.0105285644531,
-       "y": 228.01041412353516,
-       "z": "e09ddcb4.62be2",
+       "x": 334.0313720703125,
+       "y": 252.03125,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["6de8279c.d96f18"]
+               ["a72b1cb5.05f3c"]
        ]
 }, {
-       "id": "edd7fd49.09b45",
+       "id": "4e7970ad.4b5bd",
        "type": "execute",
        "name": "execute Properties",
        "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\n    <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />\n    <parameter name='contextPrefix' value='prop' />\n",
        "comments": "",
        "outputs": 1,
-       "x": 687.0106887817383,
-       "y": 312.0104856491089,
-       "z": "e09ddcb4.62be2",
+       "x": 1104.031894683838,
+       "y": 341.0314643383026,
+       "z": "926fea0b.1d3458",
        "wires": [
                []
        ]
 }, {
-       "id": "e02df58.543ea08",
+       "id": "bb98003a.a46ad",
        "type": "returnSuccess",
        "name": "return success",
        "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n",
        "comments": "",
-       "x": 287.0104217529297,
-       "y": 1177.010627746582,
-       "z": "e09ddcb4.62be2",
+       "x": 944.0314121246338,
+       "y": 2076.0316499471664,
+       "z": "926fea0b.1d3458",
        "wires": []
 }, {
-       "id": "6de8279c.d96f18",
+       "id": "11b701bb.2b820e",
        "type": "block",
-       "name": "block : atomic",
+       "name": "general-activate-block : atomic",
        "xml": "<block atomic=\"true\">",
        "atomic": "true",
-       "outputs": 1,
-       "x": 212.51060485839844,
-       "y": 669.0105495452881,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               ["c3c817be.4ef968", "ad2c5957.526e98", "ee7ba6fd.384b18", "569cdb0d.3aa8c4", "336b6524.04896a", "edd7fd49.09b45", "e02df58.543ea08"]
-       ]
-}, {
-       "id": "c3c817be.4ef968",
-       "type": "execute",
-       "name": "generate services url",
-       "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n    <parameter name=\"source\" value=\"`$prop.network-provided-resource`\"/>\n    <parameter name=\"outputPath\" value=\"tmp.services-url\"/>\n    <parameter name=\"target\" value=\"{service-instance-id}\"/>\n    <parameter name=\"replacement\" value=\"`$network-topology-operation-input.service-information.service-id`\"/>\n",
-       "comments": "",
-       "outputs": 1,
-       "x": 673.0106735229492,
-       "y": 383.0105857849121,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               []
-       ]
-}, {
-       "id": "ad2c5957.526e98",
-       "type": "execute",
-       "name": "execute RestApiCallNode - get-resource parent service data",
-       "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n    <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.services-url`' />\n    <parameter name='restapiUser' value='`$prop.controller.user`' />\n    <parameter name='restapiPassword' value='`$prop.controller.pwd`' />\n    <parameter name='format' value='json' />\n    <parameter name='httpMethod' value='GET' />\n    <parameter name=\"responsePrefix\" value=\"mdsal-psd\" />\n\n",
-       "comments": "",
-       "outputs": 1,
-       "x": 799.0106735229492,
-       "y": 460.0105857849121,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               ["649fc773.be7288", "2c3dd512.e7091a"]
-       ]
-}, {
-       "id": "649fc773.be7288",
-       "type": "success",
-       "name": "success",
-       "xml": "<outcome value='success'>\n",
-       "comments": "",
-       "outputs": 1,
-       "x": 1146.010856628418,
-       "y": 411.0105857849121,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               ["27ee6d28.0b0992"]
-       ]
-}, {
-       "id": "27ee6d28.0b0992",
-       "type": "block",
-       "name": "block",
-       "xml": "<block>\n",
-       "atomic": "false",
-       "comments": "",
-       "outputs": 1,
-       "x": 1313.0109329223633,
-       "y": 445.0106463432312,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               []
-       ]
-}, {
-       "id": "2c3dd512.e7091a",
-       "type": "other",
-       "name": "other",
-       "xml": "<outcome value='Other'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1151.8626289367676,
-       "y": 494.07674503326416,
-       "z": "e09ddcb4.62be2",
+       "x": 728.5315265655518,
+       "y": 1887.0314840078354,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["a4f3ebc3.28d808"]
+               ["1aae4fc1.2393a", "bb98003a.a46ad"]
        ]
 }, {
-       "id": "a4f3ebc3.28d808",
-       "type": "returnFailure",
-       "name": "return failure",
-       "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n    <parameter name=\"error-message\" value=\"Error: Parent service data not available\" />\n    \n",
-       "comments": "",
-       "x": 1322.2607803344727,
-       "y": 510.01057529449463,
-       "z": "e09ddcb4.62be2",
-       "wires": []
-}, {
-       "id": "ee7ba6fd.384b18",
+       "id": "c812a520.767f78",
        "type": "for",
-       "name": "for pidx..mdsal-psd.service-data.networks.network[]",
-       "xml": "<for index='pidx' start='0' end='`$mdsal-psd.service-data.networks.network_length`' >\n",
+       "name": "for pidx..service-data.networks.network[]",
+       "xml": "<for index='pidx' start='0' end='`$service-data.networks.network_length`' >\n",
        "comments": "",
        "outputs": 1,
-       "x": 859.5107116699219,
-       "y": 611.0105295181274,
-       "z": "e09ddcb4.62be2",
+       "x": 1210.5319442749023,
+       "y": 508.0316289663315,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["5178f9b4.19b7c8"]
+               ["3dac3b05.9ea764"]
        ]
 }, {
-       "id": "5178f9b4.19b7c8",
+       "id": "3dac3b05.9ea764",
        "type": "switchNode",
        "name": "switch model-name",
-       "xml": "<switch test=\"`$mdsal-psd.service-data.networks.network[$pidx].network-data.network-information.onap-model-information.model-name == $network-topology-operation-input.network-information.onap-model-information.model-name`\">\n\n",
+       "xml": "<switch test=\"`$service-data.networks.network[$pidx].network-data.network-information.onap-model-information.model-name == $network-topology-operation-input.network-information.onap-model-information.model-name`\">\n\n",
        "comments": "",
        "outputs": 1,
-       "x": 807.5106887817383,
-       "y": 688.0105800628662,
-       "z": "e09ddcb4.62be2",
+       "x": 1563.5321006774902,
+       "y": 289.0316313505173,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["d017d8d9.0843a8"]
+               ["bd71b64a.dfd5f8"]
        ]
 }, {
-       "id": "d017d8d9.0843a8",
+       "id": "bd71b64a.dfd5f8",
        "type": "outcomeTrue",
        "name": "true",
        "xml": "<outcome value='true'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 989.7607917785645,
-       "y": 690.0106735229492,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               ["b549c649.6ef3f8"]
-       ]
-}, {
-       "id": "b549c649.6ef3f8",
-       "type": "block",
-       "name": "block : atomic",
-       "xml": "<block atomic=\"true\">",
-       "atomic": "true",
-       "outputs": 1,
-       "x": 1160.5214195251465,
-       "y": 694.867790222168,
-       "z": "e09ddcb4.62be2",
+       "x": 1541.7822265625,
+       "y": 340.0317043066025,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["90347753.f53c58"]
+               ["5d88b06.fe5a35"]
        ]
 }, {
-       "id": "90347753.f53c58",
+       "id": "5d88b06.fe5a35",
        "type": "set",
        "name": "set tmp.pidx and tmp.network-input-parameters",
-       "xml": "<set>\n<parameter name='tmp.pidx' value='`$pidx`' />\n<parameter name='tmp.network.' value='`$mdsal-psd.service-data.networks.network[$pidx].`' />\n<parameter name='tmp.network-input-parameters' value='`$mdsal-psd.service-data.networks.network[$pidx].network-data.network-request-input.network-input-parameters`' />\n<parameter name='tmp.found-network-input' value='true' />",
+       "xml": "<set>\n<parameter name='tmp.pidx' value='`$pidx`' />\n<parameter name='tmp.network.' value='`$service-data.networks.network[$pidx].`' />\n<parameter name='tmp.network-input-parameters' value='`$service-data.networks.network[$pidx].network-data.network-request-input.network-input-parameters`' />\n<parameter name='tmp.found-network-input' value='true' />",
        "comments": "",
-       "x": 1107.3788032531738,
-       "y": 768.4393863677979,
-       "z": "e09ddcb4.62be2",
+       "x": 1697.4006385803223,
+       "y": 399.46041905879974,
+       "z": "926fea0b.1d3458",
        "wires": []
 }, {
-       "id": "569cdb0d.3aa8c4",
+       "id": "3bfb1023.2b523",
        "type": "set",
        "name": "set tmp.found-network-input",
        "xml": "<set>\n<parameter name='tmp.found-network-input' value='false' />",
        "comments": "",
-       "x": 741.5106582641602,
-       "y": 540.0105857849121,
-       "z": "e09ddcb4.62be2",
+       "x": 1135.5318870544434,
+       "y": 425.03159844875336,
+       "z": "926fea0b.1d3458",
        "wires": []
 }, {
-       "id": "336b6524.04896a",
+       "id": "1aae4fc1.2393a",
        "type": "switchNode",
        "name": "switch found-network-input",
        "xml": "<switch test=\"`$found-network-input`\">\n\n",
        "comments": "",
        "outputs": 1,
-       "x": 572.5107040405273,
-       "y": 879.0107097625732,
-       "z": "e09ddcb4.62be2",
+       "x": 1123.5316104888916,
+       "y": 1762.0316737890244,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["616108fb.092f18", "40e56e53.4077e"]
+               ["6ed44d2a.fb0594", "18c7f98e.b212a6"]
        ]
 }, {
-       "id": "616108fb.092f18",
+       "id": "6ed44d2a.fb0594",
        "type": "outcomeTrue",
        "name": "true",
        "xml": "<outcome value='true'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 804.5107955932617,
-       "y": 923.010908126831,
-       "z": "e09ddcb4.62be2",
+       "x": 1355.531702041626,
+       "y": 1806.0318721532822,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["a846a4bd.9956b8"]
+               ["84ec40e9.c2c32"]
        ]
 }, {
-       "id": "40e56e53.4077e",
+       "id": "18c7f98e.b212a6",
        "type": "outcomeTrue",
        "name": "false",
        "xml": "<outcome value='false'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 805.2607345581055,
-       "y": 881.010799407959,
-       "z": "e09ddcb4.62be2",
+       "x": 1356.2816410064697,
+       "y": 1764.03176343441,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["8273b3b3.844e2"]
+               ["2811d502.22a33a"]
        ]
 }, {
-       "id": "8273b3b3.844e2",
+       "id": "2811d502.22a33a",
        "type": "returnFailure",
        "name": "return failure",
        "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n    <parameter name=\"error-message\" value=\"Error: Network input parameters not found\" />\n    \n",
        "comments": "",
-       "x": 976.2607345581055,
-       "y": 889.0107688903809,
-       "z": "e09ddcb4.62be2",
+       "x": 1527.2816410064697,
+       "y": 1772.031732916832,
+       "z": "926fea0b.1d3458",
        "wires": []
 }, {
-       "id": "a846a4bd.9956b8",
+       "id": "84ec40e9.c2c32",
        "type": "block",
        "name": "block : atomic",
        "xml": "<block atomic=\"true\">",
        "atomic": "true",
        "outputs": 1,
-       "x": 542.0105819702148,
-       "y": 1035.0106945037842,
-       "z": "e09ddcb4.62be2",
+       "x": 1093.031488418579,
+       "y": 1918.0316585302353,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["a938b787.7c82b8", "2becb5c8.f5838a", "fec72c37.99e8b"]
+               ["61139e06.7aa2e", "8e8c51f4.d057d", "833ed1f4.d259"]
        ]
 }, {
-       "id": "a938b787.7c82b8",
+       "id": "61139e06.7aa2e",
        "type": "for",
        "name": "for cidx..tmp.network.network-data.network-topology.network-parameters.network-parameter[]",
        "xml": "<for index='cidx' start='0' end='`$tmp.network.network-data.network-topology.network-parameters.network-parameter_length`' >\n",
        "comments": "",
        "outputs": 1,
-       "x": 991.0104217529297,
-       "y": 1121.0105504989624,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               ["a608965c.57ec78"]
-       ]
-}, {
-       "id": "21b22ac0.8b6036",
-       "type": "switchNode",
-       "name": "switch network-parameter-name == 'restapiUrl'",
-       "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiUrl'`\">\n",
-       "comments": "",
-       "outputs": 1,
-       "x": 1105.010482788086,
-       "y": 1191.010612487793,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               ["b3b8f491.b604a8"]
-       ]
-}, {
-       "id": "b3b8f491.b604a8",
-       "type": "outcomeTrue",
-       "name": "true",
-       "xml": "<outcome value='true'>\n",
-       "comments": "",
-       "outputs": 1,
-       "x": 1356.0105361938477,
-       "y": 1194.0106182098389,
-       "z": "e09ddcb4.62be2",
+       "x": 1542.031328201294,
+       "y": 2004.0315145254135,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["f19676be.7dd8e8"]
+               ["d5a8b428.3ffe58"]
        ]
 }, {
-       "id": "f19676be.7dd8e8",
-       "type": "set",
-       "name": "set tmp.thirdparty-sdnc-url",
-       "xml": "<set>\n<parameter name='tmp.restapiUrl' value='`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`' />\n<parameter name='tmp.restapiUrl-found' value='true' />",
-       "comments": "",
-       "x": 1557.0105667114258,
-       "y": 1192.0106191635132,
-       "z": "e09ddcb4.62be2",
-       "wires": []
-}, {
-       "id": "5e9a3d4b.faee04",
+       "id": "bb8655c6.320038",
        "type": "execute",
        "name": "execute RestApiCallNode Create wan-connection",
-       "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$tmp.templateFileName`\" />\n<parameter name=\"restapiUrl\" value=\"`$tmp.restapiUrl`\" />\n<parameter name=\"restapiUser\" value=\"`$tmp.restapiUser`\" />\n<parameter name=\"restapiPassword\" value=\"`$tmp.restapiPassword`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"restApi-result\"/>",
-       "comments": "",
-       "outputs": 1,
-       "x": 879.2604522705078,
-       "y": 1923.0111656188965,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               ["6cfa08fc.d58438", "35b532e4.67c04e", "456722ac.35f45c"]
-       ]
-}, {
-       "id": "482305da.d57c9c",
-       "type": "switchNode",
-       "name": "switch network-parameter-name == 'restapiUser'",
-       "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiUser'`\">\n",
-       "comments": "",
-       "outputs": 1,
-       "x": 1108.2604751586914,
-       "y": 1242.0105876922607,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               ["bfa7b41.e85df48"]
-       ]
-}, {
-       "id": "bfa7b41.e85df48",
-       "type": "outcomeTrue",
-       "name": "true",
-       "xml": "<outcome value='true'>\n",
-       "comments": "",
-       "outputs": 1,
-       "x": 1374.2605895996094,
-       "y": 1244.0106649398804,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               ["431e7704.816128"]
-       ]
-}, {
-       "id": "431e7704.816128",
-       "type": "set",
-       "name": "set tmp.restapiUser",
-       "xml": "<set>\n<parameter name='tmp.restapiUser' value='`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`' />\n<parameter name='tmp.restapiUser-found' value='true' />",
-       "comments": "",
-       "x": 1575.2606201171875,
-       "y": 1242.0106658935547,
-       "z": "e09ddcb4.62be2",
-       "wires": []
-}, {
-       "id": "d87dc5c6.9f2d38",
-       "type": "switchNode",
-       "name": "switch network-parameter-name == 'restapiPassword'",
-       "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiPassword'`\">\n",
-       "comments": "",
-       "outputs": 1,
-       "x": 1116.2605438232422,
-       "y": 1296.010513305664,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               ["32c617c3.6666a8"]
-       ]
-}, {
-       "id": "32c617c3.6666a8",
-       "type": "outcomeTrue",
-       "name": "true",
-       "xml": "<outcome value='true'>\n",
+       "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$tmp.templateFileName`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + $tmp.restapiUrl`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"restApi-result\"/>",
        "comments": "",
        "outputs": 1,
-       "x": 1393.260555267334,
-       "y": 1294.0105457305908,
-       "z": "e09ddcb4.62be2",
+       "x": 1568.2813835144043,
+       "y": 2558.0317014455795,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["7965a848.b113a8"]
+               ["c0b7550d.f30fe8", "e19ff0cc.bd882", "9d57cbcd.803d08"]
        ]
 }, {
-       "id": "7965a848.b113a8",
-       "type": "set",
-       "name": "set tmp.restapiPassword",
-       "xml": "<set>\n<parameter name='tmp.restapiPassword' value='`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`' />\n<parameter name='tmp.restapiPassword-found' value='true' />",
-       "comments": "",
-       "x": 1594.260585784912,
-       "y": 1292.0105466842651,
-       "z": "e09ddcb4.62be2",
-       "wires": []
-}, {
-       "id": "8c362f3b.3ca69",
+       "id": "4089b1d1.8eda5",
        "type": "switchNode",
        "name": "switch network-parameter-name == 'templateFileName'",
        "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'templateFileName'`\">\n",
        "comments": "",
        "outputs": 1,
-       "x": 1125.2605743408203,
-       "y": 1351.0105781555176,
-       "z": "e09ddcb4.62be2",
+       "x": 1670.2815914154053,
+       "y": 2109.031648993492,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["c074d65e.325f18"]
+               ["80cfb20d.84134"]
        ]
 }, {
-       "id": "c074d65e.325f18",
+       "id": "80cfb20d.84134",
        "type": "outcomeTrue",
        "name": "true",
        "xml": "<outcome value='true'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1413.2607078552246,
-       "y": 1354.0106735229492,
-       "z": "e09ddcb4.62be2",
+       "x": 2023.2817306518555,
+       "y": 2113.0317224264145,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["c839c2e5.daaf"]
+               ["17b7664a.d3b9ca"]
        ]
 }, {
-       "id": "c839c2e5.daaf",
+       "id": "17b7664a.d3b9ca",
        "type": "set",
        "name": "set tmp.templateFileName",
        "xml": "<set>\n<parameter name='tmp.templateFileName' value='`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`' />\n<parameter name='tmp.templateFileName-found' value='true' />",
        "comments": "",
-       "x": 1614.2607383728027,
-       "y": 1352.0106744766235,
-       "z": "e09ddcb4.62be2",
+       "x": 2224.2817611694336,
+       "y": 2111.031723380089,
+       "z": "926fea0b.1d3458",
        "wires": []
 }, {
-       "id": "2becb5c8.f5838a",
+       "id": "8e8c51f4.d057d",
        "type": "set",
        "name": "set paras flags",
        "xml": "<set>\n<parameter name='tmp.restapiUrl-found' value='false' />\n<parameter name='tmp.restapiUser-found' value='false' />\n<parameter name='tmp.restapiPassword-found' value='false' />\n<parameter name='tmp.templateFileName-found' value='false' />\n<parameter name='tmp.thirdPartyAdaptorRpc-found' value='false' />",
        "comments": "",
-       "x": 778.0105895996094,
-       "y": 1036.0105476379395,
-       "z": "e09ddcb4.62be2",
+       "x": 1329.0314960479736,
+       "y": 1919.0315116643906,
+       "z": "926fea0b.1d3458",
        "wires": []
 }, {
-       "id": "fec72c37.99e8b",
+       "id": "833ed1f4.d259",
        "type": "switchNode",
        "name": "switch thirdPartyAdaptorRpc-found == 'true'",
        "xml": "<switch test=\"`$tmp.thirdPartyAdaptorRpc-found == 'true'`\">\n",
        "comments": "",
        "outputs": 1,
-       "x": 820.0104217529297,
-       "y": 1531.0105934143066,
-       "z": "e09ddcb4.62be2",
+       "x": 1321.0312728881836,
+       "y": 2365.031446814537,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["761c7f6a.1e156", "fc5cb76b.242648"]
+               ["575d5dfb.34fe94", "2377fd44.1eedc2"]
        ]
 }, {
-       "id": "a608965c.57ec78",
+       "id": "d5a8b428.3ffe58",
        "type": "block",
        "name": "block",
        "xml": "<block>\n",
        "atomic": "false",
        "comments": "",
        "outputs": 1,
-       "x": 762.0104217529297,
-       "y": 1302.0104637145996,
-       "z": "e09ddcb4.62be2",
+       "x": 1307.031436920166,
+       "y": 2111.0313848257065,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["21b22ac0.8b6036", "482305da.d57c9c", "d87dc5c6.9f2d38", "8c362f3b.3ca69", "2c7884dd.9d5eac"]
+               ["4089b1d1.8eda5", "e7566aa5.849bc8", "e1dac9e1.6143b8", "43cfa6be.6eb688"]
        ]
 }, {
-       "id": "761c7f6a.1e156",
+       "id": "575d5dfb.34fe94",
        "type": "outcomeTrue",
        "name": "true",
        "xml": "<outcome value='true'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1082.010440826416,
-       "y": 1493.0105304718018,
-       "z": "e09ddcb4.62be2",
+       "x": 1583.03129196167,
+       "y": 2327.031383872032,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["abb14bbc.08d3c8"]
+               ["4cc416ef.c63548"]
        ]
 }, {
-       "id": "fc5cb76b.242648",
+       "id": "2377fd44.1eedc2",
        "type": "outcomeTrue",
        "name": "false",
        "xml": "<outcome value='false'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1083.0103912353516,
-       "y": 1559.010495185852,
-       "z": "e09ddcb4.62be2",
+       "x": 1584.0312423706055,
+       "y": 2393.0313485860825,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["7e672194.b5093"]
+               ["9704be28.3f558"]
        ]
 }, {
-       "id": "abb14bbc.08d3c8",
+       "id": "4cc416ef.c63548",
        "type": "call",
        "name": "call thirdPartyAdaptorRpc",
        "xml": "<call module='GENERIC-RESOURCE-API' rpc='`$tmp.thirdPartyAdaptorRpc`' mode='sync' >\n",
        "comments": "",
        "outputs": 1,
-       "x": 1302.010482788086,
-       "y": 1494.0105895996094,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               ["97bbf68a.23df28", "54cba094.60db8", "40b8aaf.3584554"]
-       ]
-}, {
-       "id": "7e672194.b5093",
-       "type": "switchNode",
-       "name": "switch restapiUrl-found == 'true'",
-       "xml": "<switch test=\"`$tmp.restapiUrl-found == 'true'`\">\n",
-       "comments": "",
-       "outputs": 1,
-       "x": 844.461311340332,
-       "y": 1643.0172395706177,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               ["8b58f6f.b1e3208", "94431bfa.4e9a48"]
-       ]
-}, {
-       "id": "8b58f6f.b1e3208",
-       "type": "outcomeTrue",
-       "name": "true",
-       "xml": "<outcome value='true'>\n",
-       "comments": "",
-       "outputs": 1,
-       "x": 1095.461296081543,
-       "y": 1641.017035484314,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               ["fed700d7.65be7"]
-       ]
-}, {
-       "id": "fed700d7.65be7",
-       "type": "switchNode",
-       "name": "switch restapiUser-found == 'true'",
-       "xml": "<switch test=\"`$tmp.restapiUser-found == 'true'`\">\n",
-       "comments": "",
-       "outputs": 1,
-       "x": 822.4614105224609,
-       "y": 1710.2393379211426,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               ["9051a6d0.545648", "52bc5ad7.e75954"]
-       ]
-}, {
-       "id": "9051a6d0.545648",
-       "type": "outcomeTrue",
-       "name": "true",
-       "xml": "<outcome value='true'>\n",
-       "comments": "",
-       "outputs": 1,
-       "x": 1089.4613037109375,
-       "y": 1711.2390508651733,
-       "z": "e09ddcb4.62be2",
+       "x": 1803.0313339233398,
+       "y": 2328.03144299984,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["558122b6.d2e6dc"]
+               ["f46c32a6.383aa", "14327ee.aa1c281", "bbf59025.2f53"]
        ]
 }, {
-       "id": "558122b6.d2e6dc",
+       "id": "9704be28.3f558",
        "type": "switchNode",
-       "name": "switch restapiPassword-found == 'true'",
-       "xml": "<switch test=\"`$tmp.restapiPassword-found == 'true'`\">\n",
+       "name": "switch all-found == 'true'",
+       "xml": "<switch test=\"`$tmp.prop.thirdpartySdnc-found == 'true' and $tmp.templateFileName-found == 'true' and `$tmp.prop.restapiUrl-found == 'true'`\">\n",
        "comments": "",
        "outputs": 1,
-       "x": 837.4613037109375,
-       "y": 1780.239260673523,
-       "z": "e09ddcb4.62be2",
+       "x": 1460.4821796417236,
+       "y": 2483.0379165410995,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["107aae8d.403771", "3e643f4d.27a45"]
+               ["b0b06b48.a5b488", "aeb8dbbb.1a88b8"]
        ]
 }, {
-       "id": "107aae8d.403771",
+       "id": "b0b06b48.a5b488",
        "type": "outcomeTrue",
        "name": "true",
        "xml": "<outcome value='true'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1097.4613037109375,
-       "y": 1780.2390508651733,
-       "z": "e09ddcb4.62be2",
+       "x": 1711.4821643829346,
+       "y": 2481.037712454796,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["3e959559.67274a"]
+               ["bb8655c6.320038"]
        ]
 }, {
-       "id": "2c7884dd.9d5eac",
+       "id": "e7566aa5.849bc8",
        "type": "switchNode",
        "name": "switch network-parameter-name == 'thirdPartyAdaptorRpc'",
        "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'thirdPartyAdaptorRpc'`\">\n",
        "comments": "",
        "outputs": 1,
-       "x": 1125.0168762207031,
-       "y": 1405.0168838500977,
-       "z": "e09ddcb4.62be2",
+       "x": 1663.0378608703613,
+       "y": 2199.038031935692,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["14544bfa.4af374"]
+               ["6b611a9.1a25de4"]
        ]
 }, {
-       "id": "14544bfa.4af374",
+       "id": "6b611a9.1a25de4",
        "type": "outcomeTrue",
        "name": "true",
        "xml": "<outcome value='true'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1413.0170097351074,
-       "y": 1408.0169792175293,
-       "z": "e09ddcb4.62be2",
+       "x": 1996.03812789917,
+       "y": 2202.0380758047104,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["2d59e0f.1af282"]
+               ["af5f0328.41cb9"]
        ]
 }, {
-       "id": "2d59e0f.1af282",
+       "id": "af5f0328.41cb9",
        "type": "set",
        "name": "set tmp.thirdPartyAdaptorRpc",
        "xml": "<set>\n<parameter name='tmp.thirdPartyAdaptorRpc' value='`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`' />\n<parameter name='tmp.thirdPartyAdaptorRpc-found' value='true' />",
        "comments": "",
-       "x": 1614.0170402526855,
-       "y": 1406.0169801712036,
-       "z": "e09ddcb4.62be2",
+       "x": 2217.0380306243896,
+       "y": 2201.0381063222885,
+       "z": "926fea0b.1d3458",
        "wires": []
 }, {
-       "id": "3e959559.67274a",
-       "type": "switchNode",
-       "name": "switch templateFileName-found == 'true'",
-       "xml": "<switch test=\"`$tmp.templateFileName-found == 'true'`\">\n",
-       "comments": "",
-       "outputs": 1,
-       "x": 835.0168762207031,
-       "y": 1840.3502979278564,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               ["5a8246c3.86d3d8", "e9a7f173.e33ea"]
-       ]
-}, {
-       "id": "5a8246c3.86d3d8",
-       "type": "outcomeTrue",
-       "name": "true",
-       "xml": "<outcome value='true'>\n",
-       "comments": "",
-       "outputs": 1,
-       "x": 1095.0168762207031,
-       "y": 1840.3500881195068,
-       "z": "e09ddcb4.62be2",
-       "wires": [
-               ["5e9a3d4b.faee04"]
-       ]
-}, {
-       "id": "40b8aaf.3584554",
+       "id": "bbf59025.2f53",
        "type": "not-found",
        "name": "not-found",
        "xml": "<outcome value='not-found'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1568.0168762207031,
-       "y": 1533.3502578735352,
-       "z": "e09ddcb4.62be2",
+       "x": 2134.037733078003,
+       "y": 2368.3710893392563,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["10f2c69f.8e3de9"]
+               ["5e9bef51.b04f9"]
        ]
 }, {
-       "id": "54cba094.60db8",
+       "id": "14327ee.aa1c281",
        "type": "failure",
        "name": "failure",
        "xml": "<outcome value='failure'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1559.0169258117676,
-       "y": 1501.8502836227417,
-       "z": "e09ddcb4.62be2",
+       "x": 2125.0377826690674,
+       "y": 2336.871115088463,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["10f2c69f.8e3de9"]
+               ["5e9bef51.b04f9"]
        ]
 }, {
-       "id": "97bbf68a.23df28",
+       "id": "f46c32a6.383aa",
        "type": "success",
        "name": "success",
        "xml": "<outcome value='success'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1562.7669639587402,
-       "y": 1472.207388497889,
-       "z": "e09ddcb4.62be2",
+       "x": 2128.78782081604,
+       "y": 2307.22821996361,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["9b5e3e39.e0053"]
+               ["2554668a.ceb99a"]
        ]
 }, {
-       "id": "10f2c69f.8e3de9",
+       "id": "5e9bef51.b04f9",
        "type": "returnFailure",
        "name": "return failure",
        "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n    <parameter name=\"error-message\" value=\"`'Error calling ' + $tmp.thirdPartyAdaptorRpc`\" />\n",
        "comments": "",
-       "x": 1725.766990661621,
-       "y": 1518.6003561019897,
-       "z": "e09ddcb4.62be2",
+       "x": 2303.7878017425537,
+       "y": 2359.621233344078,
+       "z": "926fea0b.1d3458",
        "wires": []
 }, {
-       "id": "9b5e3e39.e0053",
+       "id": "2554668a.ceb99a",
        "type": "block",
        "name": "block",
        "xml": "<block>\n",
        "atomic": "false",
        "comments": "",
        "outputs": 1,
-       "x": 1704.4229316711426,
-       "y": 1468.3995576873422,
-       "z": "e09ddcb4.62be2",
+       "x": 2270.4437885284424,
+       "y": 2303.4203891530633,
+       "z": "926fea0b.1d3458",
        "wires": [
                []
        ]
 }, {
-       "id": "456722ac.35f45c",
+       "id": "9d57cbcd.803d08",
        "type": "not-found",
        "name": "not-found",
        "xml": "<outcome value='not-found'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1209.0168762207031,
-       "y": 1958.3502578735352,
-       "z": "e09ddcb4.62be2",
+       "x": 1898.0378074645996,
+       "y": 2593.370793700218,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["504edb98.e54e24"]
+               ["a1110583.4c1b78"]
        ]
 }, {
-       "id": "35b532e4.67c04e",
+       "id": "e19ff0cc.bd882",
        "type": "failure",
        "name": "failure",
        "xml": "<outcome value='failure'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1200.0169258117676,
-       "y": 1926.8502836227417,
-       "z": "e09ddcb4.62be2",
+       "x": 1889.037857055664,
+       "y": 2561.8708194494247,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["504edb98.e54e24"]
+               ["a1110583.4c1b78"]
        ]
 }, {
-       "id": "6cfa08fc.d58438",
+       "id": "c0b7550d.f30fe8",
        "type": "success",
        "name": "success",
        "xml": "<outcome value='success'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1203.7669639587402,
-       "y": 1897.207388497889,
-       "z": "e09ddcb4.62be2",
+       "x": 1892.7878952026367,
+       "y": 2532.227924324572,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["e5f43bf1.ad3d38"]
+               ["723c84de.ada1cc"]
        ]
 }, {
-       "id": "504edb98.e54e24",
+       "id": "a1110583.4c1b78",
        "type": "returnFailure",
        "name": "return failure",
        "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n    <parameter name=\"error-message\" value=\"`'Error calling ' + $tmp.restapiUrl`\" />\n",
        "comments": "",
-       "x": 1366.766990661621,
-       "y": 1943.6003561019897,
-       "z": "e09ddcb4.62be2",
+       "x": 2055.7879219055176,
+       "y": 2578.620891928673,
+       "z": "926fea0b.1d3458",
        "wires": []
 }, {
-       "id": "e5f43bf1.ad3d38",
+       "id": "723c84de.ada1cc",
        "type": "block",
        "name": "block",
        "xml": "<block>\n",
        "atomic": "false",
        "comments": "",
        "outputs": 1,
-       "x": 1345.4229316711426,
-       "y": 1893.3995576873422,
-       "z": "e09ddcb4.62be2",
+       "x": 2034.443862915039,
+       "y": 2528.420093514025,
+       "z": "926fea0b.1d3458",
        "wires": [
                []
        ]
 }, {
-       "id": "94431bfa.4e9a48",
+       "id": "aeb8dbbb.1a88b8",
        "type": "outcomeTrue",
        "name": "false",
        "xml": "<outcome value='false'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1246.6835021972656,
-       "y": 1608.4613418579102,
-       "z": "e09ddcb4.62be2",
+       "x": 1862.7043704986572,
+       "y": 2448.482018828392,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["79546287.78b3ac"]
+               ["f8bc7d52.d6dd5"]
        ]
 }, {
-       "id": "79546287.78b3ac",
+       "id": "f8bc7d52.d6dd5",
        "type": "returnFailure",
        "name": "return failure",
        "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n    <parameter name=\"error-message\" value=\"Error: 3rd party controller restapiUrl not found\" />\n    \n",
        "comments": "",
-       "x": 1417.6835021972656,
-       "y": 1616.461311340332,
-       "z": "e09ddcb4.62be2",
+       "x": 2033.7043704986572,
+       "y": 2456.481988310814,
+       "z": "926fea0b.1d3458",
        "wires": []
 }, {
-       "id": "52bc5ad7.e75954",
+       "id": "a72b1cb5.05f3c",
+       "type": "execute",
+       "name": "contains specification",
+       "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n    <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n    <parameter name=\"target\" value=\"specification\"/>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 231.03120040893555,
+       "y": 374.03507936000824,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["889cb67a.4a45c8", "2194eb01.d99b44"]
+       ]
+}, {
+       "id": "889cb67a.4a45c8",
+       "type": "outcomeTrue",
+       "name": "true",
+       "xml": "<outcome value='true'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 467.03123474121094,
+       "y": 372.03507125377655,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["ce0b82c8.e7218"]
+       ]
+}, {
+       "id": "2194eb01.d99b44",
        "type": "outcomeTrue",
        "name": "false",
        "xml": "<outcome value='false'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1251.6835021972656,
-       "y": 1687.4613418579102,
-       "z": "e09ddcb4.62be2",
+       "x": 170.03128814697266,
+       "y": 597.035244345665,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["e7175614.0bbb18"]
+               ["f8dcacdf.a6eb7"]
        ]
 }, {
-       "id": "e7175614.0bbb18",
-       "type": "returnFailure",
-       "name": "return failure",
-       "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n    <parameter name=\"error-message\" value=\"Error: 3rd party controller restapiUser not found\" />\n    \n",
+       "id": "e74616dd.2ed7f8",
+       "type": "execute",
+       "name": "contains FC",
+       "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n    <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n    <parameter name=\"target\" value=\"FC\"/>\n",
        "comments": "",
-       "x": 1422.6835021972656,
-       "y": 1695.461311340332,
-       "z": "e09ddcb4.62be2",
-       "wires": []
+       "outputs": 1,
+       "x": 501.03129959106445,
+       "y": 681.0351728200912,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["c1e8fe64.ca4a9", "c4d599f8.5e9608"]
+       ]
 }, {
-       "id": "3e643f4d.27a45",
+       "id": "c4d599f8.5e9608",
        "type": "outcomeTrue",
        "name": "false",
        "xml": "<outcome value='false'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1242.6835021972656,
-       "y": 1758.4613418579102,
-       "z": "e09ddcb4.62be2",
+       "x": 146.03127670288086,
+       "y": 1029.0352452993393,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["eab97fcc.763a6"]
+               ["321c63b.c8d039c"]
        ]
 }, {
-       "id": "eab97fcc.763a6",
-       "type": "returnFailure",
-       "name": "return failure",
-       "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n    <parameter name=\"error-message\" value=\"Error: 3rd party controller restapiPassword not found\" />\n    \n",
+       "id": "321c63b.c8d039c",
+       "type": "execute",
+       "name": "contains FD",
+       "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n    <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n    <parameter name=\"target\" value=\"FD\"/>\n",
        "comments": "",
-       "x": 1413.6835021972656,
-       "y": 1766.461311340332,
-       "z": "e09ddcb4.62be2",
-       "wires": []
+       "outputs": 1,
+       "x": 355.03126525878906,
+       "y": 1025.0352238416672,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["84b52686.b454a8", "95140b58.666a48"]
+       ]
 }, {
-       "id": "e9a7f173.e33ea",
+       "id": "95140b58.666a48",
        "type": "outcomeTrue",
        "name": "false",
        "xml": "<outcome value='false'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1241.6835021972656,
-       "y": 1819.4613418579102,
-       "z": "e09ddcb4.62be2",
+       "x": 137.99998092651367,
+       "y": 1101.0038818120956,
+       "z": "926fea0b.1d3458",
        "wires": [
-               ["4679556f.41babc"]
+               ["816059eb.09e168"]
        ]
 }, {
-       "id": "4679556f.41babc",
-       "type": "returnFailure",
-       "name": "return failure",
-       "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n    <parameter name=\"error-message\" value=\"Error: 3rd party controller templateFileName not found\" />\n    \n",
+       "id": "816059eb.09e168",
+       "type": "execute",
+       "name": "contains FcPort",
+       "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n    <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n    <parameter name=\"target\" value=\"FcPort\"/>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 346.99997329711914,
+       "y": 1098.0039104223251,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["4edca0e1.34768", "2171b9cc.48bf96"]
+       ]
+}, {
+       "id": "c1e8fe64.ca4a9",
+       "type": "outcomeTrue",
+       "name": "true",
+       "xml": "<outcome value='true'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 683.0313034057617,
+       "y": 682.0351561307907,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["6e6cf945.de71a8"]
+       ]
+}, {
+       "id": "84b52686.b454a8",
+       "type": "outcomeTrue",
+       "name": "true",
+       "xml": "<outcome value='true'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 927.0314331054688,
+       "y": 1027.035410284996,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["11b701bb.2b820e"]
+       ]
+}, {
+       "id": "4edca0e1.34768",
+       "type": "outcomeTrue",
+       "name": "true",
+       "xml": "<outcome value='true'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 542.000057220459,
+       "y": 1100.003942847252,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["1b21b11e.20ccaf"]
+       ]
+}, {
+       "id": "2171b9cc.48bf96",
+       "type": "outcomeTrue",
+       "name": "false",
+       "xml": "<outcome value='false'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 99.03140258789062,
+       "y": 1342.0355266332626,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["9a67ff91.b1e45"]
+       ]
+}, {
+       "id": "9a67ff91.b1e45",
+       "type": "block",
+       "name": "block",
+       "xml": "<block>\n",
+       "atomic": "false",
+       "comments": "",
+       "outputs": 1,
+       "x": 387.0001029968262,
+       "y": 1341.0042842626572,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["7b057224.2aa75c"]
+       ]
+}, {
+       "id": "ce0b82c8.e7218",
+       "type": "returnSuccess",
+       "name": "return success",
+       "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n",
+       "comments": "",
+       "x": 731.0585975646973,
+       "y": 368.06244599819183,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "7b057224.2aa75c",
+       "type": "returnSuccess",
+       "name": "return success",
+       "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n",
+       "comments": "",
+       "x": 594.0587425231934,
+       "y": 1338.0627368688583,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "1b21b11e.20ccaf",
+       "type": "execute",
+       "name": "contains sitewan",
+       "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n    <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n    <parameter name=\"target\" value=\"sitewan\"/>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 735.0275611877441,
+       "y": 1101.031530737877,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["52df494.201adb8", "dbee71dc.d74f"]
+       ]
+}, {
+       "id": "52df494.201adb8",
+       "type": "outcomeTrue",
+       "name": "true",
+       "xml": "<outcome value='true'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 930.027645111084,
+       "y": 1103.0315631628036,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["11b701bb.2b820e"]
+       ]
+}, {
+       "id": "dbee71dc.d74f",
+       "type": "outcomeTrue",
+       "name": "false",
+       "xml": "<outcome value='false'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 483.02745056152344,
+       "y": 1255.0313781499863,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["9a67ff91.b1e45"]
+       ]
+}, {
+       "id": "6e6cf945.de71a8",
+       "type": "execute",
+       "name": "contains sotn",
+       "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n    <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n    <parameter name=\"target\" value=\"sotn\"/>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 851.0312881469727,
+       "y": 682.035093665123,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["b8e3e9e8.4dd418", "371abc25.a00424"]
+       ]
+}, {
+       "id": "b8e3e9e8.4dd418",
+       "type": "outcomeTrue",
+       "name": "true",
+       "xml": "<outcome value='true'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1056.781349182129,
+       "y": 681.035072684288,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["61103774.7c2958"]
+       ]
+}, {
+       "id": "371abc25.a00424",
+       "type": "outcomeTrue",
+       "name": "false",
+       "xml": "<outcome value='false'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 922.7814674377441,
+       "y": 970.0351947546005,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["11b701bb.2b820e"]
+       ]
+}, {
+       "id": "d0dc2867.7aac48",
+       "type": "for",
+       "name": "for sIdx..service-data.networks.network[]",
+       "xml": "<for index='sIdx' start='0' end='`$service-data.networks.network_length`' >\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1968.059326171875,
+       "y": 729.0627163648605,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["10a3d4d5.ede31b"]
+       ]
+}, {
+       "id": "8aee33e1.e59d9",
+       "type": "outcomeTrue",
+       "name": "true",
+       "xml": "<outcome value='true'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2503.0594062805176,
+       "y": 669.0628918409348,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["9a9356f4.363c08"]
+       ]
+}, {
+       "id": "fe450b4f.38cbb8",
+       "type": "set",
+       "name": "set tmp.pidx and tmp.network-input-parameters",
+       "xml": "<set>\n<parameter name='tmp.sotnFcPortList[`$sotnFcPortListLength`]' value='`$sIdx`' />",
+       "comments": "",
+       "x": 2593.6787147521973,
+       "y": 838.4922603368759,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "10a3d4d5.ede31b",
+       "type": "execute",
+       "name": "contains sotn",
+       "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n    <parameter name=\"source\" value=\"`$service-data.networks.network[$sIdx].network-data.network-information.onap-model-information.model-name`\"/>\n    <parameter name=\"target\" value=\"sotn\"/>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2340.0593223571777,
+       "y": 670.0627735853195,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["8aee33e1.e59d9"]
+       ]
+}, {
+       "id": "9a9356f4.363c08",
+       "type": "execute",
+       "name": "contains FcPort",
+       "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n    <parameter name=\"source\" value=\"`$service-data.networks.network[$sIdx].network-data.network-information.onap-model-information.model-name`\"/>\n    <parameter name=\"target\" value=\"FcPort\"/>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2344.059284210205,
+       "y": 724.0629585981369,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["2c54cd4f.4c8bf2"]
+       ]
+}, {
+       "id": "f8dcacdf.a6eb7",
+       "type": "block",
+       "name": "block : atomic",
+       "xml": "<block atomic=\"true\">",
+       "atomic": "true",
+       "outputs": 1,
+       "x": 333.0586624145508,
+       "y": 599.0624669790268,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["e74616dd.2ed7f8", "3a764e2f.ce3ce2"]
+       ]
+}, {
+       "id": "3a764e2f.ce3ce2",
+       "type": "block",
+       "name": "find-network-data-block : atomic",
+       "xml": "<block atomic=\"true\">",
+       "atomic": "true",
+       "comments": "",
+       "outputs": 1,
+       "x": 609.027530670166,
+       "y": 510.6980298757553,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["4e7970ad.4b5bd", "3bfb1023.2b523", "c812a520.767f78"]
+       ]
+}, {
+       "id": "2c54cd4f.4c8bf2",
+       "type": "outcomeTrue",
+       "name": "true",
+       "xml": "<outcome value='true'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2512.0592079162598,
+       "y": 721.0627983808517,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["c9838804.3271d8"]
+       ]
+}, {
+       "id": "f025ca00.b1be48",
+       "type": "block",
+       "name": "find-sotn-fc-port-block : atomic",
+       "xml": "<block atomic=\"true\">",
+       "atomic": "true",
+       "comments": "",
+       "outputs": 1,
+       "x": 1540.0592346191406,
+       "y": 680.0626581907272,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["d0dc2867.7aac48", "3f4a3ecb.0378b2"]
+       ]
+}, {
+       "id": "3f4a3ecb.0378b2",
+       "type": "set",
+       "name": "set sotnFcPortListLength",
+       "xml": "<set>\n<parameter name='sotnFcPortListLength' value='0' />",
+       "comments": "",
+       "x": 1909.0587921142578,
+       "y": 621.0627483129501,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "c9838804.3271d8",
+       "type": "block",
+       "name": "find-OOF-input-block : atomic",
+       "xml": "<block atomic=\"true\">",
+       "atomic": "true",
+       "comments": "",
+       "outputs": 1,
+       "x": 2390.5591468811035,
+       "y": 775.0626882314682,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["fe450b4f.38cbb8", "d2affa42.51fb78"]
+       ]
+}, {
+       "id": "d2affa42.51fb78",
+       "type": "for",
+       "name": "for sIdx..network-input-parameters[]",
+       "xml": "<for index='paramIdx' start='0' end='`$service-data.networks.network[$sIdx].network-data.network-request-input.network-input-parameters.param_length`' >\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2569.0589027404785,
+       "y": 890.0628179311752,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["eb3ac434.e3fe48"]
+       ]
+}, {
+       "id": "eb3ac434.e3fe48",
+       "type": "execute",
+       "name": "contains address",
+       "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n    <parameter name=\"source\" value=\"`$service-data.networks.network[$sIdx].network-data.network-request-input.network-input-parameters.param[$paramIdx].name`\"/>\n    <parameter name=\"target\" value=\"address\"/>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2537.558811187744,
+       "y": 943.0626500844955,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["7ce26fd1.8df38"]
+       ]
+}, {
+       "id": "7ce26fd1.8df38",
+       "type": "outcomeTrue",
+       "name": "true",
+       "xml": "<outcome value='true'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2719.5589332580566,
+       "y": 943.0626500844955,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["c085ea30.cd5968"]
+       ]
+}, {
+       "id": "a47015e8.cb0ee8",
+       "type": "set",
+       "name": "set sotnFcPortAddress",
+       "xml": "<set>\n<parameter name='sotnFcPortAddress' value='`$service-data.networks.network[$sIdx].network-data.network-request-input.network-input-parameters.param[$paramIdx].value`' />",
+       "comments": "",
+       "x": 2777.5603942871094,
+       "y": 1056.0630768537521,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "c085ea30.cd5968",
+       "type": "block",
+       "name": "get-OOF-input-block : atomic",
+       "xml": "<block atomic=\"true\">",
+       "atomic": "true",
+       "comments": "",
+       "outputs": 1,
+       "x": 2586.5589637756348,
+       "y": 1001.0628217458725,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["a47015e8.cb0ee8", "1e310231.0de11e"]
+       ]
+}, {
+       "id": "c68e0fa0.942c8",
+       "type": "success",
+       "name": "success",
+       "xml": "<outcome value='success'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2802.0600090026855,
+       "y": 1178.0625947713852,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["87931697.ce9668"]
+       ]
+}, {
+       "id": "1e310231.0de11e",
+       "type": "execute",
+       "name": "execute RestApiCallNode - get access Tp from OSS",
+       "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n    <parameter name='restapiUrl' value=\"`$prop.oss.url + '/oss/inventory?location=' + $sotnFcPortAddress`\"/>\n    <parameter name='format' value='json' />\n    <parameter name='customHttpHeaders' value=\"X-FromAppId=MSO\" />\n    <parameter name='httpMethod' value='GET' />\n    <parameter name=\"responsePrefix\" value=\"temp.oss.accessTPs\" />\n\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2899.0589332580566,
+       "y": 1115.062528014183,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["c68e0fa0.942c8"]
+       ]
+}, {
+       "id": "87931697.ce9668",
+       "type": "switchNode",
+       "name": "switch temp.oss.accessTPs_length",
+       "xml": "<switch test=\"`$temp.oss.accessTPs_length`\">\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 3098.0591163635254,
+       "y": 1177.0625051259995,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["7d124bb0.ba2c74"]
+       ]
+}, {
+       "id": "7d124bb0.ba2c74",
+       "type": "other",
+       "name": "other",
+       "xml": "<outcome value='Other'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 3362.560386657715,
+       "y": 1176.0627821683884,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["50e1d009.293c"]
+       ]
+}, {
+       "id": "c6383260.ec986",
+       "type": "set",
+       "name": "set temp.accessTPs_length",
+       "xml": "<set>\n<parameter name='temp.accessTPs_length' value='`$temp.accessTPs_length + $temp.oss.accessTPs_length`' />\n\n",
+       "comments": "",
+       "x": 3308.060012817383,
+       "y": 1442.0589436292648,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "50e1d009.293c",
+       "type": "block",
+       "name": "copy-accessTPs-block : atomic",
+       "xml": "<block atomic=\"true\">",
+       "atomic": "true",
+       "comments": "",
+       "outputs": 1,
+       "x": 2962.808380126953,
+       "y": 1265.058205485344,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["c6383260.ec986", "9cdee8cd.2dbad8", "d76eb76d.375dc8"]
+       ]
+}, {
+       "id": "9cdee8cd.2dbad8",
+       "type": "switchNode",
+       "name": "switch temp.accessTPs_length",
+       "xml": "<switch test='`$temp.accessTPs_length`'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 3346.558334350586,
+       "y": 1267.0580424070358,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["ddd28ed8.0b65e", "1b7da2eb.0351cd"]
+       ]
+}, {
+       "id": "ddd28ed8.0b65e",
+       "type": "other",
+       "name": "Null",
+       "xml": "<outcome value=''>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 3572.5581855773926,
+       "y": 1242.0579699277878,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["884aab61.79c368"]
+       ]
+}, {
+       "id": "884aab61.79c368",
+       "type": "set",
+       "name": "set tp_length",
+       "xml": "<set>\n<parameter name='tp_length' value='0' />",
+       "comments": "",
+       "x": 3759.05802154541,
+       "y": 1240.0579756791703,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "1b7da2eb.0351cd",
+       "type": "other",
+       "name": "other",
+       "xml": "<outcome value='Other'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 3568.558151245117,
+       "y": 1297.058015704155,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["aab633d0.c1e13"]
+       ]
+}, {
+       "id": "aab633d0.c1e13",
+       "type": "set",
+       "name": "set tp_length",
+       "xml": "<set>\n<parameter name='tp_length' value='`$temp.accessTPs_length`' />",
+       "comments": "",
+       "x": 3757.308090209961,
+       "y": 1297.058000445366,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "d76eb76d.375dc8",
+       "type": "for",
+       "name": "for each existing temp.oss.accessTPs",
+       "xml": "<for index='idx' start='0' end='`$temp.oss.accessTPs_length`' >\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 3348.3087768554688,
+       "y": 1365.0581473112106,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["ee87558c.d153c8"]
+       ]
+}, {
+       "id": "ee87558c.d153c8",
+       "type": "set",
+       "name": "set temp.accessTPs",
+       "xml": "<set>\n<parameter name='`temp.accessTPs[$idx + $tp_length].`' value='`$temp.oss.accessTPs[$idx].`' />",
+       "comments": "",
+       "x": 3716.3086700439453,
+       "y": 1366.0582951307297,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "61103774.7c2958",
+       "type": "block",
+       "name": "block",
+       "xml": "<block>\n",
+       "atomic": "false",
+       "comments": "",
+       "outputs": 1,
+       "x": 1226.0586776733398,
+       "y": 679.0624278783798,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["f025ca00.b1be48", "45d2bc6f.d74144"]
+       ]
+}, {
+       "id": "3397eec.96a2812",
+       "type": "execute",
+       "name": "execute RestApiCallNode getPath from OOF",
+       "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.oof-getpath.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.restapi.connection-oof-url`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.oof.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.oof.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"oof\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+       "comments": "",
+       "outputs": 1,
+       "x": 1952.5589714050293,
+       "y": 1317.0627564191818,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["44889bda.c6f5b4", "b5ee75d7.fdc598"]
+       ]
+}, {
+       "id": "b5ee75d7.fdc598",
+       "type": "failure",
+       "name": "failure",
+       "xml": "<outcome value='failure'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2281.558624267578,
+       "y": 1297.0628241300583,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               []
+       ]
+}, {
+       "id": "44889bda.c6f5b4",
+       "type": "success",
+       "name": "success",
+       "xml": "<outcome value='success'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2282.558837890625,
+       "y": 1348.0627335309982,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["a7b63c93.b232"]
+       ]
+}, {
+       "id": "45d2bc6f.d74144",
+       "type": "switchNode",
+       "name": "switch temp.accessTPs_length",
+       "xml": "<switch test=\"`$temp.accessTPs_length >= 2`\">\n\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1607.558650970459,
+       "y": 1072.0625962018967,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["1fe1fd41.188173"]
+       ]
+}, {
+       "id": "1fe1fd41.188173",
+       "type": "outcomeTrue",
+       "name": "true",
+       "xml": "<outcome value='true'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1839.0589485168457,
+       "y": 1071.0624426603317,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["6afbb95f.22fc18"]
+       ]
+}, {
+       "id": "6afbb95f.22fc18",
+       "type": "block",
+       "name": "call-oof-block : atomic",
+       "xml": "<block atomic=\"true\">",
+       "atomic": "true",
+       "comments": "",
+       "outputs": 1,
+       "x": 1583.0585975646973,
+       "y": 1208.0625027418137,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["3397eec.96a2812", "3bd5ae29.6c4052"]
+       ]
+}, {
+       "id": "3bd5ae29.6c4052",
+       "type": "set",
+       "name": "set oof input",
+       "xml": "<set>\n<parameter name='prop.connection-attachment.access-topology-id' value='`$temp.accessTPs[0].access-topology-id`' />\n<parameter name='prop.connection-attachment.access-client-id' value='`$temp.accessTPs[0].access-client-id`' />\n<parameter name='prop.connection-attachment.access-provider-id' value='`$temp.accessTPs[0].access-provider-id`' />\n<parameter name='prop.connection-attachment.access-node-id' value='`$temp.accessTPs[0].access-node-id`' />\n<parameter name='prop.connection-attachment.access-ltp-id' value='`$temp.accessTPs[0].access-ltp-id`' />\n<parameter name='prop.remote.connection-attachment.access-topology-id' value='`$temp.accessTPs[1].access-topology-id`' />\n<parameter name='prop.remote.connection-attachment.access-client-id' value='`$temp.accessTPs[1].access-client-id`' />\n<parameter name='prop.remote.connection-attachment.access-provider-id' value='`$temp.accessTPs[1].access-provider-id`' />\n<parameter name='prop.remote.connection-attachment.access-node-id' value='`$temp.accessTPs[1].access-node-id`' />\n<parameter name='prop.remote.connection-attachment.access-ltp-id' value='`$temp.accessTPs[1].access-ltp-id`' />",
+       "comments": "",
+       "x": 1839.5586738586426,
+       "y": 1212.0624779462814,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "e5744234.46142",
+       "type": "execute",
+       "name": "execute RestApiCallNode Create Sotn connectivity Service",
+       "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sotn-api-ConnectivityService.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/operations/ZTE-API-ConnectivityService:create-connectivity-service'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"patch\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+       "comments": "",
+       "outputs": 1,
+       "x": 2808.694080352783,
+       "y": 1838.0313729047775,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["535d5b4b.9b7f24", "2e0febd4.c0f1c4"]
+       ]
+}, {
+       "id": "535d5b4b.9b7f24",
+       "type": "success",
+       "name": "success",
+       "xml": "<outcome value='success'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 3146.6938972473145,
+       "y": 1868.0314563512802,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["dd3310d7.09a74"]
+       ]
+}, {
+       "id": "dd3310d7.09a74",
+       "type": "block",
+       "name": "block : atomic",
+       "xml": "<block atomic=\"true\">",
+       "atomic": "true",
+       "comments": "",
+       "outputs": 1,
+       "x": 3294.6938972473145,
+       "y": 1866.0313342809677,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               []
+       ]
+}, {
+       "id": "f9b75d98.9e7f2",
+       "type": "returnFailure",
+       "name": "return failure",
+       "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n    <parameter name=\"error-message\" value=\"Error executing Create vpn rest api\" />\n",
+       "comments": "",
+       "x": 3276.6939277648926,
+       "y": 1813.0313943624496,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "2e0febd4.c0f1c4",
+       "type": "failure",
+       "name": "failure",
+       "xml": "<outcome value='failure'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 3137.693836212158,
+       "y": 1813.0313943624496,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["f9b75d98.9e7f2"]
+       ]
+}, {
+       "id": "a7b63c93.b232",
+       "type": "for",
+       "name": "for vidx..oof.vpns_length[]",
+       "xml": "<for index='vidx' start='0' end='`$oof.vpns_length`' >",
+       "comments": "",
+       "outputs": 1,
+       "x": 2386.697696685791,
+       "y": 1526.5348581075668,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["eeab1f45.5ad4e"]
+       ]
+}, {
+       "id": "eeab1f45.5ad4e",
+       "type": "block",
+       "name": "block : atomic",
+       "xml": "<block atomic=\"true\">",
+       "atomic": "true",
+       "outputs": 1,
+       "x": 2499.8150596618652,
+       "y": 1626.3748730421066,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["6c8bea50.c3a084", "c15d913b.304b6", "e5744234.46142", "410e9e0d.02dd6"]
+       ]
+}, {
+       "id": "cfda9d38.b58d3",
+       "type": "set",
+       "name": "set controller data",
+       "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.url' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.user' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.password' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`\" />\n",
+       "comments": "",
+       "x": 3141.25972366333,
+       "y": 1690.7080653905869,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "c15d913b.304b6",
+       "type": "get-resource",
+       "name": "get-resource esr-thirdparty-sdnc",
+       "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"esr-thirdparty-sdnc\" \n\t\tkey=\"esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND \n\t\t     depth = '1'\"\n        pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >\n\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2757.7596321105957,
+       "y": 1727.7080048322678,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["13cbf9b9.b81a66", "bc1574ec.7fa5e8", "ad0c242.b566ad8"]
+       ]
+}, {
+       "id": "13cbf9b9.b81a66",
+       "type": "success",
+       "name": "success",
+       "xml": "<outcome value='success'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2977.759567260742,
+       "y": 1691.7079738378525,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["cfda9d38.b58d3"]
+       ]
+}, {
+       "id": "bc1574ec.7fa5e8",
+       "type": "not-found",
+       "name": "not-found",
+       "xml": "<outcome value='not-found'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2987.2505073547363,
+       "y": 1732.28197991848,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["6527879e.b615e8"]
+       ]
+}, {
+       "id": "ad0c242.b566ad8",
+       "type": "other",
+       "name": "other",
+       "xml": "<outcome value='Other'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2982.583484649658,
+       "y": 1768.6152929067612,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["85d611b.775aaf"]
+       ]
+}, {
+       "id": "6527879e.b615e8",
+       "type": "returnFailure",
+       "name": "return failure",
+       "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n    <parameter name=\"error-message\" value=\"`'An error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`\" />\n\n",
+       "comments": "",
+       "x": 3133.8218574523926,
+       "y": 1728.5678066015244,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "85d611b.775aaf",
+       "type": "returnFailure",
+       "name": "return failure",
+       "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n    <parameter name=\"error-message\" value=\"`'Unexpected error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`\" />\n\n",
+       "comments": "",
+       "x": 3137.356128692627,
+       "y": 1770.05444085598,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "6c8bea50.c3a084",
+       "type": "get-resource",
+       "name": "get-resource pnf",
+       "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"pnf\" \n\t\tkey=\"pnf.pnf-name = $oof.vpn.access-node-id \n\t\tAND depth = '0'\"\n        pfx='tmp.aai.pnf' local-only='false' >\n\n\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2703.2595252990723,
+       "y": 1636.7076486349106,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["361f5e9d.140af2", "4cf0f707.e6c778", "6db6cec3.b72d2"]
+       ]
+}, {
+       "id": "361f5e9d.140af2",
+       "type": "success",
+       "name": "success",
+       "xml": "<outcome value='success'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2885.2595710754395,
+       "y": 1581.7077587842941,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["71ac1295.fb6b8c"]
+       ]
+}, {
+       "id": "4cf0f707.e6c778",
+       "type": "not-found",
+       "name": "not-found",
+       "xml": "<outcome value='not-found'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2885.750473022461,
+       "y": 1619.2818554639816,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["c8a04464.0d92e8"]
+       ]
+}, {
+       "id": "6db6cec3.b72d2",
+       "type": "other",
+       "name": "other",
+       "xml": "<outcome value='Other'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2877.083484649658,
+       "y": 1652.6152304410934,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["2ba90495.cc80ec"]
+       ]
+}, {
+       "id": "c8a04464.0d92e8",
+       "type": "returnFailure",
+       "name": "return failure",
+       "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n    <parameter name=\"error-message\" value=\"`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`\" />\n\n",
+       "comments": "",
+       "x": 3033.3220977783203,
+       "y": 1618.5677441358566,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "2ba90495.cc80ec",
+       "type": "returnFailure",
+       "name": "return failure",
+       "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n    <parameter name=\"error-message\" value=\"`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`\" />\n\n",
+       "comments": "",
+       "x": 3030.856128692627,
+       "y": 1652.0543783903122,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "71ac1295.fb6b8c",
+       "type": "set",
+       "name": "set tmp.thirdparty-sdnc-id",
+       "xml": "<set>\n<parameter name='tmp.thirdparty-sdnc-id' value=\"`$tmp.aai.pnf.relationship-list.relationship[0].relationship-data[0].relationship-value`\" />\n",
+       "comments": "",
+       "x": 3070.2595710754395,
+       "y": 1580.7078808546066,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "410e9e0d.02dd6",
+       "type": "set",
+       "name": "set oof.vpn",
+       "xml": "<set>\n<parameter name='oof.vpn.' value='`$oof.vpns[$vidx].`' />",
+       "comments": "",
+       "x": 2695.2595176696777,
+       "y": 1525.8187206983566,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "e1dac9e1.6143b8",
+       "type": "switchNode",
+       "name": "switch network-parameter-name == 'thirdPartySdncId'",
+       "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'thirdPartySdncId'`\">\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1656.3606433868408,
+       "y": 2064.0312827825546,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["97e55015.0cef1"]
+       ]
+}, {
+       "id": "97e55015.0cef1",
+       "type": "outcomeTrue",
+       "name": "true",
+       "xml": "<outcome value='true'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1987.5585746765137,
+       "y": 2065.0622037649155,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["4f5ce339.2f4b7c"]
+       ]
+}, {
+       "id": "4f5ce339.2f4b7c",
+       "type": "get-resource",
+       "name": "get-resource esr-thirdparty-sdnc",
+       "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"esr-thirdparty-sdnc\" \n\t\tkey=\"esr-thirdparty-sdnc.thirdparty-sdnc-id = `$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value` AND \n\t\t     depth = '1'\"\n        pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >\n\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2252.559513092041,
+       "y": 2063.0622037649155,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["2b9c64e4.ee151c", "847e4996.04f018", "b0a7e0c2.d0f99"]
+       ]
+}, {
+       "id": "2b9c64e4.ee151c",
+       "type": "success",
+       "name": "success",
+       "xml": "<outcome value='success'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2514.5593185424805,
+       "y": 2007.0620158910751,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["760fc6b6.ea2d48"]
+       ]
+}, {
+       "id": "760fc6b6.ea2d48",
+       "type": "set",
+       "name": "set controller data",
+       "xml": "<set>\n<parameter name='prop.thirdpartySdnc-found' value='true' />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.url' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.user' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.password' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`\" />\n",
+       "comments": "",
+       "x": 2712.0593795776367,
+       "y": 1995.0620158910751,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "847e4996.04f018",
+       "type": "not-found",
+       "name": "not-found",
+       "xml": "<outcome value='not-found'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2546.0501823425293,
+       "y": 2055.636119246483,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["d47f6331.80419"]
+       ]
+}, {
+       "id": "b0a7e0c2.d0f99",
+       "type": "other",
+       "name": "other",
+       "xml": "<outcome value='Other'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2541.3831901550293,
+       "y": 2096.969432234764,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["d47f6331.80419"]
+       ]
+}, {
+       "id": "d47f6331.80419",
+       "type": "set",
+       "name": "set controller data",
+       "xml": "<set>\n<parameter name='prop.thirdpartySdnc-found' value='false' />\n",
+       "comments": "",
+       "x": 2753.0585975646973,
+       "y": 2074.062201857567,
+       "z": "926fea0b.1d3458",
+       "wires": []
+}, {
+       "id": "43cfa6be.6eb688",
+       "type": "switchNode",
+       "name": "switch network-parameter-name == 'restapiUrl'",
+       "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiUrl'`\">\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1629.5584564208984,
+       "y": 2156.0620836019516,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["24fb19a9.1d22f6"]
+       ]
+}, {
+       "id": "24fb19a9.1d22f6",
+       "type": "outcomeTrue",
+       "name": "true",
+       "xml": "<outcome value='true'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1971.5585670471191,
+       "y": 2154.0622066259384,
+       "z": "926fea0b.1d3458",
+       "wires": [
+               ["cdaeb398.e7393"]
+       ]
+}, {
+       "id": "cdaeb398.e7393",
+       "type": "set",
+       "name": "set tmp.templateFileName",
+       "xml": "<set>\n<parameter name='tmp.restapiUrl' value='`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`' />\n<parameter name='tmp.restapiUrl-found' value='true' />",
        "comments": "",
-       "x": 1412.6835021972656,
-       "y": 1827.461311340332,
-       "z": "e09ddcb4.62be2",
+       "x": 2215.558645248413,
+       "y": 2158.0622762441635,
+       "z": "926fea0b.1d3458",
        "wires": []
 }]
\ No newline at end of file
index 5660246..af4fe12 100644 (file)
@@ -1,16 +1,16 @@
 [{
-       "id": "6ac67ae1.a0aa44",
+       "id": "9bc8cf3.24e913",
        "type": "dgstart",
        "name": "DGSTART",
        "outputs": 1,
-       "x": 175.00390625,
-       "y": 106.00390625,
-       "z": "7d848bad.6cea14",
+       "x": 124.03125762939453,
+       "y": 64.03125,
+       "z": "466fb936.055828",
        "wires": [
-               ["a7166f73.c3b7d"]
+               ["c0dae51b.1b6228"]
        ]
 }, {
-       "id": "a7166f73.c3b7d",
+       "id": "c0dae51b.1b6228",
        "type": "service-logic",
        "name": "GENERIC-RESOURCE-API ${project.version}",
        "module": "GENERIC-RESOURCE-API",
        "comments": "",
        "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
        "outputs": 1,
-       "x": 387.00391006469727,
-       "y": 178.0039234161377,
-       "z": "7d848bad.6cea14",
+       "x": 336.0312614440918,
+       "y": 136.0312671661377,
+       "z": "466fb936.055828",
        "wires": [
-               ["28d122a6.3dff6e"]
+               ["4ad4cfdc.2f406"]
        ]
 }, {
-       "id": "28d122a6.3dff6e",
+       "id": "4ad4cfdc.2f406",
        "type": "method",
        "name": "wan-connection-topology-operation-create",
        "xml": "<method rpc='wan-connection-topology-operation-create' mode='sync'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 375.0040283203125,
-       "y": 266.00390625,
-       "z": "7d848bad.6cea14",
+       "x": 324.03137969970703,
+       "y": 224.03125,
+       "z": "466fb936.055828",
        "wires": [
-               ["5e728e05.d58"]
+               ["80ed299a.78d1a8"]
        ]
 }, {
-       "id": "9cfd5628.0461f8",
+       "id": "a0a6d830.765c48",
        "type": "execute",
        "name": "contains specification",
        "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n    <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n    <parameter name=\"target\" value=\"specification\"/>\n",
        "comments": "",
        "outputs": 1,
-       "x": 571.0351867675781,
-       "y": 443.03515338897705,
-       "z": "7d848bad.6cea14",
+       "x": 520.0625419616699,
+       "y": 402.06254720687866,
+       "z": "466fb936.055828",
        "wires": [
-               ["880d63dc.b5a38", "f32a417.139a7c"]
+               ["497f3002.ebfe1", "35a373ce.24801c"]
        ]
 }, {
-       "id": "fecacce0.e773",
+       "id": "a2f84cee.b0617",
        "type": "execute",
        "name": "contains FC",
        "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n    <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n    <parameter name=\"target\" value=\"FC\"/>\n",
        "comments": "",
        "outputs": 1,
-       "x": 542.0352630615234,
-       "y": 541.0352182388306,
-       "z": "7d848bad.6cea14",
+       "x": 516.062629699707,
+       "y": 569.0626125335693,
+       "z": "466fb936.055828",
        "wires": [
-               ["e31d6f4d.a6b8a", "3a9f16f2.1de22a"]
+               ["2029e6ab.86d56a", "93c62735.b84128"]
        ]
 }, {
-       "id": "328d5a5f.8b3686",
+       "id": "eec3001f.630de",
        "type": "execute",
        "name": "contains FD",
        "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n    <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n    <parameter name=\"target\" value=\"FD\"/>\n",
        "comments": "",
        "outputs": 1,
-       "x": 540.0351867675781,
-       "y": 619.0352191925049,
-       "z": "7d848bad.6cea14",
+       "x": 515.0625495910645,
+       "y": 646.062563419342,
+       "z": "466fb936.055828",
        "wires": [
-               ["95036d7b.e76b7", "a957c80c.629788"]
+               ["2e6936ec.48046a", "7376171f.8378c8"]
        ]
 }, {
-       "id": "8ced5ada.6dacc8",
-       "type": "execute",
-       "name": "contains Link",
-       "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n    <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n    <parameter name=\"target\" value=\"Link\"/>\n",
-       "comments": "",
-       "outputs": 1,
-       "x": 545.0352325439453,
-       "y": 699.0353374481201,
-       "z": "7d848bad.6cea14",
-       "wires": [
-               ["3306f585.d6ad4a", "f7a1c197.52e9b"]
-       ]
-}, {
-       "id": "880d63dc.b5a38",
+       "id": "497f3002.ebfe1",
        "type": "outcomeTrue",
        "name": "true",
        "xml": "<outcome value='true'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 807.0352210998535,
-       "y": 441.03514528274536,
-       "z": "7d848bad.6cea14",
+       "x": 756.0625762939453,
+       "y": 400.062539100647,
+       "z": "466fb936.055828",
        "wires": [
-               ["4a720633.6d38d8"]
+               ["c8daa82e.9fce08"]
        ]
 }, {
-       "id": "f32a417.139a7c",
+       "id": "35a373ce.24801c",
        "type": "outcomeTrue",
        "name": "false",
        "xml": "<outcome value='false'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 336.03525161743164,
-       "y": 541.0352182388306,
-       "z": "7d848bad.6cea14",
+       "x": 311.06261825561523,
+       "y": 569.0626125335693,
+       "z": "466fb936.055828",
        "wires": [
-               ["fecacce0.e773"]
+               ["a2f84cee.b0617"]
        ]
 }, {
-       "id": "e31d6f4d.a6b8a",
+       "id": "2029e6ab.86d56a",
        "type": "outcomeTrue",
        "name": "true",
        "xml": "<outcome value='true'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 723.035270690918,
-       "y": 543.0352516174316,
-       "z": "7d848bad.6cea14",
+       "x": 698.0626335144043,
+       "y": 570.0625958442688,
+       "z": "466fb936.055828",
        "wires": [
-               ["e96c15e0.5108b8"]
+               ["6ba5fffc.f4ad7"]
        ]
 }, {
-       "id": "95036d7b.e76b7",
+       "id": "2e6936ec.48046a",
        "type": "outcomeTrue",
        "name": "true",
        "xml": "<outcome value='true'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 735.035270690918,
-       "y": 621.0352516174316,
-       "z": "7d848bad.6cea14",
+       "x": 710.0626335144043,
+       "y": 648.0625958442688,
+       "z": "466fb936.055828",
        "wires": [
-               ["e96c15e0.5108b8"]
+               ["6ba5fffc.f4ad7"]
        ]
 }, {
-       "id": "3a9f16f2.1de22a",
+       "id": "93c62735.b84128",
        "type": "outcomeTrue",
        "name": "false",
        "xml": "<outcome value='false'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 331.03519439697266,
-       "y": 622.0351905822754,
-       "z": "7d848bad.6cea14",
+       "x": 306.06256103515625,
+       "y": 650.0625848770142,
+       "z": "466fb936.055828",
        "wires": [
-               ["328d5a5f.8b3686"]
+               ["eec3001f.630de"]
        ]
 }, {
-       "id": "a957c80c.629788",
+       "id": "9a8815be.418328",
        "type": "outcomeTrue",
        "name": "false",
        "xml": "<outcome value='false'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 336.03526306152344,
-       "y": 705.0353965759277,
-       "z": "7d848bad.6cea14",
-       "wires": [
-               ["8ced5ada.6dacc8"]
-       ]
-}, {
-       "id": "3306f585.d6ad4a",
-       "type": "outcomeTrue",
-       "name": "true",
-       "xml": "<outcome value='true'>\n",
-       "comments": "",
-       "outputs": 1,
-       "x": 736.035343170166,
-       "y": 698.0353984832764,
-       "z": "7d848bad.6cea14",
+       "x": 287.0626792907715,
+       "y": 825.062798500061,
+       "z": "466fb936.055828",
        "wires": [
-               ["ff5b5810.5ac2a8"]
+               ["f3f6e1a2.fe953"]
        ]
 }, {
-       "id": "914afff2.c348e",
+       "id": "4d6d15f8.1b9b4c",
        "type": "execute",
        "name": "execute Properties",
        "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\n    <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />\n    <parameter name='contextPrefix' value='prop' />\n",
        "comments": "",
        "outputs": 1,
-       "x": 566.0039978027344,
-       "y": 386.0039253234863,
-       "z": "7d848bad.6cea14",
+       "x": 515.0313491821289,
+       "y": 344.0312690734863,
+       "z": "466fb936.055828",
        "wires": [
                []
        ]
 }, {
-       "id": "5e728e05.d58",
+       "id": "80ed299a.78d1a8",
        "type": "block",
        "name": "block : atomic",
        "xml": "<block atomic=\"true\">",
        "atomic": "true",
        "outputs": 1,
-       "x": 281.00392150878906,
-       "y": 366.00390243530273,
-       "z": "7d848bad.6cea14",
+       "x": 230.0312728881836,
+       "y": 324.03124618530273,
+       "z": "466fb936.055828",
        "wires": [
-               ["914afff2.c348e", "9cfd5628.0461f8", "d08cdbfc.d46288", "8af933b4.c5208"]
+               ["4d6d15f8.1b9b4c", "a0a6d830.765c48", "8812e145.1ac5", "41f333f8.6ba35c"]
        ]
 }, {
-       "id": "d08cdbfc.d46288",
+       "id": "8812e145.1ac5",
        "type": "switchNode",
        "name": "switch network-id",
        "xml": "<switch test='`$network-topology-operation-input.network-information.network-id`'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 566.0039291381836,
-       "y": 324.00391578674316,
-       "z": "7d848bad.6cea14",
+       "x": 515.0312805175781,
+       "y": 282.03125953674316,
+       "z": "466fb936.055828",
        "wires": [
-               ["13cbf19b.fc4f5e", "163e4527.d3d54b"]
+               ["5f790529.705d5c", "7efb546.7f035ac"]
        ]
 }, {
-       "id": "13cbf19b.fc4f5e",
+       "id": "5f790529.705d5c",
        "type": "outcome",
        "name": "NULL",
        "xml": "<outcome value=''>",
        "comments": "",
        "outputs": 1,
-       "x": 815.0040054321289,
-       "y": 263.00391578674316,
-       "z": "7d848bad.6cea14",
+       "x": 764.0313568115234,
+       "y": 221.03125953674316,
+       "z": "466fb936.055828",
        "wires": [
-               ["600a4007.612e"]
+               ["1ac38277.051efe"]
        ]
 }, {
-       "id": "600a4007.612e",
+       "id": "1ac38277.051efe",
        "type": "execute",
        "name": "generate tmp.ar.allotted-resource-id",
        "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"network-topology-operation-input.network-information.network-id\"/>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1030.0039825439453,
-       "y": 264.00392150878906,
-       "z": "7d848bad.6cea14",
+       "x": 1024.0314407348633,
+       "y": 224.03128719329834,
+       "z": "466fb936.055828",
        "wires": [
-               ["224d0a6c.fd47b6"]
+               ["98d0b4b2.0b3c38"]
        ]
 }, {
-       "id": "224d0a6c.fd47b6",
+       "id": "98d0b4b2.0b3c38",
        "type": "failure",
        "name": "failure",
        "xml": "<outcome value='failure'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1248.0040245056152,
-       "y": 264.00388526916504,
-       "z": "7d848bad.6cea14",
+       "x": 1289.0314102172852,
+       "y": 228.03125476837158,
+       "z": "466fb936.055828",
        "wires": [
-               ["c61d540b.7cf0a8"]
+               ["c0709980.ccdd88"]
        ]
 }, {
-       "id": "c61d540b.7cf0a8",
+       "id": "c0709980.ccdd88",
        "type": "returnFailure",
        "name": "return failure",
        "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while generation allotted resource ID\" />\n",
        "comments": "",
-       "x": 1414.003978729248,
-       "y": 264.0038995742798,
-       "z": "7d848bad.6cea14",
+       "x": 1455.031364440918,
+       "y": 228.03126907348633,
+       "z": "466fb936.055828",
        "wires": []
 }, {
-       "id": "163e4527.d3d54b",
+       "id": "7efb546.7f035ac",
        "type": "other",
        "name": "other",
        "xml": "<outcome value='Other'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 812.5039024353027,
-       "y": 311.00391006469727,
-       "z": "7d848bad.6cea14",
+       "x": 761.5312538146973,
+       "y": 269.03125381469727,
+       "z": "466fb936.055828",
        "wires": [
                []
        ]
 }, {
-       "id": "4a720633.6d38d8",
-       "type": "call",
-       "name": "call GENERIC-RESOURCE-API:wan-connection-save-specification",
-       "xml": "<call module='GENERIC-RESOURCE-API' rpc='wan-connection-save-specification' mode='sync' >\n",
+       "id": "41f333f8.6ba35c",
+       "type": "returnSuccess",
+       "name": "return success",
+       "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n",
+       "comments": "",
+       "x": 391.0313262939453,
+       "y": 963.031286239624,
+       "z": "466fb936.055828",
+       "wires": []
+}, {
+       "id": "f3f6e1a2.fe953",
+       "type": "block",
+       "name": "block",
+       "xml": "<block>\n",
+       "atomic": "false",
        "comments": "",
        "outputs": 1,
-       "x": 1129.0039367675781,
-       "y": 441.00395679473877,
-       "z": "7d848bad.6cea14",
+       "x": 479.0313606262207,
+       "y": 826.0314350128174,
+       "z": "466fb936.055828",
        "wires": [
                []
        ]
 }, {
-       "id": "e96c15e0.5108b8",
-       "type": "call",
-       "name": "call GENERIC-RESOURCE-API:wan-connection-find-specifications",
-       "xml": "<call module='GENERIC-RESOURCE-API' rpc='wan-connection-find-specifications' mode='sync' >\n",
+       "id": "c8daa82e.9fce08",
+       "type": "block",
+       "name": "save-specification-block : atomic",
+       "xml": "<block atomic=\"true\">",
+       "atomic": "true",
        "comments": "",
        "outputs": 1,
-       "x": 1125.5040283203125,
-       "y": 586.0039100646973,
-       "z": "7d848bad.6cea14",
+       "x": 979.0312728881836,
+       "y": 399.0351710319519,
+       "z": "466fb936.055828",
        "wires": [
-               []
+               ["6bc05eb3.30cd7", "57cf6e7.812929"]
        ]
 }, {
-       "id": "8af933b4.c5208",
-       "type": "returnSuccess",
-       "name": "return success",
-       "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n",
+       "id": "6ba5fffc.f4ad7",
+       "type": "block",
+       "name": "find-specifications-block : atomic",
+       "xml": "<block atomic=\"true\">",
+       "atomic": "true",
        "comments": "",
-       "x": 341.00391387939453,
-       "y": 827.0039396286011,
-       "z": "7d848bad.6cea14",
-       "wires": []
+       "outputs": 1,
+       "x": 978.7812538146973,
+       "y": 602.0351667404175,
+       "z": "466fb936.055828",
+       "wires": [
+               ["d0de9da2.b12a1"]
+       ]
 }, {
-       "id": "ff5b5810.5ac2a8",
-       "type": "call",
-       "name": "call GENERIC-RESOURCE-API:wan-connection-route-calculation",
-       "xml": "<call module='GENERIC-RESOURCE-API' rpc='wan-connection-route-calculation' mode='sync' >\n",
+       "id": "d0de9da2.b12a1",
+       "type": "switchNode",
+       "name": "switch service-data.networks_length",
+       "xml": "<switch test='`$service-data.networks.network_length`'>\n",
        "comments": "",
        "outputs": 1,
-       "x": 1105.003921508789,
-       "y": 701.0039482116699,
-       "z": "7d848bad.6cea14",
+       "x": 1334.2816543579102,
+       "y": 595.0352249145508,
+       "z": "466fb936.055828",
        "wires": [
-               []
+               ["eee3aaf2.4e1838", "caad3ab3.bd09f8"]
        ]
 }, {
-       "id": "f7a1c197.52e9b",
-       "type": "outcomeTrue",
-       "name": "false",
-       "xml": "<outcome value='false'>\n",
+       "id": "eee3aaf2.4e1838",
+       "type": "other",
+       "name": "Null",
+       "xml": "<outcome value=''>\n",
        "comments": "",
        "outputs": 1,
-       "x": 741.00390625,
-       "y": 765.00390625,
-       "z": "7d848bad.6cea14",
+       "x": 1645.281639099121,
+       "y": 561.0352354049683,
+       "z": "466fb936.055828",
        "wires": [
-               ["7ef91d7a.861074"]
+               ["65406436.592e1c"]
        ]
 }, {
-       "id": "7ef91d7a.861074",
+       "id": "caad3ab3.bd09f8",
+       "type": "other",
+       "name": "other",
+       "xml": "<outcome value='Other'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1359.2815399169922,
+       "y": 691.0352286999114,
+       "z": "466fb936.055828",
+       "wires": [
+               ["cbf10816.ac73a8"]
+       ]
+}, {
+       "id": "cbf10816.ac73a8",
        "type": "block",
        "name": "block",
        "xml": "<block>\n",
        "atomic": "false",
        "comments": "",
        "outputs": 1,
-       "x": 909.00390625,
-       "y": 771.0039482116699,
-       "z": "7d848bad.6cea14",
+       "x": 1503.638584136963,
+       "y": 690.9717406933196,
+       "z": "466fb936.055828",
        "wires": [
-               []
+               ["a9f2a6d9.fdb6e8", "7e85e3b5.a6f3bc"]
+       ]
+}, {
+       "id": "65406436.592e1c",
+       "type": "set",
+       "name": "set nidx and isExist",
+       "xml": "<set>\n<parameter name='nidx' value='0' />\n<parameter name='isExist' value='false' />",
+       "comments": "",
+       "x": 1820.781593322754,
+       "y": 560.0352621371858,
+       "z": "466fb936.055828",
+       "wires": []
+}, {
+       "id": "7e85e3b5.a6f3bc",
+       "type": "set",
+       "name": "set nidx and isExist",
+       "xml": "<set>\n<parameter name='nidx' value='`$service-data.networks.network_length`' />\n<parameter name='isExist' value='false' />",
+       "comments": "",
+       "x": 1664.3372344970703,
+       "y": 649.5909099578857,
+       "z": "466fb936.055828",
+       "wires": []
+}, {
+       "id": "a9f2a6d9.fdb6e8",
+       "type": "for",
+       "name": "for each existing network",
+       "xml": "<for index='idx' start='0' end='`$nidx`' >\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1692.7656631469727,
+       "y": 702.8129920959473,
+       "z": "466fb936.055828",
+       "wires": [
+               ["18c98a96.bb5695"]
+       ]
+}, {
+       "id": "cddfa0c7.227f2",
+       "type": "set",
+       "name": "set nidx and isExist",
+       "xml": "<set>\n<parameter name='nidx' value='`$idx`' />\n<parameter name='isExist' value='true' />",
+       "comments": "",
+       "x": 1990.0327377319336,
+       "y": 963.0360021591187,
+       "z": "466fb936.055828",
+       "wires": []
+}, {
+       "id": "6bc05eb3.30cd7",
+       "type": "set",
+       "name": "set network in service-data",
+       "xml": "<set>\n<parameter name='service-data.networks.network[$nidx].network-id' value='`$network-topology-operation-input.network-information.network-id`' />\n<parameter name='service-data.networks.network[$nidx].network-data.sdnc-request-header.' value='`$network-topology-operation-input.sdnc-request-header.`' />\n<parameter name='service-data.networks.network[$nidx].network-data.request-information.' value='`$network-topology-operation-input.request-information.`' />\n<parameter name='service-data.networks.network[$nidx].network-data.service-information.' value='`$network-topology-operation-input.service-information.`' />\n<parameter name='service-data.networks.network[$nidx].network-data.network-information.' value='`$network-topology-operation-input.network-information.`' />\n<parameter name='service-data.networks.network[$nidx].network-data.network-request-input.' value='`$network-topology-operation-input.network-request-input.`' />\n<parameter name='service-data.networks.network_length' value='`$nidx+1`' />\n\n",
+       "comments": "",
+       "x": 1287.0312728881836,
+       "y": 520.0351710319519,
+       "z": "466fb936.055828",
+       "wires": []
+}, {
+       "id": "57cf6e7.812929",
+       "type": "switchNode",
+       "name": "switch service-data.networks_length",
+       "xml": "<switch test='`$service-data.networks.network_length`'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1312.0312576293945,
+       "y": 334.0351576805115,
+       "z": "466fb936.055828",
+       "wires": [
+               ["6def6bb2.720534", "62d4e9db.968648"]
+       ]
+}, {
+       "id": "6def6bb2.720534",
+       "type": "other",
+       "name": "Null",
+       "xml": "<outcome value=''>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1261.0313568115234,
+       "y": 404.03520250320435,
+       "z": "466fb936.055828",
+       "wires": [
+               ["42684448.095b0c"]
+       ]
+}, {
+       "id": "42684448.095b0c",
+       "type": "set",
+       "name": "set nidx",
+       "xml": "<set>\n<parameter name='nidx' value='0' />",
+       "comments": "",
+       "x": 1394.531265258789,
+       "y": 403.03520154953003,
+       "z": "466fb936.055828",
+       "wires": []
+}, {
+       "id": "62d4e9db.968648",
+       "type": "other",
+       "name": "other",
+       "xml": "<outcome value='Other'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1258.0311431884766,
+       "y": 452.03520154953003,
+       "z": "466fb936.055828",
+       "wires": [
+               ["1c54c402.97ae9c"]
+       ]
+}, {
+       "id": "1c54c402.97ae9c",
+       "type": "set",
+       "name": "set nidx",
+       "xml": "<set>\n<parameter name='nidx' value='`$service-data.networks.network_length`' />",
+       "comments": "",
+       "x": 1395.0870819091797,
+       "y": 448.59086656570435,
+       "z": "466fb936.055828",
+       "wires": []
+}, {
+       "id": "86478f6e.a1403",
+       "type": "set",
+       "name": "set network in service-data",
+       "xml": "<set>\n<parameter name='network-topology-operation-input.network-request-input.network-input-parameters.param_length' value='`$input_param_length + $param_length`' />\n\n",
+       "comments": "",
+       "x": 2011.5335006713867,
+       "y": 1414.0322880744934,
+       "z": "466fb936.055828",
+       "wires": []
+}, {
+       "id": "c1980d30.dbf2",
+       "type": "block",
+       "name": "copy-specifications-block : atomic",
+       "xml": "<block atomic=\"true\">",
+       "atomic": "true",
+       "comments": "",
+       "outputs": 1,
+       "x": 1714.2819137573242,
+       "y": 1057.0315475463867,
+       "z": "466fb936.055828",
+       "wires": [
+               ["cddfa0c7.227f2", "86478f6e.a1403", "dfb04fab.ed1a7", "b30b3f22.cb27b", "a9852da1.230d4"]
+       ]
+}, {
+       "id": "dfb04fab.ed1a7",
+       "type": "switchNode",
+       "name": "switch service-data.networks_length",
+       "xml": "<switch test='`$service-data.networks.network[$nidx].network-data.network-request-input.network-input-parameters.param_length`'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2062.031852722168,
+       "y": 1044.0314559936523,
+       "z": "466fb936.055828",
+       "wires": [
+               ["d52a368d.901a78", "51e9b139.d035f"]
+       ]
+}, {
+       "id": "d52a368d.901a78",
+       "type": "other",
+       "name": "Null",
+       "xml": "<outcome value=''>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2288.0317039489746,
+       "y": 1019.0313835144043,
+       "z": "466fb936.055828",
+       "wires": [
+               ["3b2e0779.e087b8"]
+       ]
+}, {
+       "id": "3b2e0779.e087b8",
+       "type": "set",
+       "name": "set param_length",
+       "xml": "<set>\n<parameter name='param_length' value='0' />",
+       "comments": "",
+       "x": 2474.531539916992,
+       "y": 1017.0313892657869,
+       "z": "466fb936.055828",
+       "wires": []
+}, {
+       "id": "51e9b139.d035f",
+       "type": "other",
+       "name": "other",
+       "xml": "<outcome value='Other'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2284.031669616699,
+       "y": 1074.0314292907715,
+       "z": "466fb936.055828",
+       "wires": [
+               ["739fd4a6.e0fb7c"]
+       ]
+}, {
+       "id": "739fd4a6.e0fb7c",
+       "type": "set",
+       "name": "set param_length",
+       "xml": "<set>\n<parameter name='param_length' value='`$service-data.networks.network[$nidx].network-data.network-request-input.network-input-parameters.param_length`' />",
+       "comments": "",
+       "x": 2472.781608581543,
+       "y": 1074.0314140319824,
+       "z": "466fb936.055828",
+       "wires": []
+}, {
+       "id": "b30b3f22.cb27b",
+       "type": "for",
+       "name": "for each existing params",
+       "xml": "<for index='pidx' start='0' end='`$param_length`' >\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2018.7821884155273,
+       "y": 1298.0316619873047,
+       "z": "466fb936.055828",
+       "wires": [
+               ["2f59a503.48761a"]
+       ]
+}, {
+       "id": "113a4fa3.2b489",
+       "type": "set",
+       "name": "set input_param_length",
+       "xml": "<set>\n<parameter name='input_param_length' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' />",
+       "comments": "",
+       "x": 2495.7822265625,
+       "y": 1203.5315532684326,
+       "z": "466fb936.055828",
+       "wires": []
+}, {
+       "id": "a9852da1.230d4",
+       "type": "switchNode",
+       "name": "switch network-input-parameters_length",
+       "xml": "<switch test='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2069.78182220459,
+       "y": 1145.5314140319824,
+       "z": "466fb936.055828",
+       "wires": [
+               ["5d6fa77d.42d9d8", "45ce065b.ba7088"]
+       ]
+}, {
+       "id": "45ce065b.ba7088",
+       "type": "other",
+       "name": "Null",
+       "xml": "<outcome value=''>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2303.781707763672,
+       "y": 1140.5314292907715,
+       "z": "466fb936.055828",
+       "wires": [
+               ["6913f557.72833c"]
+       ]
+}, {
+       "id": "5d6fa77d.42d9d8",
+       "type": "other",
+       "name": "other",
+       "xml": "<outcome value='Other'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 2302.781764984131,
+       "y": 1206.5313997268677,
+       "z": "466fb936.055828",
+       "wires": [
+               ["113a4fa3.2b489"]
+       ]
+}, {
+       "id": "6913f557.72833c",
+       "type": "set",
+       "name": "set input_param_length",
+       "xml": "<set>\n<parameter name='input_param_length' value='0' />",
+       "comments": "",
+       "x": 2492.7816772460938,
+       "y": 1141.5314445495605,
+       "z": "466fb936.055828",
+       "wires": []
+}, {
+       "id": "2f59a503.48761a",
+       "type": "set",
+       "name": "set specification_to_input_param",
+       "xml": "<set>\n<parameter name='network-topology-operation-input.network-request-input.network-input-parameters.param[$pidx+$input_param_length].' value='`$service-data.networks.network[$nidx].network-data.network-request-input.network-input-parameters.param[$pidx].`' />",
+       "comments": "",
+       "x": 2330.781837463379,
+       "y": 1298.0316753387451,
+       "z": "466fb936.055828",
+       "wires": []
+}, {
+       "id": "18c98a96.bb5695",
+       "type": "execute",
+       "name": "if contains specification",
+       "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains'  emitsOutcome='true' >\n    <parameter name=\"source\" value=\"`$service-data.networks.network[$idx].network-data.network-information.onap-model-information.model-name`\" />\n    <parameter name=\"target\" value=\"specification\"/>\n  \n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1675.531478881836,
+       "y": 777.0313911437988,
+       "z": "466fb936.055828",
+       "wires": [
+               ["888a566a.fb8378"]
+       ]
+}, {
+       "id": "b2839f92.141df",
+       "type": "execute",
+       "name": "if contains model-name",
+       "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains'  emitsOutcome='true' >\n    <parameter name=\"source\" value=\"`$service-data.networks.network[$idx].network-data.network-information.onap-model-information.model-name`\" />\n    <parameter name=\"target\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n  \n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1669.7812728881836,
+       "y": 834.0313153266907,
+       "z": "466fb936.055828",
+       "wires": [
+               ["1aa8258a.890e3a"]
+       ]
+}, {
+       "id": "888a566a.fb8378",
+       "type": "outcomeTrue",
+       "name": "true",
+       "xml": "<outcome value='true'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1866.7813625335693,
+       "y": 776.0312671661377,
+       "z": "466fb936.055828",
+       "wires": [
+               ["b2839f92.141df"]
+       ]
+}, {
+       "id": "1aa8258a.890e3a",
+       "type": "outcomeTrue",
+       "name": "true",
+       "xml": "<outcome value='true'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 1873.0313606262207,
+       "y": 831.0313777923584,
+       "z": "466fb936.055828",
+       "wires": [
+               ["c1980d30.dbf2"]
+       ]
+}, {
+       "id": "1664dd11.e34933",
+       "type": "execute",
+       "name": "contains FcPort",
+       "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n    <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n    <parameter name=\"target\" value=\"FcPort\"/>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 507.03125762939453,
+       "y": 719.03125,
+       "z": "466fb936.055828",
+       "wires": [
+               ["f55cd673.6b7048", "9a8815be.418328"]
+       ]
+}, {
+       "id": "f55cd673.6b7048",
+       "type": "outcomeTrue",
+       "name": "true",
+       "xml": "<outcome value='true'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 702.0313415527344,
+       "y": 721.0312824249268,
+       "z": "466fb936.055828",
+       "wires": [
+               ["6ba5fffc.f4ad7"]
+       ]
+}, {
+       "id": "7376171f.8378c8",
+       "type": "outcomeTrue",
+       "name": "false",
+       "xml": "<outcome value='false'>\n",
+       "comments": "",
+       "outputs": 1,
+       "x": 298.03126525878906,
+       "y": 722.0312213897705,
+       "z": "466fb936.055828",
+       "wires": [
+               ["1664dd11.e34933"]
        ]
 }]
\ No newline at end of file
index fbae8f8..0b1ff5a 100644 (file)
 
 <service-logic xmlns="http://www.onap.org/sdnc/svclogic" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.onap.org/sdnc/svclogic ./svclogic.xsd" module="GENERIC-RESOURCE-API" version="${project.version}">
   <method rpc="wan-connection-topology-operation-activate" mode="sync"> 
-    <block atomic="true">
-      <execute plugin="org.onap.ccsdk.sli.plugins.prop.PropertiesNode" method="readProperties"> 
-        <parameter name="fileName" value="%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties"/>  
-        <parameter name="contextPrefix" value="prop"/> 
-      </execute>
-      <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="replace"> 
-        <parameter name="source" value="`$prop.network-provided-resource`"/>  
-        <parameter name="outputPath" value="tmp.services-url"/>  
-        <parameter name="target" value="{service-instance-id}"/>  
-        <parameter name="replacement" value="`$network-topology-operation-input.service-information.service-id`"/> 
-      </execute>
-      <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest"> 
-        <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.services-url`"/>  
-        <parameter name="restapiUser" value="`$prop.controller.user`"/>  
-        <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>  
-        <parameter name="format" value="json"/>  
-        <parameter name="httpMethod" value="GET"/>  
-        <parameter name="responsePrefix" value="mdsal-psd"/>  
-        <outcome value="success"> 
-          <block></block>
-        </outcome>
-        <outcome value="Other"> 
-          <return status="failure"> 
-            <parameter name="ack-final" value="Y"/>  
-            <parameter name="error-code" value="404"/>  
-            <parameter name="error-message" value="Error: Parent service data not available"/> 
-          </return>
-        </outcome>
-      </execute>
-      <set> 
-        <parameter name="tmp.found-network-input" value="false"/>
-      </set>
-      <for index="pidx" start="0" end="`$mdsal-psd.service-data.networks.network_length`"> 
-        <switch test="`$mdsal-psd.service-data.networks.network[$pidx].network-data.network-information.onap-model-information.model-name == $network-topology-operation-input.network-information.onap-model-information.model-name`"> 
-          <outcome value="true"> 
-            <block atomic="true">
-              <set> 
-                <parameter name="tmp.pidx" value="`$pidx`"/>  
-                <parameter name="tmp.network." value="`$mdsal-psd.service-data.networks.network[$pidx].`"/>  
-                <parameter name="tmp.network-input-parameters" value="`$mdsal-psd.service-data.networks.network[$pidx].network-data.network-request-input.network-input-parameters`"/>  
-                <parameter name="tmp.found-network-input" value="true"/>
-              </set>
-            </block>
-          </outcome>
-        </switch>
-      </for>
-      <switch test="`$found-network-input`"> 
-        <outcome value="false"> 
-          <return status="failure"> 
-            <parameter name="ack-final" value="Y"/>  
-            <parameter name="error-code" value="404"/>  
-            <parameter name="error-message" value="Error: Network input parameters not found"/> 
-          </return>
-        </outcome>
-        <outcome value="true"> 
+    <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains"> 
+      <parameter name="source" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>  
+      <parameter name="target" value="specification"/>  
+      <outcome value="true"> 
+        <return status="success"> 
+          <parameter name="ack-final-indicator" value="Y"/>  
+          <parameter name="error-code" value="200"/>  
+          <parameter name="error-message" value="`$error-message`"/> 
+        </return>
+      </outcome>
+      <outcome value="false"> 
+        <block atomic="true">
           <block atomic="true">
+            <execute plugin="org.onap.ccsdk.sli.plugins.prop.PropertiesNode" method="readProperties"> 
+              <parameter name="fileName" value="%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties"/>  
+              <parameter name="contextPrefix" value="prop"/> 
+            </execute>
             <set> 
-              <parameter name="tmp.restapiUrl-found" value="false"/>  
-              <parameter name="tmp.restapiUser-found" value="false"/>  
-              <parameter name="tmp.restapiPassword-found" value="false"/>  
-              <parameter name="tmp.templateFileName-found" value="false"/>  
-              <parameter name="tmp.thirdPartyAdaptorRpc-found" value="false"/>
+              <parameter name="tmp.found-network-input" value="false"/>
             </set>
-            <for index="cidx" start="0" end="`$tmp.network.network-data.network-topology.network-parameters.network-parameter_length`"> 
-              <block> 
-                <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiUrl'`"> 
-                  <outcome value="true"> 
-                    <set> 
-                      <parameter name="tmp.restapiUrl" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>  
-                      <parameter name="tmp.restapiUrl-found" value="true"/>
-                    </set>
-                  </outcome>
-                </switch>
-                <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiUser'`"> 
-                  <outcome value="true"> 
-                    <set> 
-                      <parameter name="tmp.restapiUser" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>  
-                      <parameter name="tmp.restapiUser-found" value="true"/>
-                    </set>
-                  </outcome>
-                </switch>
-                <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiPassword'`"> 
-                  <outcome value="true"> 
-                    <set> 
-                      <parameter name="tmp.restapiPassword" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>  
-                      <parameter name="tmp.restapiPassword-found" value="true"/>
-                    </set>
-                  </outcome>
-                </switch>
-                <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'templateFileName'`"> 
-                  <outcome value="true"> 
-                    <set> 
-                      <parameter name="tmp.templateFileName" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>  
-                      <parameter name="tmp.templateFileName-found" value="true"/>
-                    </set>
-                  </outcome>
-                </switch>
-                <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'thirdPartyAdaptorRpc'`"> 
-                  <outcome value="true"> 
-                    <set> 
-                      <parameter name="tmp.thirdPartyAdaptorRpc" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>  
-                      <parameter name="tmp.thirdPartyAdaptorRpc-found" value="true"/>
-                    </set>
-                  </outcome>
-                </switch>
-              </block>
+            <for index="pidx" start="0" end="`$service-data.networks.network_length`"> 
+              <switch test="`$service-data.networks.network[$pidx].network-data.network-information.onap-model-information.model-name == $network-topology-operation-input.network-information.onap-model-information.model-name`"> 
+                <outcome value="true"> 
+                  <set> 
+                    <parameter name="tmp.pidx" value="`$pidx`"/>  
+                    <parameter name="tmp.network." value="`$service-data.networks.network[$pidx].`"/>  
+                    <parameter name="tmp.network-input-parameters" value="`$service-data.networks.network[$pidx].network-data.network-request-input.network-input-parameters`"/>  
+                    <parameter name="tmp.found-network-input" value="true"/>
+                  </set>
+                </outcome>
+              </switch>
             </for>
-            <switch test="`$tmp.thirdPartyAdaptorRpc-found == 'true'`"> 
-              <outcome value="true"> 
-                <call module="GENERIC-RESOURCE-API" rpc="`$tmp.thirdPartyAdaptorRpc`" mode="sync"> 
-                  <outcome value="success"> 
-                    <block></block>
-                  </outcome>
-                  <outcome value="failure"> 
-                    <return status="failure"> 
-                      <parameter name="ack-final" value="Y"/>  
-                      <parameter name="error-code" value="500"/>  
-                      <parameter name="error-message" value="`'Error calling ' + $tmp.thirdPartyAdaptorRpc`"/> 
-                    </return>
-                  </outcome>
-                  <outcome value="not-found"> 
-                    <return status="failure"> 
-                      <parameter name="ack-final" value="Y"/>  
-                      <parameter name="error-code" value="500"/>  
-                      <parameter name="error-message" value="`'Error calling ' + $tmp.thirdPartyAdaptorRpc`"/> 
-                    </return>
-                  </outcome>
-                </call>
-              </outcome>
-              <outcome value="false"> 
-                <switch test="`$tmp.restapiUrl-found == 'true'`"> 
-                  <outcome value="false"> 
-                    <return status="failure"> 
-                      <parameter name="ack-final" value="Y"/>  
-                      <parameter name="error-code" value="404"/>  
-                      <parameter name="error-message" value="Error: 3rd party controller restapiUrl not found"/> 
+          </block>
+          <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains"> 
+            <parameter name="source" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>  
+            <parameter name="target" value="FC"/>  
+            <outcome value="true"> 
+              <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains"> 
+                <parameter name="source" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>  
+                <parameter name="target" value="sotn"/>  
+                <outcome value="true"> 
+                  <block> 
+                    <block atomic="true">
+                      <set> 
+                        <parameter name="sotnFcPortListLength" value="0"/>
+                      </set>
+                      <for index="sIdx" start="0" end="`$service-data.networks.network_length`"> 
+                        <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains"> 
+                          <parameter name="source" value="`$service-data.networks.network[$sIdx].network-data.network-information.onap-model-information.model-name`"/>  
+                          <parameter name="target" value="sotn"/>  
+                          <outcome value="true"> 
+                            <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains"> 
+                              <parameter name="source" value="`$service-data.networks.network[$sIdx].network-data.network-information.onap-model-information.model-name`"/>  
+                              <parameter name="target" value="FcPort"/>  
+                              <outcome value="true"> 
+                                <block atomic="true">
+                                  <set> 
+                                    <parameter name="tmp.sotnFcPortList[`$sotnFcPortListLength`]" value="`$sIdx`"/>
+                                  </set>
+                                  <for index="paramIdx" start="0" end="`$service-data.networks.network[$sIdx].network-data.network-request-input.network-input-parameters.param_length`"> 
+                                    <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains"> 
+                                      <parameter name="source" value="`$service-data.networks.network[$sIdx].network-data.network-request-input.network-input-parameters.param[$paramIdx].name`"/>  
+                                      <parameter name="target" value="address"/>  
+                                      <outcome value="true"> 
+                                        <block atomic="true">
+                                          <set> 
+                                            <parameter name="sotnFcPortAddress" value="`$service-data.networks.network[$sIdx].network-data.network-request-input.network-input-parameters.param[$paramIdx].value`"/>
+                                          </set>
+                                          <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest"> 
+                                            <parameter name="restapiUrl" value="`$prop.oss.url + '/oss/inventory?location=' + $sotnFcPortAddress`"/>  
+                                            <parameter name="format" value="json"/>  
+                                            <parameter name="customHttpHeaders" value="X-FromAppId=MSO"/>  
+                                            <parameter name="httpMethod" value="GET"/>  
+                                            <parameter name="responsePrefix" value="temp.oss.accessTPs"/>  
+                                            <outcome value="success"> 
+                                              <switch test="`$temp.oss.accessTPs_length`"> 
+                                                <outcome value="Other"> 
+                                                  <block atomic="true">
+                                                    <switch test="`$temp.accessTPs_length`"> 
+                                                      <outcome value=""> 
+                                                        <set> 
+                                                          <parameter name="tp_length" value="0"/>
+                                                        </set>
+                                                      </outcome>
+                                                      <outcome value="Other"> 
+                                                        <set> 
+                                                          <parameter name="tp_length" value="`$temp.accessTPs_length`"/>
+                                                        </set>
+                                                      </outcome>
+                                                    </switch>
+                                                    <for index="idx" start="0" end="`$temp.oss.accessTPs_length`"> 
+                                                      <set> 
+                                                        <parameter name="`temp.accessTPs[$idx + $tp_length].`" value="`$temp.oss.accessTPs[$idx].`"/>
+                                                      </set>
+                                                    </for>
+                                                    <set> 
+                                                      <parameter name="temp.accessTPs_length" value="`$temp.accessTPs_length + $temp.oss.accessTPs_length`"/> 
+                                                    </set>
+                                                  </block>
+                                                </outcome>
+                                              </switch>
+                                            </outcome>
+                                          </execute>
+                                        </block>
+                                      </outcome>
+                                    </execute>
+                                  </for>
+                                </block>
+                              </outcome>
+                            </execute>
+                          </outcome>
+                        </execute>
+                      </for>
+                    </block>
+                    <switch test="`$temp.accessTPs_length &gt;= 2`"> 
+                      <outcome value="true"> 
+                        <block atomic="true">
+                          <set> 
+                            <parameter name="prop.connection-attachment.access-topology-id" value="`$temp.accessTPs[0].access-topology-id`"/>  
+                            <parameter name="prop.connection-attachment.access-client-id" value="`$temp.accessTPs[0].access-client-id`"/>  
+                            <parameter name="prop.connection-attachment.access-provider-id" value="`$temp.accessTPs[0].access-provider-id`"/>  
+                            <parameter name="prop.connection-attachment.access-node-id" value="`$temp.accessTPs[0].access-node-id`"/>  
+                            <parameter name="prop.connection-attachment.access-ltp-id" value="`$temp.accessTPs[0].access-ltp-id`"/>  
+                            <parameter name="prop.remote.connection-attachment.access-topology-id" value="`$temp.accessTPs[1].access-topology-id`"/>  
+                            <parameter name="prop.remote.connection-attachment.access-client-id" value="`$temp.accessTPs[1].access-client-id`"/>  
+                            <parameter name="prop.remote.connection-attachment.access-provider-id" value="`$temp.accessTPs[1].access-provider-id`"/>  
+                            <parameter name="prop.remote.connection-attachment.access-node-id" value="`$temp.accessTPs[1].access-node-id`"/>  
+                            <parameter name="prop.remote.connection-attachment.access-ltp-id" value="`$temp.accessTPs[1].access-ltp-id`"/>
+                          </set>
+                          <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest"> 
+                            <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.oof-getpath.templatefile`"/>  
+                            <parameter name="restapiUrl" value="`$prop.restapi.connection-oof-url`"/>  
+                            <parameter name="restapiUser" value="`$prop.oof.user`"/>  
+                            <parameter name="restapiPassword" value="`$prop.oof.password`"/>  
+                            <parameter name="format" value="json"/>  
+                            <parameter name="httpMethod" value="post"/>  
+                            <parameter name="responsePrefix" value="oof"/>  
+                            <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>  
+                            <parameter name="trustStorePassword" value="adminadmin"/>  
+                            <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>  
+                            <parameter name="keyStorePassword" value="adminadmin"/>  
+                            <parameter name="customHttpHeaders" value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`"/>
+                            <outcome value="failure"></outcome>
+                            <outcome value="success"> 
+                              <for index="vidx" start="0" end="`$oof.vpns_length`">
+                                <block atomic="true">
+                                  <set> 
+                                    <parameter name="oof.vpn." value="`$oof.vpns[$vidx].`"/>
+                                  </set>
+                                  <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="pnf" key="pnf.pnf-name = $oof.vpn.access-node-id    AND depth = '0'" pfx="tmp.aai.pnf" local-only="false"> 
+                                    <outcome value="success"> 
+                                      <set> 
+                                        <parameter name="tmp.thirdparty-sdnc-id" value="`$tmp.aai.pnf.relationship-list.relationship[0].relationship-data[0].relationship-value`"/> 
+                                      </set>
+                                    </outcome>
+                                    <outcome value="not-found"> 
+                                      <return status="failure"> 
+                                        <parameter name="ack-final" value="Y"/>  
+                                        <parameter name="error-code" value="500"/>  
+                                        <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`"/> 
+                                      </return>
+                                    </outcome>
+                                    <outcome value="Other"> 
+                                      <return status="failure"> 
+                                        <parameter name="ack-final" value="Y"/>  
+                                        <parameter name="error-code" value="500"/>  
+                                        <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`"/> 
+                                      </return>
+                                    </outcome>
+                                  </get-resource>
+                                  <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="esr-thirdparty-sdnc" key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND         depth = '1'" pfx="tmp.aai.esr-thirdparty-sdnc" local-only="false"> 
+                                    <outcome value="success"> 
+                                      <set> 
+                                        <parameter name="prop.sdncRestApi.thirdpartySdnc.url" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`"/>  
+                                        <parameter name="prop.sdncRestApi.thirdpartySdnc.user" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`"/>  
+                                        <parameter name="prop.sdncRestApi.thirdpartySdnc.password" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`"/> 
+                                      </set>
+                                    </outcome>
+                                    <outcome value="not-found"> 
+                                      <return status="failure"> 
+                                        <parameter name="ack-final" value="Y"/>  
+                                        <parameter name="error-code" value="500"/>  
+                                        <parameter name="error-message" value="`'An error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`"/> 
+                                      </return>
+                                    </outcome>
+                                    <outcome value="Other"> 
+                                      <return status="failure"> 
+                                        <parameter name="ack-final" value="Y"/>  
+                                        <parameter name="error-code" value="500"/>  
+                                        <parameter name="error-message" value="`'Unexpected error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`"/> 
+                                      </return>
+                                    </outcome>
+                                  </get-resource>
+                                  <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest"> 
+                                    <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/sotn-api-ConnectivityService.json'`"/>  
+                                    <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/operations/ZTE-API-ConnectivityService:create-connectivity-service'`"/>  
+                                    <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`"/>  
+                                    <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`"/>  
+                                    <parameter name="format" value="json"/>  
+                                    <parameter name="httpMethod" value="patch"/>  
+                                    <parameter name="responsePrefix" value="vpn-result"/>  
+                                    <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>  
+                                    <parameter name="trustStorePassword" value="adminadmin"/>  
+                                    <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>  
+                                    <parameter name="keyStorePassword" value="adminadmin"/>  
+                                    <parameter name="customHttpHeaders" value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`"/>
+                                    <outcome value="failure"> 
+                                      <return status="failure"> 
+                                        <parameter name="ack-final" value="Y"/>  
+                                        <parameter name="error-code" value="500"/>  
+                                        <parameter name="error-message" value="Error executing Create vpn rest api"/> 
+                                      </return>
+                                    </outcome>
+                                    <outcome value="success"> 
+                                      <block atomic="true"/>
+                                    </outcome>
+                                  </execute>
+                                </block>
+                              </for>
+                            </outcome>
+                          </execute>
+                        </block>
+                      </outcome>
+                    </switch>
+                  </block>
+                </outcome>
+                <outcome value="false"> 
+                  <block atomic="true">
+                    <switch test="`$found-network-input`"> 
+                      <outcome value="false"> 
+                        <return status="failure"> 
+                          <parameter name="ack-final" value="Y"/>  
+                          <parameter name="error-code" value="404"/>  
+                          <parameter name="error-message" value="Error: Network input parameters not found"/> 
+                        </return>
+                      </outcome>
+                      <outcome value="true"> 
+                        <block atomic="true">
+                          <set> 
+                            <parameter name="tmp.restapiUrl-found" value="false"/>  
+                            <parameter name="tmp.restapiUser-found" value="false"/>  
+                            <parameter name="tmp.restapiPassword-found" value="false"/>  
+                            <parameter name="tmp.templateFileName-found" value="false"/>  
+                            <parameter name="tmp.thirdPartyAdaptorRpc-found" value="false"/>
+                          </set>
+                          <for index="cidx" start="0" end="`$tmp.network.network-data.network-topology.network-parameters.network-parameter_length`"> 
+                            <block> 
+                              <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'thirdPartySdncId'`"> 
+                                <outcome value="true"> 
+                                  <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="esr-thirdparty-sdnc" key="esr-thirdparty-sdnc.thirdparty-sdnc-id = `$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value` AND         depth = '1'" pfx="tmp.aai.esr-thirdparty-sdnc" local-only="false"> 
+                                    <outcome value="success"> 
+                                      <set> 
+                                        <parameter name="prop.thirdpartySdnc-found" value="true"/>  
+                                        <parameter name="prop.sdncRestApi.thirdpartySdnc.url" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`"/>  
+                                        <parameter name="prop.sdncRestApi.thirdpartySdnc.user" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`"/>  
+                                        <parameter name="prop.sdncRestApi.thirdpartySdnc.password" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`"/> 
+                                      </set>
+                                    </outcome>
+                                    <outcome value="not-found"> 
+                                      <set> 
+                                        <parameter name="prop.thirdpartySdnc-found" value="false"/> 
+                                      </set>
+                                    </outcome>
+                                    <outcome value="Other"> 
+                                      <set> 
+                                        <parameter name="prop.thirdpartySdnc-found" value="false"/> 
+                                      </set>
+                                    </outcome>
+                                  </get-resource>
+                                </outcome>
+                              </switch>
+                              <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'templateFileName'`"> 
+                                <outcome value="true"> 
+                                  <set> 
+                                    <parameter name="tmp.templateFileName" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>  
+                                    <parameter name="tmp.templateFileName-found" value="true"/>
+                                  </set>
+                                </outcome>
+                              </switch>
+                              <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiUrl'`"> 
+                                <outcome value="true"> 
+                                  <set> 
+                                    <parameter name="tmp.restapiUrl" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>  
+                                    <parameter name="tmp.restapiUrl-found" value="true"/>
+                                  </set>
+                                </outcome>
+                              </switch>
+                              <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'thirdPartyAdaptorRpc'`"> 
+                                <outcome value="true"> 
+                                  <set> 
+                                    <parameter name="tmp.thirdPartyAdaptorRpc" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>  
+                                    <parameter name="tmp.thirdPartyAdaptorRpc-found" value="true"/>
+                                  </set>
+                                </outcome>
+                              </switch>
+                            </block>
+                          </for>
+                          <switch test="`$tmp.thirdPartyAdaptorRpc-found == 'true'`"> 
+                            <outcome value="true"> 
+                              <call module="GENERIC-RESOURCE-API" rpc="`$tmp.thirdPartyAdaptorRpc`" mode="sync"> 
+                                <outcome value="success"> 
+                                  <block></block>
+                                </outcome>
+                                <outcome value="failure"> 
+                                  <return status="failure"> 
+                                    <parameter name="ack-final" value="Y"/>  
+                                    <parameter name="error-code" value="500"/>  
+                                    <parameter name="error-message" value="`'Error calling ' + $tmp.thirdPartyAdaptorRpc`"/> 
+                                  </return>
+                                </outcome>
+                                <outcome value="not-found"> 
+                                  <return status="failure"> 
+                                    <parameter name="ack-final" value="Y"/>  
+                                    <parameter name="error-code" value="500"/>  
+                                    <parameter name="error-message" value="`'Error calling ' + $tmp.thirdPartyAdaptorRpc`"/> 
+                                  </return>
+                                </outcome>
+                              </call>
+                            </outcome>
+                            <outcome value="false"> 
+                              <switch test="`$tmp.prop.thirdpartySdnc-found == 'true' and $tmp.templateFileName-found == 'true' and `$tmp.prop.restapiUrl-found == 'true'`"> 
+                                <outcome value="false"> 
+                                  <return status="failure"> 
+                                    <parameter name="ack-final" value="Y"/>  
+                                    <parameter name="error-code" value="404"/>  
+                                    <parameter name="error-message" value="Error: 3rd party controller restapiUrl not found"/> 
+                                  </return>
+                                </outcome>
+                                <outcome value="true"> 
+                                  <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest"> 
+                                    <parameter name="templateFileName" value="`$tmp.templateFileName`"/>  
+                                    <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + $tmp.restapiUrl`"/>  
+                                    <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`"/>  
+                                    <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`"/>  
+                                    <parameter name="format" value="json"/>  
+                                    <parameter name="httpMethod" value="post"/>  
+                                    <parameter name="responsePrefix" value="restApi-result"/>
+                                    <outcome value="success"> 
+                                      <block></block>
+                                    </outcome>
+                                    <outcome value="failure"> 
+                                      <return status="failure"> 
+                                        <parameter name="ack-final" value="Y"/>  
+                                        <parameter name="error-code" value="500"/>  
+                                        <parameter name="error-message" value="`'Error calling ' + $tmp.restapiUrl`"/> 
+                                      </return>
+                                    </outcome>
+                                    <outcome value="not-found"> 
+                                      <return status="failure"> 
+                                        <parameter name="ack-final" value="Y"/>  
+                                        <parameter name="error-code" value="500"/>  
+                                        <parameter name="error-message" value="`'Error calling ' + $tmp.restapiUrl`"/> 
+                                      </return>
+                                    </outcome>
+                                  </execute>
+                                </outcome>
+                              </switch>
+                            </outcome>
+                          </switch>
+                        </block>
+                      </outcome>
+                    </switch>
+                    <return status="success"> 
+                      <parameter name="ack-final-indicator" value="Y"/>  
+                      <parameter name="error-code" value="200"/>  
+                      <parameter name="error-message" value="`$error-message`"/> 
                     </return>
-                  </outcome>
-                  <outcome value="true"> 
-                    <switch test="`$tmp.restapiUser-found == 'true'`"> 
+                  </block>
+                </outcome>
+              </execute>
+            </outcome>
+            <outcome value="false"> 
+              <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains"> 
+                <parameter name="source" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>  
+                <parameter name="target" value="FD"/>  
+                <outcome value="true"> 
+                  <block atomic="true">
+                    <switch test="`$found-network-input`"> 
                       <outcome value="false"> 
                         <return status="failure"> 
                           <parameter name="ack-final" value="Y"/>  
                           <parameter name="error-code" value="404"/>  
-                          <parameter name="error-message" value="Error: 3rd party controller restapiUser not found"/> 
+                          <parameter name="error-message" value="Error: Network input parameters not found"/> 
                         </return>
                       </outcome>
                       <outcome value="true"> 
-                        <switch test="`$tmp.restapiPassword-found == 'true'`"> 
-                          <outcome value="false"> 
-                            <return status="failure"> 
-                              <parameter name="ack-final" value="Y"/>  
-                              <parameter name="error-code" value="404"/>  
-                              <parameter name="error-message" value="Error: 3rd party controller restapiPassword not found"/> 
-                            </return>
-                          </outcome>
-                          <outcome value="true"> 
-                            <switch test="`$tmp.templateFileName-found == 'true'`"> 
+                        <block atomic="true">
+                          <set> 
+                            <parameter name="tmp.restapiUrl-found" value="false"/>  
+                            <parameter name="tmp.restapiUser-found" value="false"/>  
+                            <parameter name="tmp.restapiPassword-found" value="false"/>  
+                            <parameter name="tmp.templateFileName-found" value="false"/>  
+                            <parameter name="tmp.thirdPartyAdaptorRpc-found" value="false"/>
+                          </set>
+                          <for index="cidx" start="0" end="`$tmp.network.network-data.network-topology.network-parameters.network-parameter_length`"> 
+                            <block> 
+                              <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'thirdPartySdncId'`"> 
+                                <outcome value="true"> 
+                                  <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="esr-thirdparty-sdnc" key="esr-thirdparty-sdnc.thirdparty-sdnc-id = `$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value` AND         depth = '1'" pfx="tmp.aai.esr-thirdparty-sdnc" local-only="false"> 
+                                    <outcome value="success"> 
+                                      <set> 
+                                        <parameter name="prop.thirdpartySdnc-found" value="true"/>  
+                                        <parameter name="prop.sdncRestApi.thirdpartySdnc.url" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`"/>  
+                                        <parameter name="prop.sdncRestApi.thirdpartySdnc.user" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`"/>  
+                                        <parameter name="prop.sdncRestApi.thirdpartySdnc.password" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`"/> 
+                                      </set>
+                                    </outcome>
+                                    <outcome value="not-found"> 
+                                      <set> 
+                                        <parameter name="prop.thirdpartySdnc-found" value="false"/> 
+                                      </set>
+                                    </outcome>
+                                    <outcome value="Other"> 
+                                      <set> 
+                                        <parameter name="prop.thirdpartySdnc-found" value="false"/> 
+                                      </set>
+                                    </outcome>
+                                  </get-resource>
+                                </outcome>
+                              </switch>
+                              <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'templateFileName'`"> 
+                                <outcome value="true"> 
+                                  <set> 
+                                    <parameter name="tmp.templateFileName" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>  
+                                    <parameter name="tmp.templateFileName-found" value="true"/>
+                                  </set>
+                                </outcome>
+                              </switch>
+                              <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiUrl'`"> 
+                                <outcome value="true"> 
+                                  <set> 
+                                    <parameter name="tmp.restapiUrl" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>  
+                                    <parameter name="tmp.restapiUrl-found" value="true"/>
+                                  </set>
+                                </outcome>
+                              </switch>
+                              <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'thirdPartyAdaptorRpc'`"> 
+                                <outcome value="true"> 
+                                  <set> 
+                                    <parameter name="tmp.thirdPartyAdaptorRpc" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>  
+                                    <parameter name="tmp.thirdPartyAdaptorRpc-found" value="true"/>
+                                  </set>
+                                </outcome>
+                              </switch>
+                            </block>
+                          </for>
+                          <switch test="`$tmp.thirdPartyAdaptorRpc-found == 'true'`"> 
+                            <outcome value="true"> 
+                              <call module="GENERIC-RESOURCE-API" rpc="`$tmp.thirdPartyAdaptorRpc`" mode="sync"> 
+                                <outcome value="success"> 
+                                  <block></block>
+                                </outcome>
+                                <outcome value="failure"> 
+                                  <return status="failure"> 
+                                    <parameter name="ack-final" value="Y"/>  
+                                    <parameter name="error-code" value="500"/>  
+                                    <parameter name="error-message" value="`'Error calling ' + $tmp.thirdPartyAdaptorRpc`"/> 
+                                  </return>
+                                </outcome>
+                                <outcome value="not-found"> 
+                                  <return status="failure"> 
+                                    <parameter name="ack-final" value="Y"/>  
+                                    <parameter name="error-code" value="500"/>  
+                                    <parameter name="error-message" value="`'Error calling ' + $tmp.thirdPartyAdaptorRpc`"/> 
+                                  </return>
+                                </outcome>
+                              </call>
+                            </outcome>
+                            <outcome value="false"> 
+                              <switch test="`$tmp.prop.thirdpartySdnc-found == 'true' and $tmp.templateFileName-found == 'true' and `$tmp.prop.restapiUrl-found == 'true'`"> 
+                                <outcome value="false"> 
+                                  <return status="failure"> 
+                                    <parameter name="ack-final" value="Y"/>  
+                                    <parameter name="error-code" value="404"/>  
+                                    <parameter name="error-message" value="Error: 3rd party controller restapiUrl not found"/> 
+                                  </return>
+                                </outcome>
+                                <outcome value="true"> 
+                                  <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest"> 
+                                    <parameter name="templateFileName" value="`$tmp.templateFileName`"/>  
+                                    <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + $tmp.restapiUrl`"/>  
+                                    <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`"/>  
+                                    <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`"/>  
+                                    <parameter name="format" value="json"/>  
+                                    <parameter name="httpMethod" value="post"/>  
+                                    <parameter name="responsePrefix" value="restApi-result"/>
+                                    <outcome value="success"> 
+                                      <block></block>
+                                    </outcome>
+                                    <outcome value="failure"> 
+                                      <return status="failure"> 
+                                        <parameter name="ack-final" value="Y"/>  
+                                        <parameter name="error-code" value="500"/>  
+                                        <parameter name="error-message" value="`'Error calling ' + $tmp.restapiUrl`"/> 
+                                      </return>
+                                    </outcome>
+                                    <outcome value="not-found"> 
+                                      <return status="failure"> 
+                                        <parameter name="ack-final" value="Y"/>  
+                                        <parameter name="error-code" value="500"/>  
+                                        <parameter name="error-message" value="`'Error calling ' + $tmp.restapiUrl`"/> 
+                                      </return>
+                                    </outcome>
+                                  </execute>
+                                </outcome>
+                              </switch>
+                            </outcome>
+                          </switch>
+                        </block>
+                      </outcome>
+                    </switch>
+                    <return status="success"> 
+                      <parameter name="ack-final-indicator" value="Y"/>  
+                      <parameter name="error-code" value="200"/>  
+                      <parameter name="error-message" value="`$error-message`"/> 
+                    </return>
+                  </block>
+                </outcome>
+                <outcome value="false"> 
+                  <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains"> 
+                    <parameter name="source" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>  
+                    <parameter name="target" value="FcPort"/>  
+                    <outcome value="true"> 
+                      <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains"> 
+                        <parameter name="source" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>  
+                        <parameter name="target" value="sitewan"/>  
+                        <outcome value="true"> 
+                          <block atomic="true">
+                            <switch test="`$found-network-input`"> 
                               <outcome value="false"> 
                                 <return status="failure"> 
                                   <parameter name="ack-final" value="Y"/>  
                                   <parameter name="error-code" value="404"/>  
-                                  <parameter name="error-message" value="Error: 3rd party controller templateFileName not found"/> 
+                                  <parameter name="error-message" value="Error: Network input parameters not found"/> 
                                 </return>
                               </outcome>
                               <outcome value="true"> 
-                                <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest"> 
-                                  <parameter name="templateFileName" value="`$tmp.templateFileName`"/>  
-                                  <parameter name="restapiUrl" value="`$tmp.restapiUrl`"/>  
-                                  <parameter name="restapiUser" value="`$tmp.restapiUser`"/>  
-                                  <parameter name="restapiPassword" value="`$tmp.restapiPassword`"/>  
-                                  <parameter name="format" value="json"/>  
-                                  <parameter name="httpMethod" value="post"/>  
-                                  <parameter name="responsePrefix" value="restApi-result"/>
-                                  <outcome value="success"> 
-                                    <block></block>
-                                  </outcome>
-                                  <outcome value="failure"> 
-                                    <return status="failure"> 
-                                      <parameter name="ack-final" value="Y"/>  
-                                      <parameter name="error-code" value="500"/>  
-                                      <parameter name="error-message" value="`'Error calling ' + $tmp.restapiUrl`"/> 
-                                    </return>
-                                  </outcome>
-                                  <outcome value="not-found"> 
-                                    <return status="failure"> 
-                                      <parameter name="ack-final" value="Y"/>  
-                                      <parameter name="error-code" value="500"/>  
-                                      <parameter name="error-message" value="`'Error calling ' + $tmp.restapiUrl`"/> 
-                                    </return>
-                                  </outcome>
-                                </execute>
+                                <block atomic="true">
+                                  <set> 
+                                    <parameter name="tmp.restapiUrl-found" value="false"/>  
+                                    <parameter name="tmp.restapiUser-found" value="false"/>  
+                                    <parameter name="tmp.restapiPassword-found" value="false"/>  
+                                    <parameter name="tmp.templateFileName-found" value="false"/>  
+                                    <parameter name="tmp.thirdPartyAdaptorRpc-found" value="false"/>
+                                  </set>
+                                  <for index="cidx" start="0" end="`$tmp.network.network-data.network-topology.network-parameters.network-parameter_length`"> 
+                                    <block> 
+                                      <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'thirdPartySdncId'`"> 
+                                        <outcome value="true"> 
+                                          <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="esr-thirdparty-sdnc" key="esr-thirdparty-sdnc.thirdparty-sdnc-id = `$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value` AND         depth = '1'" pfx="tmp.aai.esr-thirdparty-sdnc" local-only="false"> 
+                                            <outcome value="success"> 
+                                              <set> 
+                                                <parameter name="prop.thirdpartySdnc-found" value="true"/>  
+                                                <parameter name="prop.sdncRestApi.thirdpartySdnc.url" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`"/>  
+                                                <parameter name="prop.sdncRestApi.thirdpartySdnc.user" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`"/>  
+                                                <parameter name="prop.sdncRestApi.thirdpartySdnc.password" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`"/> 
+                                              </set>
+                                            </outcome>
+                                            <outcome value="not-found"> 
+                                              <set> 
+                                                <parameter name="prop.thirdpartySdnc-found" value="false"/> 
+                                              </set>
+                                            </outcome>
+                                            <outcome value="Other"> 
+                                              <set> 
+                                                <parameter name="prop.thirdpartySdnc-found" value="false"/> 
+                                              </set>
+                                            </outcome>
+                                          </get-resource>
+                                        </outcome>
+                                      </switch>
+                                      <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'templateFileName'`"> 
+                                        <outcome value="true"> 
+                                          <set> 
+                                            <parameter name="tmp.templateFileName" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>  
+                                            <parameter name="tmp.templateFileName-found" value="true"/>
+                                          </set>
+                                        </outcome>
+                                      </switch>
+                                      <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiUrl'`"> 
+                                        <outcome value="true"> 
+                                          <set> 
+                                            <parameter name="tmp.restapiUrl" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>  
+                                            <parameter name="tmp.restapiUrl-found" value="true"/>
+                                          </set>
+                                        </outcome>
+                                      </switch>
+                                      <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'thirdPartyAdaptorRpc'`"> 
+                                        <outcome value="true"> 
+                                          <set> 
+                                            <parameter name="tmp.thirdPartyAdaptorRpc" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>  
+                                            <parameter name="tmp.thirdPartyAdaptorRpc-found" value="true"/>
+                                          </set>
+                                        </outcome>
+                                      </switch>
+                                    </block>
+                                  </for>
+                                  <switch test="`$tmp.thirdPartyAdaptorRpc-found == 'true'`"> 
+                                    <outcome value="true"> 
+                                      <call module="GENERIC-RESOURCE-API" rpc="`$tmp.thirdPartyAdaptorRpc`" mode="sync"> 
+                                        <outcome value="success"> 
+                                          <block></block>
+                                        </outcome>
+                                        <outcome value="failure"> 
+                                          <return status="failure"> 
+                                            <parameter name="ack-final" value="Y"/>  
+                                            <parameter name="error-code" value="500"/>  
+                                            <parameter name="error-message" value="`'Error calling ' + $tmp.thirdPartyAdaptorRpc`"/> 
+                                          </return>
+                                        </outcome>
+                                        <outcome value="not-found"> 
+                                          <return status="failure"> 
+                                            <parameter name="ack-final" value="Y"/>  
+                                            <parameter name="error-code" value="500"/>  
+                                            <parameter name="error-message" value="`'Error calling ' + $tmp.thirdPartyAdaptorRpc`"/> 
+                                          </return>
+                                        </outcome>
+                                      </call>
+                                    </outcome>
+                                    <outcome value="false"> 
+                                      <switch test="`$tmp.prop.thirdpartySdnc-found == 'true' and $tmp.templateFileName-found == 'true' and `$tmp.prop.restapiUrl-found == 'true'`"> 
+                                        <outcome value="false"> 
+                                          <return status="failure"> 
+                                            <parameter name="ack-final" value="Y"/>  
+                                            <parameter name="error-code" value="404"/>  
+                                            <parameter name="error-message" value="Error: 3rd party controller restapiUrl not found"/> 
+                                          </return>
+                                        </outcome>
+                                        <outcome value="true"> 
+                                          <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest"> 
+                                            <parameter name="templateFileName" value="`$tmp.templateFileName`"/>  
+                                            <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + $tmp.restapiUrl`"/>  
+                                            <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`"/>  
+                                            <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`"/>  
+                                            <parameter name="format" value="json"/>  
+                                            <parameter name="httpMethod" value="post"/>  
+                                            <parameter name="responsePrefix" value="restApi-result"/>
+                                            <outcome value="success"> 
+                                              <block></block>
+                                            </outcome>
+                                            <outcome value="failure"> 
+                                              <return status="failure"> 
+                                                <parameter name="ack-final" value="Y"/>  
+                                                <parameter name="error-code" value="500"/>  
+                                                <parameter name="error-message" value="`'Error calling ' + $tmp.restapiUrl`"/> 
+                                              </return>
+                                            </outcome>
+                                            <outcome value="not-found"> 
+                                              <return status="failure"> 
+                                                <parameter name="ack-final" value="Y"/>  
+                                                <parameter name="error-code" value="500"/>  
+                                                <parameter name="error-message" value="`'Error calling ' + $tmp.restapiUrl`"/> 
+                                              </return>
+                                            </outcome>
+                                          </execute>
+                                        </outcome>
+                                      </switch>
+                                    </outcome>
+                                  </switch>
+                                </block>
                               </outcome>
                             </switch>
-                          </outcome>
-                        </switch>
-                      </outcome>
-                    </switch>
-                  </outcome>
-                </switch>
-              </outcome>
-            </switch>
-          </block>
-        </outcome>
-      </switch>
-      <return status="success"> 
-        <parameter name="ack-final-indicator" value="Y"/>  
-        <parameter name="error-code" value="200"/>  
-        <parameter name="error-message" value="`$error-message`"/> 
-      </return>
-    </block>
+                            <return status="success"> 
+                              <parameter name="ack-final-indicator" value="Y"/>  
+                              <parameter name="error-code" value="200"/>  
+                              <parameter name="error-message" value="`$error-message`"/> 
+                            </return>
+                          </block>
+                        </outcome>
+                        <outcome value="false"> 
+                          <block> 
+                            <return status="success"> 
+                              <parameter name="ack-final-indicator" value="Y"/>  
+                              <parameter name="error-code" value="200"/>  
+                              <parameter name="error-message" value="`$error-message`"/> 
+                            </return>
+                          </block>
+                        </outcome>
+                      </execute>
+                    </outcome>
+                    <outcome value="false"> 
+                      <block> 
+                        <return status="success"> 
+                          <parameter name="ack-final-indicator" value="Y"/>  
+                          <parameter name="error-code" value="200"/>  
+                          <parameter name="error-message" value="`$error-message`"/> 
+                        </return>
+                      </block>
+                    </outcome>
+                  </execute>
+                </outcome>
+              </execute>
+            </outcome>
+          </execute>
+        </block>
+      </outcome>
+    </execute>
   </method>
 </service-logic>
index 61453ea..d3b24d4 100644 (file)
         <parameter name="source" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>  
         <parameter name="target" value="specification"/>  
         <outcome value="true"> 
-          <call module="GENERIC-RESOURCE-API" rpc="wan-connection-save-specification" mode="sync"></call>
+          <block atomic="true">
+            <switch test="`$service-data.networks.network_length`"> 
+              <outcome value=""> 
+                <set> 
+                  <parameter name="nidx" value="0"/>
+                </set>
+              </outcome>
+              <outcome value="Other"> 
+                <set> 
+                  <parameter name="nidx" value="`$service-data.networks.network_length`"/>
+                </set>
+              </outcome>
+            </switch>
+            <set> 
+              <parameter name="service-data.networks.network[$nidx].network-id" value="`$network-topology-operation-input.network-information.network-id`"/>  
+              <parameter name="service-data.networks.network[$nidx].network-data.sdnc-request-header." value="`$network-topology-operation-input.sdnc-request-header.`"/>  
+              <parameter name="service-data.networks.network[$nidx].network-data.request-information." value="`$network-topology-operation-input.request-information.`"/>  
+              <parameter name="service-data.networks.network[$nidx].network-data.service-information." value="`$network-topology-operation-input.service-information.`"/>  
+              <parameter name="service-data.networks.network[$nidx].network-data.network-information." value="`$network-topology-operation-input.network-information.`"/>  
+              <parameter name="service-data.networks.network[$nidx].network-data.network-request-input." value="`$network-topology-operation-input.network-request-input.`"/>  
+              <parameter name="service-data.networks.network_length" value="`$nidx+1`"/> 
+            </set>
+          </block>
         </outcome>
         <outcome value="false"> 
           <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains"> 
             <parameter name="source" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>  
             <parameter name="target" value="FC"/>  
             <outcome value="true"> 
-              <call module="GENERIC-RESOURCE-API" rpc="wan-connection-find-specifications" mode="sync"></call>
+              <block atomic="true">
+                <switch test="`$service-data.networks.network_length`"> 
+                  <outcome value=""> 
+                    <set> 
+                      <parameter name="nidx" value="0"/>  
+                      <parameter name="isExist" value="false"/>
+                    </set>
+                  </outcome>
+                  <outcome value="Other"> 
+                    <block> 
+                      <set> 
+                        <parameter name="nidx" value="`$service-data.networks.network_length`"/>  
+                        <parameter name="isExist" value="false"/>
+                      </set>
+                      <for index="idx" start="0" end="`$nidx`"> 
+                        <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains" emitsOutcome="true"> 
+                          <parameter name="source" value="`$service-data.networks.network[$idx].network-data.network-information.onap-model-information.model-name`"/>  
+                          <parameter name="target" value="specification"/>  
+                          <outcome value="true"> 
+                            <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains" emitsOutcome="true"> 
+                              <parameter name="source" value="`$service-data.networks.network[$idx].network-data.network-information.onap-model-information.model-name`"/>  
+                              <parameter name="target" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>  
+                              <outcome value="true"> 
+                                <block atomic="true">
+                                  <set> 
+                                    <parameter name="nidx" value="`$idx`"/>  
+                                    <parameter name="isExist" value="true"/>
+                                  </set>
+                                  <switch test="`$service-data.networks.network[$nidx].network-data.network-request-input.network-input-parameters.param_length`"> 
+                                    <outcome value=""> 
+                                      <set> 
+                                        <parameter name="param_length" value="0"/>
+                                      </set>
+                                    </outcome>
+                                    <outcome value="Other"> 
+                                      <set> 
+                                        <parameter name="param_length" value="`$service-data.networks.network[$nidx].network-data.network-request-input.network-input-parameters.param_length`"/>
+                                      </set>
+                                    </outcome>
+                                  </switch>
+                                  <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`"> 
+                                    <outcome value=""> 
+                                      <set> 
+                                        <parameter name="input_param_length" value="0"/>
+                                      </set>
+                                    </outcome>
+                                    <outcome value="Other"> 
+                                      <set> 
+                                        <parameter name="input_param_length" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`"/>
+                                      </set>
+                                    </outcome>
+                                  </switch>
+                                  <for index="pidx" start="0" end="`$param_length`"> 
+                                    <set> 
+                                      <parameter name="network-topology-operation-input.network-request-input.network-input-parameters.param[$pidx+$input_param_length]." value="`$service-data.networks.network[$nidx].network-data.network-request-input.network-input-parameters.param[$pidx].`"/>
+                                    </set>
+                                  </for>
+                                  <set> 
+                                    <parameter name="network-topology-operation-input.network-request-input.network-input-parameters.param_length" value="`$input_param_length + $param_length`"/> 
+                                  </set>
+                                </block>
+                              </outcome>
+                            </execute>
+                          </outcome>
+                        </execute>
+                      </for>
+                    </block>
+                  </outcome>
+                </switch>
+              </block>
             </outcome>
             <outcome value="false"> 
               <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains"> 
                 <parameter name="source" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>  
                 <parameter name="target" value="FD"/>  
                 <outcome value="true"> 
-                  <call module="GENERIC-RESOURCE-API" rpc="wan-connection-find-specifications" mode="sync"></call>
+                  <block atomic="true">
+                    <switch test="`$service-data.networks.network_length`"> 
+                      <outcome value=""> 
+                        <set> 
+                          <parameter name="nidx" value="0"/>  
+                          <parameter name="isExist" value="false"/>
+                        </set>
+                      </outcome>
+                      <outcome value="Other"> 
+                        <block> 
+                          <set> 
+                            <parameter name="nidx" value="`$service-data.networks.network_length`"/>  
+                            <parameter name="isExist" value="false"/>
+                          </set>
+                          <for index="idx" start="0" end="`$nidx`"> 
+                            <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains" emitsOutcome="true"> 
+                              <parameter name="source" value="`$service-data.networks.network[$idx].network-data.network-information.onap-model-information.model-name`"/>  
+                              <parameter name="target" value="specification"/>  
+                              <outcome value="true"> 
+                                <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains" emitsOutcome="true"> 
+                                  <parameter name="source" value="`$service-data.networks.network[$idx].network-data.network-information.onap-model-information.model-name`"/>  
+                                  <parameter name="target" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>  
+                                  <outcome value="true"> 
+                                    <block atomic="true">
+                                      <set> 
+                                        <parameter name="nidx" value="`$idx`"/>  
+                                        <parameter name="isExist" value="true"/>
+                                      </set>
+                                      <switch test="`$service-data.networks.network[$nidx].network-data.network-request-input.network-input-parameters.param_length`"> 
+                                        <outcome value=""> 
+                                          <set> 
+                                            <parameter name="param_length" value="0"/>
+                                          </set>
+                                        </outcome>
+                                        <outcome value="Other"> 
+                                          <set> 
+                                            <parameter name="param_length" value="`$service-data.networks.network[$nidx].network-data.network-request-input.network-input-parameters.param_length`"/>
+                                          </set>
+                                        </outcome>
+                                      </switch>
+                                      <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`"> 
+                                        <outcome value=""> 
+                                          <set> 
+                                            <parameter name="input_param_length" value="0"/>
+                                          </set>
+                                        </outcome>
+                                        <outcome value="Other"> 
+                                          <set> 
+                                            <parameter name="input_param_length" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`"/>
+                                          </set>
+                                        </outcome>
+                                      </switch>
+                                      <for index="pidx" start="0" end="`$param_length`"> 
+                                        <set> 
+                                          <parameter name="network-topology-operation-input.network-request-input.network-input-parameters.param[$pidx+$input_param_length]." value="`$service-data.networks.network[$nidx].network-data.network-request-input.network-input-parameters.param[$pidx].`"/>
+                                        </set>
+                                      </for>
+                                      <set> 
+                                        <parameter name="network-topology-operation-input.network-request-input.network-input-parameters.param_length" value="`$input_param_length + $param_length`"/> 
+                                      </set>
+                                    </block>
+                                  </outcome>
+                                </execute>
+                              </outcome>
+                            </execute>
+                          </for>
+                        </block>
+                      </outcome>
+                    </switch>
+                  </block>
                 </outcome>
                 <outcome value="false"> 
                   <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains"> 
                     <parameter name="source" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>  
-                    <parameter name="target" value="Link"/>  
+                    <parameter name="target" value="FcPort"/>  
                     <outcome value="true"> 
-                      <call module="GENERIC-RESOURCE-API" rpc="wan-connection-route-calculation" mode="sync"></call>
+                      <block atomic="true">
+                        <switch test="`$service-data.networks.network_length`"> 
+                          <outcome value=""> 
+                            <set> 
+                              <parameter name="nidx" value="0"/>  
+                              <parameter name="isExist" value="false"/>
+                            </set>
+                          </outcome>
+                          <outcome value="Other"> 
+                            <block> 
+                              <set> 
+                                <parameter name="nidx" value="`$service-data.networks.network_length`"/>  
+                                <parameter name="isExist" value="false"/>
+                              </set>
+                              <for index="idx" start="0" end="`$nidx`"> 
+                                <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains" emitsOutcome="true"> 
+                                  <parameter name="source" value="`$service-data.networks.network[$idx].network-data.network-information.onap-model-information.model-name`"/>  
+                                  <parameter name="target" value="specification"/>  
+                                  <outcome value="true"> 
+                                    <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains" emitsOutcome="true"> 
+                                      <parameter name="source" value="`$service-data.networks.network[$idx].network-data.network-information.onap-model-information.model-name`"/>  
+                                      <parameter name="target" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>  
+                                      <outcome value="true"> 
+                                        <block atomic="true">
+                                          <set> 
+                                            <parameter name="nidx" value="`$idx`"/>  
+                                            <parameter name="isExist" value="true"/>
+                                          </set>
+                                          <switch test="`$service-data.networks.network[$nidx].network-data.network-request-input.network-input-parameters.param_length`"> 
+                                            <outcome value=""> 
+                                              <set> 
+                                                <parameter name="param_length" value="0"/>
+                                              </set>
+                                            </outcome>
+                                            <outcome value="Other"> 
+                                              <set> 
+                                                <parameter name="param_length" value="`$service-data.networks.network[$nidx].network-data.network-request-input.network-input-parameters.param_length`"/>
+                                              </set>
+                                            </outcome>
+                                          </switch>
+                                          <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`"> 
+                                            <outcome value=""> 
+                                              <set> 
+                                                <parameter name="input_param_length" value="0"/>
+                                              </set>
+                                            </outcome>
+                                            <outcome value="Other"> 
+                                              <set> 
+                                                <parameter name="input_param_length" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`"/>
+                                              </set>
+                                            </outcome>
+                                          </switch>
+                                          <for index="pidx" start="0" end="`$param_length`"> 
+                                            <set> 
+                                              <parameter name="network-topology-operation-input.network-request-input.network-input-parameters.param[$pidx+$input_param_length]." value="`$service-data.networks.network[$nidx].network-data.network-request-input.network-input-parameters.param[$pidx].`"/>
+                                            </set>
+                                          </for>
+                                          <set> 
+                                            <parameter name="network-topology-operation-input.network-request-input.network-input-parameters.param_length" value="`$input_param_length + $param_length`"/> 
+                                          </set>
+                                        </block>
+                                      </outcome>
+                                    </execute>
+                                  </outcome>
+                                </execute>
+                              </for>
+                            </block>
+                          </outcome>
+                        </switch>
+                      </block>
                     </outcome>
                     <outcome value="false"> 
                       <block></block>