Update underlay DG for VoLTE use case 83/16583/1
authorramu.n <ramu.n@huawei.com>
Fri, 29 Sep 2017 05:36:42 +0000 (11:06 +0530)
committerramu.n <ramu.n@huawei.com>
Fri, 29 Sep 2017 05:42:59 +0000 (11:12 +0530)
*Replace openecomp schema with onap
*fix plugin references
*fix svc-action type issue
*Add rest call for site & vrf configuration
*Get ip-prfix & next-hop from route string

Change-Id: I697fb76ab42a7fcb304df19733ac50eef7953f4f
Issue-Id: SDNC-105
Signed-off-by: Ramu N <ramu.n@huawei.com>
Former-commit-id: 3948576d2ce46e492cfead3efd0aa883c280bd30

platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation-create.json
platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation-delete.json
platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_validate-network-input-parameters.json
platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation-create.xml
platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation-delete.xml
platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_validate-network-input-parameters.xml

index 15d44ce..15b1db0 100644 (file)
@@ -1 +1,1863 @@
-[{"id":"cb36df78.f09e28","type":"dgstart","name":"DGSTART","outputs":1,"x":106.5,"y":39,"z":"d42722f8.3eccb8","wires":[["6b493f20.dd05b8"]]},{"id":"6b493f20.dd05b8","type":"service-logic","name":"GENERIC-RESOURCE-API ${project.version}","module":"GENERIC-RESOURCE-API","version":"${project.version}","comments":"","xml":"<service-logic xmlns='http://www.openecomp.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>","outputs":1,"x":318.50000381469727,"y":111.0000171661377,"z":"d42722f8.3eccb8","wires":[["d4f64c43.9c54f8"]]},{"id":"d4f64c43.9c54f8","type":"method","name":"method network-topology-operation-create","xml":"<method rpc='network-topology-operation-create' mode='sync'>\n","comments":"","outputs":1,"x":306.5001220703125,"y":199,"z":"d42722f8.3eccb8","wires":[["99d71b60.bc486"]]},{"id":"99d71b60.bc486","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":582.5000305175781,"y":207.00001335144043,"z":"d42722f8.3eccb8","wires":[["5ed245d4.4281d4","e7933c58.1edee","975efc4b.99298","8ceec6eb.76071","31aa6d85.42f682","afab8693.c68c8","2004d097.f3cbc"]]},{"id":"e7933c58.1edee","type":"execute","name":"execute REST NETCONF MOUNT CREATE VPN","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"$prop.sdncRestApi.tempDir +'/l3smvpntemplate.json'\"/>\n<parameter name=\"restapiUrl\" value=\"$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/vpn-services'\"/>\n<parameter name=\"restapiUser\" value=\"$prop.sdncRestApi.thirdpartySdnc.user\"/>\n<parameter name=\"restapiPassword\" value=\"$prop.sdncRestApi.thirdpartySdnc.password\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"restapi-result\"/>","comments":"","outputs":1,"x":898.5001831054688,"y":552,"z":"d42722f8.3eccb8","wires":[[]]},{"id":"5ed245d4.4281d4","type":"set","name":"set controller data","xml":"<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.url' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.serviceUrl`\" />\n<parameter name='prop.sdncRestApi.templateDir' value='/opt/onap/sdnc/data' />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.user' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.password' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.password`\" />\n","comments":"","x":810.5000610351562,"y":279,"z":"d42722f8.3eccb8","wires":[]},{"id":"2004d097.f3cbc","type":"for","name":"for each network-input-parameters","xml":"<for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\n","comments":"","outputs":1,"x":868.1666259765625,"y":375.6666564941406,"z":"d42722f8.3eccb8","wires":[["3cc59ee4.5e9a4a"]]},{"id":"975efc4b.99298","type":"execute","name":"execute REST NETCONF MOUNT CREATE SITE","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"$prop.sdncRestApi.tempDir +'/l3smsitetemplate.json'\"/>\n<parameter name=\"restapiUrl\" value=\"$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/sites'\"/>\n<parameter name=\"restapiUser\" value=\"$prop.sdncRestApi.thirdpartySdnc.user\"/>\n<parameter name=\"restapiPassword\" value=\"$prop.sdncRestApi.thirdpartySdnc.password\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"restapi-result\"/>","comments":"","outputs":1,"x":902.1668510437012,"y":606.6666851043701,"z":"d42722f8.3eccb8","wires":[[]]},{"id":"afab8693.c68c8","type":"execute","name":"execute vpn-policy-id","xml":"<execute plugin='com.att.sdnctl.sli.SliPluginUtils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.l3vpn.vpn-policy-id\"/>\n","comments":"","outputs":1,"x":834.1666259765625,"y":470.66668701171875,"z":"d42722f8.3eccb8","wires":[["6d3b3d21.9f9b94"]]},{"id":"6d3b3d21.9f9b94","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1053.1666316986084,"y":469.6666669845581,"z":"d42722f8.3eccb8","wires":[["77780ce8.b6a42c"]]},{"id":"77780ce8.b6a42c","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while generation vpn policy ID\" />\n","comments":"","x":1238.1666412353516,"y":469.66667079925537,"z":"d42722f8.3eccb8","wires":[]},{"id":"8ceec6eb.76071","type":"call","name":"call GENERIC-RESOURCE-API:validate-network-input-parameters","xml":"<call module='GENERIC-RESOURCE-API' rpc='validate-network-input-parameters' mode='sync' >\n","comments":"","outputs":1,"x":880,"y":76,"z":"d42722f8.3eccb8","wires":[[]]},{"id":"31aa6d85.42f682","type":"get-resource","name":"get-resource esr-thirdparty-sdnc","xml":"<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"esr-thirdparty-sdnc\" \n\t\tkey=\"esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND \n\t\t     depth = '1'\"\n        pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >\n\n","comments":"","outputs":1,"x":850,"y":193,"z":"d42722f8.3eccb8","wires":[["2c613739.98afa8","1da11a52.1c786e","969f047a.9bdca"]]},{"id":"2c613739.98afa8","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":1175,"y":124,"z":"d42722f8.3eccb8","wires":[["a9af7dde.3eae3"]]},{"id":"1da11a52.1c786e","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":1178.490966796875,"y":171.57403564453125,"z":"d42722f8.3eccb8","wires":[["9fcc2997.c4db48"]]},{"id":"969f047a.9bdca","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":1173.823974609375,"y":212.9073486328125,"z":"d42722f8.3eccb8","wires":[["b55105c.cece0f8"]]},{"id":"9fcc2997.c4db48","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=\"Network model is_bound_to_vpn=true but no vpn_binding is present\" />\n\n","comments":"","x":1355.0623779296875,"y":159.85977172851562,"z":"d42722f8.3eccb8","wires":[]},{"id":"b55105c.cece0f8","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n    <parameter name=\"error-message\" value=\"Unexpected error retrieving vpn binding\" />\n\n","comments":"","x":1361.5965309143066,"y":208.34654140472412,"z":"d42722f8.3eccb8","wires":[]},{"id":"a9af7dde.3eae3","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1353.205322265625,"y":116.57403564453125,"z":"d42722f8.3eccb8","wires":[[]]},{"id":"3cc59ee4.5e9a4a","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":1354,"y":340,"z":"d42722f8.3eccb8","wires":[["88aa924c.540ec8","bb5cb51b.59506","2544c74d.97ee18","b7871d3d.25fad8","fe408f02.5f753","a83a85a7.171548","24a49d0f.d882f2","6e6d25b6.396474","631fc211.5012a4","6118a340.6202bc","36b08791.59ad9","34e1c7d4.0648","b6ef6a39.4f99a","57ff81fd.d7eb5","45e9f15b.b00ef","f194b0b0.06c4a","db1b22e2.44ac28","40dbf064.599ad8","f83e78ff.bcb19","953ea88f.9f4a18","1b0d7ad2.7c73cd","503fb0c2.118f08","abda3944.6cc14"]]},{"id":"88aa924c.540ec8","type":"switchNode","name":"switch name","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`\">\n","comments":"","outputs":1,"x":1600,"y":150.00003051757812,"z":"d42722f8.3eccb8","wires":[["f6a31b1b.e5d5"]]},{"id":"bb5cb51b.59506","type":"switchNode","name":"switch service-type","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'service-type'`\">\n","comments":"","outputs":1,"x":1603.9999389648438,"y":211.60000610351562,"z":"d42722f8.3eccb8","wires":[["b138ae61.44dfc"]]},{"id":"f6a31b1b.e5d5","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1787,"y":150.00003051757812,"z":"d42722f8.3eccb8","wires":[["4d5c9007.14735"]]},{"id":"b138ae61.44dfc","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1788.9999389648438,"y":209.60000610351562,"z":"d42722f8.3eccb8","wires":[["6c1d6803.8f8aa8"]]},{"id":"4d5c9007.14735","type":"set","name":"set name","xml":"<set>\n<parameter name='prop.l3vpn.name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":1955,"y":150.60003662109375,"z":"d42722f8.3eccb8","wires":[]},{"id":"6c1d6803.8f8aa8","type":"set","name":"set service-type","xml":"<set>\n<parameter name='prop.l3vpn.service-type' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":1957.9999389648438,"y":207.60000610351562,"z":"d42722f8.3eccb8","wires":[]},{"id":"2544c74d.97ee18","type":"switchNode","name":"switch topology","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'topology'`\">\n","comments":"","outputs":1,"x":1603,"y":273,"z":"d42722f8.3eccb8","wires":[["67a5441.72b6abc"]]},{"id":"b7871d3d.25fad8","type":"switchNode","name":"switch technology","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'technology'`\">\n","comments":"","outputs":1,"x":1606,"y":326,"z":"d42722f8.3eccb8","wires":[["b0d9aff3.b00fa8"]]},{"id":"fe408f02.5f753","type":"switchNode","name":"switch site1_name","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_name'`\">\n","comments":"","outputs":1,"x":1611,"y":388,"z":"d42722f8.3eccb8","wires":[["4d154733.c71d7"]]},{"id":"a83a85a7.171548","type":"switchNode","name":"switch site2_name","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_name'`\">\n","comments":"","outputs":1,"x":1606,"y":451,"z":"d42722f8.3eccb8","wires":[["a3d4aaaa.5e75f8"]]},{"id":"24a49d0f.d882f2","type":"switchNode","name":"switch sna1_name","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'sna1_name'`\">\n","comments":"","outputs":1,"x":1611,"y":511,"z":"d42722f8.3eccb8","wires":[["ee77e877.444dc"]]},{"id":"6e6d25b6.396474","type":"switchNode","name":"switch sna2_name","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'sna2_name'`\">\n","comments":"","outputs":1,"x":1606,"y":575,"z":"d42722f8.3eccb8","wires":[["177ebd38.639203"]]},{"id":"631fc211.5012a4","type":"switchNode","name":"switch pe1_id","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'pe1_id'`\">\n","comments":"","outputs":1,"x":1611,"y":637,"z":"d42722f8.3eccb8","wires":[["bc4514aa.bff8b"]]},{"id":"6118a340.6202bc","type":"switchNode","name":"switch pe2_id","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'pe2_id'`\">\n","comments":"","outputs":1,"x":1626,"y":697,"z":"d42722f8.3eccb8","wires":[["1007421c.7d0e8e"]]},{"id":"36b08791.59ad9","type":"switchNode","name":"switch ac1_id","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_id'`\">\n","comments":"","outputs":1,"x":1621,"y":769,"z":"d42722f8.3eccb8","wires":[["a19c0d54.dae6"]]},{"id":"34e1c7d4.0648","type":"switchNode","name":"switch ac2_id","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_id'`\">\n","comments":"","outputs":1,"x":1620,"y":828,"z":"d42722f8.3eccb8","wires":[["84e52060.75ef7"]]},{"id":"b6ef6a39.4f99a","type":"switchNode","name":"switch ac1_ip","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_ip'`\">\n","comments":"","outputs":1,"x":1621,"y":879,"z":"d42722f8.3eccb8","wires":[["2bc62aa7.ef22ee"]]},{"id":"57ff81fd.d7eb5","type":"switchNode","name":"switch ac2_ip","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_ip'`\">\n","comments":"","outputs":1,"x":1624,"y":936,"z":"d42722f8.3eccb8","wires":[["99127b02.b296b8"]]},{"id":"45e9f15b.b00ef","type":"switchNode","name":"switch ac1_peer_ip","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_peer_ip'`\">\n","comments":"","outputs":1,"x":1630,"y":988,"z":"d42722f8.3eccb8","wires":[["99742acf.29058"]]},{"id":"f194b0b0.06c4a","type":"switchNode","name":"switch ac2_peer_ip","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_peer_ip'`\">\n","comments":"","outputs":1,"x":1631,"y":1043,"z":"d42722f8.3eccb8","wires":[["80ed9287.14c0b"]]},{"id":"db1b22e2.44ac28","type":"switchNode","name":"switch ac1_svlan","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_svlan'`\">\n","comments":"","outputs":1,"x":1643,"y":1092,"z":"d42722f8.3eccb8","wires":[["7e8264fe.9a4184"]]},{"id":"40dbf064.599ad8","type":"switchNode","name":"switch ac2_svlan","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_svlan'`\">\n","comments":"","outputs":1,"x":1636,"y":1143,"z":"d42722f8.3eccb8","wires":[["b90636ea.ed4c38"]]},{"id":"f83e78ff.bcb19","type":"switchNode","name":"switch ac1_protocol","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_protocol'`\">\n","comments":"","outputs":1,"x":1629,"y":1201,"z":"d42722f8.3eccb8","wires":[["bacf2339.37a91"]]},{"id":"953ea88f.9f4a18","type":"switchNode","name":"switch ac2_protocol","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_protocol'`\">\n","comments":"","outputs":1,"x":1630,"y":1261,"z":"d42722f8.3eccb8","wires":[["97f3e1d.1c8072"]]},{"id":"1b0d7ad2.7c73cd","type":"switchNode","name":"switch ac1_protocol_bgp_as","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_protocol_bgp_as'`\">\n","comments":"","outputs":1,"x":1631,"y":1307,"z":"d42722f8.3eccb8","wires":[["e29f2e84.29cc98"]]},{"id":"503fb0c2.118f08","type":"switchNode","name":"switch ac2_protocol_bgp_as","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_protocol_bgp_as'`\">\n","comments":"","outputs":1,"x":1637,"y":1358,"z":"d42722f8.3eccb8","wires":[["cba6eaf7.a3e0f"]]},{"id":"abda3944.6cc14","type":"switchNode","name":"switch af_type","xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'af_type'`\">\n","comments":"","outputs":1,"x":1628,"y":1412,"z":"d42722f8.3eccb8","wires":[["285638b5.acb86"]]},{"id":"67a5441.72b6abc","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1778,"y":269,"z":"d42722f8.3eccb8","wires":[["db3c5d8c.944588"]]},{"id":"b0d9aff3.b00fa8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1784,"y":322,"z":"d42722f8.3eccb8","wires":[["e1dcf81.cf81f08"]]},{"id":"4d154733.c71d7","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1793,"y":384,"z":"d42722f8.3eccb8","wires":[["88926751.4fb388"]]},{"id":"a3d4aaaa.5e75f8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1791,"y":447,"z":"d42722f8.3eccb8","wires":[["b6c53efa.cf8ae"]]},{"id":"ee77e877.444dc","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1796,"y":509,"z":"d42722f8.3eccb8","wires":[["d30f9440.cd7a9"]]},{"id":"177ebd38.639203","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1788,"y":567,"z":"d42722f8.3eccb8","wires":[["9cf0b05d.8daa98"]]},{"id":"bc4514aa.bff8b","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1789,"y":630,"z":"d42722f8.3eccb8","wires":[["68b22e8f.d45fc"]]},{"id":"1007421c.7d0e8e","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1788,"y":699,"z":"d42722f8.3eccb8","wires":[["ae6ba13f.09e0d"]]},{"id":"a19c0d54.dae6","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1785,"y":767,"z":"d42722f8.3eccb8","wires":[["8027371b.40f6c8"]]},{"id":"84e52060.75ef7","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1784,"y":831,"z":"d42722f8.3eccb8","wires":[["327b55cc.8c9f6a"]]},{"id":"2bc62aa7.ef22ee","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1781,"y":877,"z":"d42722f8.3eccb8","wires":[["456d6e39.b277b"]]},{"id":"99127b02.b296b8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1783,"y":934,"z":"d42722f8.3eccb8","wires":[["ba2a56e4.37da1"]]},{"id":"99742acf.29058","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1819,"y":985,"z":"d42722f8.3eccb8","wires":[["8b3ca584.be477"]]},{"id":"80ed9287.14c0b","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1824,"y":1048,"z":"d42722f8.3eccb8","wires":[["5e28eb3d.fcfbfc"]]},{"id":"7e8264fe.9a4184","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1820,"y":1097,"z":"d42722f8.3eccb8","wires":[["9799c154.0a7f08"]]},{"id":"b90636ea.ed4c38","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1804,"y":1146,"z":"d42722f8.3eccb8","wires":[["d9366dce.978858"]]},{"id":"bacf2339.37a91","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1801,"y":1199,"z":"d42722f8.3eccb8","wires":[["d0174fbe.4dfc9"]]},{"id":"97f3e1d.1c8072","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1814,"y":1258,"z":"d42722f8.3eccb8","wires":[["cdf18661.8284a"]]},{"id":"e29f2e84.29cc98","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1839,"y":1304,"z":"d42722f8.3eccb8","wires":[["c85e7fd9.cd69c"]]},{"id":"cba6eaf7.a3e0f","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1846,"y":1354,"z":"d42722f8.3eccb8","wires":[["2c7d8d12.1b8f3a"]]},{"id":"285638b5.acb86","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1814,"y":1413,"z":"d42722f8.3eccb8","wires":[["541bf067.78e77"]]},{"id":"db3c5d8c.944588","type":"set","name":"set topology","xml":"<set>\n<parameter name='prop.l3vpn.topology' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":1973,"y":270,"z":"d42722f8.3eccb8","wires":[]},{"id":"e1dcf81.cf81f08","type":"set","name":"set technology","xml":"<set>\n<parameter name='prop.l3vpn.technology' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":1963,"y":324,"z":"d42722f8.3eccb8","wires":[]},{"id":"88926751.4fb388","type":"set","name":"set site1_name","xml":"<set>\n<parameter name='prop.l3vpn.site1_name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":1967,"y":381,"z":"d42722f8.3eccb8","wires":[]},{"id":"b6c53efa.cf8ae","type":"set","name":"set site2_name","xml":"<set>\n<parameter name='prop.l3vpn.site2_name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":1970,"y":440,"z":"d42722f8.3eccb8","wires":[]},{"id":"d30f9440.cd7a9","type":"set","name":"set sna1_name","xml":"<set>\n<parameter name='prop.l3vpn.sna1_name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":1978,"y":502,"z":"d42722f8.3eccb8","wires":[]},{"id":"9cf0b05d.8daa98","type":"set","name":"set sna2_name","xml":"<set>\n<parameter name='prop.l3vpn.sna2_name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":1970,"y":562,"z":"d42722f8.3eccb8","wires":[]},{"id":"68b22e8f.d45fc","type":"set","name":"set pe1_id","xml":"<set>\n<parameter name='prop.l3vpn.pe1_id' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":1967,"y":622,"z":"d42722f8.3eccb8","wires":[]},{"id":"ae6ba13f.09e0d","type":"set","name":"set pe2_id","xml":"<set>\n<parameter name='prop.l3vpn.pe2_id' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":1963,"y":693,"z":"d42722f8.3eccb8","wires":[]},{"id":"8027371b.40f6c8","type":"set","name":"set ac1_id","xml":"<set>\n<parameter name='prop.l3vpn.ac1_id' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":1956,"y":759,"z":"d42722f8.3eccb8","wires":[]},{"id":"327b55cc.8c9f6a","type":"set","name":"set ac2_id","xml":"<set>\n<parameter name='prop.l3vpn.ac2_id' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":1959,"y":826,"z":"d42722f8.3eccb8","wires":[]},{"id":"456d6e39.b277b","type":"set","name":"set ac1_ip","xml":"<set>\n<parameter name='prop.l3vpn.ac1_ip' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":1959,"y":880,"z":"d42722f8.3eccb8","wires":[]},{"id":"ba2a56e4.37da1","type":"set","name":"set ac2_ip","xml":"<set>\n<parameter name='prop.l3vpn.ac2_ip' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":1963,"y":934,"z":"d42722f8.3eccb8","wires":[]},{"id":"8b3ca584.be477","type":"set","name":"set ac1_peer_ip","xml":"<set>\n<parameter name='prop.l3vpn.ac1_peer_ip' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":2011,"y":989,"z":"d42722f8.3eccb8","wires":[]},{"id":"5e28eb3d.fcfbfc","type":"set","name":"set ac2_peer_ip","xml":"<set>\n<parameter name='prop.l3vpn.ac2_peer_ip' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":2007,"y":1044,"z":"d42722f8.3eccb8","wires":[]},{"id":"9799c154.0a7f08","type":"set","name":"set ac1_svlan","xml":"<set>\n<parameter name='prop.l3vpn.ac1_svlan' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":2001,"y":1099,"z":"d42722f8.3eccb8","wires":[]},{"id":"d9366dce.978858","type":"set","name":"set ac2_svlan","xml":"<set>\n<parameter name='prop.l3vpn.ac2_svlan' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":1998,"y":1152,"z":"d42722f8.3eccb8","wires":[]},{"id":"d0174fbe.4dfc9","type":"set","name":"set ac1_protocol","xml":"<set>\n<parameter name='prop.l3vpn.ac1_protocol' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":1996,"y":1209,"z":"d42722f8.3eccb8","wires":[]},{"id":"cdf18661.8284a","type":"set","name":"set ac2_protocol","xml":"<set>\n<parameter name='prop.l3vpn.name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":2005,"y":1261,"z":"d42722f8.3eccb8","wires":[]},{"id":"c85e7fd9.cd69c","type":"set","name":"set ac1_protocol_bgp_as","xml":"<set>\n<parameter name='prop.l3vpn.ac1_protocol_bgp_as' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":2016,"y":1312,"z":"d42722f8.3eccb8","wires":[]},{"id":"2c7d8d12.1b8f3a","type":"set","name":"set ac1_protocol_bgp_as","xml":"<set>\n<parameter name='prop.l3vpn.ac1_protocol_bgp_as' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":2021,"y":1367,"z":"d42722f8.3eccb8","wires":[]},{"id":"541bf067.78e77","type":"set","name":"set af_type","xml":"<set>\n<parameter name='prop.l3vpn.af_type' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n","comments":"","x":2019,"y":1425,"z":"d42722f8.3eccb8","wires":[]}]
\ No newline at end of file
+[
+  {
+    "id": "6c6bc16c.ca3e3",
+    "type": "dgstart",
+    "name": "DGSTART",
+    "outputs": 1,
+    "x": 77,
+    "y": 53,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "537702a4.cc8034"
+      ]
+    ]
+  },
+  {
+    "id": "537702a4.cc8034",
+    "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": 289.00000381469727,
+    "y": 125.0000171661377,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "be1e8309.4bc4c8"
+      ]
+    ]
+  },
+  {
+    "id": "be1e8309.4bc4c8",
+    "type": "method",
+    "name": "method network-topology-operation-create",
+    "xml": "<method rpc='network-topology-operation-create' mode='sync'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 277.0001220703125,
+    "y": 213,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "15842b75.da07e5"
+      ]
+    ]
+  },
+  {
+    "id": "15842b75.da07e5",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">\n",
+    "atomic": "false",
+    "comments": "",
+    "outputs": 1,
+    "x": 553.0000305175781,
+    "y": 221.00001335144043,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "35d46a8d.e7edce",
+        "861f67a.7920b18",
+        "38a3e2ad.559ce6",
+        "39c4a2ad.6290be",
+        "56d07259.1d8cbc",
+        "5c9ca6e0.e239a",
+        "e21a9c92.1f2a28",
+        "151a4cba.fa33e3",
+        "be047f99.592428",
+        "1460f5c7.7bf212",
+        "e2d35c41.dd6f5"
+      ]
+    ]
+  },
+  {
+    "id": "d2fcc9e7.aec75",
+    "type": "execute",
+    "name": "execute RestApiCallNode Create IPWAN L3VPN",
+    "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"$prop.sdncRestApi.tempDir +'/l3smvpntemplate.json'\"/>\n<parameter name=\"restapiUrl\" value=\"$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/vpn-services'\"/>\n<parameter name=\"restapiUser\" value=\"$prop.sdncRestApi.thirdpartySdnc.user\"/>\n<parameter name=\"restapiPassword\" value=\"$prop.sdncRestApi.thirdpartySdnc.password\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"restapi-result\"/>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1149.0001831054688,
+    "y": 737,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "35d46a8d.e7edce",
+    "type": "set",
+    "name": "set controller data",
+    "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.url' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.serviceUrl`\" />\n<parameter name='prop.sdncRestApi.templateDir' value='/opt/onap/sdnc/data' />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.user' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.password' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.password`\" />\n",
+    "comments": "",
+    "x": 781.0000610351562,
+    "y": 293,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "56d07259.1d8cbc",
+    "type": "for",
+    "name": "for each network-input-parameters",
+    "xml": "<for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 838.6666259765625,
+    "y": 389.6666564941406,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "b2478f4e.7cd8b"
+      ]
+    ]
+  },
+  {
+    "id": "6b6b65e4.027114",
+    "type": "execute",
+    "name": "execute RestApiCallNode Create SPTN L3VPN",
+    "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"$prop.sdncRestApi.tempDir +'/l3smsitetemplate.json'\"/>\n<parameter name=\"restapiUrl\" value=\"$prop.sdncRestApi.thirdpartySdnc.url\"/>\n<parameter name=\"restapiUser\" value=\"$prop.sdncRestApi.thirdpartySdnc.user\"/>\n<parameter name=\"restapiPassword\" value=\"$prop.sdncRestApi.thirdpartySdnc.password\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"restapi-result\"/>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1120.6668701171875,
+    "y": 939.6666870117188,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "39c4a2ad.6290be",
+    "type": "execute",
+    "name": "execute vpn-policy1-id",
+    "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.l3vpn.vpn-policy1-id\"/>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 798.6666259765625,
+    "y": 446.66668701171875,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "96af0d.cf3c10f"
+      ]
+    ]
+  },
+  {
+    "id": "96af0d.cf3c10f",
+    "type": "failure",
+    "name": "failure",
+    "xml": "<outcome value='failure'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1023.6666259765625,
+    "y": 449.6666564941406,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "7438ecb9.4567f4"
+      ]
+    ]
+  },
+  {
+    "id": "7438ecb9.4567f4",
+    "type": "returnFailure",
+    "name": "return failure",
+    "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while generation vpn policy ID\" />\n",
+    "comments": "",
+    "x": 1204.6666259765625,
+    "y": 447.6666564941406,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "861f67a.7920b18",
+    "type": "call",
+    "name": "call GENERIC-RESOURCE-API:validate-network-input-parameters",
+    "xml": "<call module='GENERIC-RESOURCE-API' rpc='validate-network-input-parameters' mode='sync' >\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 850.5,
+    "y": 90,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "38a3e2ad.559ce6",
+    "type": "get-resource",
+    "name": "get-resource esr-thirdparty-sdnc",
+    "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"esr-thirdparty-sdnc\" \n\t\tkey=\"esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND \n\t\t     depth = '1'\"\n        pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >\n\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 820.5,
+    "y": 207,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "747be621.ebaa68",
+        "e28c7994.72931",
+        "5f530a05.e03c5c"
+      ]
+    ]
+  },
+  {
+    "id": "747be621.ebaa68",
+    "type": "success",
+    "name": "success",
+    "xml": "<outcome value='success'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1145.5,
+    "y": 138,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "270f57b4.7e9228"
+      ]
+    ]
+  },
+  {
+    "id": "e28c7994.72931",
+    "type": "not-found",
+    "name": "not-found",
+    "xml": "<outcome value='not-found'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1148.990966796875,
+    "y": 185.57403564453125,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "b482495d.0483a"
+      ]
+    ]
+  },
+  {
+    "id": "5f530a05.e03c5c",
+    "type": "other",
+    "name": "other",
+    "xml": "<outcome value='Other'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1144.323974609375,
+    "y": 226.9073486328125,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "552e5145.a20188"
+      ]
+    ]
+  },
+  {
+    "id": "b482495d.0483a",
+    "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=\"Network model is_bound_to_vpn=true but no vpn_binding is present\" />\n\n",
+    "comments": "",
+    "x": 1325.5623779296875,
+    "y": 173.85977172851562,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "552e5145.a20188",
+    "type": "returnFailure",
+    "name": "return failure",
+    "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n    <parameter name=\"error-message\" value=\"Unexpected error retrieving vpn binding\" />\n\n",
+    "comments": "",
+    "x": 1332.0965309143066,
+    "y": 222.34654140472412,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "270f57b4.7e9228",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 1323.705322265625,
+    "y": 130.57403564453125,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "b2478f4e.7cd8b",
+    "type": "block",
+    "name": "block",
+    "xml": "<block>\n",
+    "atomic": "false",
+    "comments": "",
+    "outputs": 1,
+    "x": 1237.5,
+    "y": 396,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "92f693f1.fbeac8",
+        "fa654c60.33fc7",
+        "3c75f999.d8df1e",
+        "399d4af.75d7f36",
+        "f1384917.ec5db8",
+        "b487b0d3.26ff08",
+        "507ab3c0.3b67f4",
+        "b36084e3.ed78c",
+        "43267259.9b3cb4",
+        "2536a52a.61b14a",
+        "7ec07647.4a18e8",
+        "cc9729b3.35c9a8",
+        "72f85ed8.f54e68",
+        "b028194c.b3b988",
+        "b0ea6a25.f32ed",
+        "b7bb055e.312e1",
+        "d25d1bce.304f78",
+        "49087f87.ab7e78",
+        "6e2762a6.8272c4",
+        "5f3b0791.9b6e88",
+        "1aacfbe9.a7c6bc",
+        "f2101f18.ae2b68",
+        "ca43c6ae.b67f4",
+        "5a7334fb.eef58c",
+        "bf6d8b73.1d1d2"
+      ]
+    ]
+  },
+  {
+    "id": "92f693f1.fbeac8",
+    "type": "switchNode",
+    "name": "switch name",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1588.5,
+    "y": 20.000030517578125,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "6d73e8b1.07061"
+      ]
+    ]
+  },
+  {
+    "id": "fa654c60.33fc7",
+    "type": "switchNode",
+    "name": "switch service-type",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'service-type'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1592.4999389648438,
+    "y": 81.60000610351562,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "2301d600.a73462"
+      ]
+    ]
+  },
+  {
+    "id": "6d73e8b1.07061",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1775.5,
+    "y": 20.000030517578125,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "1d383b47.d3c90d"
+      ]
+    ]
+  },
+  {
+    "id": "2301d600.a73462",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1777.4999389648438,
+    "y": 79.60000610351562,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "f95d177d.930be"
+      ]
+    ]
+  },
+  {
+    "id": "1d383b47.d3c90d",
+    "type": "set",
+    "name": "set name",
+    "xml": "<set>\n<parameter name='prop.l3vpn.name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1943.5,
+    "y": 20.60003662109375,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "f95d177d.930be",
+    "type": "set",
+    "name": "set service-type",
+    "xml": "<set>\n<parameter name='prop.l3vpn.service-type' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1946.4999389648438,
+    "y": 77.60000610351562,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "3c75f999.d8df1e",
+    "type": "switchNode",
+    "name": "switch topology",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'topology'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1591.5,
+    "y": 143,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "64ec1f5c.cd7588"
+      ]
+    ]
+  },
+  {
+    "id": "399d4af.75d7f36",
+    "type": "switchNode",
+    "name": "switch technology",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'technology'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1594.5,
+    "y": 196,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "30608684.1fa91a"
+      ]
+    ]
+  },
+  {
+    "id": "f1384917.ec5db8",
+    "type": "switchNode",
+    "name": "switch site1_name",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_name'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1599.5,
+    "y": 258,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "7b6affba.2f1ea8"
+      ]
+    ]
+  },
+  {
+    "id": "b487b0d3.26ff08",
+    "type": "switchNode",
+    "name": "switch site2_name",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_name'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1594.5,
+    "y": 321,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "e7d8abc.3397ed8"
+      ]
+    ]
+  },
+  {
+    "id": "507ab3c0.3b67f4",
+    "type": "switchNode",
+    "name": "switch sna1_name",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'sna1_name'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1599.5,
+    "y": 381,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "ccbb4e0a.e4624"
+      ]
+    ]
+  },
+  {
+    "id": "b36084e3.ed78c",
+    "type": "switchNode",
+    "name": "switch sna2_name",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'sna2_name'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1594.5,
+    "y": 445,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "5e7b746e.c31ebc"
+      ]
+    ]
+  },
+  {
+    "id": "43267259.9b3cb4",
+    "type": "switchNode",
+    "name": "switch pe1_id",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'pe1_id'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1599.5,
+    "y": 507,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "cd97fc49.ef9428"
+      ]
+    ]
+  },
+  {
+    "id": "2536a52a.61b14a",
+    "type": "switchNode",
+    "name": "switch pe2_id",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'pe2_id'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1614.5,
+    "y": 567,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "b43f1ee2.b85a2"
+      ]
+    ]
+  },
+  {
+    "id": "7ec07647.4a18e8",
+    "type": "switchNode",
+    "name": "switch ac1_id",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_id'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1609.5,
+    "y": 639,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "b4d9a4d.005d958"
+      ]
+    ]
+  },
+  {
+    "id": "cc9729b3.35c9a8",
+    "type": "switchNode",
+    "name": "switch ac2_id",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_id'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1608.5,
+    "y": 698,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "7dfb851.0b49cfc"
+      ]
+    ]
+  },
+  {
+    "id": "72f85ed8.f54e68",
+    "type": "switchNode",
+    "name": "switch ac1_ip",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_ip'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1585.5,
+    "y": 761,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "d713e906.7f455"
+      ]
+    ]
+  },
+  {
+    "id": "b028194c.b3b988",
+    "type": "switchNode",
+    "name": "switch ac2_ip",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_ip'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1588.5,
+    "y": 818,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "973837ca.190aa8"
+      ]
+    ]
+  },
+  {
+    "id": "b0ea6a25.f32ed",
+    "type": "switchNode",
+    "name": "switch ac1_peer_ip",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_peer_ip'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1594.5,
+    "y": 870,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "6ccb4ca1.2cd06c"
+      ]
+    ]
+  },
+  {
+    "id": "b7bb055e.312e1",
+    "type": "switchNode",
+    "name": "switch ac2_peer_ip",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_peer_ip'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1595.5,
+    "y": 925,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "b9aa2fd2.814f48"
+      ]
+    ]
+  },
+  {
+    "id": "d25d1bce.304f78",
+    "type": "switchNode",
+    "name": "switch ac1_svlan",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_svlan'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1607.5,
+    "y": 974,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "7df19f10.00d63"
+      ]
+    ]
+  },
+  {
+    "id": "49087f87.ab7e78",
+    "type": "switchNode",
+    "name": "switch ac2_svlan",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_svlan'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1600.5,
+    "y": 1025,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "deb16fb4.873d88"
+      ]
+    ]
+  },
+  {
+    "id": "6e2762a6.8272c4",
+    "type": "switchNode",
+    "name": "switch ac1_protocol",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_protocol'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1593.5,
+    "y": 1083,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "d9a405e5.0fbd78"
+      ]
+    ]
+  },
+  {
+    "id": "5f3b0791.9b6e88",
+    "type": "switchNode",
+    "name": "switch ac2_protocol",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_protocol'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1594.5,
+    "y": 1143,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "f17cdf9a.1f70e"
+      ]
+    ]
+  },
+  {
+    "id": "1aacfbe9.a7c6bc",
+    "type": "switchNode",
+    "name": "switch ac1_protocol_bgp_as",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_protocol_bgp_as'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1588.5,
+    "y": 1329,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "3676d16.bff3dae"
+      ]
+    ]
+  },
+  {
+    "id": "f2101f18.ae2b68",
+    "type": "switchNode",
+    "name": "switch ac2_protocol_bgp_as",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_protocol_bgp_as'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1594.5,
+    "y": 1380,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "43e3c11a.4b0498"
+      ]
+    ]
+  },
+  {
+    "id": "ca43c6ae.b67f4",
+    "type": "switchNode",
+    "name": "switch af_type",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'af_type'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1561.5,
+    "y": 1471,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "ab13048a.b0a2"
+      ]
+    ]
+  },
+  {
+    "id": "64ec1f5c.cd7588",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1766.5,
+    "y": 139,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "f1c21eed.4c6488"
+      ]
+    ]
+  },
+  {
+    "id": "30608684.1fa91a",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1772.5,
+    "y": 192,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "db52bb2.d3cc7c8"
+      ]
+    ]
+  },
+  {
+    "id": "7b6affba.2f1ea8",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1781.5,
+    "y": 254,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "7c0e170d.30b1d"
+      ]
+    ]
+  },
+  {
+    "id": "e7d8abc.3397ed8",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1779.5,
+    "y": 317,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "947c8730.9c4b48"
+      ]
+    ]
+  },
+  {
+    "id": "ccbb4e0a.e4624",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1784.5,
+    "y": 379,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "a06ad2cd.275448"
+      ]
+    ]
+  },
+  {
+    "id": "5e7b746e.c31ebc",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1776.5,
+    "y": 437,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "b2aa581c.5af32"
+      ]
+    ]
+  },
+  {
+    "id": "cd97fc49.ef9428",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1777.5,
+    "y": 500,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "72cbbe8e.f6925"
+      ]
+    ]
+  },
+  {
+    "id": "b43f1ee2.b85a2",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1776.5,
+    "y": 569,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "d9091182.9c0dc8"
+      ]
+    ]
+  },
+  {
+    "id": "b4d9a4d.005d958",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1773.5,
+    "y": 637,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "ae505877.71061"
+      ]
+    ]
+  },
+  {
+    "id": "7dfb851.0b49cfc",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1772.5,
+    "y": 701,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "2f24e7f6.a11b28"
+      ]
+    ]
+  },
+  {
+    "id": "d713e906.7f455",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1745.5,
+    "y": 759,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "42443b38.340f8c"
+      ]
+    ]
+  },
+  {
+    "id": "973837ca.190aa8",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1747.5,
+    "y": 816,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "e3ce9d5.2cdf36"
+      ]
+    ]
+  },
+  {
+    "id": "6ccb4ca1.2cd06c",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1783.5,
+    "y": 867,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "7054b5f4.206a54"
+      ]
+    ]
+  },
+  {
+    "id": "b9aa2fd2.814f48",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1788.5,
+    "y": 930,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "784b972f.0e3428"
+      ]
+    ]
+  },
+  {
+    "id": "7df19f10.00d63",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1784.5,
+    "y": 979,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "206c366c.675522"
+      ]
+    ]
+  },
+  {
+    "id": "deb16fb4.873d88",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1768.5,
+    "y": 1028,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "10227f41.369851"
+      ]
+    ]
+  },
+  {
+    "id": "d9a405e5.0fbd78",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1765.5,
+    "y": 1081,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "1799ee09.bb8ffa"
+      ]
+    ]
+  },
+  {
+    "id": "f17cdf9a.1f70e",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1778.5,
+    "y": 1140,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "a6d260a1.f58c48"
+      ]
+    ]
+  },
+  {
+    "id": "3676d16.bff3dae",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1796.5,
+    "y": 1326,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "8bd5be57.1da07"
+      ]
+    ]
+  },
+  {
+    "id": "43e3c11a.4b0498",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1803.5,
+    "y": 1376,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "b62f8a75.a94a88"
+      ]
+    ]
+  },
+  {
+    "id": "ab13048a.b0a2",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1765.5,
+    "y": 1480,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "d6461dbb.9360e8"
+      ]
+    ]
+  },
+  {
+    "id": "f1c21eed.4c6488",
+    "type": "set",
+    "name": "set topology",
+    "xml": "<set>\n<parameter name='prop.l3vpn.topology' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1961.5,
+    "y": 140,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "db52bb2.d3cc7c8",
+    "type": "set",
+    "name": "set technology",
+    "xml": "<set>\n<parameter name='prop.l3vpn.technology' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1951.5,
+    "y": 194,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "7c0e170d.30b1d",
+    "type": "set",
+    "name": "set site1_name",
+    "xml": "<set>\n<parameter name='prop.l3vpn.site1_name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1955.5,
+    "y": 251,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "947c8730.9c4b48",
+    "type": "set",
+    "name": "set site2_name",
+    "xml": "<set>\n<parameter name='prop.l3vpn.site2_name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1958.5,
+    "y": 310,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "a06ad2cd.275448",
+    "type": "set",
+    "name": "set sna1_name",
+    "xml": "<set>\n<parameter name='prop.l3vpn.sna1_name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1966.5,
+    "y": 372,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "b2aa581c.5af32",
+    "type": "set",
+    "name": "set sna2_name",
+    "xml": "<set>\n<parameter name='prop.l3vpn.sna2_name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1958.5,
+    "y": 432,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "72cbbe8e.f6925",
+    "type": "set",
+    "name": "set pe1_id",
+    "xml": "<set>\n<parameter name='prop.l3vpn.pe1_id' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1955.5,
+    "y": 492,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "d9091182.9c0dc8",
+    "type": "set",
+    "name": "set pe2_id",
+    "xml": "<set>\n<parameter name='prop.l3vpn.pe2_id' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1951.5,
+    "y": 563,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "ae505877.71061",
+    "type": "set",
+    "name": "set ac1_id",
+    "xml": "<set>\n<parameter name='prop.l3vpn.ac1_id' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1944.5,
+    "y": 629,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "2f24e7f6.a11b28",
+    "type": "set",
+    "name": "set ac2_id",
+    "xml": "<set>\n<parameter name='prop.l3vpn.ac2_id' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1947.5,
+    "y": 696,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "42443b38.340f8c",
+    "type": "set",
+    "name": "set ac1_ip",
+    "xml": "<set>\n<parameter name='prop.l3vpn.ac1_ip' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1923.5,
+    "y": 762,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "e3ce9d5.2cdf36",
+    "type": "set",
+    "name": "set ac2_ip",
+    "xml": "<set>\n<parameter name='prop.l3vpn.ac2_ip' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1927.5,
+    "y": 816,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "7054b5f4.206a54",
+    "type": "set",
+    "name": "set ac1_peer_ip",
+    "xml": "<set>\n<parameter name='prop.l3vpn.ac1_peer_ip' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1975.5,
+    "y": 871,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "784b972f.0e3428",
+    "type": "set",
+    "name": "set ac2_peer_ip",
+    "xml": "<set>\n<parameter name='prop.l3vpn.ac2_peer_ip' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1971.5,
+    "y": 926,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "206c366c.675522",
+    "type": "set",
+    "name": "set ac1_svlan",
+    "xml": "<set>\n<parameter name='prop.l3vpn.ac1_svlan' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1965.5,
+    "y": 981,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "10227f41.369851",
+    "type": "set",
+    "name": "set ac2_svlan",
+    "xml": "<set>\n<parameter name='prop.l3vpn.ac2_svlan' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1962.5,
+    "y": 1034,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "1799ee09.bb8ffa",
+    "type": "set",
+    "name": "set ac1_protocol",
+    "xml": "<set>\n<parameter name='prop.l3vpn.ac1_protocol' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1960.5,
+    "y": 1091,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "a6d260a1.f58c48",
+    "type": "set",
+    "name": "set ac2_protocol",
+    "xml": "<set>\n<parameter name='prop.l3vpn.ac2_protocol' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1969.5,
+    "y": 1143,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "8bd5be57.1da07",
+    "type": "set",
+    "name": "set ac1_protocol_bgp_as",
+    "xml": "<set>\n<parameter name='prop.l3vpn.ac1_protocol_bgp_as' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n<parameter name='prop.l3vpn.peer1-ip' value='`$prop.l3vpn.ac1_ip`' />\n",
+    "comments": "",
+    "x": 2063.5,
+    "y": 1347,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "b62f8a75.a94a88",
+    "type": "set",
+    "name": "set ac2_protocol_bgp_as",
+    "xml": "<set>\n<parameter name='prop.l3vpn.ac2_protocol_bgp_as' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n<parameter name='prop.l3vpn.peer2-ip' value='`$prop.l3vpn.ac2_ip`' />\n",
+    "comments": "",
+    "x": 2075.5,
+    "y": 1396,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "d6461dbb.9360e8",
+    "type": "set",
+    "name": "set af_type",
+    "xml": "<set>\n<parameter name='prop.l3vpn.af_type' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1959.5,
+    "y": 1490,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "5c9ca6e0.e239a",
+    "type": "record",
+    "name": "record",
+    "xml": "<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.FileRecorder\">\n<parameter name=\"file\" value=\"/opt/opendaylight/current/data/log/svclogic.log\"/>\n<parameter name=\"Time\" value=\"__TIMESTAMP__\"/>\n<parameter name=\"Method\" value=\"network-topology-operation-create\"/>\n<parameter name=\"SubMethod\" value=\"L3VPN-Config\"/>\n<parameter name=\"l3vpn_name\" value=\"`$prop.l3vpn.name`\"/>\n<parameter name=\"topology\" value=\"`$prop.l3vpn.topology`\"/>\n<parameter name=\"site1_name\" value=\"`$prop.l3vpn.site1_name`\"/>\n<parameter name=\"vpn-policy1-id\" value=\"`$prop.l3vpn.vpn-policy1-id}`\"/>\n<parameter name=\"l3vpn.entry1-id\" value=\"`$prop.l3vpn.entry1-id`\"/>\n<parameter name=\"sna1_name\" value=\"`$prop.l3vpn.sna1_name`\"/>\n<parameter name=\"pe1_id\" value=\"`$prop.l3vpn.pe1_id`\"/>\n<parameter name=\"ac1_id\" value=\"`$prop.l3vpn.ac1_id`\"/>\n<parameter name=\"sna1_svlan\" value=\"`$prop.l3vpn.sna1_svlan`\"/>\n<parameter name=\"ac1-peer-ip\" value=\"`$prop.l3vpn.ac1-peer-ip`\"/>\n<parameter name=\"ac1-ip\" value=\"`$prop.l3vpn.ac1-ip`\"/>\n<parameter name=\"ac1_protocol\" value=\"`$prop.l3vpn.ac1_protocol`\"/>\n<parameter name=\"sna1-route-ip-prefix\" value=\"`$prop.l3vpn.sna1-route-ip-prefix`\"/>\n<parameter name=\"sna1-route-next-hop\" value=\"`$prop.l3vpn.sna1-route-next-hop`\"/>\n<parameter name=\"peer2-ip\" value=\"`$prop.l3vpn.peer2-ip`\"/>\n<parameter name=\"ac2_protocol_bgp_as\" value=\"`$prop.l3vpn.ac2_protocol_bgp_as`\"/>\n<parameter name=\"vrf1-id\" value=\"`$prop.l3vpn.vrf1-id`\"/>\n<parameter name=\"site2_name\" value=\"`$prop.l3vpn.site2_name`\"/>\n<parameter name=\"vpn-policy2-id\" value=\"`$prop.l3vpn.vpn-policy2-id}`\"/>\n<parameter name=\"l3vpn.entry2-id\" value=\"`$prop.l3vpn.entry2-id`\"/>\n<parameter name=\"sna2_name\" value=\"`$prop.l3vpn.sna2_name`\"/>\n<parameter name=\"pe2_id\" value=\"`$prop.l3vpn.pe2_id`\"/>\n<parameter name=\"ac2_id\" value=\"`$prop.l3vpn.ac2_id`\"/>\n<parameter name=\"sna2_svlan\" value=\"`$prop.l3vpn.sna2_svlan`\"/>\n<parameter name=\"ac2-peer-ip\" value=\"`$prop.l3vpn.ac2-peer-ip`\"/>\n<parameter name=\"ac2-ip\" value=\"`$prop.l3vpn.ac2-ip`\"/>\n<parameter name=\"ac2_protocol\" value=\"`$prop.l3vpn.ac2_protocol`\"/>\n<parameter name=\"sna2-route-ip-prefix\" value=\"`$prop.l3vpn.sna2-route-ip-prefix`\"/>\n<parameter name=\"sna2-route-next-hop\" value=\"`$prop.l3vpn.sna2-route-next-hop`\"/>\n<parameter name=\"peer2-ip\" value=\"`$prop.l3vpn.peer2-ip`\"/>\n<parameter name=\"ac2_protocol_bgp_as\" value=\"`$prop.l3vpn.ac2_protocol_bgp_as`\"/>\n<parameter name=\"vrf2-id\" value=\"`$prop.l3vpn.vrf2-id`\"/>\n<parameter name=\"af_type\" value=\"`$prop.l3vpn.af_type`\"/>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 758,
+    "y": 741,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "e21a9c92.1f2a28",
+    "type": "switchNode",
+    "name": "switch service-type",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'service-type'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 683,
+    "y": 881,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "35f4cd65.09f49a",
+        "75d7a8fd.a7b578",
+        "8c0ace1c.3759a8"
+      ]
+    ]
+  },
+  {
+    "id": "35f4cd65.09f49a",
+    "type": "outcomeTrue",
+    "name": "l3vpn-ipwan",
+    "xml": "<outcome value='l3vpn-ipwan'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 669,
+    "y": 806,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "97e69226.8d874"
+      ]
+    ]
+  },
+  {
+    "id": "75d7a8fd.a7b578",
+    "type": "outcomeTrue",
+    "name": "l3vpn-sptn",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 827,
+    "y": 949,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "6b6b65e4.027114"
+      ]
+    ]
+  },
+  {
+    "id": "8c0ace1c.3759a8",
+    "type": "outcomeTrue",
+    "name": "other",
+    "xml": "<outcome value='Other'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 825,
+    "y": 1028,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "942583bd.a55fc8"
+      ]
+    ]
+  },
+  {
+    "id": "942583bd.a55fc8",
+    "type": "returnFailure",
+    "name": "return failure",
+    "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n    <parameter name=\"error-message\" value=\"Unexpected error retrieving vpn binding\" />\n\n",
+    "comments": "",
+    "x": 1008,
+    "y": 1027,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "151a4cba.fa33e3",
+    "type": "execute",
+    "name": "execute vpn-policy2-id",
+    "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.l3vpn.vpn-policy2-id\"/>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 799,
+    "y": 505,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "e0623ae9.6063c"
+      ]
+    ]
+  },
+  {
+    "id": "e0623ae9.6063c",
+    "type": "failure",
+    "name": "failure",
+    "xml": "<outcome value='failure'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1024,
+    "y": 507.9999694824219,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "25b266b0.918a82"
+      ]
+    ]
+  },
+  {
+    "id": "25b266b0.918a82",
+    "type": "returnFailure",
+    "name": "return failure",
+    "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while generation vpn policy ID\" />\n",
+    "comments": "",
+    "x": 1205,
+    "y": 505.9999694824219,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "be047f99.592428",
+    "type": "set",
+    "name": "set policy entry",
+    "xml": "<set>\n<parameter name='prop.l3vpn.entry1-id' value='1' />\n<parameter name='prop.l3vpn.entry2-id' value='1' />\n\n",
+    "comments": "",
+    "x": 785,
+    "y": 553,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "98526d9c.6760b",
+    "type": "execute",
+    "name": "execute split ac1-route",
+    "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\n<parameter name=\"original_string\" value='`$prop.l3vpn.ac1-route`'/>\n<parameter name=\"regex\" value=\" ## \"/>\n<parameter name=\"ctx_memory_result_key\" value=\"route1\"/>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 2189,
+    "y": 1203,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "b220812e.109778",
+        "351eda30.07db16"
+      ]
+    ]
+  },
+  {
+    "id": "bf6d8b73.1d1d2",
+    "type": "switchNode",
+    "name": "switch ac2_route",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_route'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1590,
+    "y": 1251,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "7a9c17fc.2f1e08"
+      ]
+    ]
+  },
+  {
+    "id": "5a7334fb.eef58c",
+    "type": "switchNode",
+    "name": "switch ac1_route",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_route'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1591,
+    "y": 1202,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "56e3cd9c.43986c"
+      ]
+    ]
+  },
+  {
+    "id": "56e3cd9c.43986c",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1763,
+    "y": 1200,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "477adf42.483428"
+      ]
+    ]
+  },
+  {
+    "id": "7a9c17fc.2f1e08",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1776,
+    "y": 1259,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "fc261e72.93fdd8"
+      ]
+    ]
+  },
+  {
+    "id": "54fbb9e9.bfa918",
+    "type": "set",
+    "name": "set ac1_route",
+    "xml": "<set>\n<parameter name='prop.l3vpn.ac1_route' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 2160,
+    "y": 1151,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "d7d47e9f.d291a8",
+    "type": "set",
+    "name": "set ac2_route",
+    "xml": "<set>\n<parameter name='prop.l3vpn.ac2_route' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 2158,
+    "y": 1251,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "8d93fa75.d66f9",
+    "type": "execute",
+    "name": "execute split ac2-route",
+    "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\n<parameter name=\"original_string\" value='`$prop.l3vpn.ac2-route`'/>\n<parameter name=\"regex\" value=\" ## \"/>\n<parameter name=\"ctx_memory_result_key\" value=\"route2\"/>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 2182,
+    "y": 1296,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "ff5e6e80.75b3d",
+        "b6c5cd5f.5be15"
+      ]
+    ]
+  },
+  {
+    "id": "477adf42.483428",
+    "type": "block",
+    "name": "block atomic",
+    "xml": "<block atomic=\"true\">\n",
+    "atomic": "false",
+    "comments": "",
+    "outputs": 1,
+    "x": 1914,
+    "y": 1200,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "54fbb9e9.bfa918",
+        "98526d9c.6760b"
+      ]
+    ]
+  },
+  {
+    "id": "fc261e72.93fdd8",
+    "type": "block",
+    "name": "block atomic",
+    "xml": "<block atomic=\"true\">\n",
+    "atomic": "false",
+    "comments": "",
+    "outputs": 1,
+    "x": 1915,
+    "y": 1259,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "d7d47e9f.d291a8",
+        "8d93fa75.d66f9"
+      ]
+    ]
+  },
+  {
+    "id": "1460f5c7.7bf212",
+    "type": "execute",
+    "name": "execute vrf1-id",
+    "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.l3vpn.vrf1-id\"/>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 806,
+    "y": 608,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "d4cb6331.d1fce8"
+      ]
+    ]
+  },
+  {
+    "id": "e2d35c41.dd6f5",
+    "type": "execute",
+    "name": "execute vrf2-id",
+    "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.l3vpn.vrf2-id\"/>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 806.3333740234375,
+    "y": 666.3333129882812,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "aa4153ec.2a7508"
+      ]
+    ]
+  },
+  {
+    "id": "aa4153ec.2a7508",
+    "type": "failure",
+    "name": "failure",
+    "xml": "<outcome value='failure'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1031.3333740234375,
+    "y": 669.3332824707031,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "4a3bd02b.dd7f6"
+      ]
+    ]
+  },
+  {
+    "id": "d4cb6331.d1fce8",
+    "type": "failure",
+    "name": "failure",
+    "xml": "<outcome value='failure'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1031,
+    "y": 610.9999694824219,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "34c6dafd.7466b6"
+      ]
+    ]
+  },
+  {
+    "id": "34c6dafd.7466b6",
+    "type": "returnFailure",
+    "name": "return failure",
+    "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while generation vpn policy ID\" />\n",
+    "comments": "",
+    "x": 1212,
+    "y": 608.9999694824219,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "4a3bd02b.dd7f6",
+    "type": "returnFailure",
+    "name": "return failure",
+    "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while generation vpn policy ID\" />\n",
+    "comments": "",
+    "x": 1212.3333740234375,
+    "y": 667.3332824707031,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "97e69226.8d874",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">\n",
+    "atomic": "false",
+    "comments": "",
+    "outputs": 1,
+    "x": 848,
+    "y": 806,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "d2fcc9e7.aec75",
+        "29a0e3d5.f4d32c",
+        "c946ab83.d974f8"
+      ]
+    ]
+  },
+  {
+    "id": "29a0e3d5.f4d32c",
+    "type": "execute",
+    "name": "execute RestApiCallNode IPWAN Site Config",
+    "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"$prop.sdncRestApi.tempDir +'/l3smvpntemplate.json'\"/>\n<parameter name=\"restapiUrl\" value=\"$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/vpn-services'\"/>\n<parameter name=\"restapiUser\" value=\"$prop.sdncRestApi.thirdpartySdnc.user\"/>\n<parameter name=\"restapiPassword\" value=\"$prop.sdncRestApi.thirdpartySdnc.password\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"restapi-result\"/>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1156,
+    "y": 801,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "c946ab83.d974f8",
+    "type": "execute",
+    "name": "execute RestApiCallNode IPWAN VRF Config",
+    "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"$prop.sdncRestApi.tempDir +'/l3smvpntemplate.json'\"/>\n<parameter name=\"restapiUrl\" value=\"$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/vpn-services'\"/>\n<parameter name=\"restapiUser\" value=\"$prop.sdncRestApi.thirdpartySdnc.user\"/>\n<parameter name=\"restapiPassword\" value=\"$prop.sdncRestApi.thirdpartySdnc.password\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"restapi-result\"/>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1154,
+    "y": 872,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "b220812e.109778",
+    "type": "failure",
+    "name": "failure",
+    "xml": "<outcome value='failure'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 2407,
+    "y": 1195,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "c61ec37b.6cd3b8"
+      ]
+    ]
+  },
+  {
+    "id": "c61ec37b.6cd3b8",
+    "type": "returnFailure",
+    "name": "return failure",
+    "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while splitting sna1_route\" />\n",
+    "comments": "",
+    "x": 2588,
+    "y": 1193,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "ff5e6e80.75b3d",
+    "type": "failure",
+    "name": "failure",
+    "xml": "<outcome value='failure'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 2405,
+    "y": 1297,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "73eb8615.8d24d8"
+      ]
+    ]
+  },
+  {
+    "id": "73eb8615.8d24d8",
+    "type": "returnFailure",
+    "name": "return failure",
+    "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while splitting sna1_route\" />\n",
+    "comments": "",
+    "x": 2586,
+    "y": 1295,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "351eda30.07db16",
+    "type": "failure",
+    "name": "success",
+    "xml": "<outcome value='success'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 2406,
+    "y": 1129,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "581ab8c9.51da4"
+      ]
+    ]
+  },
+  {
+    "id": "b6c5cd5f.5be15",
+    "type": "failure",
+    "name": "success",
+    "xml": "<outcome value='success'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 2402,
+    "y": 1249,
+    "z": "f29dedb6.fec708",
+    "wires": [
+      [
+        "f0e238af.ae0bf8"
+      ]
+    ]
+  },
+  {
+    "id": "581ab8c9.51da4",
+    "type": "set",
+    "name": "set route1 ip-prefix next-hop",
+    "xml": "<set>\n<parameter name='prop.l3vpn.sna1-route.ip-prefix' value='`$route1[0]`' />\n<parameter name='prop.l3vpn.sna1-route.next-hop' value='`$route1[1]`' />\n",
+    "comments": "",
+    "x": 2613,
+    "y": 1123,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  },
+  {
+    "id": "f0e238af.ae0bf8",
+    "type": "set",
+    "name": "set route2 ip-prefix next-hop",
+    "xml": "<set>\n<parameter name='prop.l3vpn.sna2-route.ip-prefix' value='`$route2[0]`' />\n<parameter name='prop.l3vpn.sna2-route.next-hop' value='`$route2[1]`' />",
+    "comments": "",
+    "x": 2613,
+    "y": 1242,
+    "z": "f29dedb6.fec708",
+    "wires": []
+  }
+]
index 998b1f6..b2343d8 100644 (file)
@@ -20,7 +20,7 @@
     "module": "GENERIC-RESOURCE-API",
     "version": "${project.version}",
     "comments": "",
-    "xml": "<service-logic xmlns='http://www.openecomp.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
+    "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
     "outputs": 1,
     "x": 312.00000381469727,
     "y": 224.0000171661377,
index 85dad27..c55aa51 100644 (file)
 [
   {
-    "id":"da317618.54edf8",
-    "type":"dgstart",
-    "name":"DGSTART",
-    "outputs":1,
-    "x":102.515625,
-    "y":113.04766654968262,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "4e4a1db5.e19994",
+    "type": "dgstart",
+    "name": "DGSTART",
+    "outputs": 1,
+    "x": 69,
+    "y": 114.04766654968262,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "20ee17f7.cfbc68"
+        "b00c6ebc.9f6148"
       ]
     ]
   },
   {
-    "id":"20ee17f7.cfbc68",
-    "type":"service-logic",
-    "name":"GENERIC-RESOURCE-API ${project.version}",
-    "module":"GENERIC-RESOURCE-API",
-    "version":"${project.version}",
-    "comments":"",
-    "xml":"<service-logic xmlns='http://www.openecomp.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
-    "outputs":1,
-    "x":347.8013381958008,
-    "y":112.28574562072754,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "b00c6ebc.9f6148",
+    "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": 314.2857131958008,
+    "y": 113.28574562072754,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "5a68f7e0.593d38"
+        "44d4c8c4.c3b998"
       ]
     ]
   },
   {
-    "id":"5a68f7e0.593d38",
-    "type":"method",
-    "name":"method validate-network-input-parameters",
-    "xml":"<method rpc='validate-network-input-parameters' mode='sync'>\n",
-    "comments":"",
-    "outputs":1,
-    "x":305.43231201171875,
-    "y":187.30068397521973,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "44d4c8c4.c3b998",
+    "type": "method",
+    "name": "method validate-network-input-parameters",
+    "xml": "<method rpc='validate-network-input-parameters' mode='sync'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 271.91668701171875,
+    "y": 188.30068397521973,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "df4d604e.2ca72"
+        "b1f5234e.374c1"
       ]
     ]
   },
   {
-    "id":"df4d604e.2ca72",
-    "type":"block",
-    "name":"block : atomic",
-    "xml":"<block atomic=\"true\">",
-    "atomic":"true",
-    "outputs":1,
-    "x":589.4323196411133,
-    "y":175.30070877075195,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "b1f5234e.374c1",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 555.9166946411133,
+    "y": 176.30070877075195,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "638c95bd.8f466c",
-        "420ecc0a.f3f174"
+        "911dd6e7.3e5ce",
+        "30f2c5d1.5e680a"
       ]
     ]
   },
   {
-    "id":"638c95bd.8f466c",
-    "type":"switchNode",
-    "name":"switch  svc-action",
-    "xml":"<switch test='`$network-topology-operation-input.sdnc-request-header.svc-action`'>\n",
-    "comments":"",
-    "outputs":1,
-    "x":870.4323196411133,
-    "y":170.3006944656372,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "911dd6e7.3e5ce",
+    "type": "switchNode",
+    "name": "switch  svc-action",
+    "xml": "<switch test='`$network-topology-operation-input.sdnc-request-header.svc-action`'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 836.9166946411133,
+    "y": 171.3006944656372,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "66d387c4.23de98"
+        "84d48b8c.b6753"
       ]
     ]
   },
   {
-    "id":"66d387c4.23de98",
-    "type":"outcome",
-    "name":"NULL",
-    "xml":"<outcome value=''>",
-    "comments":"",
-    "outputs":1,
-    "x":1061.1466217041016,
-    "y":171.30069541931152,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "84d48b8c.b6753",
+    "type": "outcome",
+    "name": "NULL",
+    "xml": "<outcome value=''>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1027.6309967041016,
+    "y": 172.30069541931152,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "a7efa050.0eb13"
+        "7ddcb143.915a4"
       ]
     ]
   },
   {
-    "id":"a7efa050.0eb13",
-    "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=\"sdnc-request-header.svc-request-id is a required input\" />\n",
-    "comments":"",
-    "x":1235.5751724243164,
-    "y":170.300687789917,
-    "z":"bc976c53.f1a79",
-    "wires":[
-
-    ]
+    "id": "7ddcb143.915a4",
+    "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=\"sdnc-request-header.svc-request-id is a required input\" />\n",
+    "comments": "",
+    "x": 1202.0595474243164,
+    "y": 171.300687789917,
+    "z": "32fe6314.d27544",
+    "wires": []
   },
   {
-    "id":"420ecc0a.f3f174",
-    "type":"switchNode",
-    "name":"switch svc-action",
-    "xml":"<switch test='`$service-topology-operation-input.sdnc-request-header.svc-action`'>\n",
-    "comments":"",
-    "outputs":1,
-    "x":171.43226623535156,
-    "y":446.30070877075195,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "30f2c5d1.5e680a",
+    "type": "switchNode",
+    "name": "switch svc-action",
+    "xml": "<switch test='`$service-topology-operation-input.sdnc-request-header.svc-action`'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 137.91664123535156,
+    "y": 447.30070877075195,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "a1c81a08.4a4658",
-        "35262124.49e2ee",
-        "8db39207.9cf42",
-        "ac1f4d45.6379a",
-        "50f9a48d.e072dc"
+        "adae5694.342958",
+        "500ad4c6.47f08c",
+        "22013026.8cc88",
+        "750fe4a3.ade904",
+        "a9f01ff9.d40278"
       ]
     ]
   },
   {
-    "id":"a1c81a08.4a4658",
-    "type":"outcome",
-    "name":"assign",
-    "xml":"<outcome value='assign'>\n",
-    "comments":"",
-    "outputs":1,
-    "x":372.9323501586914,
-    "y":446.30070877075195,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "adae5694.342958",
+    "type": "outcome",
+    "name": "create",
+    "xml": "<outcome value='create'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 339.4167251586914,
+    "y": 447.30070877075195,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "7802f1ec.ca7d8"
+        "45ac8a67.1ab214"
       ]
     ]
   },
   {
-    "id":"7802f1ec.ca7d8",
-    "type":"block",
-    "name":"block : atomic",
-    "xml":"<block atomic=\"true\">",
-    "atomic":"true",
-    "outputs":1,
-    "x":538.9323577880859,
-    "y":446.30070877075195,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "45ac8a67.1ab214",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 505.41673278808594,
+    "y": 447.30070877075195,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "ea0957a5.857bf8"
+        "97add15a.4cb3a8"
       ]
     ]
   },
   {
-    "id":"ef18ce39.3e51e",
-    "type":"for",
-    "name":"for loop i - Network input parameters",
-    "xml":"<for index=\"i\" start=\"0\" end=\"`$network-topology-information.network-request-input.network-input-parameters.param_length`\">\n",
-    "comments":"",
-    "outputs":1,
-    "x":1738.146499633789,
-    "y":110.01497840881348,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "d1354c61.d70e7",
+    "type": "for",
+    "name": "for loop i - Network input parameters",
+    "xml": "<for index=\"i\" start=\"0\" end=\"`$network-topology-information.network-request-input.network-input-parameters.param_length`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1704.630874633789,
+    "y": 111.01497840881348,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "80257d50.3b4d4"
+        "f7be75b2.d145f8"
       ]
     ]
   },
   {
-    "id":"4a695b88.fdc594",
-    "type":"switchNode",
-    "name":"switch value",
-    "xml":"<switch test=\"`$tmp.value`\">\n",
-    "comments":"",
-    "outputs":1,
-    "x":2591.7178497314453,
-    "y":364.01495361328125,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "560f8ff1.549fe8",
+    "type": "switchNode",
+    "name": "switch value",
+    "xml": "<switch test=\"`$tmp.value`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 2558.2022247314453,
+    "y": 365.01495361328125,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "9ba44b0.d83ecb8"
+        "35d7055a.4a3242"
       ]
     ]
   },
   {
-    "id":"9ba44b0.d83ecb8",
-    "type":"outcome",
-    "name":"NULL",
-    "xml":"<outcome value=''>",
-    "comments":"",
-    "outputs":1,
-    "x":2808.7178230285645,
-    "y":363.01495933532715,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "35d7055a.4a3242",
+    "type": "outcome",
+    "name": "NULL",
+    "xml": "<outcome value=''>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2775.2021980285645,
+    "y": 364.01495933532715,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "b0753bf8.b88448"
+        "d860ff65.a2e1"
       ]
     ]
   },
   {
-    "id":"b0753bf8.b88448",
-    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
-    "comments":"",
-    "x":2987.1465377807617,
-    "y":364.01495933532715,
-    "z":"bc976c53.f1a79",
-    "wires":[
-
-    ]
+    "id": "d860ff65.a2e1",
+    "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=\"`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'\" />\n",
+    "comments": "",
+    "x": 2953.6309127807617,
+    "y": 365.01495933532715,
+    "z": "32fe6314.d27544",
+    "wires": []
   },
   {
-    "id":"35262124.49e2ee",
-    "type":"outcome",
-    "name":"deactivate",
-    "xml":"<outcome value='deactivate'>\n",
-    "comments":"",
-    "outputs":1,
-    "x":375.2299041748047,
-    "y":604.4762363433838,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "500ad4c6.47f08c",
+    "type": "outcome",
+    "name": "deactivate",
+    "xml": "<outcome value='deactivate'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 341.7142791748047,
+    "y": 605.4762363433838,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "e5333ad2.88c6a8"
+        "4bb419b5.b0e6e"
       ]
     ]
   },
   {
-    "id":"8db39207.9cf42",
-    "type":"outcome",
-    "name":"delete",
-    "xml":"<outcome value='delete'>\n",
-    "comments":"",
-    "outputs":1,
-    "x":378.94428634643555,
-    "y":931.1907939910889,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "22013026.8cc88",
+    "type": "outcome",
+    "name": "delete",
+    "xml": "<outcome value='delete'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 345.42866134643555,
+    "y": 932.1907939910889,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "69b449f8.e0c4f8"
+        "4023bbbc.b8c3c4"
       ]
     ]
   },
   {
-    "id":"ac1f4d45.6379a",
-    "type":"other",
-    "name":"other",
-    "xml":"<outcome value='Other'>\n",
-    "comments":"",
-    "outputs":1,
-    "x":376.7061653137207,
-    "y":885.619062423706,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "750fe4a3.ade904",
+    "type": "other",
+    "name": "other",
+    "xml": "<outcome value='Other'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 343.1905403137207,
+    "y": 886.619062423706,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "c57b3d6b.428a1"
+        "3dd4d642.9cafa2"
       ]
     ]
   },
   {
-    "id":"c57b3d6b.428a1",
-    "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=\"`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`\" />\n",
-    "comments":"",
-    "x":530.2777404785156,
-    "y":888.2382063865662,
-    "z":"bc976c53.f1a79",
-    "wires":[
-
-    ]
+    "id": "3dd4d642.9cafa2",
+    "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=\"`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`\" />\n",
+    "comments": "",
+    "x": 496.7621154785156,
+    "y": 889.2382063865662,
+    "z": "32fe6314.d27544",
+    "wires": []
   },
   {
-    "id":"80257d50.3b4d4",
-    "type":"block",
-    "name":"block",
-    "xml":"<block>\n",
-    "atomic":"false",
-    "comments":"",
-    "outputs":1,
-    "x":1616.2298736572266,
-    "y":256.761926651001,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "f7be75b2.d145f8",
+    "type": "block",
+    "name": "block",
+    "xml": "<block>\n",
+    "atomic": "false",
+    "comments": "",
+    "outputs": 1,
+    "x": 1582.7142486572266,
+    "y": 257.761926651001,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "50315017.56b56",
-        "1ffb5b62.b458c5",
-        "846be723.9405f8"
+        "26bdae61.564c5a",
+        "395e8b66.7b0f1c",
+        "84048547.624768"
       ]
     ]
   },
   {
-    "id":"ea0957a5.857bf8",
-    "type":"switchNode",
-    "name":"switch request-action",
-    "xml":"<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
-    "comments":"",
-    "outputs":1,
-    "x":864.5156402587891,
-    "y":335.7143363952637,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "97add15a.4cb3a8",
+    "type": "switchNode",
+    "name": "switch request-action",
+    "xml": "<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 831.0000152587891,
+    "y": 336.7143363952637,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "6458f4b.5fda60c",
-        "7c5ea13d.5b8e"
+        "76502e63.ceb1a",
+        "1255dbb4.75c26c"
       ]
     ]
   },
   {
-    "id":"6458f4b.5fda60c",
-    "type":"other",
-    "name":"CreateNetworkInstance",
-    "xml":"<outcome value='CreateNetworkInstance'>",
-    "comments":"",
-    "outputs":1,
-    "x":1130.515640258789,
-    "y":294.7143363952637,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "76502e63.ceb1a",
+    "type": "other",
+    "name": "CreateNetworkInstance",
+    "xml": "<outcome value='CreateNetworkInstance'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1097.000015258789,
+    "y": 295.7143363952637,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "84eb81e3.dcb2d"
+        "afc2e177.f42c"
       ]
     ]
   },
   {
-    "id":"7c5ea13d.5b8e",
-    "type":"other",
-    "name":"Other",
-    "xml":"<outcome value='Other'>",
-    "comments":"",
-    "outputs":1,
-    "x":1084.515640258789,
-    "y":344.7143363952637,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "1255dbb4.75c26c",
+    "type": "other",
+    "name": "Other",
+    "xml": "<outcome value='Other'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1051.000015258789,
+    "y": 345.7143363952637,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "f6d144fc.f801f8"
+        "dfb2157e.4f1ae"
       ]
     ]
   },
   {
-    "id":"f6d144fc.f801f8",
-    "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=\"request-information.request-action is required to be CreateNetworkInstance for svc-action=assign\" />\n",
-    "comments":"",
-    "x":1253.515640258789,
-    "y":344.7143363952637,
-    "z":"bc976c53.f1a79",
-    "wires":[
-
-    ]
+    "id": "dfb2157e.4f1ae",
+    "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=\"request-information.request-action is required to be CreateNetworkInstance for svc-action=create\" />\n",
+    "comments": "",
+    "x": 1220.000015258789,
+    "y": 345.7143363952637,
+    "z": "32fe6314.d27544",
+    "wires": []
   },
   {
-    "id":"84eb81e3.dcb2d",
-    "type":"block",
-    "name":"block : atomic",
-    "xml":"<block atomic=\"true\">",
-    "atomic":"true",
-    "outputs":1,
-    "x":1355.515640258789,
-    "y":283.7143363952637,
-    "z":"bc976c53.f1a79",
-    "wires":[
-      [
-        "ef18ce39.3e51e"
+    "id": "afc2e177.f42c",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 1322.000015258789,
+    "y": 284.7143363952637,
+    "z": "32fe6314.d27544",
+    "wires": [
+      [
+        "d1354c61.d70e7"
       ]
     ]
   },
   {
-    "id":"e0b5f19f.d9b45",
-    "type":"comment",
-    "name":"TODO: need to identify underlay or overlay",
-    "info":"",
-    "comments":"",
-    "x":1100.087142944336,
-    "y":243.42859649658203,
-    "z":"bc976c53.f1a79",
-    "wires":[
-
-    ]
-  },
-  {
-    "id":"50315017.56b56",
-    "type":"set",
-    "name":"clear tmp-data",
-    "xml":"<set>\n<parameter name='tmp.name' value='' />\n<parameter name='tmp.value' value='' />\n",
-    "comments":"",
-    "x":1808.2299346923828,
-    "y":211.00002479553223,
-    "z":"bc976c53.f1a79",
-    "wires":[
-
-    ]
-  },
-  {
-    "id":"1ffb5b62.b458c5",
-    "type":"set",
-    "name":"set tmp-data",
-    "xml":"<set>\n<parameter name='tmp.name' value=\"'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].name'\"/>\n<parameter name='tmp.value' value=\"'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].value'\"/>\n",
-    "comments":"",
-    "x":1797.2299346923828,
-    "y":301.0000247955322,
-    "z":"bc976c53.f1a79",
-    "wires":[
-
-    ]
-  },
-  {
-    "id":"846be723.9405f8",
-    "type":"switchNode",
-    "name":"switch name",
-    "xml":"<switch test=\"'$tmp.name'\">\n",
-    "comments":"",
-    "outputs":1,
-    "x":1776.2299346923828,
-    "y":395.0000247955322,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "26bdae61.564c5a",
+    "type": "set",
+    "name": "clear tmp-data",
+    "xml": "<set>\n<parameter name='tmp.name' value='' />\n<parameter name='tmp.value' value='' />\n",
+    "comments": "",
+    "x": 1774.7143096923828,
+    "y": 212.00002479553223,
+    "z": "32fe6314.d27544",
+    "wires": []
+  },
+  {
+    "id": "395e8b66.7b0f1c",
+    "type": "set",
+    "name": "set tmp-data",
+    "xml": "<set>\n<parameter name='tmp.name' value=\"'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].name'\"/>\n<parameter name='tmp.value' value=\"'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].value'\"/>\n",
+    "comments": "",
+    "x": 1763.7143096923828,
+    "y": 302.0000247955322,
+    "z": "32fe6314.d27544",
+    "wires": []
+  },
+  {
+    "id": "84048547.624768",
+    "type": "switchNode",
+    "name": "switch name",
+    "xml": "<switch test=\"'$tmp.name'\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1742.7143096923828,
+    "y": 396.0000247955322,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "45932bf.e6c01d4",
-        "39a76082.5cc54",
-        "6eae96bd.b54598",
-        "fa0caaec.e45618",
-        "ca5c1826.4817d8",
-        "7792e369.1908ac",
-        "13678c40.7cc714",
-        "a2732629.f76cc8",
-        "f2c5c3f2.76097",
-        "54ca3e0b.56d18",
-        "681149f1.d61ef8",
-        "4bc98b71.a2aa84",
-        "aff0f172.9ddbc",
-        "d8ad234.fa86ce",
-        "705971b7.939b3",
-        "c8386139.7bc31",
-        "382fe5b2.be669a"
+        "91870d3c.00766",
+        "9673ceac.9d128",
+        "2fa6afd4.470c68",
+        "208a2db6.5cd29a",
+        "a6950835.4f1f88",
+        "f6a60960.64ec1",
+        "3f6ebe83.24fb02",
+        "6691ccb6.43ba2c",
+        "3e734965.e53836",
+        "7c1d0f2f.d390d8",
+        "90835e79.55fda",
+        "98d98d4e.90457",
+        "c55ddc64.709ea",
+        "d3d96688.947678",
+        "de824513.d08848",
+        "bd1ecf5f.f7c2b",
+        "499053bc.575afc"
       ]
     ]
   },
   {
-    "id":"45932bf.e6c01d4",
-    "type":"outcome",
-    "name":"NULL",
-    "xml":"<outcome value=''>",
-    "comments":"",
-    "outputs":1,
-    "x":2315.801223754883,
-    "y":898,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "91870d3c.00766",
+    "type": "outcome",
+    "name": "NULL",
+    "xml": "<outcome value=''>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2282.285598754883,
+    "y": 899,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "6a1da75c.dff4f8"
+        "49ed5fbd.14e1c8"
       ]
     ]
   },
   {
-    "id":"6a1da75c.dff4f8",
-    "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=\"`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`\" />\n",
-    "comments":"",
-    "x":2490.801223754883,
-    "y":897,
-    "z":"bc976c53.f1a79",
-    "wires":[
-
-    ]
+    "id": "49ed5fbd.14e1c8",
+    "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=\"`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`\" />\n",
+    "comments": "",
+    "x": 2457.285598754883,
+    "y": 898,
+    "z": "32fe6314.d27544",
+    "wires": []
   },
   {
-    "id":"39a76082.5cc54",
-    "type":"other",
-    "name":"name",
-    "xml":"<outcome value='name'>",
-    "comments":"",
-    "outputs":1,
-    "x":2292.801223754883,
-    "y":20,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "9673ceac.9d128",
+    "type": "other",
+    "name": "name",
+    "xml": "<outcome value='name'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2259.285598754883,
+    "y": 21,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "4a695b88.fdc594"
+        "560f8ff1.549fe8"
       ]
     ]
   },
   {
-    "id":"6eae96bd.b54598",
-    "type":"other",
-    "name":"service-type",
-    "xml":"<outcome value='service-type'>",
-    "comments":"",
-    "outputs":1,
-    "x":2295.801223754883,
-    "y":87,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "2fa6afd4.470c68",
+    "type": "other",
+    "name": "service-type",
+    "xml": "<outcome value='service-type'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2262.285598754883,
+    "y": 88,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "4a695b88.fdc594"
+        "560f8ff1.549fe8"
       ]
     ]
   },
   {
-    "id":"13678c40.7cc714",
-    "type":"other",
-    "name":"sna2_name",
-    "xml":"<outcome value='sna2_name'>",
-    "comments":"",
-    "outputs":1,
-    "x":2299.801223754883,
-    "y":316,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "3f6ebe83.24fb02",
+    "type": "other",
+    "name": "sna2_name",
+    "xml": "<outcome value='sna2_name'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2266.285598754883,
+    "y": 317,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "4a695b88.fdc594"
+        "560f8ff1.549fe8"
       ]
     ]
   },
   {
-    "id":"fa0caaec.e45618",
-    "type":"other",
-    "name":"site1-name",
-    "xml":"<outcome value='site1-name'>",
-    "comments":"",
-    "outputs":1,
-    "x":2296.801223754883,
-    "y":148,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "208a2db6.5cd29a",
+    "type": "other",
+    "name": "site1-name",
+    "xml": "<outcome value='site1-name'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2263.285598754883,
+    "y": 149,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "4a695b88.fdc594"
+        "560f8ff1.549fe8"
       ]
     ]
   },
   {
-    "id":"ca5c1826.4817d8",
-    "type":"other",
-    "name":"site2-name",
-    "xml":"<outcome value='site2-name'>",
-    "comments":"",
-    "outputs":1,
-    "x":2292.801223754883,
-    "y":205,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "a6950835.4f1f88",
+    "type": "other",
+    "name": "site2-name",
+    "xml": "<outcome value='site2-name'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2259.285598754883,
+    "y": 206,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "4a695b88.fdc594"
+        "560f8ff1.549fe8"
       ]
     ]
   },
   {
-    "id":"7792e369.1908ac",
-    "type":"other",
-    "name":"sna1_name",
-    "xml":"<outcome value='sna1_name'>",
-    "comments":"",
-    "outputs":1,
-    "x":2295.801223754883,
-    "y":262,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "f6a60960.64ec1",
+    "type": "other",
+    "name": "sna1_name",
+    "xml": "<outcome value='sna1_name'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2262.285598754883,
+    "y": 263,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "4a695b88.fdc594"
+        "560f8ff1.549fe8"
       ]
     ]
   },
   {
-    "id":"a2732629.f76cc8",
-    "type":"other",
-    "name":"pe1_id",
-    "xml":"<outcome value='pe1_id'>",
-    "comments":"",
-    "outputs":1,
-    "x":2299.801223754883,
-    "y":367,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "6691ccb6.43ba2c",
+    "type": "other",
+    "name": "pe1_id",
+    "xml": "<outcome value='pe1_id'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2266.285598754883,
+    "y": 368,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "4a695b88.fdc594"
+        "560f8ff1.549fe8"
       ]
     ]
   },
   {
-    "id":"f2c5c3f2.76097",
-    "type":"other",
-    "name":"pe2_id",
-    "xml":"<outcome value='pe2_id'>",
-    "comments":"",
-    "outputs":1,
-    "x":2302.801223754883,
-    "y":415,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "3e734965.e53836",
+    "type": "other",
+    "name": "pe2_id",
+    "xml": "<outcome value='pe2_id'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2269.285598754883,
+    "y": 416,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "4a695b88.fdc594"
+        "560f8ff1.549fe8"
       ]
     ]
   },
   {
-    "id":"54ca3e0b.56d18",
-    "type":"other",
-    "name":"ac1-id",
-    "xml":"<outcome value='ac1-id'>",
-    "comments":"",
-    "outputs":1,
-    "x":2307.801223754883,
-    "y":464,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "7c1d0f2f.d390d8",
+    "type": "other",
+    "name": "ac1-id",
+    "xml": "<outcome value='ac1-id'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2274.285598754883,
+    "y": 465,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "4a695b88.fdc594"
+        "560f8ff1.549fe8"
       ]
     ]
   },
   {
-    "id":"681149f1.d61ef8",
-    "type":"other",
-    "name":"ac2-id",
-    "xml":"<outcome value='ac2-id'>",
-    "comments":"",
-    "outputs":1,
-    "x":2309.801223754883,
-    "y":519,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "90835e79.55fda",
+    "type": "other",
+    "name": "ac2-id",
+    "xml": "<outcome value='ac2-id'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2276.285598754883,
+    "y": 520,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "4a695b88.fdc594"
+        "560f8ff1.549fe8"
       ]
     ]
   },
   {
-    "id":"4bc98b71.a2aa84",
-    "type":"other",
-    "name":"ac1-ip",
-    "xml":"<outcome value='ac1-ip'>",
-    "comments":"",
-    "outputs":1,
-    "x":2309.801223754883,
-    "y":571,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "98d98d4e.90457",
+    "type": "other",
+    "name": "ac1-ip",
+    "xml": "<outcome value='ac1-ip'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2276.285598754883,
+    "y": 572,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "4a695b88.fdc594"
+        "560f8ff1.549fe8"
       ]
     ]
   },
   {
-    "id":"aff0f172.9ddbc",
-    "type":"other",
-    "name":"ac2-ip",
-    "xml":"<outcome value='ac2-ip'>",
-    "comments":"",
-    "outputs":1,
-    "x":2311.801223754883,
-    "y":632,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "c55ddc64.709ea",
+    "type": "other",
+    "name": "ac2-ip",
+    "xml": "<outcome value='ac2-ip'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2278.285598754883,
+    "y": 633,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "4a695b88.fdc594"
+        "560f8ff1.549fe8"
       ]
     ]
   },
   {
-    "id":"d8ad234.fa86ce",
-    "type":"other",
-    "name":"ac1_peer_ip",
-    "xml":"<outcome value='ac1_peer_ip'>",
-    "comments":"",
-    "outputs":1,
-    "x":2313.801223754883,
-    "y":682,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "d3d96688.947678",
+    "type": "other",
+    "name": "ac1_peer_ip",
+    "xml": "<outcome value='ac1_peer_ip'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2280.285598754883,
+    "y": 683,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "4a695b88.fdc594"
+        "560f8ff1.549fe8"
       ]
     ]
   },
   {
-    "id":"705971b7.939b3",
-    "type":"other",
-    "name":"ac2_peer_ip",
-    "xml":"<outcome value='ac2_peer_ip'>",
-    "comments":"",
-    "outputs":1,
-    "x":2309.801223754883,
-    "y":730,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "de824513.d08848",
+    "type": "other",
+    "name": "ac2_peer_ip",
+    "xml": "<outcome value='ac2_peer_ip'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2276.285598754883,
+    "y": 731,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "4a695b88.fdc594"
+        "560f8ff1.549fe8"
       ]
     ]
   },
   {
-    "id":"c8386139.7bc31",
-    "type":"other",
-    "name":"ac1_svlan",
-    "xml":"<outcome value='ac1_svlan'>",
-    "comments":"",
-    "outputs":1,
-    "x":2311.801223754883,
-    "y":783,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "bd1ecf5f.f7c2b",
+    "type": "other",
+    "name": "ac1_svlan",
+    "xml": "<outcome value='ac1_svlan'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2278.285598754883,
+    "y": 784,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "4a695b88.fdc594"
+        "560f8ff1.549fe8"
       ]
     ]
   },
   {
-    "id":"382fe5b2.be669a",
-    "type":"other",
-    "name":"ac2_svlan",
-    "xml":"<outcome value='ac2_svlan'>",
-    "comments":"",
-    "outputs":1,
-    "x":2313.801223754883,
-    "y":844,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "499053bc.575afc",
+    "type": "other",
+    "name": "ac2_svlan",
+    "xml": "<outcome value='ac2_svlan'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 2280.285598754883,
+    "y": 845,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "4a695b88.fdc594"
+        "560f8ff1.549fe8"
       ]
     ]
   },
   {
-    "id":"69b449f8.e0c4f8",
-    "type":"block",
-    "name":"block : atomic",
-    "xml":"<block atomic=\"true\">",
-    "atomic":"true",
-    "outputs":1,
-    "x":310.0870590209961,
-    "y":1012.8572435379028,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "4023bbbc.b8c3c4",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 276.5714340209961,
+    "y": 1013.8572435379028,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "d5f90944.52fe68",
-        "f019a10f.84bba"
+        "97e7ce10.7c85b8",
+        "9dc996b.23ff3e8"
       ]
     ]
   },
   {
-    "id":"d5f90944.52fe68",
-    "type":"other",
-    "name":"DeleteNetworkInstance",
-    "xml":"<outcome value='DeleteNetworkInstance'>",
-    "comments":"",
-    "outputs":1,
-    "x":325.8013496398926,
-    "y":1068.8572072982788,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "97e7ce10.7c85b8",
+    "type": "other",
+    "name": "DeleteNetworkInstance",
+    "xml": "<outcome value='DeleteNetworkInstance'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 292.2857246398926,
+    "y": 1069.8572072982788,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "1ad15265.c666ae"
+        "841c3464.e35208"
       ]
     ]
   },
   {
-    "id":"f019a10f.84bba",
-    "type":"other",
-    "name":"Other",
-    "xml":"<outcome value='Other'>",
-    "comments":"",
-    "outputs":1,
-    "x":279.8013496398926,
-    "y":1118.8572072982788,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "9dc996b.23ff3e8",
+    "type": "other",
+    "name": "Other",
+    "xml": "<outcome value='Other'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 246.28572463989258,
+    "y": 1119.8572072982788,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "b5aedf37.5b6ec"
+        "6b8e362b.376518"
       ]
     ]
   },
   {
-    "id":"b5aedf37.5b6ec",
-    "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=\"request-information.request-action is required to be CreateNetworkInstance for svc-action=assign\" />\n",
-    "comments":"",
-    "x":448.8013496398926,
-    "y":1118.8572072982788,
-    "z":"bc976c53.f1a79",
-    "wires":[
-
-    ]
+    "id": "6b8e362b.376518",
+    "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=\"request-information.request-action is required to be DeleteNetworkInstance for svc-action=delete\" />\n",
+    "comments": "",
+    "x": 415.2857246398926,
+    "y": 1119.8572072982788,
+    "z": "32fe6314.d27544",
+    "wires": []
   },
   {
-    "id":"1ad15265.c666ae",
-    "type":"block",
-    "name":"block : atomic",
-    "xml":"<block atomic=\"true\">",
-    "atomic":"true",
-    "outputs":1,
-    "x":550.8013496398926,
-    "y":1057.8572072982788,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "841c3464.e35208",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 517.2857246398926,
+    "y": 1058.8572072982788,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "916b52b.b2dacb"
+        "abf4d6e7.91759"
       ]
     ]
   },
   {
-    "id":"916b52b.b2dacb",
-    "type":"for",
-    "name":"for each network-input-parameters",
-    "xml":"<for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\n",
-    "comments":"",
-    "outputs":1,
-    "x":372.8013496398926,
-    "y":1212.8572072982788,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "abf4d6e7.91759",
+    "type": "for",
+    "name": "for each network-input-parameters",
+    "xml": "<for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 339.2857246398926,
+    "y": 1213.8572072982788,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "48a15b4b.da9c94"
+        "4d50d8cc.46e0a"
       ]
     ]
   },
   {
-    "id":"48a15b4b.da9c94",
-    "type":"block",
-    "name":"block",
-    "xml":"<block>\n",
-    "atomic":"false",
-    "comments":"",
-    "outputs":1,
-    "x":365.8013496398926,
-    "y":1297.8572072982788,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "4d50d8cc.46e0a",
+    "type": "block",
+    "name": "block",
+    "xml": "<block>\n",
+    "atomic": "false",
+    "comments": "",
+    "outputs": 1,
+    "x": 332.2857246398926,
+    "y": 1298.8572072982788,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "c6022f0d.42d06"
+        "5c906df.eb09894"
       ]
     ]
   },
   {
-    "id":"c6022f0d.42d06",
-    "type":"switchNode",
-    "name":"switch name",
-    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`\">\n",
-    "comments":"",
-    "outputs":1,
-    "x":548.8013496398926,
-    "y":1290.8572072982788,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "5c906df.eb09894",
+    "type": "switchNode",
+    "name": "switch name",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 515.2857246398926,
+    "y": 1291.8572072982788,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "235fbeb1.629a02"
+        "1e0b11b0.0c1596"
       ]
     ]
   },
   {
-    "id":"235fbeb1.629a02",
-    "type":"outcomeTrue",
-    "name":"true",
-    "xml":"<outcome value='true'>\n",
-    "comments":"",
-    "outputs":1,
-    "x":729.8013496398926,
-    "y":1289.8572072982788,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "1e0b11b0.0c1596",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 696.2857246398926,
+    "y": 1290.8572072982788,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "9c3a3b86.66d288"
+        "6bd99898.8a25c8"
       ]
     ]
   },
   {
-    "id":"9c3a3b86.66d288",
-    "type":"switchNode",
-    "name":"switch value",
-    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`\">\n",
-    "comments":"",
-    "outputs":1,
-    "x":893.8013496398926,
-    "y":1289.8572072982788,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "6bd99898.8a25c8",
+    "type": "switchNode",
+    "name": "switch value",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 860.2857246398926,
+    "y": 1290.8572072982788,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "7bc8b1f4.9d2b8"
+        "2612c750.3f1de"
       ]
     ]
   },
   {
-    "id":"7bc8b1f4.9d2b8",
-    "type":"outcome",
-    "name":"NULL",
-    "xml":"<outcome value=''>",
-    "comments":"",
-    "outputs":1,
-    "x":762.8013496398926,
-    "y":1413.8572072982788,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "2612c750.3f1de",
+    "type": "outcome",
+    "name": "NULL",
+    "xml": "<outcome value=''>",
+    "comments": "",
+    "outputs": 1,
+    "x": 729.2857246398926,
+    "y": 1414.8572072982788,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "457d6f04.16b53"
+        "27237901.158d7e"
       ]
     ]
   },
   {
-    "id":"457d6f04.16b53",
-    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
-    "comments":"",
-    "x":941.2300643920898,
-    "y":1414.8572072982788,
-    "z":"bc976c53.f1a79",
-    "wires":[
-
-    ]
+    "id": "27237901.158d7e",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments": "",
+    "x": 907.7144393920898,
+    "y": 1415.8572072982788,
+    "z": "32fe6314.d27544",
+    "wires": []
   },
   {
-    "id":"50f9a48d.e072dc",
-    "type":"outcome",
-    "name":"activate",
-    "xml":"<outcome value='activate'>\n",
-    "comments":"",
-    "outputs":1,
-    "x":373.9441947937012,
-    "y":538.7619791030884,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "a9f01ff9.d40278",
+    "type": "outcome",
+    "name": "activate",
+    "xml": "<outcome value='activate'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 340.4285697937012,
+    "y": 539.7619791030884,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "90da72db.f3e38"
+        "24b1be4.4b9cb42"
       ]
     ]
   },
   {
-    "id":"90da72db.f3e38",
-    "type":"switchNode",
-    "name":"switch request-action",
-    "xml":"<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
-    "comments":"",
-    "outputs":1,
-    "x":556.8013610839844,
-    "y":535.9048290252686,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "24b1be4.4b9cb42",
+    "type": "switchNode",
+    "name": "switch request-action",
+    "xml": "<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 523.2857360839844,
+    "y": 536.9048290252686,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "e1518316.05556",
-        "e5ae8d2b.cedcd"
+        "534344f8.99bd8c",
+        "3efa7868.7d6d6"
       ]
     ]
   },
   {
-    "id":"e1518316.05556",
-    "type":"other",
-    "name":"ActivateNetworkInstance",
-    "xml":"<outcome value='ActivateNetworkInstance'>",
-    "comments":"",
-    "outputs":1,
-    "x":822.8013610839844,
-    "y":494.90482902526855,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "534344f8.99bd8c",
+    "type": "other",
+    "name": "ActivateNetworkInstance",
+    "xml": "<outcome value='ActivateNetworkInstance'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 789.2857360839844,
+    "y": 495.90482902526855,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "d9a3c7f4.4c0498"
+        "dbc11e26.b1b04"
       ]
     ]
   },
   {
-    "id":"e5ae8d2b.cedcd",
-    "type":"other",
-    "name":"Other",
-    "xml":"<outcome value='Other'>",
-    "comments":"",
-    "outputs":1,
-    "x":776.8013610839844,
-    "y":544.9048290252686,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "3efa7868.7d6d6",
+    "type": "other",
+    "name": "Other",
+    "xml": "<outcome value='Other'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 743.2857360839844,
+    "y": 545.9048290252686,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "ca95078e.01fd58"
+        "7054bbc2.d71e3c"
       ]
     ]
   },
   {
-    "id":"ca95078e.01fd58",
-    "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=\"request-information.request-action is required to be ActivateNetworkInstance for svc-action=activate\" />\n",
-    "comments":"",
-    "x":945.8013610839844,
-    "y":544.9048290252686,
-    "z":"bc976c53.f1a79",
-    "wires":[
-
-    ]
+    "id": "7054bbc2.d71e3c",
+    "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=\"request-information.request-action is required to be ActivateNetworkInstance for svc-action=activate\" />\n",
+    "comments": "",
+    "x": 912.2857360839844,
+    "y": 545.9048290252686,
+    "z": "32fe6314.d27544",
+    "wires": []
   },
   {
-    "id":"d9a3c7f4.4c0498",
-    "type":"block",
-    "name":"block : atomic",
-    "xml":"<block atomic=\"true\">",
-    "atomic":"true",
-    "outputs":1,
-    "x":1047.8013610839844,
-    "y":483.90482902526855,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "dbc11e26.b1b04",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 1014.2857360839844,
+    "y": 484.90482902526855,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "de9d0bad.f413c8"
+        "bae11bcf.54b4c8"
       ]
     ]
   },
   {
-    "id":"e5333ad2.88c6a8",
-    "type":"block",
-    "name":"block : atomic",
-    "xml":"<block atomic=\"true\">",
-    "atomic":"true",
-    "outputs":1,
-    "x":542.515625,
-    "y":608.7620029449463,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "4bb419b5.b0e6e",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 509,
+    "y": 609.7620029449463,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "22ce90c5.e5b49",
-        "52bb2fe2.e66a7"
+        "15adf5d0.a38402",
+        "a37cc3b4.9b7a68"
       ]
     ]
   },
   {
-    "id":"22ce90c5.e5b49",
-    "type":"other",
-    "name":"DeactivateNetworkInstance",
-    "xml":"<outcome value='DeactivateNetworkInstance'>",
-    "comments":"",
-    "outputs":1,
-    "x":639.6585159301758,
-    "y":686.1905641555786,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "15adf5d0.a38402",
+    "type": "other",
+    "name": "DeactivateNetworkInstance",
+    "xml": "<outcome value='DeactivateNetworkInstance'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 606.1428909301758,
+    "y": 687.1905641555786,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "53c38c61.a27c24"
+        "a95baf99.9c4a6"
       ]
     ]
   },
   {
-    "id":"52bb2fe2.e66a7",
-    "type":"other",
-    "name":"Other",
-    "xml":"<outcome value='Other'>",
-    "comments":"",
-    "outputs":1,
-    "x":593.6585159301758,
-    "y":736.1905641555786,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "a37cc3b4.9b7a68",
+    "type": "other",
+    "name": "Other",
+    "xml": "<outcome value='Other'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 560.1428909301758,
+    "y": 737.1905641555786,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "d9cf8575.0f9368"
+        "77245576.2c267c"
       ]
     ]
   },
   {
-    "id":"d9cf8575.0f9368",
-    "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=\"request-information.request-action is required to be CreateNetworkInstance for svc-action=assign\" />\n",
-    "comments":"",
-    "x":762.6585159301758,
-    "y":736.1905641555786,
-    "z":"bc976c53.f1a79",
-    "wires":[
-
-    ]
+    "id": "77245576.2c267c",
+    "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=\"request-information.request-action is required to be DeactivateNetworkInstance for svc-action=deactivate\" />\n",
+    "comments": "",
+    "x": 729.1428909301758,
+    "y": 737.1905641555786,
+    "z": "32fe6314.d27544",
+    "wires": []
   },
   {
-    "id":"53c38c61.a27c24",
-    "type":"block",
-    "name":"block : atomic",
-    "xml":"<block atomic=\"true\">",
-    "atomic":"true",
-    "outputs":1,
-    "x":864.6585159301758,
-    "y":675.1905641555786,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "a95baf99.9c4a6",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 831.1428909301758,
+    "y": 676.1905641555786,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "a4cdd306.8c69b"
+        "3994558.cdec22a"
       ]
     ]
   },
   {
-    "id":"a4cdd306.8c69b",
-    "type":"for",
-    "name":"for each network-input-parameters",
-    "xml":"<for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\n",
-    "comments":"",
-    "outputs":1,
-    "x":686.6585159301758,
-    "y":830.1905641555786,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "3994558.cdec22a",
+    "type": "for",
+    "name": "for each network-input-parameters",
+    "xml": "<for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 653.1428909301758,
+    "y": 831.1905641555786,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "864af6c.1a7ea08"
+        "a7f759b2.2be768"
       ]
     ]
   },
   {
-    "id":"864af6c.1a7ea08",
-    "type":"block",
-    "name":"block",
-    "xml":"<block>\n",
-    "atomic":"false",
-    "comments":"",
-    "outputs":1,
-    "x":968.2299575805664,
-    "y":803.7619962692261,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "a7f759b2.2be768",
+    "type": "block",
+    "name": "block",
+    "xml": "<block>\n",
+    "atomic": "false",
+    "comments": "",
+    "outputs": 1,
+    "x": 934.7143325805664,
+    "y": 804.7619962692261,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "d3a2495e.6d4c48"
+        "c9fb60d0.70a518"
       ]
     ]
   },
   {
-    "id":"d3a2495e.6d4c48",
-    "type":"switchNode",
-    "name":"switch id",
-    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].id == 'id'`\">\n",
-    "comments":"",
-    "outputs":1,
-    "x":984.0871505737305,
-    "y":859.6191473007202,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "c9fb60d0.70a518",
+    "type": "switchNode",
+    "name": "switch id",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].id == 'id'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 950.5715255737305,
+    "y": 860.6191473007202,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "bb342c57.b05fa"
+        "56941bc3.f5be04"
       ]
     ]
   },
   {
-    "id":"bb342c57.b05fa",
-    "type":"outcomeTrue",
-    "name":"true",
-    "xml":"<outcome value='true'>\n",
-    "comments":"",
-    "outputs":1,
-    "x":1165.0871505737305,
-    "y":858.6191473007202,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "56941bc3.f5be04",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1131.5715255737305,
+    "y": 859.6191473007202,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "552390de.1e8c"
+        "35a7f799.be48f"
       ]
     ]
   },
   {
-    "id":"552390de.1e8c",
-    "type":"switchNode",
-    "name":"switch value",
-    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`\">\n",
-    "comments":"",
-    "outputs":1,
-    "x":1241.9442596435547,
-    "y":937.1905860900879,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "35a7f799.be48f",
+    "type": "switchNode",
+    "name": "switch value",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1208.4286346435547,
+    "y": 938.1905860900879,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "6d879fa9.4e09f"
+        "ba107d78.943578"
       ]
     ]
   },
   {
-    "id":"6d879fa9.4e09f",
-    "type":"outcome",
-    "name":"NULL",
-    "xml":"<outcome value=''>",
-    "comments":"",
-    "outputs":1,
-    "x":1150.9442024230957,
-    "y":1021.1905422210693,
-    "z":"bc976c53.f1a79",
-    "wires":[
+    "id": "ba107d78.943578",
+    "type": "outcome",
+    "name": "NULL",
+    "xml": "<outcome value=''>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1117.4285774230957,
+    "y": 1022.1905422210693,
+    "z": "32fe6314.d27544",
+    "wires": [
       [
-        "70a14092.36e2f"
+        "b43b580a.2bbc7"
       ]
     ]
   },
   {
-    "id":"70a14092.36e2f",
-    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
-    "comments":"",
-    "x":1329.372917175293,
-    "y":1022.1905422210693,
-    "z":"bc976c53.f1a79",
-    "wires":[
-
-    ]
+    "id": "b43b580a.2bbc7",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments": "",
+    "x": 1295.857292175293,
+    "y": 1023.1905422210693,
+    "z": "32fe6314.d27544",
+    "wires": []
   },
   {
-    "id":"de9d0bad.f413c8",
-    "type":"call",
-    "name":"call validate-overlay-network-input-parameters",
-    "xml":"<call module='GENERIC-RESOURCE-API' rpc='validate-overlay-network-input-parameters' mode='sync' >\n",
-    "comments":"",
-    "outputs":1,
-    "x":1355.6666946411133,
-    "y":485.3333520889282,
-    "z":"bc976c53.f1a79",
-    "wires":[
-      [
-
-      ]
+    "id": "bae11bcf.54b4c8",
+    "type": "call",
+    "name": "call validate-overlay-network-input-parameters",
+    "xml": "<call module='GENERIC-RESOURCE-API' rpc='validate-overlay-network-input-parameters' mode='sync' >\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1322.1510696411133,
+    "y": 486.3333520889282,
+    "z": "32fe6314.d27544",
+    "wires": [
+      []
     ]
   }
-]
\ No newline at end of file
+]
index e24a9ef..08a4919 100644 (file)
-<service-logic xmlns='http://www.openecomp.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'><method rpc='network-topology-operation-create' mode='sync'>\r
-<block atomic="true">\r
-<call module='GENERIC-RESOURCE-API' rpc='validate-network-input-parameters' mode='sync' >\r
-</call><get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
-               resource="esr-thirdparty-sdnc" \r
-               key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND \r
-                    depth = '1'"\r
-        pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >\r
-\r
-<outcome value='success'>\r
-<block atomic="true"></block></outcome><outcome value='not-found'>\r
-<return status='failure'>\r
-       <parameter name='ack-final' value='Y'/>\r
-       <parameter name="error-code" value="500" />\r
-    <parameter name="error-message" value="Network model is_bound_to_vpn=true but no vpn_binding is present" />\r
-\r
-</return></outcome><outcome value='Other'>\r
-<return status='failure'>\r
-       <parameter name='ack-final' value='Y'/>\r
-       <parameter name="error-code" value="500" />\r
-    <parameter name="error-message" value="Unexpected error retrieving vpn binding" />\r
-\r
-</return></outcome></get-resource><set>\r
-<parameter name='prop.sdncRestApi.thirdpartySdnc.url' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.serviceUrl`" />\r
-<parameter name='prop.sdncRestApi.templateDir' value='/opt/onap/sdnc/data' />\r
-<parameter name='prop.sdncRestApi.thirdpartySdnc.user' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.user-name`" />\r
-<parameter name='prop.sdncRestApi.thirdpartySdnc.password' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.password`" />\r
-</set><for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\r
-<block>\r
-<switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'service-type'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.service-type' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'topology'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.topology' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'technology'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.technology' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_name'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.site1_name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_name'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.site2_name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'sna1_name'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.sna1_name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'sna2_name'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.sna2_name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'pe1_id'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.pe1_id' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'pe2_id'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.pe2_id' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_id'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.ac1_id' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_id'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.ac2_id' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_ip'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.ac1_ip' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_ip'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.ac2_ip' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_peer_ip'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.ac1_peer_ip' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_peer_ip'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.ac2_peer_ip' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_svlan'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.ac1_svlan' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_svlan'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.ac2_svlan' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_protocol'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.ac1_protocol' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_protocol'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_protocol_bgp_as'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.ac1_protocol_bgp_as' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_protocol_bgp_as'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.ac1_protocol_bgp_as' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'af_type'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.af_type' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch></block></for><execute plugin='com.att.sdnctl.sli.SliPluginUtils.SliPluginUtils' method='generateUUID' >\r
-<parameter name="ctx-destination" value="prop.l3vpn.vpn-policy-id"/>\r
-<outcome value='failure'>\r
-<return status='failure'>\r
-<parameter name='error-code' value='' />\r
-<parameter name='error-message' value="An error occured while generation vpn policy ID" />\r
-</return></outcome></execute><execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
-<parameter name="templateFileName" value="$prop.sdncRestApi.tempDir +'/l3smvpntemplate.json'"/>\r
-<parameter name="restapiUrl" value="$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/vpn-services'"/>\r
-<parameter name="restapiUser" value="$prop.sdncRestApi.thirdpartySdnc.user"/>\r
-<parameter name="restapiPassword" value="$prop.sdncRestApi.thirdpartySdnc.password"/>\r
-<parameter name="format" value="json"/>\r
-<parameter name="httpMethod" value="post"/>\r
-<parameter name="responsePrefix" value="restapi-result"/></execute><execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
-<parameter name="templateFileName" value="$prop.sdncRestApi.tempDir +'/l3smsitetemplate.json'"/>\r
-<parameter name="restapiUrl" value="$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/sites'"/>\r
-<parameter name="restapiUser" value="$prop.sdncRestApi.thirdpartySdnc.user"/>\r
-<parameter name="restapiPassword" value="$prop.sdncRestApi.thirdpartySdnc.password"/>\r
-<parameter name="format" value="json"/>\r
-<parameter name="httpMethod" value="post"/>\r
-<parameter name="responsePrefix" value="restapi-result"/></execute></block></method></service-logic>
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>\r
+<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}">\r
+    <method rpc="network-topology-operation-create" mode="sync">\r
+        <block atomic="true">\r
+            <call module="GENERIC-RESOURCE-API" rpc="validate-network-input-parameters" mode="sync" />\r
+            <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="esr-thirdparty-sdnc" key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND         depth = '1'" pfx="tmp.aai.esr-thirdparty-sdnc" local-only="false">\r
+                <outcome value="success">\r
+                    <block atomic="true" />\r
+                </outcome>\r
+                <outcome value="not-found">\r
+                    <return status="failure">\r
+                        <parameter name="ack-final" value="Y" />\r
+                        <parameter name="error-code" value="500" />\r
+                        <parameter name="error-message" value="Network model is_bound_to_vpn=true but no vpn_binding is present" />\r
+                    </return>\r
+                </outcome>\r
+                <outcome value="Other">\r
+                    <return status="failure">\r
+                        <parameter name="ack-final" value="Y" />\r
+                        <parameter name="error-code" value="500" />\r
+                        <parameter name="error-message" value="Unexpected error retrieving vpn binding" />\r
+                    </return>\r
+                </outcome>\r
+            </get-resource>\r
+            <set>\r
+                <parameter name="prop.sdncRestApi.thirdpartySdnc.url" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.serviceUrl`" />\r
+                <parameter name="prop.sdncRestApi.templateDir" value="/opt/onap/sdnc/data" />\r
+                <parameter name="prop.sdncRestApi.thirdpartySdnc.user" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.user-name`" />\r
+                <parameter name="prop.sdncRestApi.thirdpartySdnc.password" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.password`" />\r
+            </set>\r
+            <for index="idx" start="0" end="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`">\r
+                <block>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.name" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'service-type'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.service-type" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'topology'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.topology" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'technology'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.technology" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_name'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.site1_name" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_name'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.site2_name" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'sna1_name'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.sna1_name" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'sna2_name'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.sna2_name" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'pe1_id'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.pe1_id" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'pe2_id'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.pe2_id" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_id'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.ac1_id" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_id'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.ac2_id" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_ip'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.ac1_ip" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_ip'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.ac2_ip" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_peer_ip'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.ac1_peer_ip" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_peer_ip'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.ac2_peer_ip" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_svlan'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.ac1_svlan" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_svlan'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.ac2_svlan" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_protocol'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.ac1_protocol" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_protocol'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.ac2_protocol" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_route'`">\r
+                        <outcome value="true">\r
+                            <block atomic="true">\r
+                                <set>\r
+                                    <parameter name="prop.l3vpn.ac1_route" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                </set>\r
+                                <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="split">\r
+                                    <parameter name="original_string" value="`$prop.l3vpn.ac1-route`" />\r
+                                    <parameter name="regex" value=" ## " />\r
+                                    <parameter name="ctx_memory_result_key" value="route1" />\r
+                                    <outcome value="success">\r
+                                        <set>\r
+                                            <parameter name="prop.l3vpn.sna1-route.ip-prefix" value="`$route1[0]`" />\r
+                                            <parameter name="prop.l3vpn.sna1-route.next-hop" value="`$route1[1]`" />\r
+                                        </set>\r
+                                    </outcome>\r
+                                    <outcome value="failure">\r
+                                        <return status="failure">\r
+                                            <parameter name="error-code" value="" />\r
+                                            <parameter name="error-message" value="An error occured while splitting sna1_route" />\r
+                                        </return>\r
+                                    </outcome>\r
+                                </execute>\r
+                            </block>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_route'`">\r
+                        <outcome value="true">\r
+                            <block atomic="true">\r
+                                <set>\r
+                                    <parameter name="prop.l3vpn.ac2_route" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                </set>\r
+                                <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="split">\r
+                                    <parameter name="original_string" value="`$prop.l3vpn.ac2-route`" />\r
+                                    <parameter name="regex" value=" ## " />\r
+                                    <parameter name="ctx_memory_result_key" value="route2" />\r
+                                    <outcome value="success">\r
+                                        <set>\r
+                                            <parameter name="prop.l3vpn.sna2-route.ip-prefix" value="`$route2[0]`" />\r
+                                            <parameter name="prop.l3vpn.sna2-route.next-hop" value="`$route2[1]`" />\r
+                                        </set>\r
+                                    </outcome>\r
+                                    <outcome value="failure">\r
+                                        <return status="failure">\r
+                                            <parameter name="error-code" value="" />\r
+                                            <parameter name="error-message" value="An error occured while splitting sna1_route" />\r
+                                        </return>\r
+                                    </outcome>\r
+                                </execute>\r
+                            </block>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac1_protocol_bgp_as'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.ac1_protocol_bgp_as" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                <parameter name="prop.l3vpn.peer1-ip" value="`$prop.l3vpn.ac1_ip`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'ac2_protocol_bgp_as'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.ac2_protocol_bgp_as" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                <parameter name="prop.l3vpn.peer2-ip" value="`$prop.l3vpn.ac2_ip`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'af_type'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.af_type" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                </block>\r
+            </for>\r
+            <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="generateUUID">\r
+                <parameter name="ctx-destination" value="prop.l3vpn.vpn-policy1-id" />\r
+                <outcome value="failure">\r
+                    <return status="failure">\r
+                        <parameter name="error-code" value="" />\r
+                        <parameter name="error-message" value="An error occured while generation vpn policy ID" />\r
+                    </return>\r
+                </outcome>\r
+            </execute>\r
+            <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="generateUUID">\r
+                <parameter name="ctx-destination" value="prop.l3vpn.vpn-policy2-id" />\r
+                <outcome value="failure">\r
+                    <return status="failure">\r
+                        <parameter name="error-code" value="" />\r
+                        <parameter name="error-message" value="An error occured while generation vpn policy ID" />\r
+                    </return>\r
+                </outcome>\r
+            </execute>\r
+            <set>\r
+                <parameter name="prop.l3vpn.entry1-id" value="1" />\r
+                <parameter name="prop.l3vpn.entry2-id" value="1" />\r
+            </set>\r
+            <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="generateUUID">\r
+                <parameter name="ctx-destination" value="prop.l3vpn.vrf1-id" />\r
+                <outcome value="failure">\r
+                    <return status="failure">\r
+                        <parameter name="error-code" value="" />\r
+                        <parameter name="error-message" value="An error occured while generation vpn policy ID" />\r
+                    </return>\r
+                </outcome>\r
+            </execute>\r
+            <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="generateUUID">\r
+                <parameter name="ctx-destination" value="prop.l3vpn.vrf2-id" />\r
+                <outcome value="failure">\r
+                    <return status="failure">\r
+                        <parameter name="error-code" value="" />\r
+                        <parameter name="error-message" value="An error occured while generation vpn policy ID" />\r
+                    </return>\r
+                </outcome>\r
+            </execute>\r
+            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
+                <parameter name="file" value="/opt/opendaylight/current/data/log/svclogic.log" />\r
+                <parameter name="Time" value="__TIMESTAMP__" />\r
+                <parameter name="Method" value="network-topology-operation-create" />\r
+                <parameter name="SubMethod" value="L3VPN-Config" />\r
+                <parameter name="l3vpn_name" value="`$prop.l3vpn.name`" />\r
+                <parameter name="topology" value="`$prop.l3vpn.topology`" />\r
+                <parameter name="site1_name" value="`$prop.l3vpn.site1_name`" />\r
+                <parameter name="vpn-policy1-id" value="`$prop.l3vpn.vpn-policy1-id}`" />\r
+                <parameter name="l3vpn.entry1-id" value="`$prop.l3vpn.entry1-id`" />\r
+                <parameter name="sna1_name" value="`$prop.l3vpn.sna1_name`" />\r
+                <parameter name="pe1_id" value="`$prop.l3vpn.pe1_id`" />\r
+                <parameter name="ac1_id" value="`$prop.l3vpn.ac1_id`" />\r
+                <parameter name="sna1_svlan" value="`$prop.l3vpn.sna1_svlan`" />\r
+                <parameter name="ac1-peer-ip" value="`$prop.l3vpn.ac1-peer-ip`" />\r
+                <parameter name="ac1-ip" value="`$prop.l3vpn.ac1-ip`" />\r
+                <parameter name="ac1_protocol" value="`$prop.l3vpn.ac1_protocol`" />\r
+                <parameter name="sna1-route-ip-prefix" value="`$prop.l3vpn.sna1-route-ip-prefix`" />\r
+                <parameter name="sna1-route-next-hop" value="`$prop.l3vpn.sna1-route-next-hop`" />\r
+                <parameter name="peer2-ip" value="`$prop.l3vpn.peer2-ip`" />\r
+                <parameter name="ac2_protocol_bgp_as" value="`$prop.l3vpn.ac2_protocol_bgp_as`" />\r
+                <parameter name="vrf1-id" value="`$prop.l3vpn.vrf1-id`" />\r
+                <parameter name="site2_name" value="`$prop.l3vpn.site2_name`" />\r
+                <parameter name="vpn-policy2-id" value="`$prop.l3vpn.vpn-policy2-id}`" />\r
+                <parameter name="l3vpn.entry2-id" value="`$prop.l3vpn.entry2-id`" />\r
+                <parameter name="sna2_name" value="`$prop.l3vpn.sna2_name`" />\r
+                <parameter name="pe2_id" value="`$prop.l3vpn.pe2_id`" />\r
+                <parameter name="ac2_id" value="`$prop.l3vpn.ac2_id`" />\r
+                <parameter name="sna2_svlan" value="`$prop.l3vpn.sna2_svlan`" />\r
+                <parameter name="ac2-peer-ip" value="`$prop.l3vpn.ac2-peer-ip`" />\r
+                <parameter name="ac2-ip" value="`$prop.l3vpn.ac2-ip`" />\r
+                <parameter name="ac2_protocol" value="`$prop.l3vpn.ac2_protocol`" />\r
+                <parameter name="sna2-route-ip-prefix" value="`$prop.l3vpn.sna2-route-ip-prefix`" />\r
+                <parameter name="sna2-route-next-hop" value="`$prop.l3vpn.sna2-route-next-hop`" />\r
+                <parameter name="peer2-ip" value="`$prop.l3vpn.peer2-ip`" />\r
+                <parameter name="ac2_protocol_bgp_as" value="`$prop.l3vpn.ac2_protocol_bgp_as`" />\r
+                <parameter name="vrf2-id" value="`$prop.l3vpn.vrf2-id`" />\r
+                <parameter name="af_type" value="`$prop.l3vpn.af_type`" />\r
+            </record>\r
+            <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'service-type'`">\r
+                <outcome value="l3vpn-ipwan">\r
+                    <block atomic="true">\r
+                        <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
+                            <parameter name="templateFileName" value="$prop.sdncRestApi.tempDir +'/l3smvpntemplate.json'" />\r
+                            <parameter name="restapiUrl" value="$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/vpn-services'" />\r
+                            <parameter name="restapiUser" value="$prop.sdncRestApi.thirdpartySdnc.user" />\r
+                            <parameter name="restapiPassword" value="$prop.sdncRestApi.thirdpartySdnc.password" />\r
+                            <parameter name="format" value="json" />\r
+                            <parameter name="httpMethod" value="post" />\r
+                            <parameter name="responsePrefix" value="restapi-result" />\r
+                        </execute>\r
+                        <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
+                            <parameter name="templateFileName" value="$prop.sdncRestApi.tempDir +'/l3smvpntemplate.json'" />\r
+                            <parameter name="restapiUrl" value="$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/vpn-services'" />\r
+                            <parameter name="restapiUser" value="$prop.sdncRestApi.thirdpartySdnc.user" />\r
+                            <parameter name="restapiPassword" value="$prop.sdncRestApi.thirdpartySdnc.password" />\r
+                            <parameter name="format" value="json" />\r
+                            <parameter name="httpMethod" value="post" />\r
+                            <parameter name="responsePrefix" value="restapi-result" />\r
+                        </execute>\r
+                        <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
+                            <parameter name="templateFileName" value="$prop.sdncRestApi.tempDir +'/l3smvpntemplate.json'" />\r
+                            <parameter name="restapiUrl" value="$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/vpn-services'" />\r
+                            <parameter name="restapiUser" value="$prop.sdncRestApi.thirdpartySdnc.user" />\r
+                            <parameter name="restapiPassword" value="$prop.sdncRestApi.thirdpartySdnc.password" />\r
+                            <parameter name="format" value="json" />\r
+                            <parameter name="httpMethod" value="post" />\r
+                            <parameter name="responsePrefix" value="restapi-result" />\r
+                        </execute>\r
+                    </block>\r
+                </outcome>\r
+                <outcome value="true">\r
+                    <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
+                        <parameter name="templateFileName" value="$prop.sdncRestApi.tempDir +'/l3smsitetemplate.json'" />\r
+                        <parameter name="restapiUrl" value="$prop.sdncRestApi.thirdpartySdnc.url" />\r
+                        <parameter name="restapiUser" value="$prop.sdncRestApi.thirdpartySdnc.user" />\r
+                        <parameter name="restapiPassword" value="$prop.sdncRestApi.thirdpartySdnc.password" />\r
+                        <parameter name="format" value="json" />\r
+                        <parameter name="httpMethod" value="post" />\r
+                        <parameter name="responsePrefix" value="restapi-result" />\r
+                    </execute>\r
+                </outcome>\r
+                <outcome value="Other">\r
+                    <return status="failure">\r
+                        <parameter name="ack-final" value="Y" />\r
+                        <parameter name="error-code" value="500" />\r
+                        <parameter name="error-message" value="Unexpected error retrieving vpn binding" />\r
+                    </return>\r
+                </outcome>\r
+            </switch>\r
+        </block>\r
+    </method>\r
+</service-logic>\r
index ca5fa9d..019f4da 100644 (file)
@@ -1,47 +1,64 @@
-<service-logic xmlns='http://www.openecomp.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'><method rpc='network-topology-operation-delete' mode='sync'>\r
-<block atomic="true">\r
-<call module='GENERIC-RESOURCE-API' rpc='validate-network-input-parameters' mode='sync' >\r
-</call><for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\r
-<block>\r
-<switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'service-type'`">\r
-<outcome value='true'>\r
-<set>\r
-<parameter name='prop.l3vpn.service-type' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
-</set></outcome></switch></block></for><get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
-               resource="esr-thirdparty-sdnc" \r
-               key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND \r
-                    depth = '1'"\r
-        pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >\r
-\r
-<outcome value='success'>\r
-<block atomic="true"></block></outcome><outcome value='not-found'>\r
-<return status='failure'>\r
-       <parameter name='ack-final' value='Y'/>\r
-       <parameter name="error-code" value="500" />\r
-    <parameter name="error-message" value="Network model is_bound_to_vpn=true but no vpn_binding is present" />\r
-\r
-</return></outcome><outcome value='Other'>\r
-<return status='failure'>\r
-       <parameter name='ack-final' value='Y'/>\r
-       <parameter name="error-code" value="500" />\r
-    <parameter name="error-message" value="Unexpected error retrieving vpn binding" />\r
-\r
-</return></outcome></get-resource><set>\r
-<parameter name='prop.sdncRestApi.thirdpartySdnc.url' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.serviceUrl`" />\r
-<parameter name='prop.sdncRestApi.templateDir' value='/opt/onap/sdnc/data' />\r
-<parameter name='prop.sdncRestApi.thirdpartySdnc.user' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.user-name`" />\r
-<parameter name='prop.sdncRestApi.thirdpartySdnc.password' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.password`" />\r
-</set><switch test="`$prop.l3vpn.service-type`">\r
-<outcome value='l3vpn-ipwan'>\r
-<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
-<parameter name="templateFileName" value="$prop.sdncRestApi.tempDir +'/l3smvpntemplate.json'"/>\r
-<parameter name="restapiUrl" value="$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/vpn-services/vpnservice='+$prop.l3vpn.name'"/>\r
-<parameter name="restapiUser" value="$prop.sdncRestApi.thirdpartySdnc.user"/>\r
-<parameter name="restapiPassword" value="$prop.sdncRestApi.thirdpartySdnc.password"/>\r
-<parameter name="format" value="json"/>\r
-<parameter name="httpMethod" value="delete"/>\r
-<parameter name="responsePrefix" value="restapi-result"/></execute></outcome></switch></block></method></service-logic>
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>\r
+<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}">\r
+    <method rpc="network-topology-operation-delete" mode="sync">\r
+        <block atomic="true">\r
+            <call module="GENERIC-RESOURCE-API" rpc="validate-network-input-parameters" mode="sync" />\r
+            <for index="idx" start="0" end="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`">\r
+                <block>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.name" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'service-type'`">\r
+                        <outcome value="true">\r
+                            <set>\r
+                                <parameter name="prop.l3vpn.service-type" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                            </set>\r
+                        </outcome>\r
+                    </switch>\r
+                </block>\r
+            </for>\r
+            <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="esr-thirdparty-sdnc" key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND         depth = '1'" pfx="tmp.aai.esr-thirdparty-sdnc" local-only="false">\r
+                <outcome value="success">\r
+                    <block atomic="true" />\r
+                </outcome>\r
+                <outcome value="not-found">\r
+                    <return status="failure">\r
+                        <parameter name="ack-final" value="Y" />\r
+                        <parameter name="error-code" value="500" />\r
+                        <parameter name="error-message" value="Network model is_bound_to_vpn=true but no vpn_binding is present" />\r
+                    </return>\r
+                </outcome>\r
+                <outcome value="Other">\r
+                    <return status="failure">\r
+                        <parameter name="ack-final" value="Y" />\r
+                        <parameter name="error-code" value="500" />\r
+                        <parameter name="error-message" value="Unexpected error retrieving vpn binding" />\r
+                    </return>\r
+                </outcome>\r
+            </get-resource>\r
+            <set>\r
+                <parameter name="prop.sdncRestApi.thirdpartySdnc.url" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.serviceUrl`" />\r
+                <parameter name="prop.sdncRestApi.templateDir" value="/opt/onap/sdnc/data" />\r
+                <parameter name="prop.sdncRestApi.thirdpartySdnc.user" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.user-name`" />\r
+                <parameter name="prop.sdncRestApi.thirdpartySdnc.password" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.password`" />\r
+            </set>\r
+            <switch test="`$prop.l3vpn.service-type`">\r
+                <outcome value="l3vpn-ipwan">\r
+                    <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
+                        <parameter name="templateFileName" value="$prop.sdncRestApi.tempDir +'/l3smvpntemplate.json'" />\r
+                        <parameter name="restapiUrl" value="$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/vpn-services/vpnservice='+$prop.l3vpn.name'" />\r
+                        <parameter name="restapiUser" value="$prop.sdncRestApi.thirdpartySdnc.user" />\r
+                        <parameter name="restapiPassword" value="$prop.sdncRestApi.thirdpartySdnc.password" />\r
+                        <parameter name="format" value="json" />\r
+                        <parameter name="httpMethod" value="delete" />\r
+                        <parameter name="responsePrefix" value="restapi-result" />\r
+                    </execute>\r
+                </outcome>\r
+            </switch>\r
+        </block>\r
+    </method>\r
+</service-logic>\r
index 56325af..367abdf 100644 (file)
 <?xml version="1.0" encoding="UTF-8"?>\r
-<service-logic xmlns="http://www.openecomp.org/sdnc/svclogic" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd" module="GENERIC-RESOURCE-API" version="${project.version}">\r
-       <method rpc="validate-network-input-parameters" mode="sync">\r
-               <block atomic="true">\r
-                       <switch test="`$network-topology-operation-input.sdnc-request-header.svc-action`">\r
-                               <outcome value="">\r
-                                       <return status="failure">\r
-                                               <parameter name="ack-final" value="Y" />\r
-                                               <parameter name="error-code" value="500" />\r
-                                               <parameter name="error-message" value="sdnc-request-header.svc-request-id is a required input" />\r
-                                       </return>\r
-                               </outcome>\r
-                       </switch>\r
-                       <switch test="`$service-topology-operation-input.sdnc-request-header.svc-action`">\r
-                               <outcome value="assign">\r
-                                       <block atomic="true">\r
-                                               <switch test="`$network-topology-operation-input.request-information.request-action`">\r
-                                                       <outcome value="CreateNetworkInstance">\r
-                                                               <block atomic="true">\r
-                                                                       <for index="i" start="0" end="`$network-topology-information.network-request-input.network-input-parameters.param_length`">\r
-                                                                               <block>\r
-                                                                                       <set>\r
-                                                                                               <parameter name="tmp.name" value="" />\r
-                                                                                               <parameter name="tmp.value" value="" />\r
-                                                                                       </set>\r
-                                                                                       <set>\r
-                                                                                               <parameter name="tmp.name" value="'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].name'" />\r
-                                                                                               <parameter name="tmp.value" value="'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].value'" />\r
-                                                                                       </set>\r
-                                                                                       <switch test="'$tmp.name'">\r
-                                                                                               <outcome value="name">\r
-                                                                                                       <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value="">\r
-                                                                                                                       <return status="failure">\r
-                                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                                       </return>\r
-                                                                                                               </outcome>\r
-                                                                                                       </switch>\r
-                                                                                               </outcome>\r
-                                                                                               <outcome value="service-type">\r
-                                                                                                       <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value="">\r
-                                                                                                                       <return status="failure">\r
-                                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                                       </return>\r
-                                                                                                               </outcome>\r
-                                                                                                       </switch>\r
-                                                                                               </outcome>\r
-                                                                                               <outcome value="site1-name">\r
-                                                                                                       <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value="">\r
-                                                                                                                       <return status="failure">\r
-                                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                                       </return>\r
-                                                                                                               </outcome>\r
-                                                                                                       </switch>\r
-                                                                                               </outcome>\r
-                                                                                               <outcome value="site2-name">\r
-                                                                                                       <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value="">\r
-                                                                                                                       <return status="failure">\r
-                                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                                       </return>\r
-                                                                                                               </outcome>\r
-                                                                                                       </switch>\r
-                                                                                               </outcome>\r
-                                                                                               <outcome value="sna1_name">\r
-                                                                                                       <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value="">\r
-                                                                                                                       <return status="failure">\r
-                                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                                       </return>\r
-                                                                                                               </outcome>\r
-                                                                                                       </switch>\r
-                                                                                               </outcome>\r
-                                                                                               <outcome value="sna2_name">\r
-                                                                                                       <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value="">\r
-                                                                                                                       <return status="failure">\r
-                                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                                       </return>\r
-                                                                                                               </outcome>\r
-                                                                                                       </switch>\r
-                                                                                               </outcome>\r
-                                                                                               <outcome value="pe1_id">\r
-                                                                                                       <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value="">\r
-                                                                                                                       <return status="failure">\r
-                                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                                       </return>\r
-                                                                                                               </outcome>\r
-                                                                                                       </switch>\r
-                                                                                               </outcome>\r
-                                                                                               <outcome value="pe2_id">\r
-                                                                                                       <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value="">\r
-                                                                                                                       <return status="failure">\r
-                                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                                       </return>\r
-                                                                                                               </outcome>\r
-                                                                                                       </switch>\r
-                                                                                               </outcome>\r
-                                                                                               <outcome value="ac1-id">\r
-                                                                                                       <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value="">\r
-                                                                                                                       <return status="failure">\r
-                                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                                       </return>\r
-                                                                                                               </outcome>\r
-                                                                                                       </switch>\r
-                                                                                               </outcome>\r
-                                                                                               <outcome value="ac2-id">\r
-                                                                                                       <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value="">\r
-                                                                                                                       <return status="failure">\r
-                                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                                       </return>\r
-                                                                                                               </outcome>\r
-                                                                                                       </switch>\r
-                                                                                               </outcome>\r
-                                                                                               <outcome value="ac1-ip">\r
-                                                                                                       <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value="">\r
-                                                                                                                       <return status="failure">\r
-                                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                                       </return>\r
-                                                                                                               </outcome>\r
-                                                                                                       </switch>\r
-                                                                                               </outcome>\r
-                                                                                               <outcome value="ac2-ip">\r
-                                                                                                       <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value="">\r
-                                                                                                                       <return status="failure">\r
-                                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                                       </return>\r
-                                                                                                               </outcome>\r
-                                                                                                       </switch>\r
-                                                                                               </outcome>\r
-                                                                                               <outcome value="ac1_peer_ip">\r
-                                                                                                       <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value="">\r
-                                                                                                                       <return status="failure">\r
-                                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                                       </return>\r
-                                                                                                               </outcome>\r
-                                                                                                       </switch>\r
-                                                                                               </outcome>\r
-                                                                                               <outcome value="ac2_peer_ip">\r
-                                                                                                       <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value="">\r
-                                                                                                                       <return status="failure">\r
-                                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                                       </return>\r
-                                                                                                               </outcome>\r
-                                                                                                       </switch>\r
-                                                                                               </outcome>\r
-                                                                                               <outcome value="ac1_svlan">\r
-                                                                                                       <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value="">\r
-                                                                                                                       <return status="failure">\r
-                                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                                       </return>\r
-                                                                                                               </outcome>\r
-                                                                                                       </switch>\r
-                                                                                               </outcome>\r
-                                                                                               <outcome value="ac2_svlan">\r
-                                                                                                       <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value="">\r
-                                                                                                                       <return status="failure">\r
-                                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                                       </return>\r
-                                                                                                               </outcome>\r
-                                                                                                       </switch>\r
-                                                                                               </outcome>\r
-                                                                                               <outcome value="">\r
-                                                                                                       <return status="failure">\r
-                                                                                                               <parameter name="ack-final" value="Y" />\r
-                                                                                                               <parameter name="error-code" value="500" />\r
-                                                                                                               <parameter name="error-message" value="`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`" />\r
-                                                                                                       </return>\r
-                                                                                               </outcome>\r
-                                                                                       </switch>\r
-                                                                               </block>\r
-                                                                       </for>\r
-                                                               </block>\r
-                                                       </outcome>\r
-                                                       <outcome value="Other">\r
-                                                               <return status="failure">\r
-                                                                       <parameter name="ack-final" value="Y" />\r
-                                                                       <parameter name="error-code" value="500" />\r
-                                                                       <parameter name="error-message" value="request-information.request-action is required to be CreateNetworkInstance for svc-action=assign" />\r
-                                                               </return>\r
-                                                       </outcome>\r
-                                               </switch>\r
-                                       </block>\r
-                               </outcome>\r
-                               <outcome value="activate">\r
-                                       <switch test="`$network-topology-operation-input.request-information.request-action`">\r
-                                               <outcome value="ActivateNetworkInstance">\r
-                                                       <block atomic="true">\r
-                                                               <call module="GENERIC-RESOURCE-API" rpc="validate-overlay-network-input-parameters" mode="sync" />\r
-                                                       </block>\r
-                                               </outcome>\r
-                                               <outcome value="Other">\r
-                                                       <return status="failure">\r
-                                                               <parameter name="ack-final" value="Y" />\r
-                                                               <parameter name="error-code" value="500" />\r
-                                                               <parameter name="error-message" value="request-information.request-action is required to be ActivateNetworkInstance for svc-action=activate" />\r
-                                                       </return>\r
-                                               </outcome>\r
-                                       </switch>\r
-                               </outcome>\r
-                               <outcome value="deactivate">\r
-                                       <block atomic="true">\r
-                                               <outcome value="DeactivateNetworkInstance">\r
-                                                       <block atomic="true">\r
-                                                               <for index="idx" start="0" end="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`">\r
-                                                                       <block>\r
-                                                                               <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].id == 'id'`">\r
-                                                                                       <outcome value="true">\r
-                                                                                               <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`">\r
-                                                                                                       <outcome value="">\r
-                                                                                                               <return status="failure">\r
-                                                                                                                       <parameter name="ack-final" value="Y" />\r
-                                                                                                                       <parameter name="error-code" value="500" />\r
-                                                                                                                       <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                               </return>\r
-                                                                                                       </outcome>\r
-                                                                                               </switch>\r
-                                                                                       </outcome>\r
-                                                                               </switch>\r
-                                                                       </block>\r
-                                                               </for>\r
-                                                       </block>\r
-                                               </outcome>\r
-                                               <outcome value="Other">\r
-                                                       <return status="failure">\r
-                                                               <parameter name="ack-final" value="Y" />\r
-                                                               <parameter name="error-code" value="500" />\r
-                                                               <parameter name="error-message" value="request-information.request-action is required to be CreateNetworkInstance for svc-action=assign" />\r
-                                                       </return>\r
-                                               </outcome>\r
-                                       </block>\r
-                               </outcome>\r
-                               <outcome value="Other">\r
-                                       <return status="failure">\r
-                                               <parameter name="ack-final" value="Y" />\r
-                                               <parameter name="error-code" value="500" />\r
-                                               <parameter name="error-message" value="`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`" />\r
-                                       </return>\r
-                               </outcome>\r
-                               <outcome value="delete">\r
-                                       <block atomic="true">\r
-                                               <outcome value="DeleteNetworkInstance">\r
-                                                       <block atomic="true">\r
-                                                               <for index="idx" start="0" end="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`">\r
-                                                                       <block>\r
-                                                                               <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`">\r
-                                                                                       <outcome value="true">\r
-                                                                                               <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`">\r
-                                                                                                       <outcome value="">\r
-                                                                                                               <return status="failure">\r
-                                                                                                                       <parameter name="ack-final" value="Y" />\r
-                                                                                                                       <parameter name="error-code" value="500" />\r
-                                                                                                                       <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                               </return>\r
-                                                                                                       </outcome>\r
-                                                                                               </switch>\r
-                                                                                       </outcome>\r
-                                                                               </switch>\r
-                                                                       </block>\r
-                                                               </for>\r
-                                                       </block>\r
-                                               </outcome>\r
-                                               <outcome value="Other">\r
-                                                       <return status="failure">\r
-                                                               <parameter name="ack-final" value="Y" />\r
-                                                               <parameter name="error-code" value="500" />\r
-                                                               <parameter name="error-message" value="request-information.request-action is required to be CreateNetworkInstance for svc-action=assign" />\r
-                                                       </return>\r
-                                               </outcome>\r
-                                       </block>\r
-                               </outcome>\r
-                       </switch>\r
-               </block>\r
-       </method>\r
-</service-logic>
\ No newline at end of file
+<service-logic xmlns="http://www.onap.org/sdnc/svclogic" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.onap.org/sdnc/svclogic ./svclogic.xsd" module="GENERIC-RESOURCE-API" version="${project.version}">\r
+    <method rpc="validate-network-input-parameters" mode="sync">\r
+        <block atomic="true">\r
+            <switch test="`$network-topology-operation-input.sdnc-request-header.svc-action`">\r
+                <outcome value="">\r
+                    <return status="failure">\r
+                        <parameter name="ack-final" value="Y" />\r
+                        <parameter name="error-code" value="500" />\r
+                        <parameter name="error-message" value="sdnc-request-header.svc-request-id is a required input" />\r
+                    </return>\r
+                </outcome>\r
+            </switch>\r
+            <switch test="`$service-topology-operation-input.sdnc-request-header.svc-action`">\r
+                <outcome value="create">\r
+                    <block atomic="true">\r
+                        <switch test="`$network-topology-operation-input.request-information.request-action`">\r
+                            <outcome value="CreateNetworkInstance">\r
+                                <block atomic="true">\r
+                                    <for index="i" start="0" end="`$network-topology-information.network-request-input.network-input-parameters.param_length`">\r
+                                        <block>\r
+                                            <set>\r
+                                                <parameter name="tmp.name" value="" />\r
+                                                <parameter name="tmp.value" value="" />\r
+                                            </set>\r
+                                            <set>\r
+                                                <parameter name="tmp.name" value="'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].name'" />\r
+                                                <parameter name="tmp.value" value="'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].value'" />\r
+                                            </set>\r
+                                            <switch test="'$tmp.name'">\r
+                                                <outcome value="name">\r
+                                                    <switch test="`$tmp.value`">\r
+                                                        <outcome value="">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="ack-final" value="Y" />\r
+                                                                <parameter name="error-code" value="500" />\r
+                                                                <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value="service-type">\r
+                                                    <switch test="`$tmp.value`">\r
+                                                        <outcome value="">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="ack-final" value="Y" />\r
+                                                                <parameter name="error-code" value="500" />\r
+                                                                <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value="site1-name">\r
+                                                    <switch test="`$tmp.value`">\r
+                                                        <outcome value="">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="ack-final" value="Y" />\r
+                                                                <parameter name="error-code" value="500" />\r
+                                                                <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value="site2-name">\r
+                                                    <switch test="`$tmp.value`">\r
+                                                        <outcome value="">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="ack-final" value="Y" />\r
+                                                                <parameter name="error-code" value="500" />\r
+                                                                <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value="sna1_name">\r
+                                                    <switch test="`$tmp.value`">\r
+                                                        <outcome value="">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="ack-final" value="Y" />\r
+                                                                <parameter name="error-code" value="500" />\r
+                                                                <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value="sna2_name">\r
+                                                    <switch test="`$tmp.value`">\r
+                                                        <outcome value="">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="ack-final" value="Y" />\r
+                                                                <parameter name="error-code" value="500" />\r
+                                                                <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value="pe1_id">\r
+                                                    <switch test="`$tmp.value`">\r
+                                                        <outcome value="">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="ack-final" value="Y" />\r
+                                                                <parameter name="error-code" value="500" />\r
+                                                                <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value="pe2_id">\r
+                                                    <switch test="`$tmp.value`">\r
+                                                        <outcome value="">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="ack-final" value="Y" />\r
+                                                                <parameter name="error-code" value="500" />\r
+                                                                <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value="ac1-id">\r
+                                                    <switch test="`$tmp.value`">\r
+                                                        <outcome value="">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="ack-final" value="Y" />\r
+                                                                <parameter name="error-code" value="500" />\r
+                                                                <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value="ac2-id">\r
+                                                    <switch test="`$tmp.value`">\r
+                                                        <outcome value="">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="ack-final" value="Y" />\r
+                                                                <parameter name="error-code" value="500" />\r
+                                                                <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value="ac1-ip">\r
+                                                    <switch test="`$tmp.value`">\r
+                                                        <outcome value="">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="ack-final" value="Y" />\r
+                                                                <parameter name="error-code" value="500" />\r
+                                                                <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value="ac2-ip">\r
+                                                    <switch test="`$tmp.value`">\r
+                                                        <outcome value="">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="ack-final" value="Y" />\r
+                                                                <parameter name="error-code" value="500" />\r
+                                                                <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value="ac1_peer_ip">\r
+                                                    <switch test="`$tmp.value`">\r
+                                                        <outcome value="">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="ack-final" value="Y" />\r
+                                                                <parameter name="error-code" value="500" />\r
+                                                                <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value="ac2_peer_ip">\r
+                                                    <switch test="`$tmp.value`">\r
+                                                        <outcome value="">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="ack-final" value="Y" />\r
+                                                                <parameter name="error-code" value="500" />\r
+                                                                <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value="ac1_svlan">\r
+                                                    <switch test="`$tmp.value`">\r
+                                                        <outcome value="">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="ack-final" value="Y" />\r
+                                                                <parameter name="error-code" value="500" />\r
+                                                                <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value="ac2_svlan">\r
+                                                    <switch test="`$tmp.value`">\r
+                                                        <outcome value="">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="ack-final" value="Y" />\r
+                                                                <parameter name="error-code" value="500" />\r
+                                                                <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value="">\r
+                                                    <return status="failure">\r
+                                                        <parameter name="ack-final" value="Y" />\r
+                                                        <parameter name="error-code" value="500" />\r
+                                                        <parameter name="error-message" value="`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`" />\r
+                                                    </return>\r
+                                                </outcome>\r
+                                            </switch>\r
+                                        </block>\r
+                                    </for>\r
+                                </block>\r
+                            </outcome>\r
+                            <outcome value="Other">\r
+                                <return status="failure">\r
+                                    <parameter name="ack-final" value="Y" />\r
+                                    <parameter name="error-code" value="500" />\r
+                                    <parameter name="error-message" value="request-information.request-action is required to be CreateNetworkInstance for svc-action=create" />\r
+                                </return>\r
+                            </outcome>\r
+                        </switch>\r
+                    </block>\r
+                </outcome>\r
+                <outcome value="activate">\r
+                    <switch test="`$network-topology-operation-input.request-information.request-action`">\r
+                        <outcome value="ActivateNetworkInstance">\r
+                            <block atomic="true">\r
+                                <call module="GENERIC-RESOURCE-API" rpc="validate-overlay-network-input-parameters" mode="sync" />\r
+                            </block>\r
+                        </outcome>\r
+                        <outcome value="Other">\r
+                            <return status="failure">\r
+                                <parameter name="ack-final" value="Y" />\r
+                                <parameter name="error-code" value="500" />\r
+                                <parameter name="error-message" value="request-information.request-action is required to be ActivateNetworkInstance for svc-action=activate" />\r
+                            </return>\r
+                        </outcome>\r
+                    </switch>\r
+                </outcome>\r
+                <outcome value="deactivate">\r
+                    <block atomic="true">\r
+                        <outcome value="DeactivateNetworkInstance">\r
+                            <block atomic="true">\r
+                                <for index="idx" start="0" end="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`">\r
+                                    <block>\r
+                                        <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].id == 'id'`">\r
+                                            <outcome value="true">\r
+                                                <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`">\r
+                                                    <outcome value="">\r
+                                                        <return status="failure">\r
+                                                            <parameter name="ack-final" value="Y" />\r
+                                                            <parameter name="error-code" value="500" />\r
+                                                            <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
+                                                        </return>\r
+                                                    </outcome>\r
+                                                </switch>\r
+                                            </outcome>\r
+                                        </switch>\r
+                                    </block>\r
+                                </for>\r
+                            </block>\r
+                        </outcome>\r
+                        <outcome value="Other">\r
+                            <return status="failure">\r
+                                <parameter name="ack-final" value="Y" />\r
+                                <parameter name="error-code" value="500" />\r
+                                <parameter name="error-message" value="request-information.request-action is required to be DeactivateNetworkInstance for svc-action=deactivate" />\r
+                            </return>\r
+                        </outcome>\r
+                    </block>\r
+                </outcome>\r
+                <outcome value="Other">\r
+                    <return status="failure">\r
+                        <parameter name="ack-final" value="Y" />\r
+                        <parameter name="error-code" value="500" />\r
+                        <parameter name="error-message" value="`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`" />\r
+                    </return>\r
+                </outcome>\r
+                <outcome value="delete">\r
+                    <block atomic="true">\r
+                        <outcome value="DeleteNetworkInstance">\r
+                            <block atomic="true">\r
+                                <for index="idx" start="0" end="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`">\r
+                                    <block>\r
+                                        <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`">\r
+                                            <outcome value="true">\r
+                                                <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`">\r
+                                                    <outcome value="">\r
+                                                        <return status="failure">\r
+                                                            <parameter name="ack-final" value="Y" />\r
+                                                            <parameter name="error-code" value="500" />\r
+                                                            <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
+                                                        </return>\r
+                                                    </outcome>\r
+                                                </switch>\r
+                                            </outcome>\r
+                                        </switch>\r
+                                    </block>\r
+                                </for>\r
+                            </block>\r
+                        </outcome>\r
+                        <outcome value="Other">\r
+                            <return status="failure">\r
+                                <parameter name="ack-final" value="Y" />\r
+                                <parameter name="error-code" value="500" />\r
+                                <parameter name="error-message" value="request-information.request-action is required to be DeleteNetworkInstance for svc-action=delete" />\r
+                            </return>\r
+                        </outcome>\r
+                    </block>\r
+                </outcome>\r
+            </switch>\r
+        </block>\r
+    </method>\r
+</service-logic>\r