Add generic-resource-api DG seed code
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_eipam-create-network-role-pool.xml
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_eipam-create-network-role-pool.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_eipam-create-network-role-pool.xml
new file mode 100755 (executable)
index 0000000..fd63eb9
--- /dev/null
@@ -0,0 +1,397 @@
+<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='eipam-create-network-role-pool' mode='sync'>\r
+<block atomic='true'><set>\r
+       <parameter name="tmp.eipam-error" value="false" />\r
+       <parameter name="tmp.create-v4-pool-flag" value="N" />\r
+       <parameter name="tmp.create-v6-pool-flag" value="N" />\r
+       <parameter name='eipam-ip-block.plans_length' value='0' />\r
+       <parameter name="eipam-pool.v4.pre-existing" value="false"/>\r
+       <parameter name="eipam-pool.v6.pre-existing" value="false"/>\r
+       <parameter name="tmp.v4-level1-key-name" value="CLLI:CLOUD_REGION" />\r
+       <parameter name="tmp.v4-level2-key-name" value="NETWORK_ROLE:NETWORK_ID" />\r
+       <parameter name="tmp.v6-level1-key-name" value="CLLI:CLOUD_REGION" />\r
+       <parameter name="tmp.v6-level2-key-name" value="NETWORK_ROLE:NETWORK_ID" /></set><switch test="`$tmp.region`"><outcome value="USA"><set>\r
+       <parameter name="tmp.region" value="US" />\r
+</set></outcome></switch><switch test="`$network-model.use-ipv4`"><outcome value='Y'><block atomic='true'><switch test="`$eipam-ip-block.level`"><outcome value='1'><get-resource\r
+        plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource'\r
+        resource='SQL'\r
+        key="SELECT * FROM EIPAM_IP_POOLS where plan_name = $network-model.eipam-v4-address-plan and level = 1 and key_value = $tmp.level1-key-value ;"\r
+        pfx='tmp.eipam-pool-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_POOLS failed." />\r
+       </return></outcome><outcome value='success'>\r
+<block atomic='true'><record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
+<parameter name="logger" value="message-log"/>\r
+<parameter name="field1" value="__TIMESTAMP__"/>\r
+<parameter name="field2" value="network-topology-operation"/>\r
+<parameter name="field3" value="eipam-create-network-role-pool"/>\r
+<parameter name="field4" value="`$network-model.eipam-v4-address-plan`"/>\r
+<parameter name="field5" value="`$tmp.level1-key-value`"/>\r
+<parameter name="field6" value="Level 1 already exists, SKIP."/>\r
+<parameter name="field7" value="`$tmp.eipam-pool-row.pool-id`"/>\r
+</record><set>\r
+       <parameter name="eipam-pool.v4.pre-existing" value="true"/>\r
+</set></block></outcome><outcome value="not-found"><block atomic='true'><switch test="`$network-model.eipam-v4-address-plan`"><outcome value="AIC_ATM_UNPROTECTED_V4"><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><set>\r
+       <parameter name="tmp.qip-pool" value="`'ATM-U ' + $tmp.region`"/>\r
+</set></outcome><outcome value="AIC_DATA_PLANE_UNPROTECTED_V4"><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><set>\r
+       <parameter name="tmp.qip-pool" value="`'DP-U ' + $tmp.region`"/>\r
+</set></outcome><outcome value="AIC_DATA_PLANE_PRIVATE_V4"><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><set>\r
+       <parameter name="tmp.qip-pool" value="`'DP-Private ' + $tmp.region`"/>\r
+</set></outcome><outcome value="AIC_ATM_PROTECTED_V4"><set>\r
+       <parameter name="tmp.qip-pool" value="`'ATM-P ' + $tmp.region`"/>\r
+</set></outcome><outcome value="AIC_DATA_PLANE_PROTECTED_V4"><set>\r
+       <parameter name="tmp.qip-pool" value="`'DP-P ' + $tmp.region`"/>\r
+</set></outcome><outcome value="AIC_AIM_LANDING_NETWORK_V4"><set>\r
+       <parameter name="tmp.qip-pool" value="`'AIC-AIM-LANDING-V4 ' + $tmp.region`"/>\r
+       <parameter name="tmp.v4-level1-key-name" value="CLLI:CLOUD_REGION" />\r
+       <parameter name="tmp.v4-level2-key-name" value="NETWORK_ROLE:NETWORK_ID" />\r
+</set></outcome><outcome value='Other'><return status="failure">\r
+       <parameter name="tmp.eipam-error" value="true" />\r
+       <parameter name="error-code" value="500"/>\r
+       <parameter name="error-message" value="EIPAM Address Plan is not valid." />\r
+       </return></outcome></switch><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><set>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name" value="`$network-model.eipam-v4-address-plan`"/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].allocate-subnet-flag" value="N"/>   \r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].parent-pool" value="`$tmp.qip-pool`"/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests_length" value="1"/>\r
+       <!-- Number of Pool Levels -->\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools_length" value="1"/>\r
+\r
+       <!-- Level 1 -->\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[0].key-name" value="`$tmp.v4-level1-key-name`"/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[0].key-value" value="`$tmp.level1-key-value`"/>\r
+       <parameter name="tmp.create-v4-pool-flag" value="Y" />\r
+       <parameter name="tmp.v4-qip-pool" value="`$tmp.qip-pool`" /></set><switch test="`$eipam-ip-block.level`"><outcome value=''><return status="failure">\r
+       <parameter name="tmp.eipam-error" value="true" />\r
+       <parameter name="error-code" value="500"/>\r
+       <parameter name="error-message" value="Please set the eipam-ip-block.level for appropriate EIPAM request." />\r
+       </return></outcome><outcome value='2'><set>\r
+       <!-- Number of Pool Levels -->\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools_length" value="`$eipam-ip-block.level`"/>\r
+\r
+       <!-- Level 2 -->\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].parent-pool" value=""/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[1].key-name" value="`$tmp.v4-level2-key-name`"/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[1].key-value" value="`$tmp.level2-key-value`"/></set></outcome><outcome value='Other'></outcome></switch><record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
+<parameter name="logger" value="message-log"/>\r
+<parameter name="field1" value="__TIMESTAMP__"/>\r
+<parameter name="field2" value="network-topology-operation"/>\r
+<parameter name="field3" value="eipam-create-network-role-pool"/>\r
+<parameter name="field4" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name`"/>\r
+<parameter name="field5" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[0].key-name`"/>\r
+<parameter name="field6" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[0].key-value`"/>\r
+<parameter name="field7" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[1].key-name`"/>\r
+<parameter name="field8" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[1].key-value`"/>\r
+</record><set>\r
+       <parameter name="eipam-ip-block.plans_length" value="`$eipam-ip-block.plans_length + 1`" /></set></block></outcome></get-resource></outcome><outcome value=''><return status="failure">\r
+       <parameter name="tmp.eipam-error" value="true" />\r
+       <parameter name="error-code" value="500"/>\r
+       <parameter name="error-message" value="Please set the eipam-ip-block.level for appropriate EIPAM request." />\r
+       </return></outcome><outcome value='2'><block atomic='true'><switch test="`$network-model.eipam-v4-address-plan`"><outcome value="AIC_ATM_UNPROTECTED_V4"><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><set>\r
+       <parameter name="tmp.qip-pool" value="`'ATM-U ' + $tmp.region`"/>\r
+</set></outcome><outcome value="AIC_DATA_PLANE_UNPROTECTED_V4"><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><set>\r
+       <parameter name="tmp.qip-pool" value="`'DP-U ' + $tmp.region`"/>\r
+</set></outcome><outcome value="AIC_DATA_PLANE_PRIVATE_V4"><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><set>\r
+       <parameter name="tmp.qip-pool" value="`'DP-Private ' + $tmp.region`"/>\r
+</set></outcome><outcome value="AIC_ATM_PROTECTED_V4"><set>\r
+       <parameter name="tmp.qip-pool" value="`'ATM-P ' + $tmp.region`"/>\r
+</set></outcome><outcome value="AIC_DATA_PLANE_PROTECTED_V4"><set>\r
+       <parameter name="tmp.qip-pool" value="`'DP-P ' + $tmp.region`"/>\r
+</set></outcome><outcome value="AIC_AIM_LANDING_NETWORK_V4"><set>\r
+       <parameter name="tmp.qip-pool" value="`'AIC-AIM-LANDING-V4 ' + $tmp.region`"/>\r
+       <parameter name="tmp.v4-level1-key-name" value="CLLI:CLOUD_REGION" />\r
+       <parameter name="tmp.v4-level2-key-name" value="NETWORK_ROLE:NETWORK_ID" />\r
+</set></outcome><outcome value='Other'><return status="failure">\r
+       <parameter name="tmp.eipam-error" value="true" />\r
+       <parameter name="error-code" value="500"/>\r
+       <parameter name="error-message" value="EIPAM Address Plan is not valid." />\r
+       </return></outcome></switch><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><set>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name" value="`$network-model.eipam-v4-address-plan`"/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].allocate-subnet-flag" value="N"/>   \r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].parent-pool" value="`$tmp.qip-pool`"/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests_length" value="1"/>\r
+       <!-- Number of Pool Levels -->\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools_length" value="1"/>\r
+\r
+       <!-- Level 1 -->\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[0].key-name" value="`$tmp.v4-level1-key-name`"/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[0].key-value" value="`$tmp.level1-key-value`"/>\r
+       <parameter name="tmp.create-v4-pool-flag" value="Y" />\r
+       <parameter name="tmp.v4-qip-pool" value="`$tmp.qip-pool`" /></set><switch test="`$eipam-ip-block.level`"><outcome value=''><return status="failure">\r
+       <parameter name="tmp.eipam-error" value="true" />\r
+       <parameter name="error-code" value="500"/>\r
+       <parameter name="error-message" value="Please set the eipam-ip-block.level for appropriate EIPAM request." />\r
+       </return></outcome><outcome value='2'><set>\r
+       <!-- Number of Pool Levels -->\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools_length" value="`$eipam-ip-block.level`"/>\r
+\r
+       <!-- Level 2 -->\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].parent-pool" value=""/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[1].key-name" value="`$tmp.v4-level2-key-name`"/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[1].key-value" value="`$tmp.level2-key-value`"/></set></outcome><outcome value='Other'></outcome></switch><record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
+<parameter name="logger" value="message-log"/>\r
+<parameter name="field1" value="__TIMESTAMP__"/>\r
+<parameter name="field2" value="network-topology-operation"/>\r
+<parameter name="field3" value="eipam-create-network-role-pool"/>\r
+<parameter name="field4" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name`"/>\r
+<parameter name="field5" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[0].key-name`"/>\r
+<parameter name="field6" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[0].key-value`"/>\r
+<parameter name="field7" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[1].key-name`"/>\r
+<parameter name="field8" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[1].key-value`"/>\r
+</record><set>\r
+       <parameter name="eipam-ip-block.plans_length" value="`$eipam-ip-block.plans_length + 1`" /></set></block></outcome></switch></block></outcome><outcome value=""></outcome><outcome value='N'></outcome></switch><switch test="`$network-model.use-ipv6`"><outcome value='Y'><block atomic='true'><switch test="`$eipam-ip-block.level`"><outcome value='1'><get-resource\r
+        plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource'\r
+        resource='SQL'\r
+        key="SELECT * FROM EIPAM_IP_POOLS where plan_name = $network-model.eipam-v6-address-plan and level = 1 and key_value = $tmp.level1-key-value ;"\r
+        pfx='tmp.eipam-pool-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_POOLS failed." />\r
+       </return></outcome><outcome value='success'>\r
+<block atomic='true'><record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
+<parameter name="logger" value="message-log"/>\r
+<parameter name="field1" value="__TIMESTAMP__"/>\r
+<parameter name="field2" value="network-topology-operation"/>\r
+<parameter name="field3" value="eipam-create-network-role-pool"/>\r
+<parameter name="field4" value="`$network-model.eipam-v6-address-plan`"/>\r
+<parameter name="field5" value="`$tmp.level1-key-value`"/>\r
+<parameter name="field6" value="Level 1 already exists, SKIP."/>\r
+<parameter name="field7" value="`$tmp.eipam-pool-row.pool-id`"/></record><set>\r
+       <parameter name="eipam-pool.v6.pre-existing" value="true"/>\r
+</set></block></outcome><outcome value="not-found"><block atomic='true'><switch test="`$network-model.eipam-v6-address-plan`"><outcome value="AIC_ATM_UNPROTECTED_V6"><set>\r
+       <parameter name="tmp.qip-pool" value="`'ATM-U-V6 ' + $tmp.region`"/>\r
+</set></outcome><outcome value="AIC_AIM_LANDING_NETWORK_V6"><set>\r
+       <parameter name="tmp.qip-pool" value="`'AIC-AIM-LANDING-V6 ' + $tmp.region`"/>\r
+\r
+</set></outcome><outcome value="AIC_ATM_PROTECTED_V6"><set>\r
+       <parameter name="tmp.qip-pool" value="`'ATM-P-V6 ' + $tmp.region`"/>\r
+</set></outcome><outcome value="AIC_DATA_PLANE_UNPROTECTED_V6"><set>\r
+       <parameter name="tmp.qip-pool" value="`'AIC-DP-U-V6 ' + $tmp.region`"/>\r
+       <parameter name="tmp.v6-level1-key-name" value="CLLI:CLOUD_REGION" />\r
+       <parameter name="tmp.v6-level2-key-name" value="NETWORK_ROLE:NETWORK_ID" />\r
+</set></outcome><outcome value="AIC_DATA_PLANE_PRIVATE_V6"><set>\r
+       <parameter name="tmp.qip-pool" value="`'AIC-DP-PRIVATE-V6 ' + $tmp.region`"/>\r
+       <parameter name="tmp.v6-level1-key-name" value="CLLI:CLOUD_REGION" />\r
+       <parameter name="tmp.v6-level2-key-name" value="NETWORK_ROLE:NETWORK_ID" />\r
+</set></outcome><outcome value="AIC_DATA_PLANE_PROTECTED_V6"><set>\r
+       <parameter name="tmp.qip-pool" value="`'AIC-DP-P-V6 ' + $tmp.region`"/>\r
+       <parameter name="tmp.v6-level1-key-name" value="CLLI:CLOUD_REGION" />\r
+       <parameter name="tmp.v6-level2-key-name" value="NETWORK_ROLE:NETWORK_ID" />\r
+</set></outcome><outcome value='Other'><return status="failure">\r
+       <parameter name="tmp.eipam-error" value="true" />\r
+       <parameter name="error-code" value="500"/>\r
+       <parameter name="error-message" value="EIPAM Address Plan is not valid." />\r
+       </return></outcome></switch><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><set>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name" value="`$network-model.eipam-v6-address-plan`"/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].allocate-subnet-flag" value="N"/>   \r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].parent-pool" value="`$tmp.qip-pool`"/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests_length" value="1"/>\r
+       <!-- Number of Pool Levels -->\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools_length" value="1"/>\r
+\r
+       <!-- Level 1 -->\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[0].key-name" value="`$tmp.v6-level1-key-name`"/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[0].key-value" value="`$tmp.level1-key-value`"/>\r
+       <parameter name="tmp.create-v6-pool-flag" value="Y" />\r
+       <parameter name="tmp.v6-qip-pool" value="`$tmp.qip-pool`" /></set><switch test="`$eipam-ip-block.level`"><outcome value=''><return status="failure">\r
+       <parameter name="tmp.eipam-error" value="true" />\r
+       <parameter name="error-code" value="500"/>\r
+       <parameter name="error-message" value="Please set the eipam-ip-block.level for appropriate EIPAM request." />\r
+       </return></outcome><outcome value='2'><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><set>\r
+       <!-- Number of Pool Levels -->\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools_length" value="`$eipam-ip-block.level`"/>\r
+\r
+       <!-- Level 2 -->\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].parent-pool" value=""/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[1].key-name" value="`$tmp.v6-level2-key-name`"/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[1].key-value" value="`$tmp.level2-key-value`"/></set></outcome><outcome value='Other'></outcome></switch><record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
+<parameter name="logger" value="message-log"/>\r
+<parameter name="field1" value="__TIMESTAMP__"/>\r
+<parameter name="field2" value="network-topology-operation"/>\r
+<parameter name="field3" value="eipam-create-network-role-pool"/>\r
+<parameter name="field4" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name`"/>\r
+<parameter name="field5" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[0].key-name`"/>\r
+<parameter name="field6" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[0].key-value`"/>\r
+<parameter name="field7" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[1].key-name`"/>\r
+<parameter name="field8" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[1].key-value`"/>\r
+</record><set>\r
+       <parameter name="eipam-ip-block.plans_length" value="`$eipam-ip-block.plans_length + 1`" /></set></block></outcome></get-resource></outcome><outcome value=''><return status="failure">\r
+       <parameter name="tmp.eipam-error" value="true" />\r
+       <parameter name="error-code" value="500"/>\r
+       <parameter name="error-message" value="Please set the eipam-ip-block.level for appropriate EIPAM request." />\r
+       </return></outcome><outcome value='2'><block atomic='true'><switch test="`$network-model.eipam-v6-address-plan`"><outcome value="AIC_ATM_UNPROTECTED_V6"><set>\r
+       <parameter name="tmp.qip-pool" value="`'ATM-U-V6 ' + $tmp.region`"/>\r
+</set></outcome><outcome value="AIC_AIM_LANDING_NETWORK_V6"><set>\r
+       <parameter name="tmp.qip-pool" value="`'AIC-AIM-LANDING-V6 ' + $tmp.region`"/>\r
+\r
+</set></outcome><outcome value="AIC_ATM_PROTECTED_V6"><set>\r
+       <parameter name="tmp.qip-pool" value="`'ATM-P-V6 ' + $tmp.region`"/>\r
+</set></outcome><outcome value="AIC_DATA_PLANE_UNPROTECTED_V6"><set>\r
+       <parameter name="tmp.qip-pool" value="`'AIC-DP-U-V6 ' + $tmp.region`"/>\r
+       <parameter name="tmp.v6-level1-key-name" value="CLLI:CLOUD_REGION" />\r
+       <parameter name="tmp.v6-level2-key-name" value="NETWORK_ROLE:NETWORK_ID" />\r
+</set></outcome><outcome value="AIC_DATA_PLANE_PRIVATE_V6"><set>\r
+       <parameter name="tmp.qip-pool" value="`'AIC-DP-PRIVATE-V6 ' + $tmp.region`"/>\r
+       <parameter name="tmp.v6-level1-key-name" value="CLLI:CLOUD_REGION" />\r
+       <parameter name="tmp.v6-level2-key-name" value="NETWORK_ROLE:NETWORK_ID" />\r
+</set></outcome><outcome value="AIC_DATA_PLANE_PROTECTED_V6"><set>\r
+       <parameter name="tmp.qip-pool" value="`'AIC-DP-P-V6 ' + $tmp.region`"/>\r
+       <parameter name="tmp.v6-level1-key-name" value="CLLI:CLOUD_REGION" />\r
+       <parameter name="tmp.v6-level2-key-name" value="NETWORK_ROLE:NETWORK_ID" />\r
+</set></outcome><outcome value='Other'><return status="failure">\r
+       <parameter name="tmp.eipam-error" value="true" />\r
+       <parameter name="error-code" value="500"/>\r
+       <parameter name="error-message" value="EIPAM Address Plan is not valid." />\r
+       </return></outcome></switch><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><set>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name" value="`$network-model.eipam-v6-address-plan`"/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].allocate-subnet-flag" value="N"/>   \r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].parent-pool" value="`$tmp.qip-pool`"/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests_length" value="1"/>\r
+       <!-- Number of Pool Levels -->\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools_length" value="1"/>\r
+\r
+       <!-- Level 1 -->\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[0].key-name" value="`$tmp.v6-level1-key-name`"/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[0].key-value" value="`$tmp.level1-key-value`"/>\r
+       <parameter name="tmp.create-v6-pool-flag" value="Y" />\r
+       <parameter name="tmp.v6-qip-pool" value="`$tmp.qip-pool`" /></set><switch test="`$eipam-ip-block.level`"><outcome value=''><return status="failure">\r
+       <parameter name="tmp.eipam-error" value="true" />\r
+       <parameter name="error-code" value="500"/>\r
+       <parameter name="error-message" value="Please set the eipam-ip-block.level for appropriate EIPAM request." />\r
+       </return></outcome><outcome value='2'><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><set>\r
+       <!-- Number of Pool Levels -->\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools_length" value="`$eipam-ip-block.level`"/>\r
+\r
+       <!-- Level 2 -->\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].parent-pool" value=""/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[1].key-name" value="`$tmp.v6-level2-key-name`"/>\r
+       <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[1].key-value" value="`$tmp.level2-key-value`"/></set></outcome><outcome value='Other'></outcome></switch><record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
+<parameter name="logger" value="message-log"/>\r
+<parameter name="field1" value="__TIMESTAMP__"/>\r
+<parameter name="field2" value="network-topology-operation"/>\r
+<parameter name="field3" value="eipam-create-network-role-pool"/>\r
+<parameter name="field4" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name`"/>\r
+<parameter name="field5" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[0].key-name`"/>\r
+<parameter name="field6" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[0].key-value`"/>\r
+<parameter name="field7" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[1].key-name`"/>\r
+<parameter name="field8" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[1].key-value`"/>\r
+</record><set>\r
+       <parameter name="eipam-ip-block.plans_length" value="`$eipam-ip-block.plans_length + 1`" /></set></block></outcome></switch></block></outcome><outcome value=""></outcome><outcome value='N'></outcome></switch><switch test="`$tmp.create-v4-pool-flag`"><outcome value='Y'><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="createPool">\r
+<outcome value='success'>\r
+</outcome><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 creating pool in EIPAM." />\r
+       </return></outcome></execute></outcome><outcome value='N'><switch test="`$tmp.create-v6-pool-flag`"><outcome value='Y'><!--subnet and subnet_keys are deleted in the EIPAMPlugin--><execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="createPool">\r
+<outcome value='success'>\r
+</outcome><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 creating pool in EIPAM." />\r
+       </return></outcome></execute></outcome><outcome value='N'></outcome></switch></outcome></switch><switch test="`$network-model.use-ipv4`"><outcome value='Y'><block atomic='true'><switch test="`$tmp.create-v4-pool-flag`"><outcome value='Y'><block atomic='true'><switch test="`$eipam-ip-block.level`"><outcome value='1'><save\r
+        plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource'\r
+        resource='SQL'\r
+        key="INSERT EIPAM_IP_POOLS\r
+             SET\r
+             key_name = $tmp.v4-level1-key-name ,\r
+             key_value = $tmp.level1-key-value ,\r
+             level = 1 ,\r
+             plan_name = $network-model.eipam-v4-address-plan ,\r
+             address_family = $network-model.ipv4-ip-version ,\r
+             parent_pool = $tmp.v4-qip-pool ,\r
+             service_instance_id = $network-topology-operation-input.service-information.service-instance-id ,\r
+             network_id = $tmp.network-id ; "\r
+    force='true'\r
+        pfx='pfx.eipam-v4pool-row'>\r
+<outcome value='failure'><return status='failure'>\r
+<parameter name='error-code' value='500' />\r
+<parameter name='error-message' value='failed to update EIPAM_IP_POOLS .' />\r
+</return></outcome><outcome value='Other'></outcome><outcome value='Other'></outcome></save></outcome><outcome value='2'><save\r
+        plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource'\r
+        resource='SQL'\r
+        key="INSERT EIPAM_IP_POOLS\r
+             SET\r
+             key_name = $tmp.v4-level2-key-name ,\r
+             key_value = $tmp.level2-key-value ,\r
+             level = 2 ,\r
+             plan_name = $network-model.eipam-v4-address-plan ,\r
+             address_family = $network-model.ipv4-ip-version ,\r
+             parent_pool = $tmp.level1-key-value ,\r
+             service_instance_id = $network-topology-operation-input.service-information.service-instance-id ,\r
+             network_id = $tmp.network-id ; "\r
+    force='true'\r
+        pfx='pfx.eipam-v4pool-row'>\r
+<outcome value='failure'><return status='failure'>\r
+<parameter name='error-code' value='500' />\r
+<parameter name='error-message' value='failed to update EIPAM_IP_POOLS .' />\r
+</return></outcome><outcome value='Other'></outcome><outcome value='Other'></outcome></save></outcome></switch><record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
+<parameter name="logger" value="message-log"/>\r
+<parameter name="field1" value="__TIMESTAMP__"/>\r
+<parameter name="field2" value="network-topology-operation"/>\r
+<parameter name="field3" value="eipam-create-network-role-pool"/>\r
+<parameter name="field4" value="`$network-model.eipam-v4-address-plan`"/>\r
+<parameter name="field5" value="`$tmp.v4-level1-key-name`"/>\r
+<parameter name="field6" value="`$tmp.level1-key-value`"/>\r
+<parameter name="field7" value="`$tmp.v4-level2-key-name`"/>\r
+<parameter name="field8" value="`$tmp.level2-key-value`"/>\r
+<parameter name="field9" value="`$network-model.network-role`"/>\r
+<parameter name="field10" value="`$tmp.network-id`"/>\r
+<parameter name="field11" value="Saving to EIPAM_IP_POOLS table."/>\r
+</record></block></outcome><outcome value='N'></outcome></switch></block></outcome><outcome value=""></outcome><outcome value='N'></outcome></switch><switch test="`$network-model.use-ipv6`"><outcome value='Y'><block atomic='true'><switch test="`$tmp.create-v6-pool-flag`"><outcome value='Y'><block atomic='true'><switch test="`$eipam-ip-block.level`"><outcome value='1'><save\r
+        plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource'\r
+        resource='SQL'\r
+        key="INSERT EIPAM_IP_POOLS\r
+             SET\r
+             key_name = $tmp.v6-level1-key-name ,\r
+             key_value = $tmp.level1-key-value ,\r
+             level = 1 ,\r
+             plan_name = $network-model.eipam-v6-address-plan ,\r
+             address_family = $network-model.ipv6-ip-version ,\r
+             parent_pool = $tmp.v6-qip-pool ,\r
+             service_instance_id = $network-topology-operation-input.service-information.service-instance-id ,\r
+             network_id = $tmp.network-id ; "\r
+    force='true'\r
+        pfx='pfx.eipam-v6pool-row'>\r
+<outcome value='Other'></outcome><outcome value='Other'></outcome><outcome value='failure'><return status='failure'>\r
+<parameter name='error-code' value='500' />\r
+<parameter name='error-message' value='failed to update EIPAM_IP_POOLS .' />\r
+</return></outcome></save></outcome><outcome value='2'><save\r
+        plugin='org.onap.ccsdk.sli.adaptors.sli.resource.sql.SqlResource'\r
+        resource='SQL'\r
+        key="INSERT EIPAM_IP_POOLS\r
+             SET\r
+             key_name = $tmp.v6-level2-key-name ,\r
+             key_value = $tmp.level2-key-value ,\r
+             level = 2 ,\r
+             plan_name = $network-model.eipam-v6-address-plan ,\r
+             address_family = $network-model.ipv6-ip-version ,\r
+             parent_pool = $tmp.level1-key-value ,\r
+             service_instance_id = $network-topology-operation-input.service-information.service-instance-id ,\r
+             network_id = $tmp.network-id ; "\r
+    force='true'\r
+        pfx='pfx.eipam-v6pool-row'>\r
+<outcome value='Other'></outcome><outcome value='Other'></outcome><outcome value='failure'><return status='failure'>\r
+<parameter name='error-code' value='500' />\r
+<parameter name='error-message' value='failed to update EIPAM_IP_POOLS .' />\r
+</return></outcome></save></outcome></switch><record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
+<parameter name="logger" value="message-log"/>\r
+<parameter name="field1" value="__TIMESTAMP__"/>\r
+<parameter name="field2" value="network-topology-operation"/>\r
+<parameter name="field3" value="eipam-create-network-role-pool"/>\r
+<parameter name="field4" value="`$network-model.eipam-v6-address-plan`"/>\r
+<parameter name="field5" value="`$tmp.v6-level1-key-name`"/>\r
+<parameter name="field6" value="`$tmp.level1-key-value`"/>\r
+<parameter name="field7" value="`$tmp.v6-level2-key-name`"/>\r
+<parameter name="field8" value="`$tmp.level2-key-value`"/>\r
+<parameter name="field9" value="`$network-model.network-role`"/>\r
+<parameter name="field10" value="`$tmp.network-id`"/>\r
+<parameter name="field11" value="Saving to EIPAM_IP_POOLS table."/>\r
+</record></block></outcome><outcome value='N'></outcome></switch></block></outcome><outcome value=""></outcome><outcome value='N'></outcome></switch><return status='success'>\r
+       <parameter name="error-code" value="200" />\r
+</return></block></method></service-logic>