Moved bbs logic from network-topoly-operation to vnf
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_bbs-internet-profile-vnf-topology-operation-delete-huawei.xml
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_bbs-internet-profile-vnf-topology-operation-delete-huawei.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_bbs-internet-profile-vnf-topology-operation-delete-huawei.xml
new file mode 100644 (file)
index 0000000..4b2e5fb
--- /dev/null
@@ -0,0 +1,84 @@
+<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='bbs-internet-profile-vnf-topology-operation-delete-huawei' mode='sync'>\r
+        <block atomic="true">\r
+            <call module='GENERIC-RESOURCE-API' rpc='bbs-internet-profile-vnf-topology-operation-common-huawei' mode='sync' ></call>\r
+            <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
+                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/bbs-internet-profile-operation.json'`" />\r
+                <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/DeleteInternetProfileInstance'`" />\r
+                <parameter name="contentType" value="application/json"/>\r
+                <parameter name="httpMethod" value="post"/>\r
+                <parameter name="responsePrefix" value="service-result"/>\r
+                <outcome value='failure'>\r
+                    <return status='failure'>\r
+                        <parameter name='ack-final' value='Y'/>\r
+                        <parameter name="error-code" value="500" />\r
+                        <parameter name="error-message" value="Error failed to call DeleteInternetProfileInstance" />\r
+                    </return>\r
+                </outcome>\r
+                <outcome value='success'>\r
+                    <switch test="`$service-result.errors.error[0].error-message`">\r
+                        <outcome value='Other'>\r
+                            <return status='failure'>\r
+                                <parameter name='ack-final' value='Y'/>\r
+                                <parameter name="error-code" value="500" />\r
+                                <parameter name="error-message" value="`'Error DeleteInternetProfileInstance return: '+$service-result.errors.error[0].error-message`" />\r
+                            </return>\r
+                        </outcome>\r
+                        <outcome value=''>\r
+                            <block></block>\r
+                        </outcome>\r
+                    </switch>\r
+                </outcome>\r
+            </execute>\r
+            <for silentFailure='false' index='rdidx' start='0' end="`$aai.service-instance.relationship-list.relationship[$ridx].relationship-data_length`" >\r
+                <block atomic='true'>\r
+                    <switch test='`$aai.service-instance.relationship-list.relationship[$ridx].relationship-data[$rdidx].relationship-key`'>\r
+                        <outcome value='generic-vnf.vnf-id'>\r
+                            <block atomic='true'>\r
+                                <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
+               resource="generic-vnf" \r
+               key="generic-vnf.vnf-id = $aai.service-instance.relationship-list.relationship[$ridx].relationship-data[$rdidx].relationship-value"\r
+        pfx='aai.generic-vnf' local-only='false' >\r
+                                    <outcome value='success'>\r
+                                        <block atomic='true'>\r
+                                            <switch test='`$aai.generic-vnf.vnf-type`'>\r
+                                                <outcome value='InternetProfile'>\r
+                                                    <set>\r
+                                                        <parameter name='prop.bbs.internetProfileVNFId' value='`$aai.generic-vnf.vnf-id`' />\r
+                                                    </set>\r
+                                                </outcome>\r
+                                            </switch>\r
+                                        </block>\r
+                                    </outcome>\r
+                                </get-resource>\r
+                            </block>\r
+                        </outcome>\r
+                    </switch>\r
+                </block>\r
+            </for>\r
+            <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
+               resource="generic-vnf" \r
+               key="generic-vnf.vnf-id = $prop.bbs.internetProfileVNFId">\r
+                <outcome value='failure'>\r
+                    <return status='failure'>\r
+                        <parameter name='error-code' value='' />\r
+                        <parameter name='error-message' value='' />\r
+                    </return>\r
+                </outcome>\r
+                <outcome value='not-found'>\r
+                    <return status='failure'>\r
+                        <parameter name='error-code' value='' />\r
+                        <parameter name='error-message' value='' />\r
+                    </return>\r
+                </outcome>\r
+            </delete>\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