Add logic to delete resource also from AAI
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_bbs-internet-profile-network-topology-operation-delete-huawei.xml
1 <service-logic\r
2     xmlns='http://www.onap.org/sdnc/svclogic'\r
3     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
4     <method rpc='bbs-internet-profile-network-topology-operation-delete-huawei' mode='sync'>\r
5         <block atomic="true">\r
6             <call module='GENERIC-RESOURCE-API' rpc='bbs-internet-profile-network-topology-operation-common-huawei' mode='sync' ></call>\r
7             <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
8                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/bbs-internet-profile-operation.json'`" />\r
9                 <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/DeleteInternetProfileInstance'`" />\r
10                 <parameter name="contentType" value="application/json"/>\r
11                 <parameter name="httpMethod" value="post"/>\r
12                 <parameter name="responsePrefix" value="service-result"/>\r
13                 <outcome value='failure'>\r
14                     <return status='failure'>\r
15                         <parameter name='ack-final' value='Y'/>\r
16                         <parameter name="error-code" value="500" />\r
17                         <parameter name="error-message" value="Error failed to call DeleteInternetProfileInstance" />\r
18                     </return>\r
19                 </outcome>\r
20                 <outcome value='success'>\r
21                     <switch test="`$service-result.errors.error[0].error-message`">\r
22                         <outcome value='Other'>\r
23                             <return status='failure'>\r
24                                 <parameter name='ack-final' value='Y'/>\r
25                                 <parameter name="error-code" value="500" />\r
26                                 <parameter name="error-message" value="`'Error DeleteInternetProfileInstance return: '+$service-result.errors.error[0].error-message`" />\r
27                             </return>\r
28                         </outcome>\r
29                         <outcome value=''>\r
30                             <block></block>\r
31                         </outcome>\r
32                     </switch>\r
33                 </outcome>\r
34             </execute>\r
35             <for silentFailure='false' index='rdidx' start='0' end="`$aai.service-instance.relationship-list.relationship[$ridx].relationship-data_length`" >\r
36                 <block atomic='true'>\r
37                     <switch test='`$aai.service-instance.relationship-list.relationship[$ridx].relationship-data[$rdidx].relationship-key`'>\r
38                         <outcome value='generic-vnf.vnf-id'>\r
39                             <block atomic='true'>\r
40                                 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
41                 resource="generic-vnf" \r
42                 key="generic-vnf.vnf-id = $aai.service-instance.relationship-list.relationship[$ridx].relationship-data[$rdidx].relationship-value"\r
43         pfx='aai.generic-vnf' local-only='false' >\r
44                                     <outcome value='success'>\r
45                                         <block atomic='true'>\r
46                                             <switch test='`$aai.generic-vnf.vnf-type`'>\r
47                                                 <outcome value='InternetProfile'>\r
48                                                     <set>\r
49                                                         <parameter name='prop.bbs.internetProfileVNFId' value='`$aai.generic-vnf.vnf-id`' />\r
50                                                     </set>\r
51                                                 </outcome>\r
52                                             </switch>\r
53                                         </block>\r
54                                     </outcome>\r
55                                 </get-resource>\r
56                             </block>\r
57                         </outcome>\r
58                     </switch>\r
59                 </block>\r
60             </for>\r
61             <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
62                 resource="generic-vnf" \r
63                 key="generic-vnf.vnf-id = $prop.bbs.internetProfileVNFId">\r
64                 <outcome value='failure'>\r
65                     <return status='failure'>\r
66                         <parameter name='error-code' value='' />\r
67                         <parameter name='error-message' value='' />\r
68                     </return>\r
69                 </outcome>\r
70                 <outcome value='not-found'>\r
71                     <return status='failure'>\r
72                         <parameter name='error-code' value='' />\r
73                         <parameter name='error-message' value='' />\r
74                     </return>\r
75                 </outcome>\r
76             </delete>\r
77             <return status='success'>\r
78                 <parameter name="ack-final-indicator" value="Y" />\r
79                 <parameter name="error-code" value="200" />\r
80                 <parameter name="error-message" value="`$error-message`" />\r
81             </return>\r
82         </block>\r
83     </method>\r
84 </service-logic>