Generic resource API DG catch up
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_network-topology-operation-unassign.xml
index b987c54..0ae9fa7 100755 (executable)
-<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-unassign' mode='sync'>\r
-<block atomic="true"><get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
+<service-logic\r
+    xmlns='http://www.onap.org/sdnc/svclogic'\r
+    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-unassign' mode='sync'>\r
+        <block atomic="true">\r
+            <switch test='`$service-data.networks.network[$nidx].network-data.network-information.from-preload`'>\r
+                <outcome value='true'>\r
+                    <block atomic="true">\r
+                        <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
+       resource="l3-network" \r
+               key="l3-network.network-id = $network-topology-operation-input.network-information.network-id" \r
+               local-only="false" \r
+               pfx="aai.l3-network">\r
+                            <outcome value='success'>\r
+                                <block atomic="true">\r
+                                    <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
+       resource="l3-network" \r
+       key="l3-network.network-id = $network-topology-operation-input.network-information.network-id">\r
+                                        <outcome value='failure'>\r
+                                            <return status="failure">\r
+                                                <parameter name="error-code" value="500"/>\r
+                                                <parameter name="error-message" value="An error occured while deleting network from AAI" />\r
+                                            </return>\r
+                                        </outcome>\r
+                                    </delete>\r
+                                </block>\r
+                            </outcome>\r
+                            <outcome value='not-found'></outcome>\r
+                            <outcome value='failure'>\r
+                                <return status='failure'>\r
+                                    <parameter name="error-code" value="500" />\r
+                                    <parameter name="error-message" value="'Error retrieving l3-network with network-id=' + $network-topology-operation-input.network-request-information.network-id + 'from AnAI'" />\r
+                                </return>\r
+                            </outcome>\r
+                        </get-resource>\r
+                    </block>\r
+                </outcome>\r
+                <outcome value='Other'>\r
+                    <switch test='`$network-data.network-topology.network-topology-identifier-structure.network-instance-group-id`'>\r
+                        <outcome value=''>\r
+                            <block atomic="true">\r
+                                <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
   key='SELECT * from NETWORK_MODEL WHERE customization_uuid = $service-data.networks.network[$nidx].network-data.network-information.onap-model-information.model-customization-uuid\r
   and service_uuid = $service-data.networks.network[$nidx].network-data.service-information.onap-model-information.model-uuid'\r
-  pfx='network-model'>\r
-\r
-</get-resource><set>\r
-       <parameter name="tmp.level1-key-value" value=""/>\r
-       <parameter name="tmp.level1inuse" value="false" />\r
-       <parameter name="pidx" value="0" />\r
-       <parameter name="pidx-len" value="0" />\r
-       \r
-</set><get-resource\r
+  pfx='network-model'></get-resource>\r
+                                <set>\r
+                                    <parameter name="tmp.level1-key-value" value=""/>\r
+                                    <parameter name="tmp.level1inuse" value="false" />\r
+                                    <parameter name="pidx" value="0" />\r
+                                    <parameter name="pidx-len" value="0" />\r
+                                </set>\r
+                                <get-resource\r
         plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'\r
         resource='SQL'\r
         key="SELECT * from EIPAM_IP_SUBNETS s, EIPAM_IP_SUBNET_KEYS k WHERE s.network_id = $network-topology-operation-input.network-information.network-id and s.entity_id = k.entity_id ; "\r
         pfx='tmp.eipam-subnet-row[]'>\r
-\r
-<outcome value='failure'>\r
-<return status="failure">\r
-       <parameter name="tmp.eipam-error" value="true" />\r
-       <parameter name="error-code" value="500"/>\r
-       <parameter name="error-message" value="Query to DB table EIPAM_IP_SUBNET_KEYS and EIPAM_IP_SUBNETS failed." />\r
-       </return></outcome><outcome value='success'>\r
-<block atomic='true'><for silentFailure='true' index='esidx' start='0' end='`$tmp.eipam-subnet-row_length`' >\r
-<block atomic="true"><switch test='`$tmp.eipam-subnet-row[$esidx].level`'>\r
-<outcome value='1'>\r
-<block atomic="true"><set>\r
-       <parameter name="tmp.level1-key-value[$pidx]" value="`$tmp.eipam-subnet-row[$esidx].key-value`"/>\r
-\r
-       \r
-</set><set>\r
-       <parameter name="tmp.plan-name[$pidx]" value="`$tmp.eipam-subnet-row[$esidx].plan-name`"/>\r
-\r
-       \r
-</set><set>\r
-       <parameter name="pidx" value="`$pidx + 1`"/>\r
-\r
-       \r
-</set><set>\r
-       <parameter name="pidx-len" value="`$pidx`"/>\r
-\r
-       \r
-</set></block></outcome><outcome value='Other'>\r
-<block atomic="true"></block></outcome></switch></block></for></block></outcome><outcome value="not-found"><block atomic='true'></block></outcome></get-resource><set>\r
-       <parameter name="eipam-ip-block.network-id" value="`$network-topology-operation-input.network-information.network-id`" />\r
-       <parameter name="eipam-ip-block.level" value='2' />\r
-       <parameter name="eipam-ip-block.entity-id" value='' /></set><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="deallocateAllSubnets">\r
-<outcome value='failure'><return status="failure">\r
-       <parameter name="tmp.eipam-error" value="true" />\r
-       <parameter name="error-code" value="500"/>\r
-       <parameter name="error-message" value="An error occured while deallocating subnets in EIPAM." />\r
-       </return></outcome></execute><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="deletePoolByNetworkLevel">\r
-<outcome value='failure'><return status="failure">\r
-       <parameter name="tmp.eipam-error" value="true" />\r
-       <parameter name="error-code" value="500"/>\r
-       <parameter name="error-message" value="An error occured while deleting level 2 plans in EIPAM." />\r
-       </return></outcome></execute><for silentFailure='true' index='npidx' start='0' end='`$pidx-len`' >\r
-<block atomic="true"><set>\r
-       <parameter name="tmp.level1-key-value" value="`$tmp.level1-key-value[$npidx]`" />\r
-       <parameter name="tmp.plan-name" value="`$tmp.plan-name[$npidx]`" />\r
-       \r
-</set><switch test='`$tmp.level1-key-value`'>\r
-<outcome value=''>\r
-<block atomic='true'></block></outcome><outcome value='Other'>\r
-<block atomic='true'><switch test='`$network-model`'>\r
-<outcome value=''></outcome><outcome value='Other'>\r
-<block atomic='true'><switch test="`$network-model.use-ipv4`"><outcome value='Y'><block atomic="true"><set>\r
-<parameter name='tmp.plan-name' value='`$network-model.eipam-v4-address-plan`' />\r
-\r
-</set><get-resource\r
+                                    <outcome value='failure'>\r
+                                        <return status="failure">\r
+                                            <parameter name="tmp.eipam-error" value="true" />\r
+                                            <parameter name="error-code" value="500"/>\r
+                                            <parameter name="error-message" value="Query to DB table EIPAM_IP_SUBNET_KEYS and EIPAM_IP_SUBNETS failed." />\r
+                                        </return>\r
+                                    </outcome>\r
+                                    <outcome value='success'>\r
+                                        <block atomic='true'>\r
+                                            <for silentFailure='true' index='esidx' start='0' end='`$tmp.eipam-subnet-row_length`' >\r
+                                                <block atomic="true">\r
+                                                    <switch test='`$tmp.eipam-subnet-row[$esidx].level`'>\r
+                                                        <outcome value='1'>\r
+                                                            <block atomic="true">\r
+                                                                <set>\r
+                                                                    <parameter name="tmp.level1-key-value[$pidx]" value="`$tmp.eipam-subnet-row[$esidx].key-value`"/>\r
+                                                                </set>\r
+                                                                <set>\r
+                                                                    <parameter name="tmp.plan-name[$pidx]" value="`$tmp.eipam-subnet-row[$esidx].plan-name`"/>\r
+                                                                </set>\r
+                                                                <set>\r
+                                                                    <parameter name="pidx" value="`$pidx + 1`"/>\r
+                                                                </set>\r
+                                                                <set>\r
+                                                                    <parameter name="pidx-len" value="`$pidx`"/>\r
+                                                                </set>\r
+                                                            </block>\r
+                                                        </outcome>\r
+                                                        <outcome value='Other'>\r
+                                                            <block atomic="true"></block>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </block>\r
+                                            </for>\r
+                                        </block>\r
+                                    </outcome>\r
+                                    <outcome value="not-found">\r
+                                        <block atomic='true'></block>\r
+                                    </outcome>\r
+                                </get-resource>\r
+                                <set>\r
+                                    <parameter name="eipam-ip-block.network-id" value="`$network-topology-operation-input.network-information.network-id`" />\r
+                                    <parameter name="eipam-ip-block.level" value='2' />\r
+                                    <parameter name="eipam-ip-block.entity-id" value='' />\r
+                                </set>\r
+                                <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->\r
+                                <execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="deallocateAllSubnets">\r
+                                    <outcome value='failure'>\r
+                                        <return status="failure">\r
+                                            <parameter name="tmp.eipam-error" value="true" />\r
+                                            <parameter name="error-code" value="500"/>\r
+                                            <parameter name="error-message" value="An error occured while deallocating subnets in EIPAM." />\r
+                                        </return>\r
+                                    </outcome>\r
+                                </execute>\r
+                                <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->\r
+                                <execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="deletePoolByNetworkLevel">\r
+                                    <outcome value='failure'>\r
+                                        <return status="failure">\r
+                                            <parameter name="tmp.eipam-error" value="true" />\r
+                                            <parameter name="error-code" value="500"/>\r
+                                            <parameter name="error-message" value="An error occured while deleting level 2 plans in EIPAM." />\r
+                                        </return>\r
+                                    </outcome>\r
+                                </execute>\r
+                                <for silentFailure='true' index='npidx' start='0' end='`$pidx-len`' >\r
+                                    <block atomic="true">\r
+                                        <set>\r
+                                            <parameter name="tmp.level1-key-value" value="`$tmp.level1-key-value[$npidx]`" />\r
+                                            <parameter name="tmp.plan-name" value="`$tmp.plan-name[$npidx]`" />\r
+                                        </set>\r
+                                        <switch test='`$tmp.level1-key-value`'>\r
+                                            <outcome value=''>\r
+                                                <block atomic='true'></block>\r
+                                            </outcome>\r
+                                            <outcome value='Other'>\r
+                                                <block atomic='true'>\r
+                                                    <switch test='`$network-model`'>\r
+                                                        <outcome value=''></outcome>\r
+                                                        <outcome value='Other'>\r
+                                                            <block atomic='true'>\r
+                                                                <switch test="`$network-model.use-ipv4`">\r
+                                                                    <outcome value='Y'>\r
+                                                                        <block atomic="true">\r
+                                                                            <set>\r
+                                                                                <parameter name='tmp.plan-name' value='`$network-model.eipam-v4-address-plan`' />\r
+                                                                            </set>\r
+                                                                            <get-resource\r
         plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'\r
         resource='SQL'\r
         key="SELECT * from EIPAM_IP_POOLS p, EIPAM_IP_SUBNETS s, EIPAM_IP_SUBNET_KEYS k \r
         and p.pool_id = s.pool_id and s.entity_id = k.entity_id \r
         and k.key_value = $tmp.level1-key-value  ; "\r
         pfx='tmp.level2pool[]'>\r
-\r
-\r
-\r
-<outcome value='failure'>\r
-<return status="failure">\r
-       <parameter name="tmp.eipam-error" value="true" />\r
-       <parameter name="error-code" value="500"/>\r
-       <parameter name="error-message" value="Query to DB table EIPAM_IP_SUBNET_KEYS and EIPAM_IP_SUBNETS failed." />\r
-       </return></outcome><outcome value='success'>\r
-<block atomic='true'><set>\r
-       <parameter name="tmp.level1inuse" value="true" />\r
-       \r
-</set></block></outcome><outcome value="not-found"><block atomic='true'><get-resource\r
+                                                                                <outcome value='failure'>\r
+                                                                                    <return status="failure">\r
+                                                                                        <parameter name="tmp.eipam-error" value="true" />\r
+                                                                                        <parameter name="error-code" value="500"/>\r
+                                                                                        <parameter name="error-message" value="Query to DB table EIPAM_IP_SUBNET_KEYS and EIPAM_IP_SUBNETS failed." />\r
+                                                                                    </return>\r
+                                                                                </outcome>\r
+                                                                                <outcome value='success'>\r
+                                                                                    <block atomic='true'>\r
+                                                                                        <set>\r
+                                                                                            <parameter name="tmp.level1inuse" value="true" />\r
+                                                                                        </set>\r
+                                                                                    </block>\r
+                                                                                </outcome>\r
+                                                                                <outcome value="not-found">\r
+                                                                                    <block atomic='true'>\r
+                                                                                        <get-resource\r
         plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'\r
         resource='SQL'\r
         key="SELECT * from EIPAM_IP_POOLS p, EIPAM_IP_SUBNETS s, EIPAM_IP_SUBNET_KEYS k \r
         and p.pool_id = s.pool_id and s.entity_id = k.entity_id \r
         and k.key_value = $tmp.level1-key-value  ; "\r
         pfx='tmp.level1pool[]'>\r
-\r
-<outcome value='failure'>\r
-<return status="failure">\r
-       <parameter name="tmp.eipam-error" value="true" />\r
-       <parameter name="error-code" value="500"/>\r
-       <parameter name="error-message" value="Query to DB table EIPAM_IP_SUBNET_KEYS and EIPAM_IP_SUBNETS failed." />\r
-       </return></outcome><outcome value='success'>\r
-<block atomic='true'><for silentFailure='true' index='lidx' start='0' end='`$tmp.level1pool_length`' >\r
-<block atomic='true'><set>\r
-<parameter name='eipam-ip-block.entity-id' value='`$tmp.level1pool[$lidx].entity-id`' />\r
-<parameter name='eipam-ip-block.ip-address' value='`$tmp.level1pool[$lidx].ip-address`' />\r
-<parameter name='eipam-ip-block.mask' value='`$tmp.level1pool[$lidx].prefix-length`' />\r
-<parameter name="eipam-ip-block.network-id" value="`$tmp.level1pool[$lidx].network-id`" />\r
-<parameter name="eipam-ip-block.pool-id" value="`$tmp.level1pool[$lidx].pool-id`" />\r
-<parameter name="eipam-ip-block.level" value='1' />\r
-\r
-</set><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="deallocateSubnet">\r
-<outcome value='failure'><return status="failure">\r
-       <parameter name="tmp.eipam-error" value="true" />\r
-       <parameter name="error-code" value="500"/>\r
-       <parameter name="error-message" value="An error occured while deallocating subnet in EIPAM." />\r
-       </return></outcome></execute><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="deletePoolByPoolId">\r
-<outcome value='failure'><return status="failure">\r
-       <parameter name="tmp.eipam-error" value="true" />\r
-       <parameter name="error-code" value="500"/>\r
-       <parameter name="error-message" value="An error occured while deleting pool in EIPAM." />\r
-       </return></outcome></execute></block></for></block></outcome><outcome value="not-found"><block atomic='true'></block></outcome></get-resource></block></outcome></get-resource></block></outcome></switch><switch test="`$network-model.use-ipv6`"><outcome value='Y'><block atomic="true"><set>\r
-<parameter name='tmp.plan-name' value='`$network-model.eipam-v6-address-plan`' />\r
-\r
-</set><get-resource\r
+                                                                                            <outcome value='failure'>\r
+                                                                                                <return status="failure">\r
+                                                                                                    <parameter name="tmp.eipam-error" value="true" />\r
+                                                                                                    <parameter name="error-code" value="500"/>\r
+                                                                                                    <parameter name="error-message" value="Query to DB table EIPAM_IP_SUBNET_KEYS and EIPAM_IP_SUBNETS failed." />\r
+                                                                                                </return>\r
+                                                                                            </outcome>\r
+                                                                                            <outcome value='success'>\r
+                                                                                                <block atomic='true'>\r
+                                                                                                    <for silentFailure='true' index='lidx' start='0' end='`$tmp.level1pool_length`' >\r
+                                                                                                        <block atomic='true'>\r
+                                                                                                            <set>\r
+                                                                                                                <parameter name='eipam-ip-block.entity-id' value='`$tmp.level1pool[$lidx].entity-id`' />\r
+                                                                                                                <parameter name='eipam-ip-block.ip-address' value='`$tmp.level1pool[$lidx].ip-address`' />\r
+                                                                                                                <parameter name='eipam-ip-block.mask' value='`$tmp.level1pool[$lidx].prefix-length`' />\r
+                                                                                                                <parameter name="eipam-ip-block.network-id" value="`$tmp.level1pool[$lidx].network-id`" />\r
+                                                                                                                <parameter name="eipam-ip-block.pool-id" value="`$tmp.level1pool[$lidx].pool-id`" />\r
+                                                                                                                <parameter name="eipam-ip-block.level" value='1' />\r
+                                                                                                            </set>\r
+                                                                                                            <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->\r
+                                                                                                            <execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="deallocateSubnet">\r
+                                                                                                                <outcome value='failure'>\r
+                                                                                                                    <return status="failure">\r
+                                                                                                                        <parameter name="tmp.eipam-error" value="true" />\r
+                                                                                                                        <parameter name="error-code" value="500"/>\r
+                                                                                                                        <parameter name="error-message" value="An error occured while deallocating subnet in EIPAM." />\r
+                                                                                                                    </return>\r
+                                                                                                                </outcome>\r
+                                                                                                            </execute>\r
+                                                                                                            <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->\r
+                                                                                                            <execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="deletePoolByPoolId">\r
+                                                                                                                <outcome value='failure'>\r
+                                                                                                                    <return status="failure">\r
+                                                                                                                        <parameter name="tmp.eipam-error" value="true" />\r
+                                                                                                                        <parameter name="error-code" value="500"/>\r
+                                                                                                                        <parameter name="error-message" value="An error occured while deleting pool in EIPAM." />\r
+                                                                                                                    </return>\r
+                                                                                                                </outcome>\r
+                                                                                                            </execute>\r
+                                                                                                        </block>\r
+                                                                                                    </for>\r
+                                                                                                </block>\r
+                                                                                            </outcome>\r
+                                                                                            <outcome value="not-found">\r
+                                                                                                <block atomic='true'></block>\r
+                                                                                            </outcome>\r
+                                                                                        </get-resource>\r
+                                                                                    </block>\r
+                                                                                </outcome>\r
+                                                                            </get-resource>\r
+                                                                        </block>\r
+                                                                    </outcome>\r
+                                                                </switch>\r
+                                                                <switch test="`$network-model.use-ipv6`">\r
+                                                                    <outcome value='Y'>\r
+                                                                        <block atomic="true">\r
+                                                                            <set>\r
+                                                                                <parameter name='tmp.plan-name' value='`$network-model.eipam-v6-address-plan`' />\r
+                                                                            </set>\r
+                                                                            <get-resource\r
         plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'\r
         resource='SQL'\r
         key="SELECT * from EIPAM_IP_POOLS p, EIPAM_IP_SUBNETS s, EIPAM_IP_SUBNET_KEYS k \r
         and p.pool_id = s.pool_id and s.entity_id = k.entity_id \r
         and k.key_value = $tmp.level1-key-value  ; "\r
         pfx='tmp.level2pool[]'>\r
-\r
-\r
-\r
-<outcome value='failure'>\r
-<return status="failure">\r
-       <parameter name="tmp.eipam-error" value="true" />\r
-       <parameter name="error-code" value="500"/>\r
-       <parameter name="error-message" value="Query to DB table EIPAM_IP_SUBNET_KEYS and EIPAM_IP_SUBNETS failed." />\r
-       </return></outcome><outcome value='success'>\r
-<block atomic='true'><set>\r
-       <parameter name="tmp.level1inuse" value="true" />\r
-       \r
-</set></block></outcome><outcome value="not-found"><block atomic='true'><get-resource\r
+                                                                                <outcome value='failure'>\r
+                                                                                    <return status="failure">\r
+                                                                                        <parameter name="tmp.eipam-error" value="true" />\r
+                                                                                        <parameter name="error-code" value="500"/>\r
+                                                                                        <parameter name="error-message" value="Query to DB table EIPAM_IP_SUBNET_KEYS and EIPAM_IP_SUBNETS failed." />\r
+                                                                                    </return>\r
+                                                                                </outcome>\r
+                                                                                <outcome value='success'>\r
+                                                                                    <block atomic='true'>\r
+                                                                                        <set>\r
+                                                                                            <parameter name="tmp.level1inuse" value="true" />\r
+                                                                                        </set>\r
+                                                                                    </block>\r
+                                                                                </outcome>\r
+                                                                                <outcome value="not-found">\r
+                                                                                    <block atomic='true'>\r
+                                                                                        <get-resource\r
         plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'\r
         resource='SQL'\r
         key="SELECT * from EIPAM_IP_POOLS p, EIPAM_IP_SUBNETS s, EIPAM_IP_SUBNET_KEYS k \r
         and p.pool_id = s.pool_id and s.entity_id = k.entity_id \r
         and k.key_value = $tmp.level1-key-value  ; "\r
         pfx='tmp.level1pool[]'>\r
-\r
-<outcome value='failure'>\r
-<return status="failure">\r
-       <parameter name="tmp.eipam-error" value="true" />\r
-       <parameter name="error-code" value="500"/>\r
-       <parameter name="error-message" value="Query to DB table EIPAM_IP_SUBNET_KEYS and EIPAM_IP_SUBNETS failed." />\r
-       </return></outcome><outcome value='success'>\r
-<block atomic='true'><for silentFailure='true' index='lidx' start='0' end='`$tmp.level1pool_length`' >\r
-<block atomic='true'><set>\r
-<parameter name='eipam-ip-block.entity-id' value='`$tmp.level1pool[$lidx].entity-id`' />\r
-<parameter name='eipam-ip-block.ip-address' value='`$tmp.level1pool[$lidx].ip-address`' />\r
-<parameter name='eipam-ip-block.mask' value='`$tmp.level1pool[$lidx].prefix-length`' />\r
-<parameter name="eipam-ip-block.network-id" value="`$tmp.level1pool[$lidx].network-id`" />\r
-<parameter name="eipam-ip-block.pool-id" value="`$tmp.level1pool[$lidx].pool-id`" />\r
-<parameter name="eipam-ip-block.level" value='1' />\r
-\r
-</set><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="deallocateSubnet">\r
-<outcome value='failure'><return status="failure">\r
-       <parameter name="tmp.eipam-error" value="true" />\r
-       <parameter name="error-code" value="500"/>\r
-       <parameter name="error-message" value="An error occured while deallocating subnet in EIPAM." />\r
-       </return></outcome></execute><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="deletePoolByPoolId">\r
-<outcome value='failure'><return status="failure">\r
-       <parameter name="tmp.eipam-error" value="true" />\r
-       <parameter name="error-code" value="500"/>\r
-       <parameter name="error-message" value="An error occured while deleting pool in EIPAM." />\r
-       </return></outcome></execute></block></for></block></outcome><outcome value="not-found"><block atomic='true'></block></outcome></get-resource></block></outcome></get-resource></block></outcome></switch></block></outcome></switch></block></outcome></switch></block></for><switch test='`$service-data.networks.network_length`'>\r
-<outcome value='1'>\r
-<block atomic="true"><set>\r
-       <parameter name="service-data.networks." value=""/>\r
-\r
-</set><set>\r
-       <parameter name="service-data.networks.network_length" value="0"/>\r
-\r
-       \r
-</set></block></outcome><outcome value='Other'>\r
-<block atomic="true"><set>\r
-       <parameter name="tmp.new_length" value="`$service-data.networks.network_length - 1`"/>\r
-       \r
-       \r
-</set><for silentFailure='true' index='snidx' start='`$tmp.nidx + 1`' end='`$service-data.networks.network_length`' >\r
-<block atomic="true"><set>\r
-       <parameter name="tmp.newidx" value="`$snidx - 1`"/>\r
-       \r
-       \r
-</set><set>\r
-       <parameter name="service-data.networks.network[$tmp.newidx]." value="$service-data.networks.network[$snidx]." />\r
-       \r
-</set></block></for><set>\r
-       <parameter name="service-data.networks.network_length" value="`$service-data.networks.network_length - 1`"/>\r
-\r
-       \r
-</set><set>\r
-       <parameter name="service-data.networks.network[$tmp.new_length]." value=""/>\r
-\r
-</set></block></outcome></switch><delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
+                                                                                            <outcome value='failure'>\r
+                                                                                                <return status="failure">\r
+                                                                                                    <parameter name="tmp.eipam-error" value="true" />\r
+                                                                                                    <parameter name="error-code" value="500"/>\r
+                                                                                                    <parameter name="error-message" value="Query to DB table EIPAM_IP_SUBNET_KEYS and EIPAM_IP_SUBNETS failed." />\r
+                                                                                                </return>\r
+                                                                                            </outcome>\r
+                                                                                            <outcome value='success'>\r
+                                                                                                <block atomic='true'>\r
+                                                                                                    <for silentFailure='true' index='lidx' start='0' end='`$tmp.level1pool_length`' >\r
+                                                                                                        <block atomic='true'>\r
+                                                                                                            <set>\r
+                                                                                                                <parameter name='eipam-ip-block.entity-id' value='`$tmp.level1pool[$lidx].entity-id`' />\r
+                                                                                                                <parameter name='eipam-ip-block.ip-address' value='`$tmp.level1pool[$lidx].ip-address`' />\r
+                                                                                                                <parameter name='eipam-ip-block.mask' value='`$tmp.level1pool[$lidx].prefix-length`' />\r
+                                                                                                                <parameter name="eipam-ip-block.network-id" value="`$tmp.level1pool[$lidx].network-id`" />\r
+                                                                                                                <parameter name="eipam-ip-block.pool-id" value="`$tmp.level1pool[$lidx].pool-id`" />\r
+                                                                                                                <parameter name="eipam-ip-block.level" value='1' />\r
+                                                                                                            </set>\r
+                                                                                                            <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->\r
+                                                                                                            <execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="deallocateSubnet">\r
+                                                                                                                <outcome value='failure'>\r
+                                                                                                                    <return status="failure">\r
+                                                                                                                        <parameter name="tmp.eipam-error" value="true" />\r
+                                                                                                                        <parameter name="error-code" value="500"/>\r
+                                                                                                                        <parameter name="error-message" value="An error occured while deallocating subnet in EIPAM." />\r
+                                                                                                                    </return>\r
+                                                                                                                </outcome>\r
+                                                                                                            </execute>\r
+                                                                                                            <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->\r
+                                                                                                            <execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="deletePoolByPoolId">\r
+                                                                                                                <outcome value='failure'>\r
+                                                                                                                    <return status="failure">\r
+                                                                                                                        <parameter name="tmp.eipam-error" value="true" />\r
+                                                                                                                        <parameter name="error-code" value="500"/>\r
+                                                                                                                        <parameter name="error-message" value="An error occured while deleting pool in EIPAM." />\r
+                                                                                                                    </return>\r
+                                                                                                                </outcome>\r
+                                                                                                            </execute>\r
+                                                                                                        </block>\r
+                                                                                                    </for>\r
+                                                                                                </block>\r
+                                                                                            </outcome>\r
+                                                                                            <outcome value="not-found">\r
+                                                                                                <block atomic='true'></block>\r
+                                                                                            </outcome>\r
+                                                                                        </get-resource>\r
+                                                                                    </block>\r
+                                                                                </outcome>\r
+                                                                            </get-resource>\r
+                                                                        </block>\r
+                                                                    </outcome>\r
+                                                                </switch>\r
+                                                            </block>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </block>\r
+                                            </outcome>\r
+                                        </switch>\r
+                                    </block>\r
+                                </for>\r
+                                <switch test='`$service-data.networks.network_length`'>\r
+                                    <outcome value='1'>\r
+                                        <block atomic="true">\r
+                                            <set>\r
+                                                <parameter name="service-data.networks." value=""/>\r
+                                            </set>\r
+                                            <set>\r
+                                                <parameter name="service-data.networks.network_length" value="0"/>\r
+                                            </set>\r
+                                        </block>\r
+                                    </outcome>\r
+                                    <outcome value='Other'>\r
+                                        <block atomic="true">\r
+                                            <set>\r
+                                                <parameter name="tmp.new_length" value="`$service-data.networks.network_length - 1`"/>\r
+                                            </set>\r
+                                            <for silentFailure='true' index='snidx' start='`$tmp.nidx + 1`' end='`$service-data.networks.network_length`' >\r
+                                                <block atomic="true">\r
+                                                    <set>\r
+                                                        <parameter name="tmp.newidx" value="`$snidx - 1`"/>\r
+                                                    </set>\r
+                                                    <set>\r
+                                                        <parameter name="service-data.networks.network[$tmp.newidx]." value="$service-data.networks.network[$snidx]." />\r
+                                                    </set>\r
+                                                </block>\r
+                                            </for>\r
+                                            <set>\r
+                                                <parameter name="service-data.networks.network_length" value="`$service-data.networks.network_length - 1`"/>\r
+                                            </set>\r
+                                            <set>\r
+                                                <parameter name="service-data.networks.network[$tmp.new_length]." value=""/>\r
+                                            </set>\r
+                                        </block>\r
+                                    </outcome>\r
+                                </switch>\r
+                                <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
        resource="l3-network" \r
-       key="l3-network.network-id = $network-topology-operation-input.network-information.network-id"><outcome value='failure'>\r
-<return status="failure">\r
-       <parameter name="error-code" value="500"/>\r
-       <parameter name="error-message" value="An error occured while deleting network from AAI" />\r
-       </return></outcome></delete><return status='success'>\r
-<parameter name="ack-final-indicator" value="Y" />\r
-<parameter name="error-code" value="200" />\r
-<parameter name="error-message" value="`$error-message`" />\r
-</return></block></method></service-logic>
+       key="l3-network.network-id = $network-topology-operation-input.network-information.network-id">\r
+                                    <outcome value='failure'>\r
+                                        <return status="failure">\r
+                                            <parameter name="error-code" value="500"/>\r
+                                            <parameter name="error-message" value="An error occured while deleting network from AAI" />\r
+                                        </return>\r
+                                    </outcome>\r
+                                </delete>\r
+                                <set>\r
+                                    <parameter name='naming-policy-generate-name-input.context-id' value='`$network-topology-operation-input.network-information.network-id`' />\r
+                                    <parameter name='naming-policy-generate-name-input.naming-type' value='NETWORK' />\r
+                                    <parameter name='naming-policy-generate-name-input.action' value='DELETE' />\r
+                                </set>\r
+                                <call module='GENERIC-RESOURCE-API' rpc='naming-policy-generate-name' mode='sync' ></call>\r
+                            </block>\r
+                        </outcome>\r
+                        <outcome value='Other'>\r
+                            <block atomic="true">\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 collection activate failed" />\r
+                                </return>\r
+                            </block>\r
+                        </outcome>\r
+                    </switch>\r
+                </outcome>\r
+            </switch>\r
+            <switch test='`$service-data.networks.network_length`'>\r
+                <outcome value='1'>\r
+                    <block atomic="true">\r
+                        <set>\r
+                            <parameter name="service-data.networks." value=""/>\r
+                        </set>\r
+                        <set>\r
+                            <parameter name="service-data.networks.network_length" value="0"/>\r
+                        </set>\r
+                    </block>\r
+                </outcome>\r
+                <outcome value='Other'>\r
+                    <block atomic="true">\r
+                        <set>\r
+                            <parameter name="tmp.new_length" value="`$service-data.networks.network_length - 1`"/>\r
+                        </set>\r
+                        <for silentFailure='true' index='snidx' start='`$tmp.nidx + 1`' end='`$service-data.networks.network_length`' >\r
+                            <block atomic="true">\r
+                                <set>\r
+                                    <parameter name="tmp.newidx" value="`$snidx - 1`"/>\r
+                                </set>\r
+                                <set>\r
+                                    <parameter name="service-data.networks.network[$tmp.newidx]." value="$service-data.networks.network[$snidx]." />\r
+                                </set>\r
+                            </block>\r
+                        </for>\r
+                        <set>\r
+                            <parameter name="service-data.networks.network_length" value="`$service-data.networks.network_length - 1`"/>\r
+                        </set>\r
+                        <set>\r
+                            <parameter name="service-data.networks.network[$tmp.new_length]." value=""/>\r
+                        </set>\r
+                    </block>\r
+                </outcome>\r
+            </switch>\r
+            <return status='success'>\r
+                <parameter name="ack-final-indicator" value="Y" />\r
+                <parameter name="error-code" value="200" />\r
+                <parameter name="error-message" value="`$error-message`" />\r
+            </return>\r
+        </block>\r
+    </method>\r
+</service-logic>
\ No newline at end of file