summaryrefslogtreecommitdiffstats
path: root/ms/generic-resource-api/src/test/resources/svclogic/GENERIC-RESOURCE-API_network-topology-operation-changeassign.xml
diff options
context:
space:
mode:
Diffstat (limited to 'ms/generic-resource-api/src/test/resources/svclogic/GENERIC-RESOURCE-API_network-topology-operation-changeassign.xml')
-rwxr-xr-xms/generic-resource-api/src/test/resources/svclogic/GENERIC-RESOURCE-API_network-topology-operation-changeassign.xml1172
1 files changed, 0 insertions, 1172 deletions
diff --git a/ms/generic-resource-api/src/test/resources/svclogic/GENERIC-RESOURCE-API_network-topology-operation-changeassign.xml b/ms/generic-resource-api/src/test/resources/svclogic/GENERIC-RESOURCE-API_network-topology-operation-changeassign.xml
deleted file mode 100755
index 7d0155a..0000000
--- a/ms/generic-resource-api/src/test/resources/svclogic/GENERIC-RESOURCE-API_network-topology-operation-changeassign.xml
+++ /dev/null
@@ -1,1172 +0,0 @@
-<service-logic
- xmlns='http://www.onap.org/sdnc/svclogic'
- xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>
- <method rpc='network-topology-operation-changeassign' mode='sync'>
- <block atomic="true">
- <switch test='`$service-data.networks.network[$nidx].network-data.network-information.from-preload`'>
- <outcome value='true'>
- <block></block>
- </outcome>
- <outcome value='Other'>
- <return status='failure'>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="Error: changeassign only allowed for networks with from-preload set to true" />
- </return>
- </outcome>
- </switch>
- <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
- <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />
- <parameter name='contextPrefix' value='prop' />
- </execute>
- <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
- <parameter name="source" value="`$prop.restapi.preload-network`"/>
- <parameter name="outputPath" value="tmp.pn-url"/>
- <parameter name="target" value="{network-name}"/>
- <parameter name="replacement" value="`$network-topology-operation-input.network-request-information.network-name`"/>
- </execute>
- <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
- <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.pn-url`' />
- <parameter name='restapiUser' value='`$prop.controller.user`' />
- <parameter name='restapiPassword' value='`$prop.controller.pwd`' />
- <parameter name='format' value='json' />
- <parameter name='httpMethod' value='GET' />
- <parameter name="responsePrefix" value="preload-data" />
- <outcome value='success'>
- <block atomic="true"></block>
- </outcome>
- <outcome value='Other'>
- <return status='failure'>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="'Error: No preload-network found with network-name =' + $tmp.network-instance-name + ' in md-sal'" />
- </return>
- </outcome>
- </execute>
- <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="l3-network"
- key="l3-network.network-id = $network-topology-operation-input.network-request-information.network-id
- AND depth='all'"
- local-only="false"
- pfx="tmp.AnAI.l3network">
- <outcome value='failure'>
- <return status='failure'>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`'Error retrieving l3-network with network-id=' + $network-topology-operation-input.network-request-information.network-id + ' from AnAI'`" />
- </return>
- </outcome>
- <outcome value='not-found'>
- <return status='failure'>
- <parameter name="error-code" value="404" />
- <parameter name="error-message" value="`'network-id: ' + $network-topology-operation-input.network-request-information.network-id + 'not found in AnAI'`" />
- </return>
- </outcome>
- </get-resource>
- <switch test="`$tmp.AnAI.l3network.network-name == $network-data.network-topology.network-topology-identifier-structure.network-name`">
- <outcome value='false'>
- <return status='failure'>
- <parameter name="error-code" value="404" />
- <parameter name="error-message" value="`'The input network-name,' + network-topology-operation-input.network-request-information.network-name + ', does not match what is returned from AnAI with network-id = ' + $network-topology-operation-input.network-request-information.network-id`" />
- </return>
- </outcome>
- </switch>
- <switch test="`$tmp.AnAI.l3network.network-type == $network-data.network-topology.network-topology-identifier-structure.network-type`">
- <outcome value='false'>
- <return status='failure'>
- <parameter name="error-code" value="404" />
- <parameter name="error-message" value="`'The input network-type,' + network-topology-operation-input.network-request-information.network-type + ', does not match what is returned from AnAI with network-id = ' + $network-topology-operation-input.network-request-information.network-id`" />
- </return>
- </outcome>
- </switch>
- <switch test="`$tmp.AnAI.l3network.network-name == $preload-data.preload-network-topology-information.network-topology-identifier.network-name`">
- <outcome value='false'>
- <return status='failure'>
- <parameter name="error-code" value="404" />
- <parameter name="error-message" value="`'No preload network found with network-name = ' + $tmp.AnAI.l3network.network-name + ' in SDNC'`" />
- </return>
- </outcome>
- </switch>
- <switch test="`$tmp.AnAI.l3network.network-type == $preload-data.preload-network-topology-information.network-topology-identifier.network-type`">
- <outcome value='false'>
- <return status='failure'>
- <parameter name="error-code" value="404" />
- <parameter name="error-message" value="`'No preload network found with network-type = ' + $tmp.AnAI.l3network.network-type + ' in SDNC'`" />
- </return>
- </outcome>
- </switch>
- <set>
- <parameter name='x' value='0' />
- <parameter name='tmp.error-message' value='' />
- <parameter name='execute_failure' value='false' />
- <parameter name='tmp.l3networkUpdate' value='0' />
- </set>
- <switch test="`$tmp.AnAI.l3network.subnets.subnet_length`">
- <outcome value=''>
- <set>
- <parameter name="tmp.AnAI.l3network.subnets.subnet_length" value="0" />
- </set>
- </outcome>
- </switch>
- <for index="k" start="0" end="`$tmp.AnAI.l3network.subnets.subnet_length`">
- <block atomic='true'>
- <set>
- <parameter name='tmp.start-address-match' value='0' />
- </set>
- <set>
- <parameter name='tmp.subnetUpdate' value='0' />
- </set>
- <block atomic='true'>
- <for index="n" start="0" end="`$preload-data.preload-network-topology-information.subnets_length`">
- <switch test="`$tmp.AnAI.l3network.subnets.subnet[$k].network-start-address == $preload-data.preload-network-topology-information.subnets[$n].start-address`">
- <outcome value='true'>
- <block atomic='true'>
- <set>
- <parameter name='tmp.start-address-match' value='1' />
- </set>
- <switch test="`$tmp.AnAI.l3network.subnets.subnet[$k].cidr-mask == $preload-data.preload-network-topology-information.subnets[$n].cidr-mask`">
- <outcome value='false'>
- <set>
- <parameter name="tmp.subnetUpdate" value="1" />
- </set>
- </outcome>
- </switch>
- <switch test="`$preload-data.preload-network-topology-information.subnets[$n].gateway-address`">
- <outcome value=''>
- <block>
- <execute plugin="com.att.sdnctl.sli.plugin.ipAddressTools.IpAddressTool" method="getGatewayAddress">
- <parameter name="ipAddress" value="`$preload-data.preload-network-topology-information.subnets[$n].start-address`" />
- <parameter name="ipVersion" value="`$preload-data.preload-network-topology-information.subnets[$n].ip-version`" />
- <parameter name="subnet" value="`$preload-data.preload-network-topology-information.subnets[$n].cidr-mask`" />
- <parameter name="ctxVariable" value="tmp.return.generate.gateway-address" />
- </execute>
- <switch test="`$tmp.AnAI.l3network.subnets.subnet[$k].gateway-address == $tmp.return.generate.gateway-address`">
- <outcome value='false'>
- <block>
- <set>
- <parameter name="tmp.gateway-address" value="`$tmp.return.generate.gateway-address`" />
- </set>
- <set>
- <parameter name="tmp.subnetUpdate" value="1" />
- </set>
- </block>
- </outcome>
- </switch>
- </block>
- </outcome>
- <outcome value='Other'>
- <switch test="`$tmp.AnAI.l3network.subnets.subnet[$k].gateway-address == $preload-data.preload-network-topology-information.subnets[$n].gateway-address`">
- <outcome value='false'>
- <block>
- <set>
- <parameter name="tmp.gateway-address" value="`$preload-data.preload-network-topology-information.subnets[$n].gateway-address`" />
- </set>
- <set>
- <parameter name="tmp.subnetUpdate" value="1" />
- </set>
- </block>
- </outcome>
- <outcome value='true'>
- <set>
- <parameter name="tmp.gateway-address" value="`$preload-data.preload-network-topology-information.subnets[$n].gateway-address`" />
- </set>
- </outcome>
- </switch>
- </outcome>
- </switch>
- <switch test="`$preload-data.preload-network-topology-information.subnets[$n].dhcp-enabled`">
- <outcome value='N'>
- <set>
- <parameter name="tmp.dhcpEnabled.boolean" value="false" />
- </set>
- </outcome>
- <outcome value='Y'>
- <set>
- <parameter name="tmp.dhcpEnabled.boolean" value="true" />
- </set>
- </outcome>
- </switch>
- <switch test="`$preload-data.preload-network-topology-information.subnets[$n].addr-from-start`">
- <outcome value='N'>
- <set>
- <parameter name="tmp.addrFromStart.boolean" value="false" />
- </set>
- </outcome>
- <outcome value='Y'>
- <set>
- <parameter name="tmp.addrFromStart.boolean" value="true" />
- </set>
- </outcome>
- </switch>
- <switch test="`$tmp.AnAI.l3network.subnets.subnet[$k].ip-assignment-direction == $tmp.addrFromStart.boolean`">
- <outcome value='false'>
- <block>
- <set>
- <parameter name="tmp.subnetUpdate" value="1" />
- </set>
- </block>
- </outcome>
- </switch>
- <switch test="`$tmp.AnAI.l3network.subnets.subnet[$k].dhcp-enabled == $tmp.dhcpEnabled.boolean`">
- <outcome value='false'>
- <block>
- <set>
- <parameter name="tmp.subnetUpdate" value="1" />
- </set>
- </block>
- </outcome>
- </switch>
- <switch test="`$tmp.AnAI.l3network.subnets.subnet[$k].dhcp-start == $preload-data.preload-network-topology-information.subnets[$n].dhcp-start-address`">
- <outcome value='false'>
- <block>
- <set>
- <parameter name="tmp.subnetUpdate" value="1" />
- </set>
- </block>
- </outcome>
- </switch>
- <switch test="`$tmp.AnAI.l3network.subnets.subnet[$k].dhcp-end == $preload-data.preload-network-topology-information.subnets[$n].dhcp-end-address`">
- <outcome value='false'>
- <block>
- <set>
- <parameter name="tmp.subnetUpdate" value="1" />
- </set>
- </block>
- </outcome>
- </switch>
- <switch test="`$tmp.AnAI.l3network.subnets.subnet[$k].subnet-name == $preload-data.preload-network-topology-information.subnets[$n].subnet-name`">
- <outcome value='false'>
- <block>
- <set>
- <parameter name="tmp.subnetUpdate" value="1" />
- </set>
- </block>
- </outcome>
- </switch>
- <switch test="`$tmp.AnAI.l3network.subnets.subnet[$k].subnet-role == $preload-data.preload-network-topology-information.subnets[$n].subnet-role`">
- <outcome value='false'>
- <block>
- <set>
- <parameter name="tmp.subnetUpdate" value="1" />
- </set>
- </block>
- </outcome>
- </switch>
- <switch test="`$tmp.subnetUpdate == 1`">
- <outcome value='true'>
- <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="subnet"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id
- AND subnet.subnet-id = $tmp.AnAI.l3network.subnets.subnet[$k].subnet-id" >
- <!-- Update l3network.subnet -->
- <parameter name="gateway-address" value="`$tmp.gateway-address`"/>
- <parameter name="subnet-name" value="`$preload-data.preload-network-topology-information.subnets[$n].subnet-name`"/>
- <parameter name="cidr-mask" value="`$preload-data.preload-network-topology-information.subnets[$n].cidr-mask`"/>
- <parameter name="dhcp-start" value="`$preload-data.preload-network-topology-information.subnets[$n].dhcp-start-address`"/>
- <parameter name="dhcp-end" value="`$preload-data.preload-network-topology-information.subnets[$n].dhcp-end-address`"/>
- <parameter name="dhcp-enabled" value="`$tmp.dhcpEnabled.boolean`"/>
- <parameter name="ip-assignment-direction" value="`$tmp.addrFromStart.boolean`" />
- <parameter name="orchestration-status" value="PendingUpdate" />
- <outcome value='failure'>
- <block>
- <set>
- <parameter name='k' value='`$tmp.AnAI.l3network.subnets.subnet_length + 1`' />
- <parameter name='n' value='`$preload-data.preload-network-topology-information.subnets_length + 1`' />
- </set>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'An error occurred while updating subnet attributes in AnAI with subnet-id = ' + $tmp.AnAI.l3network.subnets.subnet[$k].subnet-id`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='not-found'>
- <block>
- <set>
- <parameter name='k' value='`$tmp.AnAI.l3network.subnets.subnet_length + 1`' />
- <parameter name='n' value='`$preload-data.preload-network-topology-information.subnets_length + 1`' />
- </set>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'An error occurred while updating subnet attributes in AnAI with subnet-id = ' + $tmp.AnAI.l3network.subnets.subnet[$k].subnet-id`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='success'>
- <block>
- <set>
- <parameter name="tmp.subnetRollback[$x].subnet-id" value= "`$tmp.AnAI.l3network.subnets.subnet[$k].subnet-id`"/>
- <parameter name="tmp.subnetRollback[$x].type" value = "update"/>
- </set>
- <set>
- <parameter name="x" value = "`$x + 1`" />
- </set>
- <set>
- <parameter name="tmp.l3networkUpdate" value="1" />
- </set>
- </block>
- </outcome>
- </update>
- </outcome>
- </switch>
- </block>
- </outcome>
- </switch>
- </for>
- <switch test="`$execute_failure`">
- <outcome value='false'>
- <switch test="`$tmp.start-address-match == 0`">
- <outcome value='true'>
- <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="subnet"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id
- AND subnet.subnet-id = $tmp.AnAI.l3network.subnets.subnet[$k].subnet-id" >
- <parameter name="orchestration-status" value="PendingDelete" />
- <outcome value='failure'>
- <block>
- <set>
- <parameter name='k' value='`$tmp.AnAI.l3network.subnets.subnet_length + 1`' />
- <parameter name='n' value='`$preload-data.preload-network-topology-information.subnets_length + 1`' />
- </set>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'An error occurred while updating subnet status to PendingDelete in AnAI with subnet-id = ' + $tmp.AnAI.l3network.subnets.subnet[$k].subnet-id`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='not-found'>
- <block>
- <set>
- <parameter name='k' value='`$tmp.AnAI.l3network.subnets.subnet_length + 1`' />
- <parameter name='n' value='`$preload-data.preload-network-topology-information.subnets_length + 1`' />
- </set>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'An error occurred while updating subnet status to PendingDelete in AnAI with subnet-id = ' + $tmp.AnAI.l3network.subnets.subnet[$k].subnet-id`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='success'>
- <block>
- <set>
- <parameter name="tmp.subnetRollback[$x].subnet-id" value= "`$tmp.AnAI.l3network.subnets.subnet[$k].subnet-id`"/>
- <parameter name="tmp.subnetRollback[$x].orchestration-status" value= "`$tmp.AnAI.l3network.subnets.subnet[$k].orchestration-status`" />
- <parameter name="tmp.subnetRollback[$x].type" value = "delete" />
- </set>
- <set>
- <parameter name="x" value = "`$x + 1`" />
- </set>
- <set>
- <parameter name="tmp.l3networkUpdate" value="1" />
- </set>
- </block>
- </outcome>
- </update>
- </outcome>
- </switch>
- </outcome>
- </switch>
- </block>
- </block>
- </for>
- <switch test="`$execute_failure`">
- <outcome value='false'>
- <for index="i" start="0" end="`$preload-data.preload-network-topology-information.subnets_length`">
- <block atomic='true'>
- <set>
- <parameter name="tmp.start-address-match" value="0" />
- </set>
- <block atomic='true'>
- <for index="j" start="0" end="`$tmp.AnAI.l3network.subnets.subnet_length`">
- <switch test="`$preload-data.preload-network-topology-information.subnets[$i].start-address == $tmp.AnAI.l3network.subnets.subnet[$j].network-start-address`">
- <outcome value='true'>
- <set>
- <parameter name='tmp.start-address-match' value='1' />
- </set>
- </outcome>
- </switch>
- </for>
- <switch test="`$tmp.start-address-match == 0`">
- <outcome value='true'>
- <block atomic="true">
- <switch test="`$preload-data.preload-network-topology-information.subnets[$i].dhcp-enabled`">
- <outcome value='N'>
- <set>
- <parameter name="tmp.dhcpEnabled.boolean" value="false" />
- </set>
- </outcome>
- <outcome value='Y'>
- <set>
- <parameter name="tmp.dhcpEnabled.boolean" value="true" />
- </set>
- </outcome>
- </switch>
- <switch test="`$preload-data.preload-network-topology-information.subnets[$n].addr-from-start`">
- <outcome value='N'>
- <set>
- <parameter name="tmp.addrFromStart.boolean" value="false" />
- </set>
- </outcome>
- <outcome value='Y'>
- <set>
- <parameter name="tmp.addrFromStart.boolean" value="true" />
- </set>
- </outcome>
- <outcome value=''>
- <set>
- <parameter name="tmp.addrFromStart.boolean" value="true" />
- </set>
- </outcome>
- </switch>
- <set>
- <parameter name='tmp.gateway-address' value='`$preload-data.preload-network-topology-information.subnets[$i].gateway-address`' />
- </set>
- <switch test="`$preload-data.preload-network-topology-information.subnets[$i].gateway-address`">
- <outcome value=''>
- <block>
- <execute plugin="com.att.sdnctl.sli.plugin.ipAddressTools.IpAddressTool" method="getGatewayAddress">
- <parameter name="ipAddress" value="`$preload-data.preload-network-topology-information.subnets[$i].start-address`" />
- <parameter name="ipVersion" value="`$preload-data.preload-network-topology-information.subnets[$i].ip-version`" />
- <parameter name="subnet" value="`$preload-data.preload-network-topology-information.subnets[$i].cidr-mask`" />
- <parameter name="ctxVariable" value="tmp.return.generate.gateway-address" />
- </execute>
- <set>
- <parameter name="tmp.gateway-address" value="`$tmp.return.generate.gateway-address`" />
- </set>
- </block>
- </outcome>
- </switch>
- <set>
- <parameter name="tmp.local.network-id" value="`$tmp.AnAI.l3network.network-id`" />
- </set>
- <call module="VNF-API" rpc="generate-subnets-subnet-id" mode="sync" >
- <outcome value='failure'>
- <block>
- <set>
- <parameter name='j' value='`$tmp.AnAI.l3subnet_length + 1`' />
- <parameter name='i' value='`$preload-data.preload-network-topology-information.subnets_length + 1`' />
- </set>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'An error occurred while saving new subnet in AnAI with subnet-id = ' + $tmp.return.generate-subnets-subnet-id.uuid`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- </call>
- <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="subnet"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id
- AND subnet.subnet-id = $tmp.return.generate-subnets-subnet-id.uuid" >
- <!-- Create l3-network object -->
- <parameter name="network-id" value="`$tmp.AnAI.l3network.network-id`" />
- <parameter name="subnet-id" value="`$tmp.return.generate-subnets-subnet-id.uuid`" />
- <parameter name="gateway-address" value="`$tmp.gateway-address`" />
- <parameter name="subnet-name" value="`$preload-data.preload-network-topology-information.subnets[$i].subnet-name`" />
- <parameter name="network-start-address" value="`$preload-data.preload-network-topology-information.subnets[$i].start-address`" />
- <parameter name="cidr-mask" value="`$preload-data.preload-network-topology-information.subnets[$i].cidr-mask`" />
- <parameter name="ip-version" value="`$preload-data.preload-network-topology-information.subnets[$i].ip-version`" />
- <parameter name="dhcp-start" value="`$preload-data.preload-network-topology-information.subnets[$i].dhcp-start-address`" />
- <parameter name="dhcp-end" value="`$preload-data.preload-network-topology-information.subnets[$i].dhcp-end-address`" />
- <parameter name="dhcp-enabled" value="`$tmp.dhcpEnabled.boolean`" />
- <parameter name="ip-assignment-direction" value="`$tmp.addrFromStart.boolean`" />
- <parameter name="orchestration-status" value="PendingCreate" />
- <outcome value='failure'>
- <block>
- <set>
- <parameter name='j' value='`$tmp.AnAI.l3subnet_length + 1`' />
- <parameter name='i' value='`$preload-data.preload-network-topology-information.subnets_length + 1`' />
- </set>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'An error occurred while saving new subnet in AnAI with subnet-id = ' + $tmp.return.generate-subnets-subnet-id.uuid`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='not-found'>
- <block>
- <set>
- <parameter name='j' value='`$tmp.AnAI.l3subnet_length + 1`' />
- <parameter name='i' value='`$preload-data.preload-network-topology-information.subnets_length + 1`' />
- </set>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'An error occurred while saving new subnet in AnAI with subnet-id = ' + $tmp.return.generate-subnets-subnet-id.uuid`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='success'>
- <block>
- <set>
- <parameter name="tmp.subnetRollback[$x].subnet-id" value= "`$tmp.return.generate-subnets-subnet-id.uuid`" />
- <parameter name="tmp.subnetRollback[$x].type" value = "create" />
- </set>
- <set>
- <parameter name="x" value = "`$x + 1`" />
- </set>
- <set>
- <parameter name='tmp.l3networkUpdate' value='1' />
- </set>
- <block>
- <set>
- <parameter name="tmp.local.subnet-id" value="`$tmp.AnAI.l3network.subnets.subnet[$j].subnet-id`" />
- </set>
- <switch test='`$preload-data.preload-network-topology-information.subnets[$i].host-routes_length`'>
- <outcome value=''>
- <set>
- <parameter name='preload-data.preload-network-topology-information.subnets[$i].host-routes_length' value='0' />
- </set>
- </outcome>
- </switch>
- <for index="h" start="0" end="`$preload-data.preload-network-topology-information.subnets[$i].host-routes_length`">
- <block atomic='true'>
- <call module="VNF-API" rpc="generate-host-routes-host-route-id" mode="sync" >
- <outcome value='failure'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'An error occurred while saving host-route in AnAI where host-route-id = ' + $tmp.return.generate-host-routes-host-route-id.uuid`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- </call>
- <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="host-route"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id
- AND subnet.subnet-id = $tmp.local.subnet-id
- AND host-route.host-route-id = $tmp.return.generate-host-routes-host-route-id.uuid" >
- <!-- Create host-route object -->
- <parameter name="host-route-id" value="`$tmp.return.generate-host-routes-host-route-id.uuid`" />
- <parameter name="route-prefix" value="`$preload-data.preload-network-topology-information.subnets[$i].host-routes[$h].route-prefix`" />
- <parameter name="next-hop" value="`$preload-data.preload-network-topology-information.subnets[$i].host-routes[$h].next-hop`" />
- <outcome value='failure'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'An error occurred while saving host-route in AnAI where host-route-id = ' + $tmp.return.generate-host-routes-host-route-id.uuid`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='not-found'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'An error occurred while saving host-route in AnAI where host-route-id = ' + $tmp.return.generate-host-routes-host-route-id.uuid`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- </save>
- </block>
- </for>
- </block>
- </block>
- </outcome>
- </save>
- </block>
- </outcome>
- </switch>
- </block>
- </block>
- </for>
- </outcome>
- </switch>
- <switch test="`$execute_failure`">
- <outcome value='false'>
- <block atomic='true'>
- <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="l3-network:relationship-list"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id
- AND related-to = vpn-binding" >
- <outcome value='failure'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="An error occurred while deleting l3-network vpn-binding relationship from AnAI"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- </delete>
- <switch test="`$execute_failure`">
- <outcome value='false'>
- <block atomic='true'>
- <switch test="`$preload-data.preload-network-topology-information.vpn-bindings_length`">
- <outcome value=''>
- <set>
- <parameter name="preload-data.preload-network-topology-information.vpn-bindings_length" value="0" />
- </set>
- </outcome>
- </switch>
- <for index="i" start="0" end="`$preload-data.preload-network-topology-information.vpn-bindings_length`">
- <block atomic='true'>
- <set>
- <parameter name="tmp.vpn-binding-id" value="" />
- </set>
- <switch test="`$preload-data.preload-network-topology-information.vpn-bindings[$i].vpn-binding-id`">
- <outcome value='Other'>
- <set>
- <parameter name="tmp.vpn-binding-id" value="`$preload-data.preload-network-topology-information.vpn-bindings[$i].vpn-binding-id`" />
- </set>
- </outcome>
- </switch>
- <switch test="`$preload-data.preload-network-topology-information.vpn-bindings[$i].global-route-target != ''`" >
- <outcome value='true'>
- <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="vpn-binding"
- key="vpn-binding.global-route-target = $preload-data.preload-network-topology-information.vpn-bindings[$i].global-route-target"
- pfx="tmp.AnAI.vpn-binding">
- <outcome value='not-found'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'Failed to query vpn-bindings n AnAI where global-route-target = ' + $preload-data.preload-network-topology-information.vpn-bindings[$i].global-route-target`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='failure'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'Failed to query vpn-bindings n AnAI where global-route-target = ' + $preload-data.preload-network-topology-information.vpn-bindings[$i].global-route-target`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='success'>
- <set>
- <parameter name="tmp.vpn-binding-id" value="`$tmp.AnAI.vpn-binding.vpn-id`" />
- </set>
- </outcome>
- </get-resource>
- </outcome>
- </switch>
- <switch test="`$execute_failure`">
- <outcome value='false'>
- <switch test="`$tmp.vpn-binding-id != ''`">
- <outcome value='true'>
- <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="l3-network:relationship-list"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id" >
- <parameter name="relationship-list.relationship[0].related-to" value="vpn-binding" />
- <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="vpn-binding.vpn-id" />
- <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$tmp.vpn-binding-id`" />
- <outcome value='failure'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'An error occurred while saving l3-newtork vpn-binding relationship in AnAI where vpn-id = ' + $tmp.vpn-binding-id`"/>
- </set>
- <set>
- <parameter name="i" value = "`$preload-data.preload-network-topology-information.vpn-bindings_length + 1`" />
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='not-found'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'An error occurred while saving l3-newtork vpn-binding relationship in AnAI where vpn-id = ' + $tmp.vpn-binding-id`"/>
- </set>
- <set>
- <parameter name="i" value = "`$preload-data.preload-network-topology-information.vpn-bindings_length + 1`" />
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='success'>
- <set>
- <parameter name='tmp.vpn-binding.updated' value='1' />
- </set>
- </outcome>
- </save>
- </outcome>
- </switch>
- </outcome>
- </switch>
- </block>
- </for>
- </block>
- </outcome>
- </switch>
- </block>
- </outcome>
- </switch>
- <switch test="`$execute_failure`">
- <outcome value='false'>
- <block atomic='true'>
- <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="l3-network:relationship-list"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id
- AND related-to = network-policy" >
- <outcome value='failure'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="An error occurred while deleting l3-network network-policy relationship from AnAI in preparation to regenerate the network-policy relationship from PRELOAD."/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- </delete>
- <switch test="`$execute_failure`">
- <outcome value='false'>
- <block atomic='true'>
- <switch test="`$preload-data.preload-network-topology-information.network-policy_length`">
- <outcome value=''>
- <set>
- <parameter name='preload-data.preload-network-topology-information.network-policy_length' value='0' />
- </set>
- </outcome>
- </switch>
- <for index="i" start="0" end="`$preload-data.preload-network-topology-information.network-policy_length`">
- <switch test="`$preload-data.preload-network-topology-information.network-policy[$i].network-policy-fqdn != NULL`">
- <outcome value='true'>
- <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="network-policy"
- key="network-policy.network-policy-fqdn = $preload-data.preload-network-topology-information.network-policy[$i].network-policy-fqdn"
- pfx="tmp.AnAI.network-policy" >
- <outcome value='not-found'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'Failed to query network-policy n AnAI where network-policy-fqdn = ' + $preload-data.preload-network-topology-information.network-policy[$i].network-policy-fqdn`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='failure'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'Failed to query network-policy n AnAI where network-policy-fqdn = ' + $preload-data.preload-network-topology-information.network-policy[$i].network-policy-fqdn`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='success'>
- <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="l3-network:relationship-list"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id" >
- <parameter name="relationship-list.relationship[0].related-to" value="network-policy" />
- <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="network-policy.network-policy-id" />
- <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$tmp.AnAI.network-policy.network-policy-id`" />
- <outcome value='failure'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'An error occurred while saving l3-newtork network-policy relationship in AnAI where network-policy-id = ' + $tmp.AnAI.network-policy.network-policy-id`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='not-found'></outcome>
- <outcome value='success'>
- <set>
- <parameter name='tmp.network-policy.updated' value='1' />
- </set>
- </outcome>
- </save>
- </outcome>
- </get-resource>
- </outcome>
- </switch>
- </for>
- </block>
- </outcome>
- </switch>
- </block>
- </outcome>
- </switch>
- <switch test="`$execute_failure`">
- <outcome value='false'>
- <block atomic='true'>
- <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="l3-network:relationship-list"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id
- AND related-to = route-table-reference" >
- <outcome value='failure'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="An error occurred while deleting l3-network route-table-reference relationship from AnAI prior to regenerate the route-table-reference relationship from PRELOAD."/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- </delete>
- <switch test="`$execute_failure`">
- <outcome value='false'>
- <block atomic='true'>
- <switch test="`$preload-data.preload-network-topology-information.route-table-reference_length`">
- <outcome value=''>
- <set>
- <parameter name='preload-data.preload-network-topology-information.route-table-reference_length' value='0' />
- </set>
- </outcome>
- </switch>
- <for index="i" start="0" end="`$preload-data.preload-network-topology-information.route-table-reference_length`">
- <switch test="`$preload-data.preload-network-topology-information.route-table-reference[$i].route-table-reference-fqdn != NULL`">
- <outcome value='true'>
- <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="route-table-reference"
- key="route-table-reference.route-table-reference-fqdn = $preload-data.preload-network-topology-information.route-table-reference[$i].route-table-reference-fqdn"
- pfx="tmp.AnAI.route-table-reference">
- <outcome value='not-found'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'Failed to query network-policy n AnAI where network-policy-fqdn = ' + $preload-data.preload-network-topology-information.network-policy[$i].network-policy-fqdn`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='failure'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'Failed to query network-policy n AnAI where network-policy-fqdn = ' + $preload-data.preload-network-topology-information.network-policy[$i].network-policy-fqdn`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='success'>
- <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="l3-network:relationship-list"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id" >
- <parameter name="relationship-list.relationship[0].related-to" value="route-table-reference" />
- <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="route-table-reference.route-table-reference-id" />
- <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$tmp.AnAI.route-table-reference.route-table-reference-id`" />
- <outcome value='failure'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="`'An error occurred while saving l3-newtork route-table-reference relationship in AnAI where route-table-reference-id = ' + $tmp.AnAI.route-table-reference.route-table-reference-id`"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='not-found'></outcome>
- <outcome value='success'>
- <set>
- <parameter name='tmp.route-table-reference.updated' value='1' />
- </set>
- </outcome>
- </save>
- </outcome>
- </get-resource>
- </outcome>
- </switch>
- </for>
- </block>
- </outcome>
- </switch>
- </block>
- </outcome>
- </switch>
- <switch test="`$execute_failure`">
- <outcome value='false'>
- <switch test="`$tmp.l3networkUpdate == 1`">
- <outcome value='true'>
- <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="l3-network"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id" >
- <parameter name="orchestration-status" value="PendingUpdate" />
- <outcome value='failure'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="An error occurred while updating l3-network.orchestration-status in AnAI"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='not-found'>
- <block>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.error-message" value="An error occurred while updating l3-network.orchestration-status in AnAI"/>
- </set>
- <return status='success'>
- <parameter name='execute_failure' value='true' />
- </return>
- </block>
- </outcome>
- <outcome value='success'>
- <set>
- <parameter name='tmp.l3network.status.updated' value='1' />
- </set>
- </outcome>
- </update>
- </outcome>
- </switch>
- </outcome>
- </switch>
- <switch test="`$execute_failure`">
- <outcome value="true">
- <block atomic='true'>
- <set>
- <parameter name='ROLLBACK_START' value='NETWORK_TOPOLOGY_CHANGEASSIGN' />
- </set>
- <for index="z" start="0" end="`$tmp.AnAI.l3network.relationship-list.relationship_length`">
- <switch test="`$tmp.AnAI.l3network.relationship-list.relationship[$z].related-to`">
- <outcome value='vpn-binding'>
- <switch test="`$tmp.vpn-binding.updated == 1`">
- <outcome value='true'>
- <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="l3-network:relationship-list"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id" >
- <parameter name="relationship-list.relationship[0].related-to" value="vpn-binding" />
- <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="vpn-binding.vpn-id" />
- <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$tmp.AnAI.l3network.relationship-list.relationship[$z].relationship-data[0].relationship-value`" />
- <outcome value='failure'>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.rollback.error-message" value="`'An error occurred during rollback of l3-newtork vpn-binding relationship in AnAI where vpn-id = ' + $tmp.AnAI.l3network.relationship-list.relationship[$z].relationship-data[0].relationship-value + ' MANUAL ROLLBACK IS REQUIRED.'`"/>
- </set>
- </outcome>
- <outcome value='not-found'>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.rollback.error-message" value="`'An error occurred during rollback of l3-newtork vpn-binding relationship in AnAI where vpn-id = ' + $tmp.AnAI.l3network.relationship-list.relationship[$z].relationship-data[0].relationship-value + ' MANUAL ROLLBACK IS REQUIRED.'`"/>
- </set>
- </outcome>
- </save>
- </outcome>
- </switch>
- </outcome>
- <outcome value='network-policy'>
- <switch test="`$tmp.network-policy.updated == 1`">
- <outcome value='true'>
- <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="l3-network:relationship-list"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id" >
- <parameter name="relationship-list.relationship[0].related-to" value="network-policy" />
- <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="network-policy.network-policy-id" />
- <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$tmp.AnAI.l3network.relationship-list.relationship[$z].relationship-data[0].relationship-value`" />
- <outcome value='failure'>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.rollback.error-message" value="`'An error occurred during rollback of l3-newtork network-policy relationship in AnAI where network-policy-id = ' + $tmp.AnAI.l3network.relationship-list.relationship[$z].relationship-data[0].relationship-value + ' MANUAL ROLLBACK IS REQUIRED.'`"/>
- </set>
- </outcome>
- <outcome value='not-found'>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.rollback.error-message" value="`'An error occurred during rollback of l3-newtork network-policy relationship in AnAI where network-policy-id = ' + $tmp.AnAI.l3network.relationship-list.relationship[$z].relationship-data[0].relationship-value + ' MANUAL ROLLBACK IS REQUIRED.'`"/>
- </set>
- </outcome>
- </save>
- </outcome>
- </switch>
- </outcome>
- <outcome value='route-table-reference'>
- <switch test="`$tmp.route-table-reference.updated == 1`">
- <outcome value='true'>
- <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="l3-network:relationship-list"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id" >
- <parameter name="relationship-list.relationship[0].related-to" value="route-table-reference" />
- <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="route-table-reference.route-table-reference-id" />
- <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$tmp.AnAI.l3network.relationship-list.relationship[$z].relationship-data[0].relationship-value`" />
- <outcome value='failure'>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.rollback.error-message" value="`'An error occurred during rollback of l3-newtork route-table-reference relationship in AnAI where route-table-reference-id = ' + $tmp.AnAI.l3network.relationship-list.relationship[$z].relationship-data[0].relationship-value + ' MANUAL ROLLBACK IS REQUIRED.'`"/>
- </set>
- </outcome>
- <outcome value='not-found'>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.rollback.error-message" value="`'An error occurred during rollback of l3-newtork route-table-reference relationship in AnAI where route-table-reference-id = ' + $tmp.AnAI.l3network.relationship-list.relationship[$z].relationship-data[0].relationship-value + ' MANUAL ROLLBACK IS REQUIRED.'`"/>
- </set>
- </outcome>
- </save>
- </outcome>
- </switch>
- </outcome>
- </switch>
- </for>
- <for index="j" start="0" end="`$x`">
- <block atomic='true'>
- <set>
- <parameter name="tmp.rollback.match" value="0"/>
- </set>
- <for index="i" start="0" end="`$tmp.AnAI.l3network.subnets.subnet_length`">
- <switch test="`$tmp.AnAI.l3network.subnets.subnet[$i].subnet-id == $tmp.subnetRollback[$j].subnet-id`">
- <outcome value='true'>
- <block atomic='true'>
- <switch test="`$tmp.subnetRollback[$j].type`">
- <outcome value='delete'>
- <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="subnet"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id
- AND subnet.subnet-id = $tmp.subnetRollback[$j].subnet-id" >
- <parameter name="orchestration-status" value="`$tmp.AnAI.l3network.subnets.subnet[$i].orchestration-status`" />
- <outcome value='not-found'>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.rollback.error-message" value="`'failed to rollback the subnet.orchestration-status in AnAI where subnet-id = ' + $tmp.AnAI.l3network.subnets.subnet[$i].subnet-id + ' MANUAL ROLLBACK IS REQUIRED.'`"/>
- </set>
- </outcome>
- <outcome value='failure'>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.rollback.error-message" value="`'failed to rollback the subnet.orchestration-status in AnAI where subnet-id = ' + $tmp.AnAI.l3network.subnets.subnet[$i].subnet-id + ' MANUAL ROLLBACK IS REQUIRED.'`"/>
- </set>
- </outcome>
- </update>
- </outcome>
- <outcome value='update'>
- <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="subnet"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id
- AND subnet.subnet-id = $tmp.AnAI.l3network.subnets.subnet[$j].subnet-id" >
- <parameter name="subnet-name" value="`$tmp.AnAI.l3network.subnets.subnet[$i].subnet-name`"/>
- <parameter name="gateway-address" value="`$tmp.AnAI.l3network.subnets.subnet[$i].gateway-address`"/>
- <parameter name="cidr-mask" value="`$tmp.AnAI.l3network.subnets.subnet[$i].cidr-mask`"/>
- <parameter name="dhcp-start" value="`$tmp.AnAI.l3network.subnets.subnet[$i].dhcp-start`"/>
- <parameter name="dhcp-end" value="`$tmp.AnAI.l3network.subnets.subnet[$i].dhcp-end`"/>
- <parameter name="dhcp-enabled" value="`$tmp.AnAI.l3network.subnets.subnet[$i].dhcp-enabled`"/>
- <parameter name="orchestration-status" value="`$tmp.AnAI.l3network.subnets.subnet[$i].orchestration-status`" />
- <outcome value='failure'>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.rollback.error-message" value="`'failed to rollback the subnet attributes update in AnAI where subnet-id = ' + $tmp.AnAI.l3network.subnets.subnet[$i].subnet-id + ' MANUAL ROLLBACK IS REQUIRED.'`"/>
- </set>
- </outcome>
- <outcome value='not-found'>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.rollback.error-message" value="`'failed to rollback the subnet attributes update in AnAI where subnet-id = ' + $tmp.AnAI.l3network.subnets.subnet[$i].subnet-id + ' MANUAL ROLLBACK IS REQUIRED.'`"/>
- </set>
- </outcome>
- </update>
- </outcome>
- </switch>
- <set>
- <parameter name="tmp.rollback.match" value="1"/>
- </set>
- </block>
- </outcome>
- </switch>
- </for>
- <switch test="`$tmp.rollback.match == 0`">
- <outcome value='true'>
- <switch test="`$tmp.subnetRollback[$j].type`">
- <outcome value='create'>
- <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="subnet"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id
- AND subnet.subnet-id = $tmp.subnetRollback[$j].subnet-id" >
- <outcome value='failure'>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.rollback.error-message" value="`'failed to rollback to delete subnet from AnAI where subnet-id = ' + $tmp.subnetRollback[$j].subnet-id + ' MANUAL ROLLBACK IS REQUIRED.'`"/>
- </set>
- </outcome>
- <outcome value='not-found'>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.rollback.error-message" value="`'failed to rollback to delete subnet from AnAI where subnet-id = ' + $tmp.subnetRollback[$j].subnet-id + ' MANUAL ROLLBACK IS REQUIRED.'`"/>
- </set>
- </outcome>
- </delete>
- </outcome>
- </switch>
- </outcome>
- </switch>
- </block>
- </for>
- <switch test="`$tmp.l3network.status.updated == 1`">
- <outcome value='true'>
- <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="l3-network"
- key="l3-network.network-id = $tmp.AnAI.l3network.network-id" >
- <parameter name="orchestration-status" value="`$tmp.AnAI.l3network.orchestration-status`" />
- <outcome value='failure'>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.rollback.error-message" value="`'failed to rollback l3network.orchestration-status in AnAI where subnet-id = ' + $tmp.AnAI.l3network.subnets.subnet[$i].subnet-id + ' MANUAL ROLLBACK IS REQUIRED.'`"/>
- </set>
- </outcome>
- <outcome value='not-found'>
- <set>
- <parameter name="error-code" value="500"/>
- <parameter name="tmp.rollback.error-message" value="`'failed to rollback l3network.orchestration-status in AnAI where subnet-id = ' + $tmp.AnAI.l3network.subnets.subnet[$i].subnet-id + ' MANUAL ROLLBACK IS REQUIRED.'`"/>
- </set>
- </outcome>
- </update>
- </outcome>
- </switch>
- <return status='failure'>
- <parameter name='error-code' value='500'/>
- <parameter name='error-message' value="`'Error updating l3-network in AnAI with network-id = ' + $tmp.AnAI.l3network.network-id + ' - ' + $tmp.error-message + ' - ' + $tmp.rollback.error-message`"/>
- </return>
- </block>
- </outcome>
- </switch>
- <set>
- <parameter name="ack-final" value="Y"/>
- </set>
- <return status="success">
- <parameter name="networkId" value="`$network-topology-operation-input.network-request-information.network-id`" />
- <parameter name="error-code" value="200" />
- </return>
- </block>
- </method>
-</service-logic> \ No newline at end of file