Dev Tested with SO 87/23087/1
authorBrian Freeman <bf1936@att.com>
Fri, 10 Nov 2017 05:57:13 +0000 (05:57 +0000)
committerBrian Freeman <bf1936@att.com>
Fri, 10 Nov 2017 06:05:13 +0000 (06:05 +0000)
Worked through changes to pass VNF-API preload
back to SO using VGW2BRG-macaddress as the vnf-name

Issue-ID: SDNC-176
Change-Id: Icfceaf6acf0e256a4471e73146fe84774d427d7c
Signed-off-by: Brian Freeman <bf1936@att.com>
Former-commit-id: 6a02f96408ec1322549dca9c96629c883e2b1e19

platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_gw-vfmodule-update.json [new file with mode: 0644]
platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_vf-module-topology-operation-assign.json
platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_gw-vfmodule-update.xml [new file with mode: 0644]
platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_vf-module-topology-operation-assign.xml
platform-logic/restapi-templates/src/main/json/vfmodule-vim-parameters.vgw.json

diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_gw-vfmodule-update.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_gw-vfmodule-update.json
new file mode 100644 (file)
index 0000000..1d80192
--- /dev/null
@@ -0,0 +1 @@
+[{"id":"ff331a1b.1c488","type":"dgstart","name":"DGSTART","outputs":1,"x":171,"y":61,"z":"a2d41f5.f696b6","wires":[["b1e4068e.a8248"]]},{"id":"b1e4068e.a8248","type":"service-logic","name":"GENERIC-RESOURCE-API 1.2.0-SNAPSHOT-INT110901","module":"GENERIC-RESOURCE-API","version":"${project.version}","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='1.2.0-SNAPSHOT-INT110901'>","outputs":1,"x":267.2380790710449,"y":121.95239067077637,"z":"a2d41f5.f696b6","wires":[["446ed2d0.62eac4"]]},{"id":"446ed2d0.62eac4","type":"method","name":"gw-vfmodule","xml":"<method rpc='gw-vfmodule-update' mode='sync'>\n","comments":"","outputs":1,"x":151.15488815307617,"y":215.19043064117432,"z":"a2d41f5.f696b6","wires":[["472b6b38.991c9c"]]},{"id":"472b6b38.991c9c","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":267.9999809265137,"y":315.0000009536743,"z":"a2d41f5.f696b6","wires":[["37136d7b.9d869a","ef5050d6.256b6","eb0397a.74a27e8","d4b6b0db.1e149"]]},{"id":"8b408e80.6fa7a8","type":"execute","name":"generate vnf service-info url - vnf-d","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n    <parameter name=\"source\" value=\"`$tmp.vnf-api-url1`\"/>\n    <parameter name=\"outputPath\" value=\"tmp.vnf-api-url2\"/>\n    <parameter name=\"target\" value=\"{vnf-id}\"/>\n    <parameter name=\"replacement\" value=\"`$brg-topology-operation-input.allotted-resource-data.brg-topology.brg-assignments.gw-vnf-id`\"/>\n\n","comments":"","outputs":1,"x":1614.7499389648438,"y":1510.0000762939453,"z":"a2d41f5.f696b6","wires":[[]]},{"id":"af678515.3b6dc8","type":"execute","name":"execute RestApiCallNode - PUT service into service","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n    <parameter name='templateFileName' value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.services.vnf.vfmodule.templatefile`\" />\n   <!--\n   <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.vnf-api-url3`' />\n   -->\n   <parameter name='restapiUrl' value='`$tmp.vf-module-object-path`' />\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='PUT' />\n    <parameter name=\"responsePrefix\" value=\"mdsal-vfmodule-vgw\" />\n\n","comments":"","outputs":1,"x":1662.75,"y":1786.0001831054688,"z":"a2d41f5.f696b6","wires":[["91040b39.f22c2"]]},{"id":"61bfb216.427e1c","type":"execute","name":"generate vnf service-info url - service-instance-id","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n    <parameter name=\"source\" value=\"`$prop.restapi.service.vnf.vfmodule-resource`\"/>\n    <parameter name=\"outputPath\" value=\"tmp.vnf-api-url1\"/>\n    <parameter name=\"target\" value=\"{service-instance-id}\"/>\n    <parameter name=\"replacement\" value=\"`$tmp.service-data.service-information.service-instance-id`\"/>\n","comments":"","outputs":1,"x":1660.2499389648438,"y":1467.2500762939453,"z":"a2d41f5.f696b6","wires":[[]]},{"id":"e0830250.c2c27","type":"execute","name":"generate vnf service-info url - vf-module-id","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n    <parameter name=\"source\" value=\"`$tmp.vnf-api-url2`\"/>\n    <parameter name=\"outputPath\" value=\"tmp.vnf-api-url3\"/>\n    <parameter name=\"target\" value=\"{vf-module-id}\"/>\n    <parameter name=\"replacement\" value=\"`$brg-topology-operation-input.allotted-resource-data.brg-topology.brg-assignments.gw-vfmodule-id`\"/>\n\n","comments":"","outputs":1,"x":1638.9999389648438,"y":1551.0000762939453,"z":"a2d41f5.f696b6","wires":[[]]},{"id":"30dc1fcc.9a851","type":"set","name":"set tmp.vgw.vg_mux_tunnel.vni","xml":"<set>\n<!--\n<parameter name='tmp.service.vnf.vf-module.vg-mux-tunnel-vni' value='`$input.vni`' />\n-->\n<parameter name='tmp.service.vnf.vf-module.vg-mux-tunnel-vni' value='`$tmp.txconns.tunnelxconn-allotted-resources.tunnelxconn-allotted-resource[0].allotted-resource-data[0].tunnelxconn-topology[0].tunnelxconn-assignments[0].vni`' />\n\n\n\n","comments":"","x":1602.7499389648438,"y":1602.2500762939453,"z":"a2d41f5.f696b6","wires":[]},{"id":"669eab32.da6dc4","type":"set","name":"set tmp.service.vnf.vf-module-id","xml":"<set>\n<parameter name='tmp.service.vnf.vf-module.vf-module-id' value='9aa4ede4-c639-48c4-9386-74c9ff87f8e3' />\n<parameter name='brg-topology-operation-input.allotted-resource-data.brg-topology.brg-assignments.gw-vfmodule-id' value='9aa4ede4-c639-48c4-9386-74c9ff87f8e3' />","comments":"","x":1591.5,"y":1281.8333435058594,"z":"a2d41f5.f696b6","wires":[]},{"id":"13501960.e241ff","type":"set","name":"set tmp.service-data.vnf-information.vnf-id","xml":"<set>\n<parameter name='tmp.service-data.vnf-information.vnf-id' value='3a3332d1-12ad-4709-ac81-ba32b304a462' />\n<parameter name='brg-topology-operation-input.allotted-resource-data.brg-topology.brg-assignments.gw-vnf-id' value='3a3332d1-12ad-4709-ac81-ba32b304a462' />\n","comments":"","x":1622.75,"y":1235.5834045410156,"z":"a2d41f5.f696b6","wires":[]},{"id":"447eb1b6.b6fa5","type":"set","name":"set tmp.service-data.service-information.service-instance-id","xml":"<set>\n<parameter name='tmp.service-data.service-information.service-instance-id' value='6e34b9fb-9ec1-4c95-9e12-0326c434c623' />\n","comments":"","x":1657.7499084472656,"y":1183.0833129882812,"z":"a2d41f5.f696b6","wires":[]},{"id":"5f6db3a1.3f84a4","type":"set","name":"set tmp.service.vnf.vf-module-id","xml":"<set>\n<parameter name='tmp.restapi.service.vnf.vfmodule-resource' value='`$prop.restapi.service.vnf.vfmodule-resource`' />\n","comments":"","x":1587.75,"y":1321.8333435058594,"z":"a2d41f5.f696b6","wires":[]},{"id":"3f9b4d45.aeea12","type":"execute","name":"execute Propertis gen-res-api-dg","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":1583.9999084472656,"y":1103.0833282470703,"z":"a2d41f5.f696b6","wires":[[]]},{"id":"91040b39.f22c2","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1944,"y":1837.2501831054688,"z":"a2d41f5.f696b6","wires":[["72a0c285.aded84"]]},{"id":"72a0c285.aded84","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n<parameter name='error-code' value='500' />\n<parameter name='error-message' value='Failed on PUT vf-module parameters to MD0SAL' />\n","comments":"","x":2134,"y":1846.0001831054688,"z":"a2d41f5.f696b6","wires":[]},{"id":"37136d7b.9d869a","type":"set","name":"set VGW2BRG-fa:16:3e:8f:ea:68 & consuming service-instance","xml":"<set>\n<parameter name='tmp.brg-macaddress' value='fa:16:3e:8f:ea:68' />\n<parameter name='tmp.brg-mac-address-match' value='VGW2BRG-fa:16:3e:8f:ea:68'/>\n<!--\n<parameter name='tmp.consuming-service-instance-id' value='b3cb7040-f7a5-4beb-ad2f-2a893b7d374b' />\nservice-data.service-topology.service-topology-identifier.service-instance-id\n\n-->\n<parameter name='tmp.consuming-service-instance-id' value='`$service-data.service-topology.service-topology-identifier.service-instance-id`' />\n","comments":"","x":640.0000610351562,"y":312.08343505859375,"z":"a2d41f5.f696b6","wires":[]},{"id":"a257a1ad.5c67c8","type":"get-resource","name":"get-resource vnfs","xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='VNF-API' key='preload-vnfs' pfx='tmp.preloadvnfdata' >\n","comments":"","outputs":1,"x":804.3055419921875,"y":658.7499694824219,"z":"a2d41f5.f696b6","wires":[[]]},{"id":"2d739416.c7e85c","type":"for","name":"for tmp.vnfs","xml":"<for index='vnfidx' start='0' end='`$tmp.preloadvnfdata.preload-vnfs.vnf-preload-list_length`' >\n\n\n","comments":"","outputs":1,"x":798.1944580078125,"y":760.9723510742188,"z":"a2d41f5.f696b6","wires":[["1a3e1a43.0a466e"]]},{"id":"612e9f6e.18b6e","type":"switchNode","name":"switch parameter name","xml":"<switch test='`$tmp.preloadvnfdata.preload-vnfs.vnf-preload-list[$vnfidx].vnf-name == $tmp.brg-mac-address-match`'>\n\n\n","comments":"","outputs":1,"x":1086.1942749023438,"y":776.361083984375,"z":"a2d41f5.f696b6","wires":[["e671abf7.bf0aa8"]]},{"id":"e671abf7.bf0aa8","type":"success","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1244.91650390625,"y":922.5,"z":"a2d41f5.f696b6","wires":[["fd3690b6.c3232"]]},{"id":"fd3690b6.c3232","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":1160,"y":1382.5,"z":"a2d41f5.f696b6","wires":[["5d3d78fd.9d7e18","3f9b4d45.aeea12","5f6db3a1.3f84a4","30dc1fcc.9a851","44a79ac4.bca8c4","86b5a8ca.a751d8","20051d0c.51867a","bd8cc978.6b6dc8","be425f83.ac7d28"]]},{"id":"4803c2a3.bb47e4","type":"comment","name":"vnfidx ","info":"","comments":"","x":1406.2499389648438,"y":796.2500305175781,"z":"a2d41f5.f696b6","wires":[]},{"id":"5d3d78fd.9d7e18","type":"for","name":"for each vnf parameter copy to vf_module_parameter","xml":"<for index='preloadIdx' start='0' end='`$tmp.endLoop1`'>\n<!--\n\n     \"preload-data\": {\n          \"vnf-topology-information\": {\n            \"vnf-parameters\": [\n            \n            -->\n","comments":"","outputs":1,"x":1662.4999389648438,"y":991.25,"z":"a2d41f5.f696b6","wires":[["d1e7f1cd.6532f8"]]},{"id":"16294d67.941e83","type":"set","name":"set name/values","xml":"<set>\n<parameter name='tmp.vfmodule.param[$preloadIdx].name'  value='`$tmp.preloadvnfdata.preload-vnfs.vnf-preload-list[$vnfidx].preload-data.vnf-topology-information.vnf-parameters[$preloadIdx].vnf-parameter-name`' />\n<parameter name='tmp.vfmodule.param[$preloadIdx].value' value='`$tmp.preloadvnfdata.preload-vnfs.vnf-preload-list[$vnfidx].preload-data.vnf-topology-information.vnf-parameters[$preloadIdx].vnf-parameter-value`' />","comments":"","x":2125.1389770507812,"y":1093.4722595214844,"z":"a2d41f5.f696b6","wires":[]},{"id":"ef5050d6.256b6","type":"get-resource","name":"get-resource tunnelxcon-allotted-resources","xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API'    \n         key='tunnelxconn-allotted-resources/' pfx='tmp.txconns' >\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t","comments":"","outputs":1,"x":581.3635559082031,"y":411.8182067871094,"z":"a2d41f5.f696b6","wires":[["12d5ec8f.a479d3"]]},{"id":"1178542e.cb8f2c","type":"for","name":"for tmp.xconns.tunnelxconn-allotted-resoruces.tunnelxonn-alloted-resource[]","xml":"<for index='txidx' start='0' end='`$tmp.txconns.tunnelxconn-allotted-resources.tunnelxconn-allotted-resource_length`' >\n\n\n","comments":"","outputs":1,"x":1055.4544982910156,"y":450.9090576171875,"z":"a2d41f5.f696b6","wires":[["cd424057.0ab1f"]]},{"id":"fc7b6817.1b14e8","type":"switchNode","name":"switch parameter name","xml":"<switch test='`$tmp.test1 == $tmp.consuming-service-instance-id`'>","comments":"","outputs":1,"x":1441,"y":582.7423706054688,"z":"a2d41f5.f696b6","wires":[["2cedbe9.a6657c2"]]},{"id":"2cedbe9.a6657c2","type":"success","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1609.5,"y":653.060546875,"z":"a2d41f5.f696b6","wires":[["58ede03d.79aa"]]},{"id":"58ede03d.79aa","type":"set","name":"set thisIsVGW","xml":"<set>\n<parameter name='tmp.thisIsVGW' value='true' />\n","comments":"","x":1773.8182373046875,"y":701.5454711914062,"z":"a2d41f5.f696b6","wires":[]},{"id":"eb0397a.74a27e8","type":"set","name":"set thisIsVGW false","xml":"<set>\n<parameter name='tmp.thisIsVGW' value='false' />\n","comments":"","x":501.81817626953125,"y":361.81817626953125,"z":"a2d41f5.f696b6","wires":[]},{"id":"d4b6b0db.1e149","type":"switchNode","name":"switch thsIsVGW","xml":"<switch test='`$tmp.thisIsVGW`'>\n","comments":"","outputs":1,"x":316.3636474609375,"y":486.36370849609375,"z":"a2d41f5.f696b6","wires":[["7aacca5d.2f0d54"]]},{"id":"7aacca5d.2f0d54","type":"other","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":339.09090909090907,"y":568.1818181818181,"z":"a2d41f5.f696b6","wires":[["40d2bdfb.c44124"]]},{"id":"40d2bdfb.c44124","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":520.6747436523438,"y":756.293701171875,"z":"a2d41f5.f696b6","wires":[["a257a1ad.5c67c8","2d739416.c7e85c"]]},{"id":"1a3e1a43.0a466e","type":"block","name":"block : atomic","xml":"<block atomic='true'>","atomic":"true","comments":"","outputs":1,"x":876.666748046875,"y":811.1112060546875,"z":"a2d41f5.f696b6","wires":[["612e9f6e.18b6e","670614ea.aa072c"]]},{"id":"cd424057.0ab1f","type":"block","name":"block : atomic","xml":"<block atomic='true'>","atomic":"true","comments":"","outputs":1,"x":1210,"y":514.4444580078125,"z":"a2d41f5.f696b6","wires":[["fc7b6817.1b14e8","14eaeaa.5e2e915"]]},{"id":"d1e7f1cd.6532f8","type":"block","name":"block : atomic","xml":"<block atomic='true'>","atomic":"true","comments":"","outputs":1,"x":1922.9166259765625,"y":1055.6944885253906,"z":"a2d41f5.f696b6","wires":[["16294d67.941e83"]]},{"id":"12d5ec8f.a479d3","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":666.6666666666666,"y":462.22222222222223,"z":"a2d41f5.f696b6","wires":[["1178542e.cb8f2c"]]},{"id":"14eaeaa.5e2e915","type":"set","name":"set txconns.tunnelxconn-allotted-resources.tunnelxconn-alloted-resource[$txidx].allotted-resource-data.tunnelxconn-topology.allotted-resource-identifiers.consuming-service-instance-id","xml":"<set>\n<parameter name='tmp.test1' value='`$tmp.txconns.tunnelxconn-allotted-resources.tunnelxconn-allotted-resource[$txidx].allotted-resource-data.tunnelxconn-topology.allotted-resource-identifiers.consuming-service-instance-id`' />\n<parameter name='tmp.test2' value='`$tmp.txconns.tunnelxconn-allotted-resources.tunnelxconn-allotted-resource-data[$txidx].tunnelxconn-topology[0].allotted-resource-identifiers[0].consuming-service-instance-id`' />","comments":"","x":1312,"y":153,"z":"a2d41f5.f696b6","wires":[]},{"id":"670614ea.aa072c","type":"set","name":"set test3","xml":"<set>\n<parameter name='tmp.test3' value='`$tmp.preloadvnfdata.preload-vnfs.vnf-preload-list[$vnfidx].vnf-name`' />\n<parameter name='tmp.test4' value='`$tmp.brg-mac-address-match`'/>\n\n\n","comments":"","x":1038,"y":702,"z":"a2d41f5.f696b6","wires":[]},{"id":"44a79ac4.bca8c4","type":"set","name":"set length of for  endLoop1","xml":"<set>\n<parameter name='tmp.endLoop1' value='`$tmp.preloadvnfdata.preload-vnfs.vnf-preload-list[$vnfidx].preload-data.vnf-topology-information.vnf-parameters_length`' />","comments":"","x":1505,"y":910,"z":"a2d41f5.f696b6","wires":[]},{"id":"86b5a8ca.a751d8","type":"set","name":"set vf-module-object-path","xml":"<set>\n<parameter name='tmp.vf-module-object-path'\n value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $service-data.service-topology.service-topology-identifier.service-instance-id\n + '/service-data/vnfs/vnf/'\n + $service-data.vnfs.vnf[$vnf-index].vnf-id\n + '/vnf-data/vf-modules/vf-module/'\n + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id \n + '/'`\"/>\n","comments":"","x":1512.5,"y":1382.5,"z":"a2d41f5.f696b6","wires":[]},{"id":"20051d0c.51867a","type":"set","name":"copy  vf-module-parameters","xml":"<set>\n<!--\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param.'\n\n                 service-data.vnfs.vnf\\[0\\].       vnf-data.vf-modules.vf-module\\[0\\]             .vf-module-data.vf-module-topology.vf-module-parameters.param.\n   value='$tmp.vfmodule.' />\n-->\n<parameter name='service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.'\n   value='$tmp.vfmodule.' />","comments":"","x":1548.75,"y":1684.5,"z":"a2d41f5.f696b6","wires":[]},{"id":"bd8cc978.6b6dc8","type":"execute","name":"execute print context","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\n<parameter name='filename' value='/var/tmp/bdf-gw-vfmodule.log' />\n","comments":"","outputs":1,"x":1485,"y":1740,"z":"a2d41f5.f696b6","wires":[[]]},{"id":"be425f83.ac7d28","type":"set","name":"set _length","xml":"<set>\n<parameter name='tmp.vfmodule.param_length' value='`$tmp.endLoop1`' />\n","comments":"","x":1528.7501220703125,"y":1046.25,"z":"a2d41f5.f696b6","wires":[]}]
index 8f09b90..b36da88 100755 (executable)
@@ -1 +1 @@
-[{"id":"ba18c526.d17c78","type":"dgstart","name":"DGSTART","outputs":1,"x":130,"y":110,"z":"e4baa5a8.a31318","wires":[["8ba9ecd6.6d936"]]},{"id":"8ba9ecd6.6d936","type":"service-logic","name":"GENERIC-RESOURCE-API ${project.version}","module":"GENERIC-RESOURCE-API","version":"${project.version}","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":243.85713577270508,"y":149.80953788757324,"z":"e4baa5a8.a31318","wires":[["c7127bd0.ef2fd8"]]},{"id":"c7127bd0.ef2fd8","type":"method","name":"method vf-module-topology-operation-assign","xml":"<method rpc='vf-module-topology-operation-assign' mode='sync'>\n","comments":"","outputs":1,"x":243.42862701416016,"y":190,"z":"e4baa5a8.a31318","wires":[["79397c09.ed5274"]]},{"id":"21494016.016","type":"comment","name":"vf-module-topology-operation-assign","info":"","comments":"","x":535.3210983276367,"y":52.97569942474365,"z":"e4baa5a8.a31318","wires":[]},{"id":"624fdfec.bf7d8","type":"switchNode","name":"switch request-action","xml":"<switch test='`$vf-module-topology-operation-input.request-information.request-action`'>\n","comments":"","outputs":1,"x":535.1905097961426,"y":365.52382230758667,"z":"e4baa5a8.a31318","wires":[["74eeaa1c.be92e4","134c69ff.005316"]]},{"id":"74eeaa1c.be92e4","type":"outcome","name":"CreateVfModuleInstance","xml":"<outcome value='CreateVfModuleInstance'>\n","comments":"","outputs":1,"x":797.2381248474121,"y":342.66670846939087,"z":"e4baa5a8.a31318","wires":[["cb01b9a9.685a48"]]},{"id":"134c69ff.005316","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":740.9047698974609,"y":388.0476975440979,"z":"e4baa5a8.a31318","wires":[["d9c8e7b5.a66ae8"]]},{"id":"cb01b9a9.685a48","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":987.0952892303467,"y":342.6667399406433,"z":"e4baa5a8.a31318","wires":[[]]},{"id":"d9c8e7b5.a66ae8","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=\"If svc-action is 'assign' then request-action must be 'CreateVfModuleInstance'\" />\n","comments":"","x":1005.9047775268555,"y":388.381010055542,"z":"e4baa5a8.a31318","wires":[]},{"id":"76409cce.086344","type":"get-resource","name":"get-resource VF_MODULE_MODEL","xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n  key='SELECT * from VF_MODULE_MODEL WHERE customization_uuid = $vf-module-topology-operation-input.vf-module-information.onap-model-information.model-customization-uuid'\n  pfx='db.vf-module-model'>\n\n","comments":"","outputs":1,"x":582.5237770080566,"y":456.66677236557007,"z":"e4baa5a8.a31318","wires":[["dd68463c.c87178","d3cb4517.ac8c08"]]},{"id":"75201e32.0cf","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=\"`'No model found for VF module customization UUID ' + $vf-module-topology-operation-input.vf-module-information.onap-model-information.model-customization-uuid`\" />\n","comments":"","x":1023.9521980285645,"y":481.09524488449097,"z":"e4baa5a8.a31318","wires":[]},{"id":"dd68463c.c87178","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":848.3094673156738,"y":437.0476031303406,"z":"e4baa5a8.a31318","wires":[["6f89e52b.bf43cc"]]},{"id":"d3cb4517.ac8c08","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":856.8808975219727,"y":481.33331632614136,"z":"e4baa5a8.a31318","wires":[["75201e32.0cf"]]},{"id":"6f89e52b.bf43cc","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 reading VF_MODULE_MODEL table\" />\n","comments":"","x":1023.309398651123,"y":436.1905035972595,"z":"e4baa5a8.a31318","wires":[]},{"id":"f5aeb74d.5bf438","type":"switchNode","name":"switch service-data.vnfs.vnf_length","xml":"<switch test='`$service-data.vnfs.vnf_length`'>\n","comments":"","outputs":1,"x":577.6190414428711,"y":665.2381076812744,"z":"e4baa5a8.a31318","wires":[["6bb339ec.749948","e28c0952.e044a8"]]},{"id":"6bb339ec.749948","type":"other","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":818.3333129882812,"y":642.3808479309082,"z":"e4baa5a8.a31318","wires":[["f1f5dab6.570ce8"]]},{"id":"e28c0952.e044a8","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":818.0951538085938,"y":683.333366394043,"z":"e4baa5a8.a31318","wires":[["ecd3b0db.60645"]]},{"id":"79397c09.ed5274","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":184.99999237060547,"y":2359.9999599456787,"z":"e4baa5a8.a31318","wires":[["624fdfec.bf7d8","76409cce.086344","f5aeb74d.5bf438","b864bec.d46214","c6d3c332.333ff","5a02ed1a.0ee094","fcb2cab8.814f18","67c44cf7.b6baf4","478f6983.a5e0a8","b69a54c5.a45d58","c2526b9f.9838f8","b384890d.a43ff8","7ee29093.2b4b4","706746b8.19a5e8","21781bbf.a9cfb4","dac77f20.01493","f90accfc.bc38","eab0098.e0d50f8","3ec776dc.c4924a","90e381df.54c71","7d2ca2a2.73c80c","388ab739.6c4fe8","9b75b20e.4510a","e8889dec.9dd74","ac1085e3.f13938","319cf957.f6edb6","c811246.d8ba4d8","efa475b7.980ae8","a247b0d0.a589c","f833ef67.9cf92","95db0874.7fa668","b87f9fec.9ac9e","a03bb466.634808","3c8bd226.36546e","f8307ef3.44142","21f945ed.4703fa","4646e366.6582ec","fc1913b.4d832f"]]},{"id":"f1f5dab6.570ce8","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=\"There are no VNFs defined in MD-SAL\" />\n","comments":"","x":984.999927520752,"y":641.6666030883789,"z":"e4baa5a8.a31318","wires":[]},{"id":"ecd3b0db.60645","type":"for","name":"for each vnf","xml":"<for index='idx' start='0' end='`$service-data.vnfs.vnf_length`' >\n","comments":"","outputs":1,"x":980.3332977294922,"y":682.9999847412109,"z":"e4baa5a8.a31318","wires":[["1be32734.9e3679"]]},{"id":"1be32734.9e3679","type":"switchNode","name":"switch service data vnf == input vnf","xml":"<switch test='`$service-data.vnfs.vnf[$idx].vnf-id == $vf-module-topology-operation-input.vnf-information.vnf-id`'>\n","comments":"","outputs":1,"x":1231.6665153503418,"y":682.6666717529297,"z":"e4baa5a8.a31318","wires":[["2c5659ec.ad3dd6"]]},{"id":"2c5659ec.ad3dd6","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1461.6666069030762,"y":682.0000257492065,"z":"e4baa5a8.a31318","wires":[["d38d34bf.3a83a8"]]},{"id":"b864bec.d46214","type":"set","name":"set vnf-index to -1","xml":"<set>\n<parameter name='vnf-index' value='-1' />\n","comments":"","x":526.6666641235352,"y":596.6666069030762,"z":"e4baa5a8.a31318","wires":[]},{"id":"78e4042f.0ca05c","type":"set","name":"set vnf-index to idx","xml":"<set>\n<parameter name='vnf-index' value='`$idx`' />\n","comments":"","x":1783.3332443237305,"y":652.9999837875366,"z":"e4baa5a8.a31318","wires":[]},{"id":"c6d3c332.333ff","type":"switchNode","name":"switch vnf-index","xml":"<switch test='`$vnf-index`'>\n","comments":"","outputs":1,"x":516.6666717529297,"y":733.3333034515381,"z":"e4baa5a8.a31318","wires":[["1476b5d.81c794a"]]},{"id":"1476b5d.81c794a","type":"outcome","name":"-1","xml":"<outcome value='-1'>\n","comments":"","outputs":1,"x":695.000057220459,"y":732.6666793823242,"z":"e4baa5a8.a31318","wires":[["ae034b1a.ea5ad8"]]},{"id":"ae034b1a.ea5ad8","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=\"`'Unable to find VNF ID ' + $vf-module-topology-operation-input.vnf-information.vnf-id + ' in MD-SAL'`\" />\n","comments":"","x":854.9999656677246,"y":731.9999828338623,"z":"e4baa5a8.a31318","wires":[]},{"id":"5a02ed1a.0ee094","type":"switchNode","name":"switch vnf order status","xml":"<switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status`'>\n","comments":"","outputs":1,"x":539.6666946411133,"y":804.6667003631592,"z":"e4baa5a8.a31318","wires":[["6e55331.17400cc","31914e29.080322"]]},{"id":"6e55331.17400cc","type":"outcome","name":"Created","xml":"<outcome value='Created'>\n","comments":"","outputs":1,"x":739.9999961853027,"y":778.3332843780518,"z":"e4baa5a8.a31318","wires":[["efaa33f.0a25bd"]]},{"id":"efaa33f.0a25bd","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":880.0000076293945,"y":778.3333263397217,"z":"e4baa5a8.a31318","wires":[[]]},{"id":"31914e29.080322","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":736.666633605957,"y":819.9999618530273,"z":"e4baa5a8.a31318","wires":[["d09d7b5b.818158"]]},{"id":"d09d7b5b.818158","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=\"`'VNF order status is ' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status + ' but should be Created'`\" />\n","comments":"","x":896.666633605957,"y":819.6666488647461,"z":"e4baa5a8.a31318","wires":[]},{"id":"fcb2cab8.814f18","type":"switchNode","name":"switch vf-module_length","xml":"<switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module_length`'>\n","comments":"","outputs":1,"x":543.333381652832,"y":896.6666212081909,"z":"e4baa5a8.a31318","wires":[["9263cf35.cb3cc","a2f6c209.2980d"]]},{"id":"9263cf35.cb3cc","type":"other","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":800.7143363952637,"y":863.8093948364258,"z":"e4baa5a8.a31318","wires":[["37fa8c70.964c34"]]},{"id":"37fa8c70.964c34","type":"set","name":"set vf-module-index=0","xml":"<set>\n<parameter name='vf-module-index' value='0' />\n","comments":"","x":988.3333740234375,"y":864.4761695861816,"z":"e4baa5a8.a31318","wires":[]},{"id":"a2f6c209.2980d","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":801.142879486084,"y":928.0952529907227,"z":"e4baa5a8.a31318","wires":[["db5c1b7f.efac08"]]},{"id":"632dd1f4.02485","type":"set","name":"set vf-module-index = vf-module_length","xml":"<set>\n<parameter name='vf-module-index' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module_length`' />\n","comments":"","x":1186.3334197998047,"y":908.2856483459473,"z":"e4baa5a8.a31318","wires":[]},{"id":"82872a13.5fe7f8","type":"for","name":"for each existing VF module","xml":"<for index='idx' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module_length`' >\n","comments":"","outputs":1,"x":1145.4285125732422,"y":952.3808784484863,"z":"e4baa5a8.a31318","wires":[["79d6fba6.5029b4"]]},{"id":"db5c1b7f.efac08","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":937.8571586608887,"y":928.095178604126,"z":"e4baa5a8.a31318","wires":[["632dd1f4.02485","82872a13.5fe7f8"]]},{"id":"79d6fba6.5029b4","type":"switchNode","name":"switch vf-module-information.vf-module-id == service-data.vnfs.vnf[].vf-modules.vf-module[].vf-module-id","xml":"<switch test='`$vf-module-topology-operation-input.vf-module-information.vf-module-id == $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$idx].vf-module-id`'>\n","comments":"","outputs":1,"x":1649.0476150512695,"y":951.9522895812988,"z":"e4baa5a8.a31318","wires":[["5d658a75.3975d4"]]},{"id":"5d658a75.3975d4","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2091.666664123535,"y":951.5237407684326,"z":"e4baa5a8.a31318","wires":[["421b0ac1.c08aa4"]]},{"id":"421b0ac1.c08aa4","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=\"`'VF module id ' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$idx].vf-module-id\n       + ' already exists, and status is ' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$idx].vf-module-data.vf-module-level-oper-status.order-status`\" />\n","comments":"","x":2243.571544647217,"y":951.5237274169922,"z":"e4baa5a8.a31318","wires":[]},{"id":"2c370c75.fc9a44","type":"comment","name":"make sure this VF module doesn't exist already","info":"","comments":"","x":1675.4999618530273,"y":906.5797815322876,"z":"e4baa5a8.a31318","wires":[]},{"id":"67c44cf7.b6baf4","type":"set","name":"set new vf-module_length","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module_length' value='`$vf-module-index + 1`' />\n","comments":"","x":548.3333206176758,"y":991.6665554046631,"z":"e4baa5a8.a31318","wires":[]},{"id":"478f6983.a5e0a8","type":"set","name":"set vf-module-topology data","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-topology-identifier.vf-module-id' value='`$vf-module-topology-operation-input.vf-module-information.vf-module-id`' />\n<parameter name='tmp.vf-module-topology.vf-module-topology-identifier.vf-module-name' value='`$vf-module-topology-operation-input.vf-module-request-input.vf-module-name`' />\n<parameter name='tmp.vf-module-topology.vf-module-topology-identifier.vf-module-type' value='`$vf-module-topology-operation-input.vf-module-information.vf-module-type`' />\n<parameter name='tmp.vf-module-topology.tenant' value='`$vf-module-topology-operation-input.vf-module-request-input.tenant`' />\n<parameter name='tmp.vf-module-topology.aic-cloud-region' value='`$vf-module-topology-operation-input.vf-module-request-input.aic-cloud-region`' />\n","comments":"","x":554.8333396911621,"y":1104.1666622161865,"z":"e4baa5a8.a31318","wires":[]},{"id":"9f4a6c82.752a2","type":"set","name":"set aic-clli","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.aic-clli'\n   value='`$aai-uid-split[$aai-uid-split_length - 1]`' />\n","comments":"","x":1315.7855987548828,"y":1263.4045886993408,"z":"e4baa5a8.a31318","wires":[]},{"id":"b69a54c5.a45d58","type":"switchNode","name":"switch aic-clli","xml":"<switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.aic-clli`'>\n","comments":"","outputs":1,"x":514.8332595825195,"y":1377.3569288253784,"z":"e4baa5a8.a31318","wires":[["63670893.1e3b68"]]},{"id":"63670893.1e3b68","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":660.1189498901367,"y":1377.3569974899292,"z":"e4baa5a8.a31318","wires":[["d1949d38.26893"]]},{"id":"d1949d38.26893","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=\"`'Unable to find aic-clli in AAI for aic-cloud-region ' + $vf-module-topology-operation-input.vf-module-request-input.aic-cloud-region`\" />\n","comments":"","x":807.2618103027344,"y":1376.9284315109253,"z":"e4baa5a8.a31318","wires":[]},{"id":"c2526b9f.9838f8","type":"get-resource","name":"get-resource cloud region","xml":"<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"cloud-region\" \n\t\tkey=\"cloud-region.cloud-owner = 'CloudOwner' AND \n\t\t     cloud-region.cloud-region-id = $vf-module-topology-operation-input.vf-module-request-input.aic-cloud-region\"\n        pfx='aai.cloud-region' local-only='false' >\n\n","comments":"","outputs":1,"x":553.6904754638672,"y":1177.5002002716064,"z":"e4baa5a8.a31318","wires":[["2e9679c1.dabc26","556ec535.b1abec"]]},{"id":"556ec535.b1abec","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":767.9366683959961,"y":1195.6510562896729,"z":"e4baa5a8.a31318","wires":[["59e25d61.85e274"]]},{"id":"59e25d61.85e274","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 retrieving cloud region from AAI\" />\n","comments":"","x":942.9366416931152,"y":1195.6510925292969,"z":"e4baa5a8.a31318","wires":[]},{"id":"2e9679c1.dabc26","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":776.8652648925781,"y":1153.9367895126343,"z":"e4baa5a8.a31318","wires":[["7d7ab12a.70ec1"]]},{"id":"7d7ab12a.70ec1","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=\"Cloud region not found in AAI\" />\n","comments":"","x":943.214542388916,"y":1153.2423667907715,"z":"e4baa5a8.a31318","wires":[]},{"id":"b384890d.a43ff8","type":"set","name":"set vf-module-parameters","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-parameters.'\n  value='vf-module-topology-operation-input.vf-module-request-input.vf-module-input-parameters.' />\n","comments":"","x":550.595287322998,"y":1826.7860202789307,"z":"e4baa5a8.a31318","wires":[]},{"id":"7ee29093.2b4b4","type":"set","name":"set order-status to PendingCreate","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-level-oper-status.order-status'\n  value='PendingCreate' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-level-oper-status.last-rpc-action'\n  value='`$vf-module-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-level-oper-status.last-action'\n  value='`$vf-module-topology-operation-input.sdnc-request-header.request-action`' />\n","comments":"","x":574.9762725830078,"y":4824.6424016952515,"z":"e4baa5a8.a31318","wires":[]},{"id":"706746b8.19a5e8","type":"get-resource","name":"get-resource VF_MODULE_TO_VFC_MAPPING","xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n  key='SELECT * from VF_MODULE_TO_VFC_MAPPING WHERE vf_module_customization_uuid = $vf-module-topology-operation-input.vf-module-information.onap-model-information.model-customization-uuid'\n  pfx='db.vf-module-to-vfc-mapping[]'>\n\n","comments":"","outputs":1,"x":623.9286880493164,"y":1880.642807006836,"z":"e4baa5a8.a31318","wires":[["c1f20ca7.f60de","10a18f7e.33e891"]]},{"id":"c1f20ca7.f60de","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":889.7143783569336,"y":1861.0236377716064,"z":"e4baa5a8.a31318","wires":[["4ecc9002.756aa"]]},{"id":"10a18f7e.33e891","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":898.2858085632324,"y":1905.3093509674072,"z":"e4baa5a8.a31318","wires":[["45ef9bd1.40c894"]]},{"id":"4ecc9002.756aa","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 reading VF_MODULE_TO_VFC_MAPPING table\" />\n","comments":"","x":1064.7143096923828,"y":1860.1665382385254,"z":"e4baa5a8.a31318","wires":[]},{"id":"21781bbf.a9cfb4","type":"for","name":"for each vm-type","xml":"<for index='vm-type-index' start='0' end='`$db.vf-module-to-vfc-mapping_length`' >\n","comments":"","outputs":1,"x":524.0476989746094,"y":2509.6430587768555,"z":"e4baa5a8.a31318","wires":[["cabbea55.2886f8"]]},{"id":"d0795bff.bc69c8","type":"get-resource","name":"get-resource VFC_MODEL","xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n  key='SELECT * from VFC_MODEL WHERE customization_uuid = $db.vf-module-to-vfc-mapping[$vm-type-index].vfc-customization-uuid'\n  pfx='db.vfc-model'>\n\n","comments":"","outputs":1,"x":965.9524993896484,"y":2001.5477199554443,"z":"e4baa5a8.a31318","wires":[["9c63e2cb.97fb5","8d0e208f.5920d"]]},{"id":"c84a73cd.c4e67","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=\"`'No entries found in VFC_MODEL table for customization UUID ' + $db.vf-module-to-vfc-mapping[$db-vm-index].vfc_customization_uuid`\" />\n","comments":"","x":1336.3808479309082,"y":2025.9761123657227,"z":"e4baa5a8.a31318","wires":[]},{"id":"9c63e2cb.97fb5","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1161.7381172180176,"y":1981.9284706115723,"z":"e4baa5a8.a31318","wires":[["28822387.baf9cc"]]},{"id":"8d0e208f.5920d","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":1170.3095474243164,"y":2026.214183807373,"z":"e4baa5a8.a31318","wires":[["c84a73cd.c4e67"]]},{"id":"28822387.baf9cc","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 reading VFC_MODEL table\" />\n","comments":"","x":1336.7380485534668,"y":1981.0713710784912,"z":"e4baa5a8.a31318","wires":[]},{"id":"cabbea55.2886f8","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":715.9524917602539,"y":2508.214427947998,"z":"e4baa5a8.a31318","wires":[["d0795bff.bc69c8","eca0516a.3fa5d","f1ac110f.7a32d","1d9d491.32bd1b7","7518d7bc.8082b8","d99614b2.38ddf8","79dd1a08.432464","141da799.5b84c8"]]},{"id":"7d2ca2a2.73c80c","type":"set","name":"set vm_length","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm_length'\n  value='`$db.vf-module-to-vfc-mapping_length`' />\n","comments":"","x":515.833366394043,"y":1940.8334846496582,"z":"e4baa5a8.a31318","wires":[]},{"id":"eca0516a.3fa5d","type":"set","name":"set vm data","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-type'\n   value='`$db.vf-module-to-vfc-mapping[$vm-type-index].vm-type`' />\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].nfc-naming-code'\n   value='`$db.vfc-model.nfc-naming-code`' />\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-type-tag'\n   value='`$db.vfc-model.vm-type-tag`' />\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-count'\n   value='`$db.vf-module-to-vfc-mapping[$vm-type-index].vm-count`' />\n","comments":"","x":916.6667518615723,"y":2127.5001974105835,"z":"e4baa5a8.a31318","wires":[]},{"id":"d38d34bf.3a83a8","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":1610.0000686645508,"y":680.9197244644165,"z":"e4baa5a8.a31318","wires":[["78e4042f.0ca05c","a7ac7b7.2ad2e88"]]},{"id":"a7ac7b7.2ad2e88","type":"break","name":"break","xml":"<break>\n","comments":"","x":1745.0000343322754,"y":702.5863103866577,"z":"e4baa5a8.a31318","wires":[]},{"id":"50cfe9ae.372c38","type":"set","name":"set from DB","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-invariant-uuid'\n  value='`$db.vf-module-model.invariant-uuid`' />\n","comments":"","x":929.1665992736816,"y":1418.7529220581055,"z":"e4baa5a8.a31318","wires":[]},{"id":"dac77f20.01493","type":"switchNode","name":"switch input model-invariant-uuid","xml":"<switch test='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-invariant-uuid`'>\n","comments":"","outputs":1,"x":573.0236740112305,"y":1441.5773658752441,"z":"e4baa5a8.a31318","wires":[["659c77e9.7f4f18","74de5833.fee938"]]},{"id":"659c77e9.7f4f18","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":778.6903457641602,"y":1418.720329284668,"z":"e4baa5a8.a31318","wires":[["50cfe9ae.372c38"]]},{"id":"74de5833.fee938","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":780.1189422607422,"y":1463.0059204101562,"z":"e4baa5a8.a31318","wires":[["a1fe0326.3a53b"]]},{"id":"a1fe0326.3a53b","type":"set","name":"set from input","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-invariant-uuid'\n  value='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-invariant-uuid`' />\n","comments":"","x":934.4046783447266,"y":1462.4344925880432,"z":"e4baa5a8.a31318","wires":[]},{"id":"2dd9c208.718fae","type":"set","name":"set from DB","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-uuid'\n  value='`$db.vf-module-model.uuid`' />\n","comments":"","x":930.1188697814941,"y":1507.2915983200073,"z":"e4baa5a8.a31318","wires":[]},{"id":"f90accfc.bc38","type":"switchNode","name":"switch input model-uuid","xml":"<switch test='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-uuid`'>\n","comments":"","outputs":1,"x":545.642692565918,"y":1530.1161031723022,"z":"e4baa5a8.a31318","wires":[["51f29715.20d0f8","d6f024f9.949348"]]},{"id":"51f29715.20d0f8","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":779.6426658630371,"y":1507.2590351104736,"z":"e4baa5a8.a31318","wires":[["2dd9c208.718fae"]]},{"id":"d6f024f9.949348","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":781.0712623596191,"y":1551.544626235962,"z":"e4baa5a8.a31318","wires":[["62042fb1.77272"]]},{"id":"62042fb1.77272","type":"set","name":"set from input","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-uuid'\n  value='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-uuid`' />\n","comments":"","x":935.3569984436035,"y":1550.9731984138489,"z":"e4baa5a8.a31318","wires":[]},{"id":"a6bf8c48.b281b","type":"set","name":"set from DB","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-version'\n  value='`$db.vf-module-model.version`' />\n","comments":"","x":927.2618026733398,"y":1596.1488056182861,"z":"e4baa5a8.a31318","wires":[]},{"id":"eab0098.e0d50f8","type":"switchNode","name":"switch input model-version","xml":"<switch test='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-version`'>\n","comments":"","outputs":1,"x":553.7855644226074,"y":1618.9732503890991,"z":"e4baa5a8.a31318","wires":[["4ccd7.162a832a","518ded3e.75ca04"]]},{"id":"4ccd7.162a832a","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":776.7855491638184,"y":1596.1162128448486,"z":"e4baa5a8.a31318","wires":[["a6bf8c48.b281b"]]},{"id":"518ded3e.75ca04","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":778.2141456604004,"y":1640.401803970337,"z":"e4baa5a8.a31318","wires":[["638ada17.7c2584"]]},{"id":"638ada17.7c2584","type":"set","name":"set from input","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-version'\n  value='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-version`' />\n","comments":"","x":932.4998817443848,"y":1639.8303761482239,"z":"e4baa5a8.a31318","wires":[]},{"id":"f4c6962e.75c988","type":"set","name":"set from DB","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-name'\n  value='`$db.vf-module-model.name`' />\n","comments":"","x":927.2618026733398,"y":1683.2916278839111,"z":"e4baa5a8.a31318","wires":[]},{"id":"3ec776dc.c4924a","type":"switchNode","name":"switch input model-name","xml":"<switch test='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-name`'>\n","comments":"","outputs":1,"x":548.7855644226074,"y":1706.1160726547241,"z":"e4baa5a8.a31318","wires":[["7600c1a1.34774","dd561948.d52d48"]]},{"id":"7600c1a1.34774","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":776.7855491638184,"y":1683.2590351104736,"z":"e4baa5a8.a31318","wires":[["f4c6962e.75c988"]]},{"id":"dd561948.d52d48","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":778.2141456604004,"y":1727.544626235962,"z":"e4baa5a8.a31318","wires":[["5381543.b5468ac"]]},{"id":"5381543.b5468ac","type":"set","name":"set from input","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-name'\n  value='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-name`' />\n","comments":"","x":932.4998817443848,"y":1726.9731984138489,"z":"e4baa5a8.a31318","wires":[]},{"id":"90e381df.54c71","type":"set","name":"set model-customization-uuid","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-customization-uuid'\n  value='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-customization-uuid`' />\n","comments":"","x":563.2378997802734,"y":1778.6250619888306,"z":"e4baa5a8.a31318","wires":[]},{"id":"f1ac110f.7a32d","type":"for","name":"for each vm","xml":"<for index='vm-index' start='0' end='`$db.vf-module-to-vfc-mapping[$vm-type-index].vm-count`' >\n","comments":"","outputs":1,"x":918.3332405090332,"y":2236.7531156539917,"z":"e4baa5a8.a31318","wires":[["8e6b243f.583508"]]},{"id":"1d9d491.32bd1b7","type":"set","name":"set vm-name-length","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-names.vm-name_length'\n  value='`$db.vf-module-to-vfc-mapping[$vm-type-index].vm-count`' />\n","comments":"","x":941.6666946411133,"y":2171.753373146057,"z":"e4baa5a8.a31318","wires":[]},{"id":"18165004.df83","type":"call","name":"call GENERIC-RESOURCE-API:generate-unique-name","xml":"<call module='GENERIC-RESOURCE-API' rpc='generate-unique-name' mode='sync' >\n","comments":"","outputs":1,"x":1384.761863708496,"y":2259.3722620010376,"z":"e4baa5a8.a31318","wires":[["e76d3ba1.b484f8","2a1c5abf.cc7856"]]},{"id":"e76d3ba1.b484f8","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1680.4761517842617,"y":2232.2295246124268,"z":"e4baa5a8.a31318","wires":[["4baa2d79.9b13e4"]]},{"id":"2a1c5abf.cc7856","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":1683.8095016479492,"y":2283.896167755127,"z":"e4baa5a8.a31318","wires":[["8626bbb.4150148"]]},{"id":"1575979f.adc098","type":"set","name":"set variables for generating unique name","xml":"<set>\n<parameter name='generate-unique-name-input.index-table-name' value='VM_NAME_INDEX' />\n<parameter name='generate-unique-name-input.index-table-prefix-column' value='vm_name_prefix' />\n<parameter name='generate-unique-name-input.name-table-type' value='VM_INSTANCE' />\n<parameter name='generate-unique-name-input.prefix' value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-name + $db.vfc-model.nfc-naming-code`\" />\n<parameter name='generate-unique-name-input.index-length' value='3' />\n","comments":"","x":1341.4285774230957,"y":2207.7055883407593,"z":"e4baa5a8.a31318","wires":[]},{"id":"8626bbb.4150148","type":"set","name":"set generated name","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-names.vm-name[$vm-index]' value='`$generate-unique-name-output.generated-name`' />\n","comments":"","x":1868.3332176208496,"y":2283.3721857070923,"z":"e4baa5a8.a31318","wires":[]},{"id":"4baa2d79.9b13e4","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=\"`$generate-unique-name-output.error-message`\" />\n","comments":"","x":1848.3332646687832,"y":2231.6580362319946,"z":"e4baa5a8.a31318","wires":[]},{"id":"388ab739.6c4fe8","type":"set","name":"set vf-module-id","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id'\n   value='`$vf-module-topology-operation-input.vf-module-information.vf-module-id`' />\n","comments":"","x":516.4285469055176,"y":1047.348237991333,"z":"e4baa5a8.a31318","wires":[]},{"id":"8e6b243f.583508","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1082.738182067871,"y":2236.396019935608,"z":"e4baa5a8.a31318","wires":[["1575979f.adc098","18165004.df83"]]},{"id":"7518d7bc.8082b8","type":"get-resource","name":"get-resource VFC_TO_NETWORK_ROLE_MAPPING","xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n  key='SELECT * from VFC_TO_NETWORK_ROLE_MAPPING WHERE vfc_customization_uuid = $db.vf-module-to-vfc-mapping[$vm-type-index].vfc-customization-uuid'\n  pfx='db.vfc-to-network-role-mapping[]'>\n\n","comments":"","outputs":1,"x":1045.595329284668,"y":2359.253088951111,"z":"e4baa5a8.a31318","wires":[["71a08ee7.14c92","7a73e707.b51298"]]},{"id":"71a08ee7.14c92","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1332.8095321655273,"y":2339.6339359283447,"z":"e4baa5a8.a31318","wires":[["42a3db7c.c4bde4"]]},{"id":"7a73e707.b51298","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":1341.3809623718262,"y":2383.9196491241455,"z":"e4baa5a8.a31318","wires":[["d5efedb2.7d60c"]]},{"id":"42a3db7c.c4bde4","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 reading VFC_TO_NETWORK_ROLE_MAPPING table\" />\n","comments":"","x":1507.8094635009766,"y":2338.7768363952637,"z":"e4baa5a8.a31318","wires":[]},{"id":"d99614b2.38ddf8","type":"for","name":"for each network-role","xml":"<for index='network-role-index' start='0' end='`$db.vfc-to-network-role-mapping_length`' >\n","comments":"","outputs":1,"x":938.6906204223633,"y":2670.4439306259155,"z":"e4baa5a8.a31318","wires":[["4bcabc98.ea4e24"]]},{"id":"4bcabc98.ea4e24","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1145.1190719604492,"y":2667.11043548584,"z":"e4baa5a8.a31318","wires":[["36a6c86d.097308","837f1dbf.dff44","35c5bc83.48f7c4","65409122.eeca2","da28f677.f45f78","231dd30.999172e","bdd6810f.244ea","47edc8c7.d583e8"]]},{"id":"36a6c86d.097308","type":"for","name":"for each network","xml":"<for silentFailure='true' index='idx' start='0' end='`$service-data.networks.network_length`' >\n","comments":"","outputs":1,"x":1354.166633605957,"y":2499.253191947937,"z":"e4baa5a8.a31318","wires":[["89e2ef85.52c62"]]},{"id":"837f1dbf.dff44","type":"set","name":"set network-index to -1","xml":"<set>\n<parameter name='network-index' value='-1' />\n","comments":"","x":1374.1667022705078,"y":2456.396188735962,"z":"e4baa5a8.a31318","wires":[]},{"id":"89e2ef85.52c62","type":"switchNode","name":"switch network-role matches","xml":"<switch test='`$service-data.networks.network[$idx].network-data.network-topology.network-topology-identifier-structure.network-role == $db.vfc-to-network-role-mapping[$network-role-index].network-role`'>\n","comments":"","outputs":1,"x":1582.737907409668,"y":2497.824381828308,"z":"e4baa5a8.a31318","wires":[["16b2e9a3.043416"]]},{"id":"16b2e9a3.043416","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1781.3095741271973,"y":2497.824585914612,"z":"e4baa5a8.a31318","wires":[["db944d5d.b6668"]]},{"id":"db944d5d.b6668","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":1922.7381420135498,"y":2496.396014213562,"z":"e4baa5a8.a31318","wires":[["67f3ef04.c0a6c","18ca7106.b738af"]]},{"id":"67f3ef04.c0a6c","type":"set","name":"set network-index to idx","xml":"<set>\n<parameter name='network-index' value='`$idx`' />\n","comments":"","x":2101.30965423584,"y":2473.5390100479126,"z":"e4baa5a8.a31318","wires":[]},{"id":"18ca7106.b738af","type":"break","name":"break","xml":"<break>\n","comments":"","x":2049.8808937072754,"y":2519.2531900405884,"z":"e4baa5a8.a31318","wires":[]},{"id":"35c5bc83.48f7c4","type":"switchNode","name":"switch network-index","xml":"<switch test='`$network-index`'>\n","comments":"","outputs":1,"x":1366.0714721679688,"y":2548.062829017639,"z":"e4baa5a8.a31318","wires":[["170e8f83.a9e23"]]},{"id":"170e8f83.a9e23","type":"outcomeTrue","name":"-1","xml":"<outcome value='-1'>\n","comments":"","outputs":1,"x":1560.3571968078613,"y":2548.062726020813,"z":"e4baa5a8.a31318","wires":[["a6e6e9d9.38e488"]]},{"id":"a6e6e9d9.38e488","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=\"`'No network found in MD-SAL with network-role ' + $db.vfc-to-network-role-mapping[$network-role-index].network-role`\" />\n","comments":"","x":1717.5000457763672,"y":2546.634196281433,"z":"e4baa5a8.a31318","wires":[]},{"id":"9b75b20e.4510a","type":"for","name":"for each cloud-region relationship","xml":"<for index='idx' start='0' end='`$aai.cloud-region.relationship-list.relationship_length`' >\n","comments":"","outputs":1,"x":575.9442901611328,"y":1266.0068836212158,"z":"e4baa5a8.a31318","wires":[["1b8a998c.af1726"]]},{"id":"1b8a998c.af1726","type":"switchNode","name":"switch related-to","xml":"<switch test='`$aai.cloud-region.relationship-list.relationship[$idx].related-to`'>\n","comments":"","outputs":1,"x":823.6228332519531,"y":1265.7568130493164,"z":"e4baa5a8.a31318","wires":[["8a817450.4b3f18"]]},{"id":"8a817450.4b3f18","type":"outcome","name":"complex","xml":"<outcome value='complex'>\n","comments":"","outputs":1,"x":993.0871543884277,"y":1265.1496353149414,"z":"e4baa5a8.a31318","wires":[["30bd9ac8.a95e36"]]},{"id":"5de7c2d5.2e20dc","type":"execute","name":"split related-link","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>\n   <parameter name='ctx_memory_result_key' value='aai-uid-split' />\n   <parameter name='original_string' value='`$aai.cloud-region.relationship-list.relationship[$idx].related-link`' />\n   <parameter name='regex' value='/' />\n","comments":"","outputs":1,"x":1333.1823120117188,"y":1219.5782108306885,"z":"e4baa5a8.a31318","wires":[[]]},{"id":"30bd9ac8.a95e36","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1152.8490142822266,"y":1266.2449989318848,"z":"e4baa5a8.a31318","wires":[["5de7c2d5.2e20dc","e5801a20.119d08","9f4a6c82.752a2"]]},{"id":"e5801a20.119d08","type":"break","name":"break","xml":"<break>\n","comments":"","x":1302.848976135254,"y":1309.5782957077026,"z":"e4baa5a8.a31318","wires":[]},{"id":"65409122.eeca2","type":"set","name":"set network-role and tag","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-role'\n   value='`$db.vfc-to-network-role-mapping[$network-role-index].network-role`' />\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-role-tag'\n   value='`$db.vfc-to-network-role-mapping[$network-role-index].network-role-tag`' />\n","comments":"","x":1375.8333549499512,"y":2644.2530155181885,"z":"e4baa5a8.a31318","wires":[]},{"id":"79dd1a08.432464","type":"set","name":"set vm-network-length","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network_length'\n  value='`$db.vfc-to-network-role-mapping_length`' />\n","comments":"","x":932.4999465942383,"y":3059.2532806396484,"z":"e4baa5a8.a31318","wires":[]},{"id":"da28f677.f45f78","type":"switchNode","name":"switch ipv4-ip-version","xml":"<switch test='`$db.vfc-to-network-role-mapping[$network-role-index].ipv4-ip-version`'>\n","comments":"","outputs":1,"x":1368.452407836914,"y":2727.5863428115845,"z":"e4baa5a8.a31318","wires":[["ba64a787.ba4118","2e9fc1a3.0b9b9e"]]},{"id":"d7307d95.7b8c5","type":"set","name":"set network-information-index to -1","xml":"<set>\n<parameter name='network-information-index' value='-1' />\n\n","comments":"","x":1777.97603225708,"y":2692.5864477157593,"z":"e4baa5a8.a31318","wires":[]},{"id":"ba64a787.ba4118","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":1545.1189270019531,"y":2692.586483001709,"z":"e4baa5a8.a31318","wires":[["d7307d95.7b8c5"]]},{"id":"2e9fc1a3.0b9b9e","type":"other","name":"4","xml":"<outcome value='4'>\n","comments":"","outputs":1,"x":1543.8808784484863,"y":2758.538625717163,"z":"e4baa5a8.a31318","wires":[["8dd043b4.688fd"]]},{"id":"e6d285da.6bc2f8","type":"set","name":"set network-information-index to 0","xml":"<set>\n<parameter name='network-information-index' value='0' />\n","comments":"","x":1948.4521408081055,"y":2733.0624866485596,"z":"e4baa5a8.a31318","wires":[]},{"id":"8dd043b4.688fd","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1711.0713539123535,"y":2757.872091293335,"z":"e4baa5a8.a31318","wires":[["e6d285da.6bc2f8","909b57b.c66aea8"]]},{"id":"909b57b.c66aea8","type":"set","name":"set ip-version 4, use-dhcp, and ip-count","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$network-information-index].ip-version'\n   value='4' />\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$network-information-index].use-dhcp'\n   value='`$db.vfc-to-network-role-mapping[$network-role-index].ipv4-use-dhcp`' />\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$network-information-index].ip-count'\n   value='`$db.vfc-to-network-role-mapping[$network-role-index].ipv4-count`' />\n","comments":"","x":1965.4047241210938,"y":2779.7294425964355,"z":"e4baa5a8.a31318","wires":[]},{"id":"231dd30.999172e","type":"switchNode","name":"switch ipv6-ip-version","xml":"<switch test='`$db.vfc-to-network-role-mapping[$network-role-index].ipv6-ip-version`'>\n","comments":"","outputs":1,"x":1368.9286041259766,"y":2854.4911251068115,"z":"e4baa5a8.a31318","wires":[["a42f90da.1aa4c","95f6b1ee.0f4d1"]]},{"id":"a42f90da.1aa4c","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":1547.7380981445312,"y":2824.728937149048,"z":"e4baa5a8.a31318","wires":[["8ebef5b1.d07e78"]]},{"id":"95f6b1ee.0f4d1","type":"other","name":"6","xml":"<outcome value='6'>\n","comments":"","outputs":1,"x":1549.1666526794434,"y":2889.0144939422607,"z":"e4baa5a8.a31318","wires":[["2ae9d1a1.54891e"]]},{"id":"71edbafa.5f48b4","type":"set","name":"increment network-information-index","xml":"<set>\n<parameter name='network-information-index' value='`$network-information-index + 1`' />\n","comments":"","x":1954.880744934082,"y":2863.5385236740112,"z":"e4baa5a8.a31318","wires":[]},{"id":"2ae9d1a1.54891e","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1704.4048118591309,"y":2888.0622329711914,"z":"e4baa5a8.a31318","wires":[["71edbafa.5f48b4","a89d1a7f.ee0778"]]},{"id":"8ebef5b1.d07e78","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":1690.404727935791,"y":2824.0625553131104,"z":"e4baa5a8.a31318","wires":[[]]},{"id":"bdd6810f.244ea","type":"switchNode","name":"switch network-information-index","xml":"<switch test='`$network-information-index`'>\n","comments":"","outputs":1,"x":1404.166618347168,"y":2990.919370651245,"z":"e4baa5a8.a31318","wires":[["b53bbeec.db42f","b1edd581.077538"]]},{"id":"b53bbeec.db42f","type":"outcome","name":"-1","xml":"<outcome value='-1'>","comments":"","outputs":1,"x":1622.4999752044678,"y":2967.5861167907715,"z":"e4baa5a8.a31318","wires":[["ba350989.b70fd8"]]},{"id":"b1edd581.077538","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":1622.2619380950928,"y":3013.5384311676025,"z":"e4baa5a8.a31318","wires":[["9b9cf9cc.6a7228"]]},{"id":"ba350989.b70fd8","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":1759.166690826416,"y":2965.919776916504,"z":"e4baa5a8.a31318","wires":[[]]},{"id":"9b9cf9cc.6a7228","type":"set","name":"set network-information-item_length","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item_length'\n   value='`$network-information-index + 1`' />\n","comments":"","x":1850.8333053588867,"y":3010.919569015503,"z":"e4baa5a8.a31318","wires":[]},{"id":"e8889dec.9dd74","type":"for","name":"for each vm-type","xml":"<for index='vm-type-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm_length`' >\n","comments":"","outputs":1,"x":531,"y":3157.9194660186768,"z":"e4baa5a8.a31318","wires":[["8b116d7c.65c33"]]},{"id":"8b116d7c.65c33","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":734.5715255737305,"y":3158.1576709747314,"z":"e4baa5a8.a31318","wires":[["7e90f983.18fa18"]]},{"id":"47edc8c7.d583e8","type":"set","name":"save network-id","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-id'\n  value='`$service-data.networks.network[$idx].network-data.network-topology.network-topology-identifier-structure.network-id`' />\n","comments":"This isn't a node in MD-SAL, but we need to save this for later when we are doing EIPAM processing","x":1347.9761810302734,"y":2594.253023147583,"z":"e4baa5a8.a31318","wires":[]},{"id":"7e90f983.18fa18","type":"for","name":"for each network-role","xml":"<for index='network-role-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network_length`' >\n","comments":"","outputs":1,"x":935.999885559082,"y":3157.252721786499,"z":"e4baa5a8.a31318","wires":[["a533571e.4db208"]]},{"id":"a533571e.4db208","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1137.9047012329102,"y":3156.490758895874,"z":"e4baa5a8.a31318","wires":[["92a08557.b354a8"]]},{"id":"92a08557.b354a8","type":"for","name":"for each network-information-item","xml":"<for index='ip-version-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item_length`' >\n","comments":"","outputs":1,"x":1382.6665725708008,"y":3156.0151510238647,"z":"e4baa5a8.a31318","wires":[["1eb5f5e8.6678ba"]]},{"id":"b1e701d0.c2cbd","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":627.666633605957,"y":3361.9195766448975,"z":"e4baa5a8.a31318","wires":[["a3c5a1c.0beeb6","d65acdc0.dafd8","c7baae79.a8d3a","1445f578.93789b","c5ac535a.19e0c"]]},{"id":"a3c5a1c.0beeb6","type":"get-resource","name":"get-resource EIPAM_IP_SUBNETS","xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n  key='SELECT * from EIPAM_IP_SUBNETS WHERE network_id = $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-id\n    AND address_family = $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].ip-version'\n  pfx='db.eipam-ip-subnets[]'>\n\n","comments":"","outputs":1,"x":1007.6666564941406,"y":3323.586072921753,"z":"e4baa5a8.a31318","wires":[["3976fb7d.92d3d4","959768c3.a1d588"]]},{"id":"39fae58.e71ee1a","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=\"`'No entries found in EIPAM_IP_SUBNETS table for network ID '\n        + $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-id\n        + ' and address family ' + $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].ip-version`\" />\n","comments":"","x":1397.6665954589844,"y":3345.2528343200684,"z":"e4baa5a8.a31318","wires":[]},{"id":"3976fb7d.92d3d4","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1223.0238647460938,"y":3301.205192565918,"z":"e4baa5a8.a31318","wires":[["c635b53c.368758"]]},{"id":"959768c3.a1d588","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":1231.5952949523926,"y":3345.4909057617188,"z":"e4baa5a8.a31318","wires":[["39fae58.e71ee1a"]]},{"id":"c635b53c.368758","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 reading EIPAM_IP_SUBNETS table\" />\n","comments":"","x":1398.023796081543,"y":3300.348093032837,"z":"e4baa5a8.a31318","wires":[]},{"id":"d65acdc0.dafd8","type":"for","name":"for each record in EIPAM_IP_SUBNETS","xml":"<for index='subnets-index' start='0' end='`$db.eipam-ip-subnets_length`' >\n","comments":"","outputs":1,"x":1026.9524688720703,"y":3628.82426071167,"z":"e4baa5a8.a31318","wires":[["ff66bf7.47f1b4"]]},{"id":"ff66bf7.47f1b4","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1283.3810195922852,"y":3629.77654838562,"z":"e4baa5a8.a31318","wires":[["367ad5cc.c5a3fa","77c765bc.e6637c","91e102ce.d36e8","3d0c6fc4.e325","82b00d4f.93cbf"]]},{"id":"367ad5cc.c5a3fa","type":"get-resource","name":"get-resource EIPAM_IP_SUBNET_KEYS","xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n  key='SELECT * from EIPAM_IP_SUBNET_KEYS WHERE entity_id = $db.eipam-ip-subnets[$subnets-index].entity-id'\n  pfx='db.eipam-ip-subnet-keys[]'>\n\n","comments":"","outputs":1,"x":1594.809585571289,"y":3466.205156326294,"z":"e4baa5a8.a31318","wires":[["6870a9ce.b3eae8","f0e997ff.17eb08"]]},{"id":"7945f51f.9f762c","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=\"`'No entries found in EIPAM_IP_SUBNET_KEYS table for entity ID '\n        + $db.eipam-ip-subnets[$subnets-index].entity-id`\" />","comments":"","x":2009.809585571289,"y":3486.205156326294,"z":"e4baa5a8.a31318","wires":[]},{"id":"6870a9ce.b3eae8","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1835.1668548583984,"y":3442.1575145721436,"z":"e4baa5a8.a31318","wires":[["ed0022b6.a92c"]]},{"id":"f0e997ff.17eb08","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":1843.7382850646973,"y":3486.4432277679443,"z":"e4baa5a8.a31318","wires":[["7945f51f.9f762c"]]},{"id":"ed0022b6.a92c","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 reading EIPAM_IP_SUBNET_KEYS table\" />\n","comments":"","x":2010.1667861938477,"y":3441.3004150390625,"z":"e4baa5a8.a31318","wires":[]},{"id":"c7baae79.a8d3a","type":"set","name":"set max-level to -1","xml":"<set>\n<parameter name='max-level' value='-1' />\n","comments":"","x":955.7619323730469,"y":3389.538688659668,"z":"e4baa5a8.a31318","wires":[]},{"id":"77c765bc.e6637c","type":"for","name":"for each record in EIPAM_IP_SUBNET_KEYS","xml":"<for index='keys-index' start='0' end='`$db.eipam-ip-subnet-keys_length`' >\n","comments":"","outputs":1,"x":1609.3334045410156,"y":3535.2529106140137,"z":"e4baa5a8.a31318","wires":[["263bb568.7e1d3a"]]},{"id":"263bb568.7e1d3a","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1896.0000534057617,"y":3533.586248397827,"z":"e4baa5a8.a31318","wires":[["57db1b51.bf7814"]]},{"id":"57db1b51.bf7814","type":"switchNode","name":"switch level > max-level?","xml":"<switch test='`$db.eipam-ip-subnet-keys[$keys-index].level &gt; $max-level`'>\n","comments":"","outputs":1,"x":2112.6666717529297,"y":3533.586166381836,"z":"e4baa5a8.a31318","wires":[["d90f79d9.b32da8"]]},{"id":"d90f79d9.b32da8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2304.333599090576,"y":3533.58616065979,"z":"e4baa5a8.a31318","wires":[["743cc06c.51758"]]},{"id":"743cc06c.51758","type":"set","name":"set max-level, selected-entity-id, selected-plan-name","xml":"<set>\n<parameter name='max-level' value='`$db.eipam-ip-subnet-keys[$keys-index].level`' />\n<parameter name='selected-entity-id' value='`$db.eipam-ip-subnet-keys[$keys-index].entity-id`' />\n<parameter name='selected-plan-name' value='`$db.eipam-ip-subnets[$subnets-index].plan-name`' />\n","comments":"","x":2596.0001068115234,"y":3531.9194173812866,"z":"e4baa5a8.a31318","wires":[]},{"id":"91e102ce.d36e8","type":"get-resource","name":"get-resource EIPAM_IP_SUBNET_KEYS","xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n  key='SELECT * from EIPAM_IP_SUBNET_KEYS WHERE entity_id = $selected-entity-id order by level'\n  pfx='db.eipam-ip-subnet-keys[]'>\n\n","comments":"","outputs":1,"x":1596.000015258789,"y":3607.157615661621,"z":"e4baa5a8.a31318","wires":[["b2349884.088788","f1532f86.e76dd"]]},{"id":"7f0c353a.7f913c","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=\"`'No entries found in EIPAM_IP_SUBNET_KEYS table for entity ID '\n        + $selected-entity-id`\" />","comments":"","x":2011.000015258789,"y":3627.157615661621,"z":"e4baa5a8.a31318","wires":[]},{"id":"b2349884.088788","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1836.3572845458984,"y":3583.1099739074707,"z":"e4baa5a8.a31318","wires":[["70f90568.aa118c"]]},{"id":"f1532f86.e76dd","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":1844.9287147521973,"y":3627.3956871032715,"z":"e4baa5a8.a31318","wires":[["7f0c353a.7f913c"]]},{"id":"70f90568.aa118c","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 reading EIPAM_IP_SUBNET_KEYS table\" />\n","comments":"","x":2011.3572158813477,"y":3582.2528743743896,"z":"e4baa5a8.a31318","wires":[]},{"id":"c8da1d6e.45a7a","type":"for","name":"for each record in EIPAM_IP_SUBNET_KEYS","xml":"<for index='level-index' start='0' end='`$db.eipam-ip-subnet-keys_length`' >\n","comments":"","outputs":1,"x":2041.9523620605469,"y":3675.729072570801,"z":"e4baa5a8.a31318","wires":[["23e299e.e960066"]]},{"id":"2364c25f.16e04e","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1734.8093643188477,"y":3759.5385093688965,"z":"e4baa5a8.a31318","wires":[["c8da1d6e.45a7a","5a2be208.b22a9c","deb2167.63080e8","f568d578.388128","7ead2109.820b4"]]},{"id":"3d0c6fc4.e325","type":"for","name":"for each ip in ip-count","xml":"<for index='request-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].ip-count`' >\n","comments":"","outputs":1,"x":1533.142807006836,"y":3759.5401363372803,"z":"e4baa5a8.a31318","wires":[["2364c25f.16e04e"]]},{"id":"23e299e.e960066","type":"set","name":"set eipam data for level","xml":"<set>\n<parameter name='eipam-ip-block.plans[$plans-index].requests[$request-index].pools[$level-index].key-name'\n   value='`$db.eipam-ip-subnet-keys[$level-index].key-name`' />\n<parameter name='eipam-ip-block.plans[$plans-index].requests[$request-index].pools[$level-index].key-value'\n   value='`$db.eipam-ip-subnet-keys[$level-index].key-value`' />\n","comments":"","x":2348.8571243286133,"y":3675.4918384552,"z":"e4baa5a8.a31318","wires":[]},{"id":"5a2be208.b22a9c","type":"set","name":"set eipam data pools_length","xml":"<set>\n<parameter name='eipam-ip-block.plans[$plans-index].requests[$request-index].pools_length'\n   value='`$db.eipam-ip-subnet-keys_length`' />\n","comments":"","x":1988.142677307129,"y":3721.2054557800293,"z":"e4baa5a8.a31318","wires":[]},{"id":"ac1085e3.f13938","type":"set","name":"set plans-index to 0","xml":"<set>\n<parameter name='plans-index' value='0' />\n","comments":"","x":539.7619171142578,"y":3101.8717365264893,"z":"e4baa5a8.a31318","wires":[]},{"id":"1445f578.93789b","type":"set","name":"increment plans-index","xml":"<set>\n<parameter name='plans-index' value='`$plans-index + 1`' />\n","comments":"","x":971.0952224731445,"y":4020.871983528137,"z":"e4baa5a8.a31318","wires":[]},{"id":"82b00d4f.93cbf","type":"set","name":"set eipam requests_length","xml":"<set>\n<parameter name='eipam-ip-block.plans[$plans-index].requests_length'\n   value='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].ip-count`' />\n","comments":"","x":1543.6191711425781,"y":3901.2055082321167,"z":"e4baa5a8.a31318","wires":[]},{"id":"c5ac535a.19e0c","type":"set","name":"set eipam plan-name, address-family","xml":"<set>\n<parameter name='eipam-ip-block.plans[$plans-index].plan-name' value='`$selected-plan-name`' />\n<parameter name='eipam-ip-block.plans[$plans-index].address-family'\n   value='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].ip-version`' />\n","comments":"","x":1019.6666564941406,"y":3973.7284650802612,"z":"e4baa5a8.a31318","wires":[]},{"id":"319cf957.f6edb6","type":"set","name":"set eipam plans_length","xml":"<set>\n<parameter name='eipam-ip-block.plans_length' value='`$plans-index`' />\n","comments":"","x":543.4285697937012,"y":4045.919857978821,"z":"e4baa5a8.a31318","wires":[]},{"id":"c811246.d8ba4d8","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":511.5475769042969,"y":4917.2607316970825,"z":"e4baa5a8.a31318","wires":[]},{"id":"efa475b7.980ae8","type":"set","name":"copy input data","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.sdnc-request-header.'\n   value='$vf-module-topology-operation-input.sdnc-request-header.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.request-information.'\n   value='$vf-module-topology-operation-input.request-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.service-information.'\n   value='$vf-module-topology-operation-input.service-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vnf-information.'\n   value='$vf-module-topology-operation-input.vnf-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-information.'\n   value='$vf-module-topology-operation-input.vf-module-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-request-input.'\n   value='$vf-module-topology-operation-input.vf-module-request-input.' />\n\n","comments":"","x":515.8332824707031,"y":4776.990706443787,"z":"e4baa5a8.a31318","wires":[]},{"id":"a247b0d0.a589c","type":"set","name":"copy vf-module-topology data","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.' value='tmp.vf-module-topology.' />\n","comments":"","x":560.7142868041992,"y":4728.776218414307,"z":"e4baa5a8.a31318","wires":[]},{"id":"f833ef67.9cf92","type":"execute","name":"printContext","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\n<parameter name='filename' value='/var/tmp/bgb-vfmodule.log' />\n","comments":"","outputs":1,"x":506.42852783203125,"y":4869.49054813385,"z":"e4baa5a8.a31318","wires":[[]]},{"id":"77ad7e3d.8e3ec","type":"execute","name":"call EIPAM assignIPAddress","xml":"<execute plugin=\"com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin\" method=\"assignIPAddress\">","comments":"","outputs":1,"x":923.5952911376953,"y":4134.880926132202,"z":"e4baa5a8.a31318","wires":[["9e574032.fe3cb"]]},{"id":"9e574032.fe3cb","type":"failure","name":"failure","xml":"<outcome value='failure'>","outputs":1,"x":1137.5952911376953,"y":4134.880926132202,"z":"e4baa5a8.a31318","wires":[["6086477b.665d78"]]},{"id":"6086477b.665d78","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\t<parameter name=\"error-message\" value=\"An error occured while obtaining new address blocks from EIPAM.\" />\n","comments":"","x":1276.5952911376953,"y":4134.880926132202,"z":"e4baa5a8.a31318","wires":[]},{"id":"deb2167.63080e8","type":"set","name":"set eipam client-key, mask","xml":"<set>\n<parameter name='eipam-ip-block.plans[$plans-index].requests[$request-index].client-key'\n   value='`$generate-unique-name-output.generated-name`' />\n<parameter name='eipam-ip-block.plans[$plans-index].requests[$request-index].info'\n   value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id`' />\n<parameter name='eipam-ip-block.plans[$plans-index].requests[$request-index].mask'\n   value='32' />\n","comments":"","x":1985.2857284545898,"y":3855.015483856201,"z":"e4baa5a8.a31318","wires":[]},{"id":"b87f9fec.9ac9e","type":"for","name":"for each vm-type","xml":"<for index='vm-type-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm_length`' >\n","comments":"","outputs":1,"x":523,"y":4244.252558708191,"z":"e4baa5a8.a31318","wires":[["9092afca.a3962"]]},{"id":"9092afca.a3962","type":"for","name":"for each vm-network","xml":"<for index='network-role-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network_length`' >\n","comments":"","outputs":1,"x":731.6666831970215,"y":4244.252884864807,"z":"e4baa5a8.a31318","wires":[["6b702819.1ea7a8"]]},{"id":"6b702819.1ea7a8","type":"for","name":"for each network-information-item","xml":"<for index='ip-version-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item_length`' >\n","comments":"","outputs":1,"x":996.6666717529297,"y":4245.919226646423,"z":"e4baa5a8.a31318","wires":[["83b69613.7b8da8"]]},{"id":"95db0874.7fa668","type":"set","name":"set plans-index = 0","xml":"<set>\n<parameter name='plans-index' value='0' />\n","comments":"","x":529.9999923706055,"y":4189.252646446228,"z":"e4baa5a8.a31318","wires":[]},{"id":"98047ce0.4a6e9","type":"for","name":"for each eipam request","xml":"<for index='ip-index' start='0' end='`$eipam-ip-block.plans[$plans-index].requests_length`' >\n","comments":"","outputs":1,"x":1766.6666259765625,"y":4217.586531639099,"z":"e4baa5a8.a31318","wires":[["6f14c8cc.226b88"]]},{"id":"6f14c8cc.226b88","type":"set","name":"set ip address","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].network-ips.network-ip[$ip-index]'\n  value='`$eipam-ip-block.plans[$plans-index].requests[$ip-index].ip-prefix`' />\n","comments":"","x":1978.3332633972168,"y":4215.919702529907,"z":"e4baa5a8.a31318","wires":[]},{"id":"5aeee902.7037a8","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1566.6664581298828,"y":4242.586045265198,"z":"e4baa5a8.a31318","wires":[["98047ce0.4a6e9","a26fc3b8.56c3c"]]},{"id":"a26fc3b8.56c3c","type":"set","name":"increment plans-index","xml":"<set>\n<parameter name='plans-index' value='`$plans-index + 1`' />\n","comments":"","x":1761.66650390625,"y":4264.252387046814,"z":"e4baa5a8.a31318","wires":[]},{"id":"3c8bd226.36546e","type":"save","name":"update vf-module","xml":"<update plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\"\n   resource=\"vf-module\"\n   key=\"vf-module.vf-module-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id\n      AND generic-vnf.vnf-id = $service-data.vnfs.vnf[$vnf-index].vnf-id\"\n   force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"vf-module-name\" value=\"`$tmp.vf-module-topology.vf-module-topology-identifier.vf-module-name`\" />\n<parameter name=\"model-invariant-id\" value=\"`$tmp.vf-module-topology.onap-model-information.model-invariant-uuid`\" />\n<parameter name=\"model-version-id\" value=\"`$tmp.vf-module-topology.onap-model-information.model-uuid`\" />\n<parameter name=\"model-customization-id\" value=\"`$tmp.vf-module-topology.onap-model-information.model-customization-uuid`\" />\n<parameter name=\"selflink\" value=\"`$vf-module-object-path`\" />\n","comments":"","outputs":1,"x":524.9999694824219,"y":4389.252729415894,"z":"e4baa5a8.a31318","wires":[["fb5d5bb7.763c78","e4f07aae.f62f88"]]},{"id":"d2a1fc69.961af","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=\"`'No vf-module found in AAI for vf module ID ' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id`\" />\n","comments":"","x":1018.3333969116211,"y":4442.585899353027,"z":"e4baa5a8.a31318","wires":[]},{"id":"fb5d5bb7.763c78","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":694.3573303222656,"y":4356.204874038696,"z":"e4baa5a8.a31318","wires":[["383193dd.97ea3c"]]},{"id":"e4f07aae.f62f88","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":702.9286842346191,"y":4418.823854446411,"z":"e4baa5a8.a31318","wires":[["bcf4c9e0.38f9c8"]]},{"id":"4c9452bf.c4605c","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 updating vf-module in AAI\" />\n","comments":"","x":1029.3572845458984,"y":4374.348430633545,"z":"e4baa5a8.a31318","wires":[]},{"id":"a03bb466.634808","type":"set","name":"set vf-module-object-path","xml":"<set>\n<parameter name='vf-module-object-path'\n value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $service-data.service-topology.service-topology-identifier.service-instance-id\n + '/service-data/vnfs/vnf/'\n + $service-data.vnfs.vnf[$vnf-index].vnf-id\n + '/vnf-data/vf-modules/vf-module/'\n + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id\n + '/vf-module-data/vf-module-topology/'`\"/>\n\n","comments":"","x":551.666633605957,"y":4314.252715110779,"z":"e4baa5a8.a31318","wires":[]},{"id":"c4679f1a.0f0a2","type":"save","name":"save vf-module relationships","xml":"<save plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\"\n   resource=\"vf-module:relationship-list\"\n   key=\"vf-module.vf-module-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id\n      AND generic-vnf.vnf-id = $service-data.vnfs.vnf[$vnf-index].vnf-id\"\n   force=\"true\" pfx=\"tmp.AnAI-data\">\n    <parameter name=\"relationship-list.relationship[0].related-to\" value=\"l3-network\" />\n    <parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"l3-network.network-id\" />\n    <parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-id`\" />\n","comments":"","outputs":1,"x":984.3094787597656,"y":4517.975717544556,"z":"e4baa5a8.a31318","wires":[["adfe5f0b.ad89b","8c43d965.e517d8"]]},{"id":"adfe5f0b.ad89b","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1209.1428108215332,"y":4478.847640037537,"z":"e4baa5a8.a31318","wires":[["be7ce494.4af018"]]},{"id":"8c43d965.e517d8","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":1217.7142639160156,"y":4556.466782569885,"z":"e4baa5a8.a31318","wires":[["1b7e23d5.510b0c"]]},{"id":"fcd02140.3442a","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 updating vf-module relationships in AAI\" />\n","comments":"","x":1544.1429443359375,"y":4498.657536506653,"z":"e4baa5a8.a31318","wires":[]},{"id":"f8307ef3.44142","type":"for","name":"for each vm-type","xml":"<for index='vm-type-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm_length`' >\n","comments":"","outputs":1,"x":525.3095092773438,"y":4519.642220497131,"z":"e4baa5a8.a31318","wires":[["51e803ad.53b7ac"]]},{"id":"51e803ad.53b7ac","type":"for","name":"for each vm-network","xml":"<for index='network-role-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network_length`' >\n","comments":"","outputs":1,"x":735.9761867523193,"y":4517.976043701172,"z":"e4baa5a8.a31318","wires":[["c4679f1a.0f0a2"]]},{"id":"b89ddb3d.45f568","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=\"`'No vf-module found in AAI for vf module ID ' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id`\" />\n","comments":"","x":1545.9762382507324,"y":4573.642075538635,"z":"e4baa5a8.a31318","wires":[]},{"id":"a89d1a7f.ee0778","type":"set","name":"set ip-version 6, use-dhcp, and ip-count","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$network-information-index].ip-version'\n   value='6' />\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$network-information-index].use-dhcp'\n   value='`$db.vfc-to-network-role-mapping[$network-role-index].ipv6-use-dhcp`' />\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$network-information-index].ip-count'\n   value='`$db.vfc-to-network-role-mapping[$network-role-index].ipv6-count`' />\n","comments":"","x":1964.7857208251953,"y":2908.213849067688,"z":"e4baa5a8.a31318","wires":[]},{"id":"1eb5f5e8.6678ba","type":"switchNode","name":"switch use-dhcp","xml":"<switch test='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].use-dhcp`'>\n","comments":"","outputs":1,"x":1630.500114440918,"y":3155.356598854065,"z":"e4baa5a8.a31318","wires":[["565e7fcb.5478a"]]},{"id":"565e7fcb.5478a","type":"outcome","name":"N","xml":"<outcome value='N'>\n","comments":"","outputs":1,"x":1800.5000267028809,"y":3153.928201675415,"z":"e4baa5a8.a31318","wires":[["b1e701d0.c2cbd"]]},{"id":"83b69613.7b8da8","type":"switchNode","name":"switch use-dhcp","xml":"<switch test='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].use-dhcp`'>\n","comments":"","outputs":1,"x":1237.642837524414,"y":4244.642521858215,"z":"e4baa5a8.a31318","wires":[["9fada909.4d9ca8"]]},{"id":"9fada909.4d9ca8","type":"outcome","name":"N","xml":"<outcome value='N'>\n","comments":"","outputs":1,"x":1407.642749786377,"y":4243.214124679565,"z":"e4baa5a8.a31318","wires":[["5aeee902.7037a8"]]},{"id":"21f945ed.4703fa","type":"for","name":"for each vm-type","xml":"<for index='vm-type-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm_length`' >\n","comments":"","outputs":1,"x":524.309455871582,"y":4649.642714500427,"z":"e4baa5a8.a31318","wires":[["76ad141b.68002c"]]},{"id":"76ad141b.68002c","type":"for","name":"for each vm","xml":"<for index='vm-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-count`' >\n","comments":"","outputs":1,"x":719.3094863891602,"y":4648.975722312927,"z":"e4baa5a8.a31318","wires":[["5ad6102c.c24c4"]]},{"id":"87d443e8.e1d8d","type":"save","name":"save VIPR_CONFIGURATION","xml":"<save plugin=\"org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource\" resource=\"SQL\"\nkey=\"INSERT INTO VIPR_CONFIGURATION (vnf_id, vnf_name, ecomp_service_instance_id, vm_name, cloud_region_id, cloud_owner) VALUES ( $service-data.vnfs.vnf[$vnf-index].vnf-id , $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-name , $service-data.service-information.service-instance-id , $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-names.vm-name[$vm-index] , $tmp.vf-module-topology.aic-cloud-region , 'CloudOwner')\" >","comments":"","outputs":1,"x":1110.976188659668,"y":4671.643372535706,"z":"e4baa5a8.a31318","wires":[["87ac107d.fb4e7"]]},{"id":"cc126082.cba77","type":"comment","name":"Not a failure","info":"","comments":"","x":1630.976089477539,"y":4671.643377304077,"z":"e4baa5a8.a31318","wires":[]},{"id":"87ac107d.fb4e7","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1320.976173400879,"y":4671.643522262573,"z":"e4baa5a8.a31318","wires":[["84e3208f.2bb34"]]},{"id":"84e3208f.2bb34","type":"record","name":"record","xml":"<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder\">\n<parameter name=\"logger\" value=\"message-log\"/>\n<parameter name=\"field1\" value=\"__TIMESTAMP__\"/>\n<parameter name=\"field2\" value=\"GENERIC-RESOURCE-API.vf-module-topology-operation-assign:REQID\"/>\n<parameter name=\"field3\" value=\"`$vf-module-topology-operation-input.sdnc-request-header.svc-request-id`\"/>\n<parameter name=\"field4\" value=\"Failed to insert VIPR_CONFIGURATION record\"/>\n","comments":"","outputs":1,"x":1464.3096160888672,"y":4671.643360137939,"z":"e4baa5a8.a31318","wires":[[]]},{"id":"7ead2109.820b4","type":"call","name":"call GENERIC-RESOURCE-API:generate-unique-name","xml":"<call module='GENERIC-RESOURCE-API' rpc='generate-unique-name' mode='sync' >\n","comments":"","outputs":1,"x":2074.3094940185547,"y":3809.641947746277,"z":"e4baa5a8.a31318","wires":[["b9a9e488.2e3ce8"]]},{"id":"b9a9e488.2e3ce8","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":2361.6905364990234,"y":3807.4993686676025,"z":"e4baa5a8.a31318","wires":[["f309c868.34d8b8"]]},{"id":"f568d578.388128","type":"set","name":"set variables for generating unique name","xml":"<set>\n<parameter name='generate-unique-name-input.index-table-name' value='EIPAM_CLIENT_KEY_INDEX' />\n<parameter name='generate-unique-name-input.index-table-prefix-column' value='vnf_name_prefix' />\n<parameter name='generate-unique-name-input.name-table-type' value='CLIENT_KEY' />\n<parameter name='generate-unique-name-input.prefix' value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-name + $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].nfc-naming-code + ':' + $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-id + ':' + $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].ip-version + ':'`\" />\n<parameter name='generate-unique-name-input.index-length' value='' />\n","comments":"","x":2027.6428260803223,"y":3764.6421089172363,"z":"e4baa5a8.a31318","wires":[]},{"id":"f309c868.34d8b8","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=\"`$generate-unique-name-output.error-message`\" />\n","comments":"","x":2529.547649383545,"y":3806.9278802871704,"z":"e4baa5a8.a31318","wires":[]},{"id":"141da799.5b84c8","type":"switchNode","name":"switch ecomp-generated-naming == 'Y'","xml":"<switch test=\"$db.vfc-model.ecomp-generated-naming == 'Y'\">\n","comments":"","outputs":1,"x":1004.3095626831055,"y":2071.309280395508,"z":"e4baa5a8.a31318","wires":[["72f4c09e.079ae"]]},{"id":"72f4c09e.079ae","type":"outcomeFalse","name":"false","xml":"<outcome value='false'>\n","comments":"","outputs":1,"x":1235.976173400879,"y":2070.3089113235474,"z":"e4baa5a8.a31318","wires":[["677921a6.61315"]]},{"id":"677921a6.61315","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=\"`'ECOMP generated naming is not Y for VFC customization UUID ' + $db.vf-module-to-vfc-mapping[$db-vm-index].vfc_customization_uuid`\" />\n","comments":"","x":1382.6429138183594,"y":2069.6423664093018,"z":"e4baa5a8.a31318","wires":[]},{"id":"f8d62ff8.4b7f3","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1494.3097381591797,"y":4622.975073814392,"z":"e4baa5a8.a31318","wires":[["9399828b.9d988"]]},{"id":"4f27d06f.de235","type":"comment","name":"Not a failure","info":"","comments":"","x":1817.6427917480469,"y":4621.308896064758,"z":"e4baa5a8.a31318","wires":[]},{"id":"9399828b.9d988","type":"record","name":"record","xml":"<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder\">\n<parameter name=\"logger\" value=\"message-log\"/>\n<parameter name=\"field1\" value=\"__TIMESTAMP__\"/>\n<parameter name=\"field2\" value=\"GENERIC-RESOURCE-API.vf-module-topology-operation-assign:REQID\"/>\n<parameter name=\"field3\" value=\"`$vf-module-topology-operation-input.sdnc-request-header.svc-request-id`\"/>\n<parameter name=\"field4\" value=\"Failed to insert VIPR_CONFIGURATION record\"/>\n","comments":"","outputs":1,"x":1640.3096733093262,"y":4622.975707054138,"z":"e4baa5a8.a31318","wires":[[]]},{"id":"5ad6102c.c24c4","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":887.642879486084,"y":4647.975566864014,"z":"e4baa5a8.a31318","wires":[["d3772815.3ee328","87d443e8.e1d8d"]]},{"id":"d3772815.3ee328","type":"delete","name":"delete any pre-existing records in VIPR_CONFIGURATION","xml":"<delete plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n  key='DELETE from VIPR_CONFIGURATION WHERE vnf_id = $service-data.vnfs.vnf[$vnf-index].vnf-id\n     AND ecomp_service_instance_id = $service-data.service-information.service-instance-id\n     AND vm_name = $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-names.vm-name[$vm-index]' >","comments":"","outputs":1,"x":1200.976203918457,"y":4623.309706687927,"z":"e4baa5a8.a31318","wires":[["f8d62ff8.4b7f3"]]},{"id":"5ded3d38.0d3994","type":"update","name":"update EIPAM_IP_ASSIGNMENTS to PENDING_DELETE...","xml":"<update plugin=\"org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource\" resource=\"SQL\"\nkey=\"UPDATE EIPAM_IP_ASSIGNMENTS set status = $tmp.status WHERE info = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-topology-identifier.vf-module-id\" >","comments":"","outputs":1,"x":2907.6429481506348,"y":4259.64261007309,"z":"e4baa5a8.a31318","wires":[["da3d0ab5.9d7b78"]]},{"id":"e1b11e58.18b71","type":"set","name":"set status variable","xml":"<set>\n<parameter name='tmp.status' value=\"`'PENDING_DELETE_' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-topology-identifier.vf-module-id`\" />\n","comments":"","x":2777.642910003662,"y":4212.9759821891785,"z":"e4baa5a8.a31318","wires":[]},{"id":"da3d0ab5.9d7b78","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":3212.6428565979004,"y":4257.97590970993,"z":"e4baa5a8.a31318","wires":[["9eddaf67.b6c3a"]]},{"id":"9eddaf67.b6c3a","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 updating EIPAM_IP_ASSIGNMENTS table on rollback\" />\n","comments":"","x":3402.6428833007812,"y":4257.785645008087,"z":"e4baa5a8.a31318","wires":[]},{"id":"1f0f2297.a80cad","type":"execute","name":"execute EIPAM unassign IP addresses","xml":"<execute plugin=\"com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin\" method=\"unassignIPAddress\">\n<parameter name=\"deleteEIPAM_status\" value=\"`$tmp.status`\" />\n","comments":"","outputs":1,"x":2842.6429176330566,"y":4304.642653942108,"z":"e4baa5a8.a31318","wires":[["764dc213.434fec"]]},{"id":"764dc213.434fec","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":3079.309543609619,"y":4304.642596721649,"z":"e4baa5a8.a31318","wires":[["d9d39111.ef82b"]]},{"id":"d9d39111.ef82b","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 in EIPAM unassign IP address on rollback\" />\n","comments":"","x":3269.3095703125,"y":4304.452332019806,"z":"e4baa5a8.a31318","wires":[]},{"id":"3972c7d8.e4e1b8","type":"comment","name":"roll back EIPAM","info":"","comments":"","x":2752.6429481506348,"y":4159.642935593923,"z":"e4baa5a8.a31318","wires":[]},{"id":"663bcdf3.7476b4","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":2584.3095741271973,"y":4262.97610616684,"z":"e4baa5a8.a31318","wires":[["e1b11e58.18b71","5ded3d38.0d3994","1f0f2297.a80cad"]]},{"id":"383193dd.97ea3c","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":852.6428985595703,"y":4355.975544929504,"z":"e4baa5a8.a31318","wires":[["4c9452bf.c4605c","f9222e19.45f49"]]},{"id":"bcf4c9e0.38f9c8","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":857.6428375244141,"y":4418.641888618469,"z":"e4baa5a8.a31318","wires":[["d2a1fc69.961af","f9222e19.45f49"]]},{"id":"be7ce494.4af018","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1377.6428146362305,"y":4478.641909599304,"z":"e4baa5a8.a31318","wires":[["fcd02140.3442a","f9222e19.45f49"]]},{"id":"1b7e23d5.510b0c","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1372.642734527588,"y":4556.641750335693,"z":"e4baa5a8.a31318","wires":[["b89ddb3d.45f568","f9222e19.45f49"]]},{"id":"45ef9bd1.40c894","type":"set","name":"set vf-module-to-vfc-mapping length to 0","xml":"<set>\n<parameter name='db.vf-module-to-vfc-mapping_length' value='0' />\n","comments":"","x":1151.500099182129,"y":1904.9280138015747,"z":"e4baa5a8.a31318","wires":[]},{"id":"d5efedb2.7d60c","type":"set","name":"set vfc-to-network-role-mapping length to 0","xml":"<set>\n<parameter name='db.vfc-to-network-role-mapping_length' value='0' />\n","comments":"","x":1604.7857818603516,"y":2383.9280395507812,"z":"e4baa5a8.a31318","wires":[]},{"id":"4646e366.6582ec","type":"switchNode","name":"switch plans-index > 0","xml":"<switch test='`$plans-index &gt; 0`'>\n","comments":"","outputs":1,"x":540.5000762939453,"y":4135.356512069702,"z":"e4baa5a8.a31318","wires":[["aa74ce89.4fd3e"]]},{"id":"aa74ce89.4fd3e","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":723.3572158813477,"y":4135.356721878052,"z":"e4baa5a8.a31318","wires":[["77ad7e3d.8e3ec"]]},{"id":"f9222e19.45f49","type":"switchNode","name":"switch plans-index > 0","xml":"<switch test='`$plans-index &gt; 0`'>\n","comments":"","outputs":1,"x":2231.6665000915527,"y":4262.261742115021,"z":"e4baa5a8.a31318","wires":[["2a6bae2e.123432"]]},{"id":"2a6bae2e.123432","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2414.523639678955,"y":4262.26195192337,"z":"e4baa5a8.a31318","wires":[["663bcdf3.7476b4"]]},{"id":"fc1913b.4d832f","type":"set","name":"set service-type","xml":"<set>\n<parameter name='service-data.service-information.service-type' value='`$service-data.service-information.subscription-service-type`' />\n","comments":"EIPAM plug-in needs this attribute set with this name","x":520.6666145324707,"y":4088.92791557312,"z":"e4baa5a8.a31318","wires":[]}]
+[{"id":"12243e05.ed25c2","type":"dgstart","name":"DGSTART","outputs":1,"x":180,"y":156,"z":"f8904431.05f2f","wires":[["f4d1c0a3.d5f31"]]},{"id":"f4d1c0a3.d5f31","type":"service-logic","name":"GENERIC-RESOURCE-API 1.2.0-SNAPSHOT-INT110901","module":"GENERIC-RESOURCE-API","version":"${project.version}","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='1.2.0-SNAPSHOT-INT110901'>","outputs":1,"x":293.8571357727051,"y":195.80953788757324,"z":"f8904431.05f2f","wires":[["ecc152a5.bf1108"]]},{"id":"ecc152a5.bf1108","type":"method","name":"method vf-module-topology-operation-assign","xml":"<method rpc='vf-module-topology-operation-assign' mode='sync'>\n","comments":"","outputs":1,"x":293.42862701416016,"y":236,"z":"f8904431.05f2f","wires":[["5dc10cee.56be04"]]},{"id":"47ff7743.1d3758","type":"comment","name":"vf-module-topology-operation-assign","info":"","comments":"","x":585.3210983276367,"y":98.97569942474365,"z":"f8904431.05f2f","wires":[]},{"id":"a9aec9fd.79ae2","type":"switchNode","name":"switch request-action","xml":"<switch test='`$vf-module-topology-operation-input.request-information.request-action`'>\n","comments":"","outputs":1,"x":585.1905097961426,"y":411.52382230758667,"z":"f8904431.05f2f","wires":[["4c9e7.644f9e198","5a30603c.26735"]]},{"id":"4c9e7.644f9e198","type":"outcome","name":"CreateVfModuleInstance","xml":"<outcome value='CreateVfModuleInstance'>\n","comments":"","outputs":1,"x":847.2381248474121,"y":388.66670846939087,"z":"f8904431.05f2f","wires":[["55a8bac7.4c771c"]]},{"id":"5a30603c.26735","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":790.9047698974609,"y":434.0476975440979,"z":"f8904431.05f2f","wires":[["1744d698.e97981"]]},{"id":"55a8bac7.4c771c","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":1037.0952892303467,"y":388.6667399406433,"z":"f8904431.05f2f","wires":[[]]},{"id":"1744d698.e97981","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=\"If svc-action is 'assign' then request-action must be 'CreateVfModuleInstance'\" />\n","comments":"","x":1055.9047775268555,"y":434.381010055542,"z":"f8904431.05f2f","wires":[]},{"id":"b014fa38.34005","type":"get-resource","name":"get-resource VF_MODULE_MODEL","xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n  key='SELECT * from VF_MODULE_MODEL WHERE customization_uuid = $vf-module-topology-operation-input.vf-module-information.onap-model-information.model-customization-uuid'\n  pfx='db.vf-module-model'>\n\n","comments":"","outputs":1,"x":632.5237770080566,"y":502.66677236557007,"z":"f8904431.05f2f","wires":[["d8a8a29a.dca6","fc3f7599.66aaa"]]},{"id":"6e4f251b.17feac","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=\"`'No model found for VF module customization UUID ' + $vf-module-topology-operation-input.vf-module-information.onap-model-information.model-customization-uuid`\" />\n","comments":"","x":1073.9521980285645,"y":527.095244884491,"z":"f8904431.05f2f","wires":[]},{"id":"d8a8a29a.dca6","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":898.3094673156738,"y":483.0476031303406,"z":"f8904431.05f2f","wires":[["d7058096.cb5ff8"]]},{"id":"fc3f7599.66aaa","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":906.8808975219727,"y":527.3333163261414,"z":"f8904431.05f2f","wires":[["6e4f251b.17feac"]]},{"id":"d7058096.cb5ff8","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 reading VF_MODULE_MODEL table\" />\n","comments":"","x":1073.309398651123,"y":482.1905035972595,"z":"f8904431.05f2f","wires":[]},{"id":"b6f87a0.8006308","type":"switchNode","name":"switch service-data.vnfs.vnf_length","xml":"<switch test='`$service-data.vnfs.vnf_length`'>\n","comments":"","outputs":1,"x":627.6190414428711,"y":711.2381076812744,"z":"f8904431.05f2f","wires":[["7977778d.f4d74","9eec2ef4.0932c"]]},{"id":"7977778d.f4d74","type":"other","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":868.3333129882812,"y":688.3808479309082,"z":"f8904431.05f2f","wires":[["4732f893.59306"]]},{"id":"9eec2ef4.0932c","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":868.0951538085938,"y":729.333366394043,"z":"f8904431.05f2f","wires":[["6543ed07.361724"]]},{"id":"5dc10cee.56be04","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":234.99999237060547,"y":2405.9999599456787,"z":"f8904431.05f2f","wires":[["a9aec9fd.79ae2","b014fa38.34005","b6f87a0.8006308","24e6e61f.52f7fa","7278a5e5.34e4f4","481dcc0c.9eb044","f6138bf2.ad3c6","89532254.85a3d","1da89156.4d35c7","151894a2.272003","e9bf6c4c.c2ad2","1a344df3.fb7732","10188387.f28a2c","f8e58eca.5e5f5","ba9e655a.f1c4b","5ae5f387.50fd1c","cc25cb3a.593158","7de279db.be985","4cdc88c9.fda938","7d69c3ef.ea745c","39b8e65e.59c272","68e43af5.2c64a4","4f8e7534.cb8654","8874b3a6.20a57","3e4ceafe.888eee","11cfee21.5bdd6a","963118a6.12b53","967fc1c3.a568d","5bb2dea5.0b2c88","a1eb3f2f.dc5878","906d177a.23b878","35ae3c29.62e11c","12c538f6.bac537","d14590e1.bb8fd8","a8e24495.e3fae8","5037a7b6.fac458","7b68cee5.5f8108","2eeff3c5.141784","59c6a4fd.868b5c"]]},{"id":"4732f893.59306","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=\"There are no VNFs defined in MD-SAL\" />\n","comments":"","x":1034.999927520752,"y":687.6666030883789,"z":"f8904431.05f2f","wires":[]},{"id":"6543ed07.361724","type":"for","name":"for each vnf","xml":"<for index='idx' start='0' end='`$service-data.vnfs.vnf_length`' >\n","comments":"","outputs":1,"x":1030.3332977294922,"y":728.9999847412109,"z":"f8904431.05f2f","wires":[["d609b408.53f7e"]]},{"id":"d609b408.53f7e","type":"switchNode","name":"switch service data vnf == input vnf","xml":"<switch test='`$service-data.vnfs.vnf[$idx].vnf-id == $vf-module-topology-operation-input.vnf-information.vnf-id`'>\n","comments":"","outputs":1,"x":1281.6665153503418,"y":728.6666717529297,"z":"f8904431.05f2f","wires":[["f5c75729.f841c"]]},{"id":"f5c75729.f841c","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1511.6666069030762,"y":728.0000257492065,"z":"f8904431.05f2f","wires":[["cfa27455.96cc6"]]},{"id":"24e6e61f.52f7fa","type":"set","name":"set vnf-index to -1","xml":"<set>\n<parameter name='vnf-index' value='-1' />\n","comments":"","x":576.6666641235352,"y":642.6666069030762,"z":"f8904431.05f2f","wires":[]},{"id":"a60d7530.735ec","type":"set","name":"set vnf-index to idx","xml":"<set>\n<parameter name='vnf-index' value='`$idx`' />\n","comments":"","x":1833.3332443237305,"y":698.9999837875366,"z":"f8904431.05f2f","wires":[]},{"id":"7278a5e5.34e4f4","type":"switchNode","name":"switch vnf-index","xml":"<switch test='`$vnf-index`'>\n","comments":"","outputs":1,"x":566.6666717529297,"y":779.3333034515381,"z":"f8904431.05f2f","wires":[["5331991b.bd2008"]]},{"id":"5331991b.bd2008","type":"outcome","name":"-1","xml":"<outcome value='-1'>\n","comments":"","outputs":1,"x":745.000057220459,"y":778.6666793823242,"z":"f8904431.05f2f","wires":[["3036e668.82ac5a"]]},{"id":"3036e668.82ac5a","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=\"`'Unable to find VNF ID ' + $vf-module-topology-operation-input.vnf-information.vnf-id + ' in MD-SAL'`\" />\n","comments":"","x":904.9999656677246,"y":777.9999828338623,"z":"f8904431.05f2f","wires":[]},{"id":"481dcc0c.9eb044","type":"switchNode","name":"switch vnf order status","xml":"<switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status`'>\n","comments":"","outputs":1,"x":589.6666946411133,"y":850.6667003631592,"z":"f8904431.05f2f","wires":[["39b8b432.a234f4","bf0bae35.6f47a8"]]},{"id":"39b8b432.a234f4","type":"outcome","name":"Created","xml":"<outcome value='Created'>\n","comments":"","outputs":1,"x":789.9999961853027,"y":824.3332843780518,"z":"f8904431.05f2f","wires":[["e236fa58.6c4788"]]},{"id":"e236fa58.6c4788","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":930.0000076293945,"y":824.3333263397217,"z":"f8904431.05f2f","wires":[[]]},{"id":"bf0bae35.6f47a8","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":786.666633605957,"y":865.9999618530273,"z":"f8904431.05f2f","wires":[["af20908b.808098"]]},{"id":"af20908b.808098","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=\"`'VNF order status is ' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status + ' but should be Created'`\" />\n","comments":"","x":946.666633605957,"y":865.6666488647461,"z":"f8904431.05f2f","wires":[]},{"id":"f6138bf2.ad3c6","type":"switchNode","name":"switch vf-module_length","xml":"<switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module_length`'>\n","comments":"","outputs":1,"x":593.333381652832,"y":942.6666212081909,"z":"f8904431.05f2f","wires":[["1318f7e3.2c3b78","ff070cf6.bcaf48"]]},{"id":"1318f7e3.2c3b78","type":"other","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":850.7143363952637,"y":909.8093948364258,"z":"f8904431.05f2f","wires":[["43239df.8b3b464"]]},{"id":"43239df.8b3b464","type":"set","name":"set vf-module-index=0","xml":"<set>\n<parameter name='vf-module-index' value='0' />\n","comments":"","x":1038.3333740234375,"y":910.4761695861816,"z":"f8904431.05f2f","wires":[]},{"id":"ff070cf6.bcaf48","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":851.142879486084,"y":974.0952529907227,"z":"f8904431.05f2f","wires":[["94f25564.ea25b"]]},{"id":"a8559d0.6b0afe","type":"set","name":"set vf-module-index = vf-module_length","xml":"<set>\n<parameter name='vf-module-index' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module_length`' />\n","comments":"","x":1236.3334197998047,"y":954.2856483459473,"z":"f8904431.05f2f","wires":[]},{"id":"78cc068f.8dd908","type":"for","name":"for each existing VF module","xml":"<for index='idx' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module_length`' >\n","comments":"","outputs":1,"x":1195.4285125732422,"y":998.3808784484863,"z":"f8904431.05f2f","wires":[["5458826e.777394"]]},{"id":"94f25564.ea25b","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":987.8571586608887,"y":974.095178604126,"z":"f8904431.05f2f","wires":[["a8559d0.6b0afe","78cc068f.8dd908"]]},{"id":"5458826e.777394","type":"switchNode","name":"switch vf-module-information.vf-module-id == service-data.vnfs.vnf[].vf-modules.vf-module[].vf-module-id","xml":"<switch test='`$vf-module-topology-operation-input.vf-module-information.vf-module-id == $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$idx].vf-module-id`'>\n","comments":"","outputs":1,"x":1699.0476150512695,"y":997.9522895812988,"z":"f8904431.05f2f","wires":[["f26b82bf.e977d"]]},{"id":"f26b82bf.e977d","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2141.666664123535,"y":997.5237407684326,"z":"f8904431.05f2f","wires":[["668a01c2.f5b0e"]]},{"id":"668a01c2.f5b0e","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=\"`'VF module id ' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$idx].vf-module-id\n       + ' already exists, and status is ' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$idx].vf-module-data.vf-module-level-oper-status.order-status`\" />\n","comments":"","x":2293.571544647217,"y":997.5237274169922,"z":"f8904431.05f2f","wires":[]},{"id":"d3664b37.8af908","type":"comment","name":"make sure this VF module doesn't exist already","info":"","comments":"","x":1725.4999618530273,"y":952.5797815322876,"z":"f8904431.05f2f","wires":[]},{"id":"89532254.85a3d","type":"set","name":"set new vf-module_length","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module_length' value='`$vf-module-index + 1`' />\n","comments":"","x":598.3333206176758,"y":1037.666555404663,"z":"f8904431.05f2f","wires":[]},{"id":"1da89156.4d35c7","type":"set","name":"set vf-module-topology data","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-topology-identifier.vf-module-id' value='`$vf-module-topology-operation-input.vf-module-information.vf-module-id`' />\n<parameter name='tmp.vf-module-topology.vf-module-topology-identifier.vf-module-name' value='`$vf-module-topology-operation-input.vf-module-request-input.vf-module-name`' />\n<parameter name='tmp.vf-module-topology.vf-module-topology-identifier.vf-module-type' value='`$vf-module-topology-operation-input.vf-module-information.vf-module-type`' />\n<parameter name='tmp.vf-module-topology.tenant' value='`$vf-module-topology-operation-input.vf-module-request-input.tenant`' />\n<parameter name='tmp.vf-module-topology.aic-cloud-region' value='`$vf-module-topology-operation-input.vf-module-request-input.aic-cloud-region`' />\n","comments":"","x":604.8333396911621,"y":1150.1666622161865,"z":"f8904431.05f2f","wires":[]},{"id":"6a5ff544.353914","type":"set","name":"set aic-clli","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.aic-clli'\n   value='`$aai-uid-split[$aai-uid-split_length - 1]`' />\n","comments":"","x":1365.7855987548828,"y":1309.4045886993408,"z":"f8904431.05f2f","wires":[]},{"id":"151894a2.272003","type":"switchNode","name":"switch aic-clli","xml":"<switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.aic-clli`'>\n","comments":"","outputs":1,"x":564.8332595825195,"y":1423.3569288253784,"z":"f8904431.05f2f","wires":[["14c1e6e4.234661"]]},{"id":"14c1e6e4.234661","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":710.1189498901367,"y":1423.3569974899292,"z":"f8904431.05f2f","wires":[["ceed69fe.c2602"]]},{"id":"ceed69fe.c2602","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=\"`'Unable to find aic-clli in AAI for aic-cloud-region ' + $vf-module-topology-operation-input.vf-module-request-input.aic-cloud-region`\" />\n","comments":"","x":857.2618103027344,"y":1422.9284315109253,"z":"f8904431.05f2f","wires":[]},{"id":"e9bf6c4c.c2ad2","type":"get-resource","name":"get-resource cloud region","xml":"<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"cloud-region\" \n\t\tkey=\"cloud-region.cloud-owner = 'CloudOwner' AND \n\t\t     cloud-region.cloud-region-id = $vf-module-topology-operation-input.vf-module-request-input.aic-cloud-region\"\n        pfx='aai.cloud-region' local-only='false' >\n\n","comments":"","outputs":1,"x":603.6904754638672,"y":1223.5002002716064,"z":"f8904431.05f2f","wires":[["ecd445cc.ed455","17cd4cca.f319ab"]]},{"id":"17cd4cca.f319ab","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":817.9366683959961,"y":1241.6510562896729,"z":"f8904431.05f2f","wires":[["76a6aa7c.a50c54"]]},{"id":"76a6aa7c.a50c54","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 retrieving cloud region from AAI\" />\n","comments":"","x":992.9366416931152,"y":1241.6510925292969,"z":"f8904431.05f2f","wires":[]},{"id":"ecd445cc.ed455","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":826.8652648925781,"y":1199.9367895126343,"z":"f8904431.05f2f","wires":[["af0ea542.fcdfb"]]},{"id":"af0ea542.fcdfb","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=\"Cloud region not found in AAI\" />\n","comments":"","x":993.214542388916,"y":1199.2423667907715,"z":"f8904431.05f2f","wires":[]},{"id":"1a344df3.fb7732","type":"set","name":"set vf-module-parameters","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-parameters.'\n  value='vf-module-topology-operation-input.vf-module-request-input.vf-module-input-parameters.' />\n","comments":"","x":600.595287322998,"y":1872.7860202789307,"z":"f8904431.05f2f","wires":[]},{"id":"10188387.f28a2c","type":"set","name":"set order-status to PendingCreate","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-level-oper-status.order-status'\n  value='PendingCreate' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-level-oper-status.last-rpc-action'\n  value='`$vf-module-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-level-oper-status.last-action'\n  value='`$vf-module-topology-operation-input.sdnc-request-header.request-action`' />\n","comments":"","x":616.2262573242188,"y":5074.3927001953125,"z":"f8904431.05f2f","wires":[]},{"id":"f8e58eca.5e5f5","type":"get-resource","name":"get-resource VF_MODULE_TO_VFC_MAPPING","xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n  key='SELECT * from VF_MODULE_TO_VFC_MAPPING WHERE vf_module_customization_uuid = $vf-module-topology-operation-input.vf-module-information.onap-model-information.model-customization-uuid'\n  pfx='db.vf-module-to-vfc-mapping[]'>\n\n","comments":"","outputs":1,"x":673.9286880493164,"y":1926.642807006836,"z":"f8904431.05f2f","wires":[["247fcc32.9a9bd4","9124fe48.9bbde8"]]},{"id":"247fcc32.9a9bd4","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":939.7143783569336,"y":1907.0236377716064,"z":"f8904431.05f2f","wires":[["56d416c7.7f36e8"]]},{"id":"9124fe48.9bbde8","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":948.2858085632324,"y":1951.3093509674072,"z":"f8904431.05f2f","wires":[["df2d8da2.dbcdf8"]]},{"id":"56d416c7.7f36e8","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 reading VF_MODULE_TO_VFC_MAPPING table\" />\n","comments":"","x":1114.7143096923828,"y":1906.1665382385254,"z":"f8904431.05f2f","wires":[]},{"id":"ba9e655a.f1c4b","type":"for","name":"for each vm-type","xml":"<for index='vm-type-index' start='0' end='`$db.vf-module-to-vfc-mapping_length`' >\n","comments":"","outputs":1,"x":574.0476989746094,"y":2555.6430587768555,"z":"f8904431.05f2f","wires":[["950909dc.f398e"]]},{"id":"d06d02b2.30a36","type":"get-resource","name":"get-resource VFC_MODEL","xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n  key='SELECT * from VFC_MODEL WHERE customization_uuid = $db.vf-module-to-vfc-mapping[$vm-type-index].vfc-customization-uuid'\n  pfx='db.vfc-model'>\n\n","comments":"","outputs":1,"x":1015.9524993896484,"y":2047.5477199554443,"z":"f8904431.05f2f","wires":[["938189de.c5b208","b5e173da.7ef71"]]},{"id":"8bd622e3.ce6678","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=\"`'No entries found in VFC_MODEL table for customization UUID ' + $db.vf-module-to-vfc-mapping[$db-vm-index].vfc_customization_uuid`\" />\n","comments":"","x":1386.3808479309082,"y":2071.9761123657227,"z":"f8904431.05f2f","wires":[]},{"id":"938189de.c5b208","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1211.7381172180176,"y":2027.9284706115723,"z":"f8904431.05f2f","wires":[["1617d876.a17a8"]]},{"id":"b5e173da.7ef71","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":1220.3095474243164,"y":2072.214183807373,"z":"f8904431.05f2f","wires":[["8bd622e3.ce6678"]]},{"id":"1617d876.a17a8","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 reading VFC_MODEL table\" />\n","comments":"","x":1386.7380485534668,"y":2027.0713710784912,"z":"f8904431.05f2f","wires":[]},{"id":"950909dc.f398e","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":765.9524917602539,"y":2554.214427947998,"z":"f8904431.05f2f","wires":[["d06d02b2.30a36","b5c40074.82e0d","fbc75453.b46c","73181335.0de15c","4dd055d9.8e989c","bc5f9ee9.0fd05","9011598e.17006","6ce4d19f.10b0a8"]]},{"id":"39b8e65e.59c272","type":"set","name":"set vm_length","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm_length'\n  value='`$db.vf-module-to-vfc-mapping_length`' />\n","comments":"","x":565.833366394043,"y":1986.8334846496582,"z":"f8904431.05f2f","wires":[]},{"id":"b5c40074.82e0d","type":"set","name":"set vm data","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-type'\n   value='`$db.vf-module-to-vfc-mapping[$vm-type-index].vm-type`' />\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].nfc-naming-code'\n   value='`$db.vfc-model.nfc-naming-code`' />\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-type-tag'\n   value='`$db.vfc-model.vm-type-tag`' />\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-count'\n   value='`$db.vf-module-to-vfc-mapping[$vm-type-index].vm-count`' />\n","comments":"","x":966.6667518615723,"y":2173.5001974105835,"z":"f8904431.05f2f","wires":[]},{"id":"cfa27455.96cc6","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":1660.0000686645508,"y":726.9197244644165,"z":"f8904431.05f2f","wires":[["a60d7530.735ec","55e8eb76.280234"]]},{"id":"55e8eb76.280234","type":"break","name":"break","xml":"<break>","comments":"","x":1795.0000343322754,"y":748.5863103866577,"z":"f8904431.05f2f","wires":[]},{"id":"f221ff2f.d06b18","type":"set","name":"set from DB","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-invariant-uuid'\n  value='`$db.vf-module-model.invariant-uuid`' />\n","comments":"","x":979.1665992736816,"y":1464.7529220581055,"z":"f8904431.05f2f","wires":[]},{"id":"5ae5f387.50fd1c","type":"switchNode","name":"switch input model-invariant-uuid","xml":"<switch test='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-invariant-uuid`'>\n","comments":"","outputs":1,"x":623.0236740112305,"y":1487.5773658752441,"z":"f8904431.05f2f","wires":[["1035d5e4.cd8b32","f407cbb5.44e8"]]},{"id":"1035d5e4.cd8b32","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":828.6903457641602,"y":1464.720329284668,"z":"f8904431.05f2f","wires":[["f221ff2f.d06b18"]]},{"id":"f407cbb5.44e8","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":830.1189422607422,"y":1509.0059204101562,"z":"f8904431.05f2f","wires":[["d4f06b62.dec4d8"]]},{"id":"d4f06b62.dec4d8","type":"set","name":"set from input","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-invariant-uuid'\n  value='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-invariant-uuid`' />\n","comments":"","x":984.4046783447266,"y":1508.4344925880432,"z":"f8904431.05f2f","wires":[]},{"id":"4d6c6445.cbfb0c","type":"set","name":"set from DB","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-uuid'\n  value='`$db.vf-module-model.uuid`' />\n","comments":"","x":980.1188697814941,"y":1553.2915983200073,"z":"f8904431.05f2f","wires":[]},{"id":"cc25cb3a.593158","type":"switchNode","name":"switch input model-uuid","xml":"<switch test='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-uuid`'>\n","comments":"","outputs":1,"x":595.642692565918,"y":1576.1161031723022,"z":"f8904431.05f2f","wires":[["61999de9.848754","40fec6c5.51d25"]]},{"id":"61999de9.848754","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":829.6426658630371,"y":1553.2590351104736,"z":"f8904431.05f2f","wires":[["4d6c6445.cbfb0c"]]},{"id":"40fec6c5.51d25","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":831.0712623596191,"y":1597.544626235962,"z":"f8904431.05f2f","wires":[["72a3de3c.82b428"]]},{"id":"72a3de3c.82b428","type":"set","name":"set from input","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-uuid'\n  value='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-uuid`' />\n","comments":"","x":985.3569984436035,"y":1596.9731984138489,"z":"f8904431.05f2f","wires":[]},{"id":"d38265bc.c7d2e","type":"set","name":"set from DB","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-version'\n  value='`$db.vf-module-model.version`' />\n","comments":"","x":977.2618026733398,"y":1642.1488056182861,"z":"f8904431.05f2f","wires":[]},{"id":"7de279db.be985","type":"switchNode","name":"switch input model-version","xml":"<switch test='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-version`'>\n","comments":"","outputs":1,"x":603.7855644226074,"y":1664.9732503890991,"z":"f8904431.05f2f","wires":[["cb5b83ed.84b72","3b3ee487.9fb894"]]},{"id":"cb5b83ed.84b72","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":826.7855491638184,"y":1642.1162128448486,"z":"f8904431.05f2f","wires":[["d38265bc.c7d2e"]]},{"id":"3b3ee487.9fb894","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":828.2141456604004,"y":1686.401803970337,"z":"f8904431.05f2f","wires":[["7480785e.ac0d48"]]},{"id":"7480785e.ac0d48","type":"set","name":"set from input","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-version'\n  value='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-version`' />\n","comments":"","x":982.4998817443848,"y":1685.8303761482239,"z":"f8904431.05f2f","wires":[]},{"id":"f42c83c8.41e91","type":"set","name":"set from DB","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-name'\n  value='`$db.vf-module-model.name`' />\n","comments":"","x":977.2618026733398,"y":1729.2916278839111,"z":"f8904431.05f2f","wires":[]},{"id":"4cdc88c9.fda938","type":"switchNode","name":"switch input model-name","xml":"<switch test='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-name`'>\n","comments":"","outputs":1,"x":598.7855644226074,"y":1752.1160726547241,"z":"f8904431.05f2f","wires":[["32343a44.73d23e","77ae4ba9.070c4c"]]},{"id":"32343a44.73d23e","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":826.7855491638184,"y":1729.2590351104736,"z":"f8904431.05f2f","wires":[["f42c83c8.41e91"]]},{"id":"77ae4ba9.070c4c","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":828.2141456604004,"y":1773.544626235962,"z":"f8904431.05f2f","wires":[["225fdcbf.3f84cc"]]},{"id":"225fdcbf.3f84cc","type":"set","name":"set from input","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-name'\n  value='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-name`' />\n","comments":"","x":982.4998817443848,"y":1772.9731984138489,"z":"f8904431.05f2f","wires":[]},{"id":"7d69c3ef.ea745c","type":"set","name":"set model-customization-uuid","xml":"<set>\n<parameter name='tmp.vf-module-topology.onap-model-information.model-customization-uuid'\n  value='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-customization-uuid`' />\n","comments":"","x":613.2378997802734,"y":1824.6250619888306,"z":"f8904431.05f2f","wires":[]},{"id":"fbc75453.b46c","type":"for","name":"for each vm","xml":"<for index='vm-index' start='0' end='`$db.vf-module-to-vfc-mapping[$vm-type-index].vm-count`' >\n","comments":"","outputs":1,"x":968.3332405090332,"y":2282.7531156539917,"z":"f8904431.05f2f","wires":[["2ebd5ed6.df5f82"]]},{"id":"73181335.0de15c","type":"set","name":"set vm-name-length","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-names.vm-name_length'\n  value='`$db.vf-module-to-vfc-mapping[$vm-type-index].vm-count`' />\n","comments":"","x":991.6666946411133,"y":2217.753373146057,"z":"f8904431.05f2f","wires":[]},{"id":"31921ee1.b71012","type":"call","name":"call GENERIC-RESOURCE-API:generate-unique-name","xml":"<call module='GENERIC-RESOURCE-API' rpc='generate-unique-name' mode='sync' >\n","comments":"","outputs":1,"x":1434.761863708496,"y":2305.3722620010376,"z":"f8904431.05f2f","wires":[["a91ba6cc.cf06b","c6543c94.b350d8"]]},{"id":"a91ba6cc.cf06b","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1730.4761517842617,"y":2278.2295246124268,"z":"f8904431.05f2f","wires":[["876240e8.cdb2d8"]]},{"id":"c6543c94.b350d8","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":1733.8095016479492,"y":2329.896167755127,"z":"f8904431.05f2f","wires":[["4879e3d7.d02fd4"]]},{"id":"c6fdac19.925758","type":"set","name":"set variables for generating unique name","xml":"<set>\n<parameter name='generate-unique-name-input.index-table-name' value='VM_NAME_INDEX' />\n<parameter name='generate-unique-name-input.index-table-prefix-column' value='vm_name_prefix' />\n<parameter name='generate-unique-name-input.name-table-type' value='VM_INSTANCE' />\n<parameter name='generate-unique-name-input.prefix' value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-name + $db.vfc-model.nfc-naming-code`\" />\n<parameter name='generate-unique-name-input.index-length' value='3' />\n","comments":"","x":1391.4285774230957,"y":2253.7055883407593,"z":"f8904431.05f2f","wires":[]},{"id":"4879e3d7.d02fd4","type":"set","name":"set generated name","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-names.vm-name[$vm-index]' value='`$generate-unique-name-output.generated-name`' />\n","comments":"","x":1918.3332176208496,"y":2329.3721857070923,"z":"f8904431.05f2f","wires":[]},{"id":"876240e8.cdb2d8","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=\"`$generate-unique-name-output.error-message`\" />\n","comments":"","x":1898.3332646687832,"y":2277.6580362319946,"z":"f8904431.05f2f","wires":[]},{"id":"68e43af5.2c64a4","type":"set","name":"set vf-module-id","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id'\n   value='`$vf-module-topology-operation-input.vf-module-information.vf-module-id`' />\n","comments":"","x":566.4285469055176,"y":1093.348237991333,"z":"f8904431.05f2f","wires":[]},{"id":"2ebd5ed6.df5f82","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1132.738182067871,"y":2282.396019935608,"z":"f8904431.05f2f","wires":[["c6fdac19.925758","31921ee1.b71012"]]},{"id":"4dd055d9.8e989c","type":"get-resource","name":"get-resource VFC_TO_NETWORK_ROLE_MAPPING","xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n  key='SELECT * from VFC_TO_NETWORK_ROLE_MAPPING WHERE vfc_customization_uuid = $db.vf-module-to-vfc-mapping[$vm-type-index].vfc-customization-uuid'\n  pfx='db.vfc-to-network-role-mapping[]'>\n\n","comments":"","outputs":1,"x":1095.595329284668,"y":2405.253088951111,"z":"f8904431.05f2f","wires":[["94c492f8.7c2af","2adabc76.4fb224"]]},{"id":"94c492f8.7c2af","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1382.8095321655273,"y":2385.6339359283447,"z":"f8904431.05f2f","wires":[["1fb058c9.841daf"]]},{"id":"2adabc76.4fb224","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":1391.3809623718262,"y":2429.9196491241455,"z":"f8904431.05f2f","wires":[["4bea2562.d69b54"]]},{"id":"1fb058c9.841daf","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 reading VFC_TO_NETWORK_ROLE_MAPPING table\" />\n","comments":"","x":1557.8094635009766,"y":2384.7768363952637,"z":"f8904431.05f2f","wires":[]},{"id":"bc5f9ee9.0fd05","type":"for","name":"for each network-role","xml":"<for index='network-role-index' start='0' end='`$db.vfc-to-network-role-mapping_length`' >\n","comments":"","outputs":1,"x":988.6906204223633,"y":2716.4439306259155,"z":"f8904431.05f2f","wires":[["1e6387b.5554df8"]]},{"id":"1e6387b.5554df8","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1195.1190719604492,"y":2713.11043548584,"z":"f8904431.05f2f","wires":[["d1147d40.681178","92a8ad60.071cb8","aca46669.1e6ba","9420dcc7.04e96","d934d530.947bd","341e9248.f1d036","d0faad95.8d7198","6716a3d8.3a7fbc"]]},{"id":"d1147d40.681178","type":"for","name":"for each network","xml":"<for silentFailure='true' index='idx' start='0' end='`$service-data.networks.network_length`' >\n","comments":"","outputs":1,"x":1404.166633605957,"y":2545.253191947937,"z":"f8904431.05f2f","wires":[["60ba540a.b45fac"]]},{"id":"92a8ad60.071cb8","type":"set","name":"set network-index to -1","xml":"<set>\n<parameter name='network-index' value='-1' />\n","comments":"","x":1424.1667022705078,"y":2502.396188735962,"z":"f8904431.05f2f","wires":[]},{"id":"60ba540a.b45fac","type":"switchNode","name":"switch network-role matches","xml":"<switch test='`$service-data.networks.network[$idx].network-data.network-topology.network-topology-identifier-structure.network-role == $db.vfc-to-network-role-mapping[$network-role-index].network-role`'>\n","comments":"","outputs":1,"x":1632.737907409668,"y":2543.824381828308,"z":"f8904431.05f2f","wires":[["dca543fd.ee8ed"]]},{"id":"dca543fd.ee8ed","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1831.3095741271973,"y":2543.824585914612,"z":"f8904431.05f2f","wires":[["76f5d83a.f656f"]]},{"id":"76f5d83a.f656f","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":1972.7381420135498,"y":2542.396014213562,"z":"f8904431.05f2f","wires":[["9e5316f1.1837c8","c2171d76.2b6c58"]]},{"id":"9e5316f1.1837c8","type":"set","name":"set network-index to idx","xml":"<set>\n<parameter name='network-index' value='`$idx`' />\n","comments":"","x":2151.30965423584,"y":2519.5390100479126,"z":"f8904431.05f2f","wires":[]},{"id":"c2171d76.2b6c58","type":"break","name":"break","xml":"<break>","comments":"","x":2099.8808937072754,"y":2565.2531900405884,"z":"f8904431.05f2f","wires":[]},{"id":"aca46669.1e6ba","type":"switchNode","name":"switch network-index","xml":"<switch test='`$network-index`'>\n","comments":"","outputs":1,"x":1416.0714721679688,"y":2594.062829017639,"z":"f8904431.05f2f","wires":[["97ca39a3.404448"]]},{"id":"97ca39a3.404448","type":"outcomeTrue","name":"-1","xml":"<outcome value='-1'>\n","comments":"","outputs":1,"x":1610.3571968078613,"y":2594.062726020813,"z":"f8904431.05f2f","wires":[["35daaecd.6386aa"]]},{"id":"35daaecd.6386aa","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=\"`'No network found in MD-SAL with network-role ' + $db.vfc-to-network-role-mapping[$network-role-index].network-role`\" />\n","comments":"","x":1767.5000457763672,"y":2592.634196281433,"z":"f8904431.05f2f","wires":[]},{"id":"4f8e7534.cb8654","type":"for","name":"for each cloud-region relationship","xml":"<for index='idx' start='0' end='`$aai.cloud-region.relationship-list.relationship_length`' >\n","comments":"","outputs":1,"x":625.9442901611328,"y":1312.0068836212158,"z":"f8904431.05f2f","wires":[["31c30feb.1c3cb8"]]},{"id":"31c30feb.1c3cb8","type":"switchNode","name":"switch related-to","xml":"<switch test='`$aai.cloud-region.relationship-list.relationship[$idx].related-to`'>\n","comments":"","outputs":1,"x":873.6228332519531,"y":1311.7568130493164,"z":"f8904431.05f2f","wires":[["63a06b9d.bc207c"]]},{"id":"63a06b9d.bc207c","type":"outcome","name":"complex","xml":"<outcome value='complex'>\n","comments":"","outputs":1,"x":1043.0871543884277,"y":1311.1496353149414,"z":"f8904431.05f2f","wires":[["8701746c.0d7be8"]]},{"id":"272ff117.caf41e","type":"execute","name":"split related-link","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>\n   <parameter name='ctx_memory_result_key' value='aai-uid-split' />\n   <parameter name='original_string' value='`$aai.cloud-region.relationship-list.relationship[$idx].related-link`' />\n   <parameter name='regex' value='/' />\n","comments":"","outputs":1,"x":1383.1823120117188,"y":1265.5782108306885,"z":"f8904431.05f2f","wires":[[]]},{"id":"8701746c.0d7be8","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1202.8490142822266,"y":1312.2449989318848,"z":"f8904431.05f2f","wires":[["272ff117.caf41e","e47ef4bc.fde6a","6a5ff544.353914"]]},{"id":"e47ef4bc.fde6a","type":"break","name":"break","xml":"<break>","comments":"","x":1352.848976135254,"y":1355.5782957077026,"z":"f8904431.05f2f","wires":[]},{"id":"9420dcc7.04e96","type":"set","name":"set network-role and tag","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-role'\n   value='`$db.vfc-to-network-role-mapping[$network-role-index].network-role`' />\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-role-tag'\n   value='`$db.vfc-to-network-role-mapping[$network-role-index].network-role-tag`' />\n","comments":"","x":1425.8333549499512,"y":2690.2530155181885,"z":"f8904431.05f2f","wires":[]},{"id":"9011598e.17006","type":"set","name":"set vm-network-length","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network_length'\n  value='`$db.vfc-to-network-role-mapping_length`' />\n","comments":"","x":982.4999465942383,"y":3105.2532806396484,"z":"f8904431.05f2f","wires":[]},{"id":"d934d530.947bd","type":"switchNode","name":"switch ipv4-ip-version","xml":"<switch test='`$db.vfc-to-network-role-mapping[$network-role-index].ipv4-ip-version`'>\n","comments":"","outputs":1,"x":1418.452407836914,"y":2773.5863428115845,"z":"f8904431.05f2f","wires":[["deebf497.c887","7d7fbd40.e8a4ac"]]},{"id":"f84a7a0.5dde088","type":"set","name":"set network-information-index to -1","xml":"<set>\n<parameter name='network-information-index' value='-1' />\n\n","comments":"","x":1827.97603225708,"y":2738.5864477157593,"z":"f8904431.05f2f","wires":[]},{"id":"deebf497.c887","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":1595.1189270019531,"y":2738.586483001709,"z":"f8904431.05f2f","wires":[["f84a7a0.5dde088"]]},{"id":"7d7fbd40.e8a4ac","type":"other","name":"4","xml":"<outcome value='4'>\n","comments":"","outputs":1,"x":1593.8808784484863,"y":2804.538625717163,"z":"f8904431.05f2f","wires":[["7300e5a4.7df534"]]},{"id":"50b64750.df1f68","type":"set","name":"set network-information-index to 0","xml":"<set>\n<parameter name='network-information-index' value='0' />\n","comments":"","x":1998.4521408081055,"y":2779.0624866485596,"z":"f8904431.05f2f","wires":[]},{"id":"7300e5a4.7df534","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1761.0713539123535,"y":2803.872091293335,"z":"f8904431.05f2f","wires":[["50b64750.df1f68","7a328931.d0302"]]},{"id":"7a328931.d0302","type":"set","name":"set ip-version 4, use-dhcp, and ip-count","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$network-information-index].ip-version'\n   value='4' />\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$network-information-index].use-dhcp'\n   value='`$db.vfc-to-network-role-mapping[$network-role-index].ipv4-use-dhcp`' />\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$network-information-index].ip-count'\n   value='`$db.vfc-to-network-role-mapping[$network-role-index].ipv4-count`' />\n","comments":"","x":2015.4047241210938,"y":2825.7294425964355,"z":"f8904431.05f2f","wires":[]},{"id":"341e9248.f1d036","type":"switchNode","name":"switch ipv6-ip-version","xml":"<switch test='`$db.vfc-to-network-role-mapping[$network-role-index].ipv6-ip-version`'>\n","comments":"","outputs":1,"x":1418.9286041259766,"y":2900.4911251068115,"z":"f8904431.05f2f","wires":[["917a1f23.5df0c","21565a52.dc3bee"]]},{"id":"917a1f23.5df0c","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":1597.7380981445312,"y":2870.728937149048,"z":"f8904431.05f2f","wires":[["30fff3e9.318f3c"]]},{"id":"21565a52.dc3bee","type":"other","name":"6","xml":"<outcome value='6'>\n","comments":"","outputs":1,"x":1599.1666526794434,"y":2935.0144939422607,"z":"f8904431.05f2f","wires":[["15c9a755.d62661"]]},{"id":"1ea53f76.1b51c1","type":"set","name":"increment network-information-index","xml":"<set>\n<parameter name='network-information-index' value='`$network-information-index + 1`' />\n","comments":"","x":2004.880744934082,"y":2909.5385236740112,"z":"f8904431.05f2f","wires":[]},{"id":"15c9a755.d62661","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1754.4048118591309,"y":2934.0622329711914,"z":"f8904431.05f2f","wires":[["1ea53f76.1b51c1","11903d81.fcc1aa"]]},{"id":"30fff3e9.318f3c","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":1740.404727935791,"y":2870.0625553131104,"z":"f8904431.05f2f","wires":[[]]},{"id":"d0faad95.8d7198","type":"switchNode","name":"switch network-information-index","xml":"<switch test='`$network-information-index`'>\n","comments":"","outputs":1,"x":1454.166618347168,"y":3036.919370651245,"z":"f8904431.05f2f","wires":[["8dd87e18.4728b8","8470b9d3.3688f8"]]},{"id":"8dd87e18.4728b8","type":"outcome","name":"-1","xml":"<outcome value='-1'>","comments":"","outputs":1,"x":1672.4999752044678,"y":3013.5861167907715,"z":"f8904431.05f2f","wires":[["f629d5e6.34d3a"]]},{"id":"8470b9d3.3688f8","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":1672.2619380950928,"y":3059.5384311676025,"z":"f8904431.05f2f","wires":[["4c260c2d.7b2034"]]},{"id":"f629d5e6.34d3a","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":1809.166690826416,"y":3011.919776916504,"z":"f8904431.05f2f","wires":[[]]},{"id":"4c260c2d.7b2034","type":"set","name":"set network-information-item_length","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item_length'\n   value='`$network-information-index + 1`' />\n","comments":"","x":1900.8333053588867,"y":3056.919569015503,"z":"f8904431.05f2f","wires":[]},{"id":"8874b3a6.20a57","type":"for","name":"for each vm-type","xml":"<for index='vm-type-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm_length`' >\n","comments":"","outputs":1,"x":581,"y":3203.9194660186768,"z":"f8904431.05f2f","wires":[["150c6134.582a07"]]},{"id":"150c6134.582a07","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":784.5715255737305,"y":3204.1576709747314,"z":"f8904431.05f2f","wires":[["a80f048a.626ed"]]},{"id":"6716a3d8.3a7fbc","type":"set","name":"save network-id","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-id'\n  value='`$service-data.networks.network[$idx].network-data.network-topology.network-topology-identifier-structure.network-id`' />\n","comments":"This isn't a node in MD-SAL, but we need to save this for later when we are doing EIPAM processing","x":1397.9761810302734,"y":2640.253023147583,"z":"f8904431.05f2f","wires":[]},{"id":"a80f048a.626ed","type":"for","name":"for each network-role","xml":"<for index='network-role-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network_length`' >\n","comments":"","outputs":1,"x":985.999885559082,"y":3203.252721786499,"z":"f8904431.05f2f","wires":[["24bbb455.36620c"]]},{"id":"24bbb455.36620c","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1187.9047012329102,"y":3202.490758895874,"z":"f8904431.05f2f","wires":[["846d0839.fe7848"]]},{"id":"846d0839.fe7848","type":"for","name":"for each network-information-item","xml":"<for index='ip-version-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item_length`' >\n","comments":"","outputs":1,"x":1432.6665725708008,"y":3202.0151510238647,"z":"f8904431.05f2f","wires":[["8c75b71c.328668"]]},{"id":"8aa98267.f34158","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":677.666633605957,"y":3407.9195766448975,"z":"f8904431.05f2f","wires":[["238e3171.365596","352f82b5.11fc76","82635d4d.019668","dd0c75b4.eae44","1e8f073b.6f05f9"]]},{"id":"238e3171.365596","type":"get-resource","name":"get-resource EIPAM_IP_SUBNETS","xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n  key='SELECT * from EIPAM_IP_SUBNETS WHERE network_id = $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-id\n    AND address_family = $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].ip-version'\n  pfx='db.eipam-ip-subnets[]'>\n\n","comments":"","outputs":1,"x":1057.6666564941406,"y":3369.586072921753,"z":"f8904431.05f2f","wires":[["6ca7b876.b272b","1ebe6c41.0f5554"]]},{"id":"ca9b8308.f4fc5","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=\"`'No entries found in EIPAM_IP_SUBNETS table for network ID '\n        + $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-id\n        + ' and address family ' + $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].ip-version`\" />\n","comments":"","x":1447.6665954589844,"y":3391.2528343200684,"z":"f8904431.05f2f","wires":[]},{"id":"6ca7b876.b272b","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1273.0238647460938,"y":3347.205192565918,"z":"f8904431.05f2f","wires":[["750e22a4.077754"]]},{"id":"1ebe6c41.0f5554","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":1281.5952949523926,"y":3391.4909057617188,"z":"f8904431.05f2f","wires":[["ca9b8308.f4fc5"]]},{"id":"750e22a4.077754","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 reading EIPAM_IP_SUBNETS table\" />\n","comments":"","x":1448.023796081543,"y":3346.348093032837,"z":"f8904431.05f2f","wires":[]},{"id":"352f82b5.11fc76","type":"for","name":"for each record in EIPAM_IP_SUBNETS","xml":"<for index='subnets-index' start='0' end='`$db.eipam-ip-subnets_length`' >\n","comments":"","outputs":1,"x":1076.9524688720703,"y":3674.82426071167,"z":"f8904431.05f2f","wires":[["f03262f0.3244a8"]]},{"id":"f03262f0.3244a8","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1333.3810195922852,"y":3675.77654838562,"z":"f8904431.05f2f","wires":[["8536e6ca.d6b168","b6de49.9eed79b8","527933d.f5ceecc","e79d950d.15109","1e54185e.592a48"]]},{"id":"8536e6ca.d6b168","type":"get-resource","name":"get-resource EIPAM_IP_SUBNET_KEYS","xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n  key='SELECT * from EIPAM_IP_SUBNET_KEYS WHERE entity_id = $db.eipam-ip-subnets[$subnets-index].entity-id'\n  pfx='db.eipam-ip-subnet-keys[]'>\n\n","comments":"","outputs":1,"x":1644.809585571289,"y":3512.205156326294,"z":"f8904431.05f2f","wires":[["f9772116.0d78","43aacff5.7008c8"]]},{"id":"1bebeb4e.09292d","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=\"`'No entries found in EIPAM_IP_SUBNET_KEYS table for entity ID '\n        + $db.eipam-ip-subnets[$subnets-index].entity-id`\" />","comments":"","x":2059.809585571289,"y":3532.205156326294,"z":"f8904431.05f2f","wires":[]},{"id":"f9772116.0d78","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1885.1668548583984,"y":3488.1575145721436,"z":"f8904431.05f2f","wires":[["bf235577.aaf6"]]},{"id":"43aacff5.7008c8","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":1893.7382850646973,"y":3532.4432277679443,"z":"f8904431.05f2f","wires":[["1bebeb4e.09292d"]]},{"id":"bf235577.aaf6","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 reading EIPAM_IP_SUBNET_KEYS table\" />\n","comments":"","x":2060.1667861938477,"y":3487.3004150390625,"z":"f8904431.05f2f","wires":[]},{"id":"82635d4d.019668","type":"set","name":"set max-level to -1","xml":"<set>\n<parameter name='max-level' value='-1' />\n","comments":"","x":1005.7619323730469,"y":3435.538688659668,"z":"f8904431.05f2f","wires":[]},{"id":"b6de49.9eed79b8","type":"for","name":"for each record in EIPAM_IP_SUBNET_KEYS","xml":"<for index='keys-index' start='0' end='`$db.eipam-ip-subnet-keys_length`' >\n","comments":"","outputs":1,"x":1659.3334045410156,"y":3581.2529106140137,"z":"f8904431.05f2f","wires":[["d5adc7e7.c15f68"]]},{"id":"d5adc7e7.c15f68","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1946.0000534057617,"y":3579.586248397827,"z":"f8904431.05f2f","wires":[["e7f1dfec.5d311"]]},{"id":"e7f1dfec.5d311","type":"switchNode","name":"switch level > max-level?","xml":"<switch test='`$db.eipam-ip-subnet-keys[$keys-index].level &gt; $max-level`'>\n","comments":"","outputs":1,"x":2162.6666717529297,"y":3579.586166381836,"z":"f8904431.05f2f","wires":[["10d7a03a.3108b8"]]},{"id":"10d7a03a.3108b8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2354.333599090576,"y":3579.58616065979,"z":"f8904431.05f2f","wires":[["1241dc64.64d09c"]]},{"id":"1241dc64.64d09c","type":"set","name":"set max-level, selected-entity-id, selected-plan-name","xml":"<set>\n<parameter name='max-level' value='`$db.eipam-ip-subnet-keys[$keys-index].level`' />\n<parameter name='selected-entity-id' value='`$db.eipam-ip-subnet-keys[$keys-index].entity-id`' />\n<parameter name='selected-plan-name' value='`$db.eipam-ip-subnets[$subnets-index].plan-name`' />\n","comments":"","x":2646.0001068115234,"y":3577.9194173812866,"z":"f8904431.05f2f","wires":[]},{"id":"527933d.f5ceecc","type":"get-resource","name":"get-resource EIPAM_IP_SUBNET_KEYS","xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n  key='SELECT * from EIPAM_IP_SUBNET_KEYS WHERE entity_id = $selected-entity-id order by level'\n  pfx='db.eipam-ip-subnet-keys[]'>\n\n","comments":"","outputs":1,"x":1646.000015258789,"y":3653.157615661621,"z":"f8904431.05f2f","wires":[["7e54f81a.2f658","ad30d7cc.d7b19"]]},{"id":"a669144f.71726","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=\"`'No entries found in EIPAM_IP_SUBNET_KEYS table for entity ID '\n        + $selected-entity-id`\" />","comments":"","x":2061.000015258789,"y":3673.157615661621,"z":"f8904431.05f2f","wires":[]},{"id":"7e54f81a.2f658","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1886.3572845458984,"y":3629.1099739074707,"z":"f8904431.05f2f","wires":[["bc052b55.fad418"]]},{"id":"ad30d7cc.d7b19","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":1894.9287147521973,"y":3673.3956871032715,"z":"f8904431.05f2f","wires":[["a669144f.71726"]]},{"id":"bc052b55.fad418","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 reading EIPAM_IP_SUBNET_KEYS table\" />\n","comments":"","x":2061.3572158813477,"y":3628.2528743743896,"z":"f8904431.05f2f","wires":[]},{"id":"2727a7be.f15758","type":"for","name":"for each record in EIPAM_IP_SUBNET_KEYS","xml":"<for index='level-index' start='0' end='`$db.eipam-ip-subnet-keys_length`' >\n","comments":"","outputs":1,"x":2091.952362060547,"y":3721.729072570801,"z":"f8904431.05f2f","wires":[["922cde20.d7381"]]},{"id":"2e1988ae.5b71b","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1784.8093643188477,"y":3805.5385093688965,"z":"f8904431.05f2f","wires":[["2727a7be.f15758","1fbff78a.f4d12","6383ce2f.6e26d8","99dd85c.4fc4178","dc2ef1d5.2563f8"]]},{"id":"e79d950d.15109","type":"for","name":"for each ip in ip-count","xml":"<for index='request-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].ip-count`' >\n","comments":"","outputs":1,"x":1583.142807006836,"y":3805.5401363372803,"z":"f8904431.05f2f","wires":[["2e1988ae.5b71b"]]},{"id":"922cde20.d7381","type":"set","name":"set eipam data for level","xml":"<set>\n<parameter name='eipam-ip-block.plans[$plans-index].requests[$request-index].pools[$level-index].key-name'\n   value='`$db.eipam-ip-subnet-keys[$level-index].key-name`' />\n<parameter name='eipam-ip-block.plans[$plans-index].requests[$request-index].pools[$level-index].key-value'\n   value='`$db.eipam-ip-subnet-keys[$level-index].key-value`' />\n","comments":"","x":2398.8571243286133,"y":3721.4918384552,"z":"f8904431.05f2f","wires":[]},{"id":"1fbff78a.f4d12","type":"set","name":"set eipam data pools_length","xml":"<set>\n<parameter name='eipam-ip-block.plans[$plans-index].requests[$request-index].pools_length'\n   value='`$db.eipam-ip-subnet-keys_length`' />\n","comments":"","x":2038.142677307129,"y":3767.2054557800293,"z":"f8904431.05f2f","wires":[]},{"id":"3e4ceafe.888eee","type":"set","name":"set plans-index to 0","xml":"<set>\n<parameter name='plans-index' value='0' />\n","comments":"","x":589.7619171142578,"y":3147.8717365264893,"z":"f8904431.05f2f","wires":[]},{"id":"dd0c75b4.eae44","type":"set","name":"increment plans-index","xml":"<set>\n<parameter name='plans-index' value='`$plans-index + 1`' />\n","comments":"","x":1021.0952224731445,"y":4066.871983528137,"z":"f8904431.05f2f","wires":[]},{"id":"1e54185e.592a48","type":"set","name":"set eipam requests_length","xml":"<set>\n<parameter name='eipam-ip-block.plans[$plans-index].requests_length'\n   value='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].ip-count`' />\n","comments":"","x":1593.6191711425781,"y":3947.2055082321167,"z":"f8904431.05f2f","wires":[]},{"id":"1e8f073b.6f05f9","type":"set","name":"set eipam plan-name, address-family","xml":"<set>\n<parameter name='eipam-ip-block.plans[$plans-index].plan-name' value='`$selected-plan-name`' />\n<parameter name='eipam-ip-block.plans[$plans-index].address-family'\n   value='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].ip-version`' />\n","comments":"","x":1069.6666564941406,"y":4019.7284650802612,"z":"f8904431.05f2f","wires":[]},{"id":"11cfee21.5bdd6a","type":"set","name":"set eipam plans_length","xml":"<set>\n<parameter name='eipam-ip-block.plans_length' value='`$plans-index`' />\n","comments":"","x":593.4285697937012,"y":4091.919857978821,"z":"f8904431.05f2f","wires":[]},{"id":"963118a6.12b53","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":552.7975616455078,"y":5167.011030197144,"z":"f8904431.05f2f","wires":[]},{"id":"967fc1c3.a568d","type":"set","name":"copy input data","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.sdnc-request-header.'\n   value='$vf-module-topology-operation-input.sdnc-request-header.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.request-information.'\n   value='$vf-module-topology-operation-input.request-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.service-information.'\n   value='$vf-module-topology-operation-input.service-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vnf-information.'\n   value='$vf-module-topology-operation-input.vnf-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-information.'\n   value='$vf-module-topology-operation-input.vf-module-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-request-input.'\n   value='$vf-module-topology-operation-input.vf-module-request-input.' />\n\n","comments":"","x":564.5832290649414,"y":4942.990794181824,"z":"f8904431.05f2f","wires":[]},{"id":"5bb2dea5.0b2c88","type":"set","name":"copy vf-module-topology data","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.' value='$tmp.vf-module-topology.' />\n","comments":"","x":609.4642333984375,"y":4894.776306152344,"z":"f8904431.05f2f","wires":[]},{"id":"a1eb3f2f.dc5878","type":"execute","name":"printContext","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\n<parameter name='filename' value='/var/tmp/bgb-vfmodule.log' />\n","comments":"","outputs":1,"x":547.6785125732422,"y":5119.240846633911,"z":"f8904431.05f2f","wires":[[]]},{"id":"753dc8b5.f46c2","type":"execute","name":"call EIPAM assignIPAddress","xml":"<execute plugin=\"com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin\" method=\"assignIPAddress\">","comments":"","outputs":1,"x":973.5952911376953,"y":4180.880926132202,"z":"f8904431.05f2f","wires":[["4b08695f.8392f"]]},{"id":"4b08695f.8392f","type":"failure","name":"failure","xml":"<outcome value='failure'>","outputs":1,"x":1187.5952911376953,"y":4180.880926132202,"z":"f8904431.05f2f","wires":[["21aa8603.c2613a"]]},{"id":"21aa8603.c2613a","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\t<parameter name=\"error-message\" value=\"An error occured while obtaining new address blocks from EIPAM.\" />\n","comments":"","x":1326.5952911376953,"y":4180.880926132202,"z":"f8904431.05f2f","wires":[]},{"id":"6383ce2f.6e26d8","type":"set","name":"set eipam client-key, mask","xml":"<set>\n<parameter name='eipam-ip-block.plans[$plans-index].requests[$request-index].client-key'\n   value='`$generate-unique-name-output.generated-name`' />\n<parameter name='eipam-ip-block.plans[$plans-index].requests[$request-index].info'\n   value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id`' />\n<parameter name='eipam-ip-block.plans[$plans-index].requests[$request-index].mask'\n   value='32' />\n","comments":"","x":2035.2857284545898,"y":3901.015483856201,"z":"f8904431.05f2f","wires":[]},{"id":"35ae3c29.62e11c","type":"for","name":"for each vm-type","xml":"<for index='vm-type-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm_length`' >\n","comments":"","outputs":1,"x":573,"y":4290.252558708191,"z":"f8904431.05f2f","wires":[["2a37ecf7.8780d4"]]},{"id":"2a37ecf7.8780d4","type":"for","name":"for each vm-network","xml":"<for index='network-role-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network_length`' >\n","comments":"","outputs":1,"x":781.6666831970215,"y":4290.252884864807,"z":"f8904431.05f2f","wires":[["47adf55b.a27c64"]]},{"id":"47adf55b.a27c64","type":"for","name":"for each network-information-item","xml":"<for index='ip-version-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item_length`' >\n","comments":"","outputs":1,"x":1046.6666717529297,"y":4291.919226646423,"z":"f8904431.05f2f","wires":[["a560b608.d9df"]]},{"id":"906d177a.23b878","type":"set","name":"set plans-index = 0","xml":"<set>\n<parameter name='plans-index' value='0' />\n","comments":"","x":579.9999923706055,"y":4235.252646446228,"z":"f8904431.05f2f","wires":[]},{"id":"daeb98c8.1a8c","type":"for","name":"for each eipam request","xml":"<for index='ip-index' start='0' end='`$eipam-ip-block.plans[$plans-index].requests_length`' >\n","comments":"","outputs":1,"x":1816.6666259765625,"y":4263.586531639099,"z":"f8904431.05f2f","wires":[["d7b2f5d9.8f7a68"]]},{"id":"d7b2f5d9.8f7a68","type":"set","name":"set ip address","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].network-ips.network-ip[$ip-index]'\n  value='`$eipam-ip-block.plans[$plans-index].requests[$ip-index].ip-prefix`' />\n","comments":"","x":2028.3332633972168,"y":4261.919702529907,"z":"f8904431.05f2f","wires":[]},{"id":"56f40ccc.3da3dc","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1616.6664581298828,"y":4288.586045265198,"z":"f8904431.05f2f","wires":[["daeb98c8.1a8c","833d5d4d.2fde38"]]},{"id":"833d5d4d.2fde38","type":"set","name":"increment plans-index","xml":"<set>\n<parameter name='plans-index' value='`$plans-index + 1`' />\n","comments":"","x":1811.66650390625,"y":4310.252387046814,"z":"f8904431.05f2f","wires":[]},{"id":"d14590e1.bb8fd8","type":"save","name":"update vf-module","xml":"<update plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\"\n   resource=\"vf-module\"\n   key=\"vf-module.vf-module-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id\n      AND generic-vnf.vnf-id = $service-data.vnfs.vnf[$vnf-index].vnf-id\"\n   force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"vf-module-name\" value=\"`$tmp.vf-module-topology.vf-module-topology-identifier.vf-module-name`\" />\n<parameter name=\"model-invariant-id\" value=\"`$tmp.vf-module-topology.onap-model-information.model-invariant-uuid`\" />\n<parameter name=\"model-version-id\" value=\"`$tmp.vf-module-topology.onap-model-information.model-uuid`\" />\n<parameter name=\"model-customization-id\" value=\"`$tmp.vf-module-topology.onap-model-information.model-customization-uuid`\" />\n<parameter name=\"selflink\" value=\"`$vf-module-object-path`\" />\n","comments":"","outputs":1,"x":574.9999694824219,"y":4435.252729415894,"z":"f8904431.05f2f","wires":[["e7fd3464.3ad97","1bf6cb7c.3e0605"]]},{"id":"27d16a6a.8a37f6","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=\"`'No vf-module found in AAI for vf module ID ' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id`\" />\n","comments":"","x":1068.333396911621,"y":4488.585899353027,"z":"f8904431.05f2f","wires":[]},{"id":"e7fd3464.3ad97","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":744.3573303222656,"y":4402.204874038696,"z":"f8904431.05f2f","wires":[["b8c0af54.5401d"]]},{"id":"1bf6cb7c.3e0605","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":752.9286842346191,"y":4464.823854446411,"z":"f8904431.05f2f","wires":[["97b79a52.c9ea08"]]},{"id":"e25600b8.fe60f","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 updating vf-module in AAI\" />\n","comments":"","x":1079.3572845458984,"y":4420.348430633545,"z":"f8904431.05f2f","wires":[]},{"id":"12c538f6.bac537","type":"set","name":"set vf-module-object-path","xml":"<set>\n<parameter name='vf-module-object-path'\n value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $service-data.service-topology.service-topology-identifier.service-instance-id\n + '/service-data/vnfs/vnf/'\n + $service-data.vnfs.vnf[$vnf-index].vnf-id\n + '/vnf-data/vf-modules/vf-module/'\n + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id\n + '/vf-module-data/vf-module-topology/'`\"/>\n\n","comments":"","x":601.666633605957,"y":4360.252715110779,"z":"f8904431.05f2f","wires":[]},{"id":"9b200946.b21818","type":"save","name":"save vf-module relationships","xml":"<save plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\"\n   resource=\"vf-module:relationship-list\"\n   key=\"vf-module.vf-module-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id\n      AND generic-vnf.vnf-id = $service-data.vnfs.vnf[$vnf-index].vnf-id\"\n   force=\"true\" pfx=\"tmp.AnAI-data\">\n    <parameter name=\"relationship-list.relationship[0].related-to\" value=\"l3-network\" />\n    <parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"l3-network.network-id\" />\n    <parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-id`\" />\n","comments":"","outputs":1,"x":1034.3094787597656,"y":4563.975717544556,"z":"f8904431.05f2f","wires":[["3a5d434.74e2a3c","cbec555a.a66e1"]]},{"id":"3a5d434.74e2a3c","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1259.1428108215332,"y":4524.847640037537,"z":"f8904431.05f2f","wires":[["a7d81e5f.df835"]]},{"id":"cbec555a.a66e1","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":1267.7142639160156,"y":4602.466782569885,"z":"f8904431.05f2f","wires":[["377f0d3a.fcf93a"]]},{"id":"9f618c7a.aa0268","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 updating vf-module relationships in AAI\" />\n","comments":"","x":1594.1429443359375,"y":4544.657536506653,"z":"f8904431.05f2f","wires":[]},{"id":"a8e24495.e3fae8","type":"for","name":"for each vm-type","xml":"<for index='vm-type-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm_length`' >\n","comments":"","outputs":1,"x":575.3095092773438,"y":4565.642220497131,"z":"f8904431.05f2f","wires":[["4cd55e9f.5d4f1"]]},{"id":"4cd55e9f.5d4f1","type":"for","name":"for each vm-network","xml":"<for index='network-role-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network_length`' >\n","comments":"","outputs":1,"x":785.9761867523193,"y":4563.976043701172,"z":"f8904431.05f2f","wires":[["9b200946.b21818"]]},{"id":"ed456f28.a4419","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=\"`'No vf-module found in AAI for vf module ID ' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id`\" />\n","comments":"","x":1595.9762382507324,"y":4619.642075538635,"z":"f8904431.05f2f","wires":[]},{"id":"11903d81.fcc1aa","type":"set","name":"set ip-version 6, use-dhcp, and ip-count","xml":"<set>\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$network-information-index].ip-version'\n   value='6' />\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$network-information-index].use-dhcp'\n   value='`$db.vfc-to-network-role-mapping[$network-role-index].ipv6-use-dhcp`' />\n<parameter name='tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$network-information-index].ip-count'\n   value='`$db.vfc-to-network-role-mapping[$network-role-index].ipv6-count`' />\n","comments":"","x":2014.7857208251953,"y":2954.213849067688,"z":"f8904431.05f2f","wires":[]},{"id":"8c75b71c.328668","type":"switchNode","name":"switch use-dhcp","xml":"<switch test='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].use-dhcp`'>\n","comments":"","outputs":1,"x":1680.500114440918,"y":3201.356598854065,"z":"f8904431.05f2f","wires":[["c1eef226.9da368"]]},{"id":"c1eef226.9da368","type":"outcome","name":"N","xml":"<outcome value='N'>\n","comments":"","outputs":1,"x":1850.5000267028809,"y":3199.928201675415,"z":"f8904431.05f2f","wires":[["8aa98267.f34158"]]},{"id":"a560b608.d9df","type":"switchNode","name":"switch use-dhcp","xml":"<switch test='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].use-dhcp`'>\n","comments":"","outputs":1,"x":1287.642837524414,"y":4290.642521858215,"z":"f8904431.05f2f","wires":[["8253a6e.60643d8"]]},{"id":"8253a6e.60643d8","type":"outcome","name":"N","xml":"<outcome value='N'>\n","comments":"","outputs":1,"x":1457.642749786377,"y":4289.214124679565,"z":"f8904431.05f2f","wires":[["56f40ccc.3da3dc"]]},{"id":"5037a7b6.fac458","type":"for","name":"for each vm-type","xml":"<for index='vm-type-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm_length`' >\n","comments":"","outputs":1,"x":574.309455871582,"y":4695.642714500427,"z":"f8904431.05f2f","wires":[["8eb4043b.a1c41"]]},{"id":"8eb4043b.a1c41","type":"for","name":"for each vm","xml":"<for index='vm-index' start='0' end='`$tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-count`' >\n","comments":"","outputs":1,"x":769.3094863891602,"y":4694.975722312927,"z":"f8904431.05f2f","wires":[["5e904a67.9da9dc"]]},{"id":"a18648aa.2dca8","type":"save","name":"save VIPR_CONFIGURATION","xml":"<save plugin=\"org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource\" resource=\"SQL\"\nkey=\"INSERT INTO VIPR_CONFIGURATION (vnf_id, vnf_name, ecomp_service_instance_id, vm_name, cloud_region_id, cloud_owner) VALUES ( $service-data.vnfs.vnf[$vnf-index].vnf-id , $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-name , $service-data.service-information.service-instance-id , $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-names.vm-name[$vm-index] , $tmp.vf-module-topology.aic-cloud-region , 'CloudOwner')\" >","comments":"","outputs":1,"x":1160.976188659668,"y":4717.643372535706,"z":"f8904431.05f2f","wires":[["55737ac3.ddc7cc"]]},{"id":"2e31a72c.f726a8","type":"comment","name":"Not a failure","info":"","comments":"","x":1680.976089477539,"y":4717.643377304077,"z":"f8904431.05f2f","wires":[]},{"id":"55737ac3.ddc7cc","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1370.976173400879,"y":4717.643522262573,"z":"f8904431.05f2f","wires":[["d0a04dc7.3bc688"]]},{"id":"d0a04dc7.3bc688","type":"record","name":"record","xml":"<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder\">\n<parameter name=\"logger\" value=\"message-log\"/>\n<parameter name=\"field1\" value=\"__TIMESTAMP__\"/>\n<parameter name=\"field2\" value=\"GENERIC-RESOURCE-API.vf-module-topology-operation-assign:REQID\"/>\n<parameter name=\"field3\" value=\"`$vf-module-topology-operation-input.sdnc-request-header.svc-request-id`\"/>\n<parameter name=\"field4\" value=\"Failed to insert VIPR_CONFIGURATION record\"/>\n","comments":"","outputs":1,"x":1514.3096160888672,"y":4717.643360137939,"z":"f8904431.05f2f","wires":[[]]},{"id":"dc2ef1d5.2563f8","type":"call","name":"call GENERIC-RESOURCE-API:generate-unique-name","xml":"<call module='GENERIC-RESOURCE-API' rpc='generate-unique-name' mode='sync' >\n","comments":"","outputs":1,"x":2124.3094940185547,"y":3855.641947746277,"z":"f8904431.05f2f","wires":[["dd263b35.ab1258"]]},{"id":"dd263b35.ab1258","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":2411.6905364990234,"y":3853.4993686676025,"z":"f8904431.05f2f","wires":[["8bcf10a0.8fe5e"]]},{"id":"99dd85c.4fc4178","type":"set","name":"set variables for generating unique name","xml":"<set>\n<parameter name='generate-unique-name-input.index-table-name' value='EIPAM_CLIENT_KEY_INDEX' />\n<parameter name='generate-unique-name-input.index-table-prefix-column' value='vnf_name_prefix' />\n<parameter name='generate-unique-name-input.name-table-type' value='CLIENT_KEY' />\n<parameter name='generate-unique-name-input.prefix' value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-name + $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].nfc-naming-code + ':' + $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-id + ':' + $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-networks.vm-network[$network-role-index].network-information-items.network-information-item[$ip-version-index].ip-version + ':'`\" />\n<parameter name='generate-unique-name-input.index-length' value='' />\n","comments":"","x":2077.6428260803223,"y":3810.6421089172363,"z":"f8904431.05f2f","wires":[]},{"id":"8bcf10a0.8fe5e","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=\"`$generate-unique-name-output.error-message`\" />\n","comments":"","x":2579.547649383545,"y":3852.9278802871704,"z":"f8904431.05f2f","wires":[]},{"id":"6ce4d19f.10b0a8","type":"switchNode","name":"switch ecomp-generated-naming == 'Y'","xml":"<switch test=\"$db.vfc-model.ecomp-generated-naming == 'Y'\">\n","comments":"","outputs":1,"x":1054.3095626831055,"y":2117.309280395508,"z":"f8904431.05f2f","wires":[["2de2475a.f4d5d8"]]},{"id":"2de2475a.f4d5d8","type":"outcomeFalse","name":"false","xml":"<outcome value='false'>\n","comments":"","outputs":1,"x":1285.976173400879,"y":2116.3089113235474,"z":"f8904431.05f2f","wires":[["112945ce.9f9c9a"]]},{"id":"112945ce.9f9c9a","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=\"`'ECOMP generated naming is not Y for VFC customization UUID ' + $db.vf-module-to-vfc-mapping[$db-vm-index].vfc_customization_uuid`\" />\n","comments":"","x":1432.6429138183594,"y":2115.6423664093018,"z":"f8904431.05f2f","wires":[]},{"id":"4da53680.141168","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1544.3097381591797,"y":4668.975073814392,"z":"f8904431.05f2f","wires":[["425d9ea4.3de7b"]]},{"id":"518430e6.ca6d78","type":"comment","name":"Not a failure","info":"","comments":"","x":1867.6427917480469,"y":4667.308896064758,"z":"f8904431.05f2f","wires":[]},{"id":"425d9ea4.3de7b","type":"record","name":"record","xml":"<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder\">\n<parameter name=\"logger\" value=\"message-log\"/>\n<parameter name=\"field1\" value=\"__TIMESTAMP__\"/>\n<parameter name=\"field2\" value=\"GENERIC-RESOURCE-API.vf-module-topology-operation-assign:REQID\"/>\n<parameter name=\"field3\" value=\"`$vf-module-topology-operation-input.sdnc-request-header.svc-request-id`\"/>\n<parameter name=\"field4\" value=\"Failed to insert VIPR_CONFIGURATION record\"/>\n","comments":"","outputs":1,"x":1690.3096733093262,"y":4668.975707054138,"z":"f8904431.05f2f","wires":[[]]},{"id":"5e904a67.9da9dc","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":937.642879486084,"y":4693.975566864014,"z":"f8904431.05f2f","wires":[["4c365ffc.e4afc8","a18648aa.2dca8"]]},{"id":"4c365ffc.e4afc8","type":"delete","name":"delete any pre-existing records in VIPR_CONFIGURATION","xml":"<delete plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n  key='DELETE from VIPR_CONFIGURATION WHERE vnf_id = $service-data.vnfs.vnf[$vnf-index].vnf-id\n     AND ecomp_service_instance_id = $service-data.service-information.service-instance-id\n     AND vm_name = $tmp.vf-module-topology.vf-module-assignments.vms.vm[$vm-type-index].vm-names.vm-name[$vm-index]' >","comments":"","outputs":1,"x":1250.976203918457,"y":4669.309706687927,"z":"f8904431.05f2f","wires":[["4da53680.141168"]]},{"id":"1f795d99.f5ecd2","type":"update","name":"update EIPAM_IP_ASSIGNMENTS to PENDING_DELETE...","xml":"<update plugin=\"org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource\" resource=\"SQL\"\nkey=\"UPDATE EIPAM_IP_ASSIGNMENTS set status = $tmp.status WHERE info = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-topology-identifier.vf-module-id\" >","comments":"","outputs":1,"x":2957.6429481506348,"y":4305.64261007309,"z":"f8904431.05f2f","wires":[["e2da69cb.3fe94"]]},{"id":"d2cb7754.38f5","type":"set","name":"set status variable","xml":"<set>\n<parameter name='tmp.status' value=\"`'PENDING_DELETE_' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-topology-identifier.vf-module-id`\" />\n","comments":"","x":2827.642910003662,"y":4258.9759821891785,"z":"f8904431.05f2f","wires":[]},{"id":"e2da69cb.3fe94","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":3262.6428565979004,"y":4303.97590970993,"z":"f8904431.05f2f","wires":[["78b84819.7cbd28"]]},{"id":"78b84819.7cbd28","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 updating EIPAM_IP_ASSIGNMENTS table on rollback\" />\n","comments":"","x":3452.6428833007812,"y":4303.785645008087,"z":"f8904431.05f2f","wires":[]},{"id":"aaf3ae90.95d7e","type":"execute","name":"execute EIPAM unassign IP addresses","xml":"<execute plugin=\"com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin\" method=\"unassignIPAddress\">\n<parameter name=\"deleteEIPAM_status\" value=\"`$tmp.status`\" />\n","comments":"","outputs":1,"x":2892.6429176330566,"y":4350.642653942108,"z":"f8904431.05f2f","wires":[["3bd208da.2b5f5"]]},{"id":"3bd208da.2b5f5","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":3129.309543609619,"y":4350.642596721649,"z":"f8904431.05f2f","wires":[["c853d33c.7bd92"]]},{"id":"c853d33c.7bd92","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 in EIPAM unassign IP address on rollback\" />\n","comments":"","x":3319.3095703125,"y":4350.452332019806,"z":"f8904431.05f2f","wires":[]},{"id":"1232b93c.b99bef","type":"comment","name":"roll back EIPAM","info":"","comments":"","x":2802.6429481506348,"y":4205.642935593923,"z":"f8904431.05f2f","wires":[]},{"id":"a9f936cf.48789","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":2634.3095741271973,"y":4308.97610616684,"z":"f8904431.05f2f","wires":[["d2cb7754.38f5","1f795d99.f5ecd2","aaf3ae90.95d7e"]]},{"id":"b8c0af54.5401d","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":902.6428985595703,"y":4401.975544929504,"z":"f8904431.05f2f","wires":[["e25600b8.fe60f","920a4d60.b8ea28"]]},{"id":"97b79a52.c9ea08","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":907.6428375244141,"y":4464.641888618469,"z":"f8904431.05f2f","wires":[["27d16a6a.8a37f6","920a4d60.b8ea28"]]},{"id":"a7d81e5f.df835","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1427.6428146362305,"y":4524.641909599304,"z":"f8904431.05f2f","wires":[["9f618c7a.aa0268","920a4d60.b8ea28"]]},{"id":"377f0d3a.fcf93a","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1422.642734527588,"y":4602.641750335693,"z":"f8904431.05f2f","wires":[["ed456f28.a4419","920a4d60.b8ea28"]]},{"id":"df2d8da2.dbcdf8","type":"set","name":"set vf-module-to-vfc-mapping length to 0","xml":"<set>\n<parameter name='db.vf-module-to-vfc-mapping_length' value='0' />\n","comments":"","x":1201.500099182129,"y":1950.9280138015747,"z":"f8904431.05f2f","wires":[]},{"id":"4bea2562.d69b54","type":"set","name":"set vfc-to-network-role-mapping length to 0","xml":"<set>\n<parameter name='db.vfc-to-network-role-mapping_length' value='0' />\n","comments":"","x":1654.7857818603516,"y":2429.9280395507812,"z":"f8904431.05f2f","wires":[]},{"id":"7b68cee5.5f8108","type":"switchNode","name":"switch plans-index > 0","xml":"<switch test='`$plans-index &gt; 0`'>\n","comments":"","outputs":1,"x":590.5000762939453,"y":4181.356512069702,"z":"f8904431.05f2f","wires":[["7d5eb184.20a448"]]},{"id":"7d5eb184.20a448","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":773.3572158813477,"y":4181.356721878052,"z":"f8904431.05f2f","wires":[["753dc8b5.f46c2"]]},{"id":"920a4d60.b8ea28","type":"switchNode","name":"switch plans-index > 0","xml":"<switch test='`$plans-index &gt; 0`'>\n","comments":"","outputs":1,"x":2281.6665000915527,"y":4308.261742115021,"z":"f8904431.05f2f","wires":[["53be3d84.4c3d64"]]},{"id":"53be3d84.4c3d64","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2464.523639678955,"y":4308.26195192337,"z":"f8904431.05f2f","wires":[["a9f936cf.48789"]]},{"id":"2eeff3c5.141784","type":"set","name":"set service-type","xml":"<set>\n<parameter name='service-data.service-information.service-type' value='`$service-data.service-information.subscription-service-type`' />\n","comments":"EIPAM plug-in needs this attribute set with this name","x":570.6666145324707,"y":4134.92791557312,"z":"f8904431.05f2f","wires":[]},{"id":"82cb9ccd.420d9","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n","comments":"","x":309,"y":4892.749938964844,"z":"f8904431.05f2f","wires":[]},{"id":"81d39b95.9bfe2","type":"comment","name":"Fix $ in value","info":"","comments":"","x":814.7499465942383,"y":4898.000087738037,"z":"f8904431.05f2f","wires":[]},{"id":"59c6a4fd.868b5c","type":"call","name":"call check for VNF-API-preload and copy","xml":"<call module='GENERIC-RESOURCE-API' rpc='gw-vfmodule-update' mode='sync' >\n","comments":"","outputs":1,"x":644.1668701171875,"y":5004.9169921875,"z":"f8904431.05f2f","wires":[[]]}]
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_gw-vfmodule-update.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_gw-vfmodule-update.xml
new file mode 100644 (file)
index 0000000..b2ec340
--- /dev/null
@@ -0,0 +1,87 @@
+<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='gw-vfmodule-update' mode='sync'>\r
+<block>\r
+<set>\r
+<parameter name='tmp.brg-macaddress' value='fa:16:3e:8f:ea:68' />\r
+<parameter name='tmp.brg-mac-address-match' value='VGW2BRG-fa:16:3e:8f:ea:68'/>\r
+<!--\r
+<parameter name='tmp.consuming-service-instance-id' value='b3cb7040-f7a5-4beb-ad2f-2a893b7d374b' />\r
+service-data.service-topology.service-topology-identifier.service-instance-id\r
+\r
+-->\r
+<parameter name='tmp.consuming-service-instance-id' value='`$service-data.service-topology.service-topology-identifier.service-instance-id`' />\r
+</set><set>\r
+<parameter name='tmp.thisIsVGW' value='false' />\r
+</set><get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API'    \r
+         key='tunnelxconn-allotted-resources/' pfx='tmp.txconns' >\r
+                                                                                                                                                                                                                                       <outcome value='success'>\r
+<for index='txidx' start='0' end='`$tmp.txconns.tunnelxconn-allotted-resources.tunnelxconn-allotted-resource_length`' >\r
+\r
+\r
+<block atomic='true'><set>\r
+<parameter name='tmp.test1' value='`$tmp.txconns.tunnelxconn-allotted-resources.tunnelxconn-allotted-resource[$txidx].allotted-resource-data.tunnelxconn-topology.allotted-resource-identifiers.consuming-service-instance-id`' />\r
+<parameter name='tmp.test2' value='`$tmp.txconns.tunnelxconn-allotted-resources.tunnelxconn-allotted-resource-data[$txidx].tunnelxconn-topology[0].allotted-resource-identifiers[0].consuming-service-instance-id`' /></set><switch test='`$tmp.test1 == $tmp.consuming-service-instance-id`'><outcome value='true'>\r
+<set>\r
+<parameter name='tmp.thisIsVGW' value='true' />\r
+</set></outcome></switch></block></for></outcome></get-resource><switch test='`$tmp.thisIsVGW`'>\r
+<outcome value='true'>\r
+<block>\r
+<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='VNF-API' key='preload-vnfs' pfx='tmp.preloadvnfdata' >\r
+</get-resource><for index='vnfidx' start='0' end='`$tmp.preloadvnfdata.preload-vnfs.vnf-preload-list_length`' >\r
+\r
+\r
+<block atomic='true'><set>\r
+<parameter name='tmp.test3' value='`$tmp.preloadvnfdata.preload-vnfs.vnf-preload-list[$vnfidx].vnf-name`' />\r
+<parameter name='tmp.test4' value='`$tmp.brg-mac-address-match`'/>\r
+\r
+\r
+</set><switch test='`$tmp.preloadvnfdata.preload-vnfs.vnf-preload-list[$vnfidx].vnf-name == $tmp.brg-mac-address-match`'>\r
+\r
+\r
+<outcome value='true'>\r
+<block>\r
+<set>\r
+<parameter name='tmp.endLoop1' value='`$tmp.preloadvnfdata.preload-vnfs.vnf-preload-list[$vnfidx].preload-data.vnf-topology-information.vnf-parameters_length`' /></set><for index='preloadIdx' start='0' end='`$tmp.endLoop1`'>\r
+<!--\r
+\r
+     "preload-data": {\r
+          "vnf-topology-information": {\r
+            "vnf-parameters": [\r
+            \r
+            -->\r
+<block atomic='true'><set>\r
+<parameter name='tmp.vfmodule.param[$preloadIdx].name'  value='`$tmp.preloadvnfdata.preload-vnfs.vnf-preload-list[$vnfidx].preload-data.vnf-topology-information.vnf-parameters[$preloadIdx].vnf-parameter-name`' />\r
+<parameter name='tmp.vfmodule.param[$preloadIdx].value' value='`$tmp.preloadvnfdata.preload-vnfs.vnf-preload-list[$vnfidx].preload-data.vnf-topology-information.vnf-parameters[$preloadIdx].vnf-parameter-value`' /></set></block></for><set>\r
+<parameter name='tmp.vfmodule.param_length' value='`$tmp.endLoop1`' />\r
+</set><execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\r
+    <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />\r
+    <parameter name='contextPrefix' value='prop' />\r
+</execute><set>\r
+<parameter name='tmp.restapi.service.vnf.vfmodule-resource' value='`$prop.restapi.service.vnf.vfmodule-resource`' />\r
+</set><set>\r
+<parameter name='tmp.vf-module-object-path'\r
+ value="`'restconf/config/GENERIC-RESOURCE-API:services/service/'\r
+ + $service-data.service-topology.service-topology-identifier.service-instance-id\r
+ + '/service-data/vnfs/vnf/'\r
+ + $service-data.vnfs.vnf[$vnf-index].vnf-id\r
+ + '/vnf-data/vf-modules/vf-module/'\r
+ + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id \r
+ + '/'`"/>\r
+</set><set>\r
+<!--\r
+<parameter name='tmp.service.vnf.vf-module.vg-mux-tunnel-vni' value='`$input.vni`' />\r
+-->\r
+<parameter name='tmp.service.vnf.vf-module.vg-mux-tunnel-vni' value='`$tmp.txconns.tunnelxconn-allotted-resources.tunnelxconn-allotted-resource[0].allotted-resource-data[0].tunnelxconn-topology[0].tunnelxconn-assignments[0].vni`' />\r
+\r
+\r
+\r
+</set><set>\r
+<!--\r
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param.'\r
+\r
+                 service-data.vnfs.vnf\[0\].       vnf-data.vf-modules.vf-module\[0\]             .vf-module-data.vf-module-topology.vf-module-parameters.param.\r
+   value='$tmp.vfmodule.' />\r
+-->\r
+<parameter name='service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.'\r
+   value='$tmp.vfmodule.' /></set><execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\r
+<parameter name='filename' value='/var/tmp/bdf-gw-vfmodule.log' />\r
+</execute></block></outcome></switch></block></for></block></outcome></switch></block></method></service-logic>\r
index 2855d9e..f561acb 100755 (executable)
@@ -36,7 +36,7 @@
 <block>\r
 <set>\r
 <parameter name='vnf-index' value='`$idx`' />\r
-</set><break/></block></outcome></switch></for></outcome></switch><switch test='`$vnf-index`'>\r
+</set><break></break></block></outcome></switch></for></outcome></switch><switch test='`$vnf-index`'>\r
 <outcome value='-1'>\r
 <return status='failure'>\r
        <parameter name='ack-final' value='Y'/>\r
 </execute><set>\r
 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.aic-clli'\r
    value='`$aai-uid-split[$aai-uid-split_length - 1]`' />\r
-</set><break/></block></outcome></switch></for><switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.aic-clli`'>\r
+</set><break></break></block></outcome></switch></for><switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.aic-clli`'>\r
 <outcome value=''><return status='failure'>\r
        <parameter name='ack-final' value='Y'/>\r
        <parameter name="error-code" value="500" />\r
 <block>\r
 <set>\r
 <parameter name='network-index' value='`$idx`' />\r
-</set><break/></block></outcome></switch></for><switch test='`$network-index`'>\r
+</set><break></break></block></outcome></switch></for><switch test='`$network-index`'>\r
 <outcome value='-1'>\r
 <return status='failure'>\r
        <parameter name='ack-final' value='Y'/>\r
@@ -542,7 +542,7 @@ key="INSERT INTO VIPR_CONFIGURATION (vnf_id, vnf_name, ecomp_service_instance_id
 <parameter name="field3" value="`$vf-module-topology-operation-input.sdnc-request-header.svc-request-id`"/>\r
 <parameter name="field4" value="Failed to insert VIPR_CONFIGURATION record"/>\r
 </record></outcome></save></block></for></for><set>\r
-<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.' value='tmp.vf-module-topology.' />\r
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.' value='$tmp.vf-module-topology.' />\r
 </set><set>\r
 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.sdnc-request-header.'\r
    value='$vf-module-topology-operation-input.sdnc-request-header.' />\r
@@ -557,7 +557,8 @@ key="INSERT INTO VIPR_CONFIGURATION (vnf_id, vnf_name, ecomp_service_instance_id
 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-request-input.'\r
    value='$vf-module-topology-operation-input.vf-module-request-input.' />\r
 \r
-</set><set>\r
+</set><call module='GENERIC-RESOURCE-API' rpc='gw-vfmodule-update' mode='sync' >\r
+</call><set>\r
 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-level-oper-status.order-status'\r
   value='PendingCreate' />\r
 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-level-oper-status.last-rpc-action'\r
@@ -570,4 +571,4 @@ key="INSERT INTO VIPR_CONFIGURATION (vnf_id, vnf_name, ecomp_service_instance_id
 <parameter name="ack-final-indicator" value="Y" />\r
 <parameter name="error-code" value="200" />\r
 <parameter name="error-message" value="`$error-message`" />\r
-</return></block></method></service-logic>
+</return></block></method></service-logic>\r
index 10cb4a9..72c2dfe 100644 (file)
@@ -1,7 +1,7 @@
 {
   "GENERIC-RESOURCE-API:vf-module": [
     {
-      "GENERIC-RESOURCE-API:vf-module-id": ${tmp.service.vnf.vf-module.vf-module-id}",
+      "GENERIC-RESOURCE-API:vf-module-id": ${tmp.service.vnf.vf-module.vf-module-id},
       "GENERIC-RESOURCE-API:vf-module-data": {
         "GENERIC-RESOURCE-API:vf-module-topology": {
           "GENERIC-RESOURCE-API:vf-module-parameters": {
@@ -68,7 +68,7 @@
               },
               {
                 "name": "vg_vgmux_tunnel_vni",
-                "value": ${tmp.service.vnf.vf-module.vf-module-id.vg-mux-tunnel-vni}
+                "value": ${tmp.service.vnf.vf-module.vg-mux-tunnel-vni}
               }
             ]
           }