Bug fixed related to service-instance metadat
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_bbs-internet-profile-vnf-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-vnf-topology-operation-delete-huawei' mode='sync'>\r
5         <block atomic="true">\r
6             <call module='GENERIC-RESOURCE-API' rpc='bbs-internet-profile-vnf-topology-operation-common-huawei' mode='sync' ></call>\r
7             <switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-action`'>\r
8                 <outcome value='delete'>\r
9                     <block atomic='true'>\r
10                         <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
11                             <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/bbs-internet-profile-operation.json'`" />\r
12                             <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/DeleteInternetProfileInstance'`" />\r
13                             <parameter name="contentType" value="application/json"/>\r
14                             <parameter name="httpMethod" value="post"/>\r
15                             <parameter name="responsePrefix" value="service-result"/>\r
16                             <outcome value='failure'>\r
17                                 <return status='failure'>\r
18                                     <parameter name='ack-final' value='Y'/>\r
19                                     <parameter name="error-code" value="500" />\r
20                                     <parameter name="error-message" value="Error failed to call DeleteInternetProfileInstance" />\r
21                                 </return>\r
22                             </outcome>\r
23                             <outcome value='success'>\r
24                                 <switch test="`$service-result.status`">\r
25                                     <outcome value='Other'>\r
26                                         <return status='failure'>\r
27                                             <parameter name='ack-final' value='Y'/>\r
28                                             <parameter name="error-code" value="500" />\r
29                                             <parameter name="error-message" value="`'Error DeleteInternetProfileInstance return: '+$service-result.status`" />\r
30                                         </return>\r
31                                     </outcome>\r
32                                     <outcome value='ok'>\r
33                                         <block></block>\r
34                                     </outcome>\r
35                                 </switch>\r
36                             </outcome>\r
37                         </execute>\r
38                     </block>\r
39                 </outcome>\r
40             </switch>\r
41             <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
42                 resource="service-instance" \r
43                 key="customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id AND\r
44                         service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type AND\r
45                         service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id"\r
46         pfx='aai.service-instance' local-only='false' >\r
47                 <outcome value='failure'>\r
48                     <return status='failure'>\r
49                         <parameter name='error-code' value='' />\r
50                         <parameter name='error-message' value='' />\r
51                     </return>\r
52                 </outcome>\r
53                 <outcome value='success'>\r
54                     <block atomic='true'>\r
55                         <for silentFailure='true' index='ridx' start='0' end="`$aai.service-instance.relationship-list.relationship_length`" >\r
56                             <for silentFailure='false' index='rdidx' start='0' end="`$aai.service-instance.relationship-list.relationship[$ridx].relationship-data_length`" >\r
57                                 <block atomic='true'>\r
58                                     <switch test='`$aai.service-instance.relationship-list.relationship[$ridx].relationship-data[$rdidx].relationship-key`'>\r
59                                         <outcome value='generic-vnf.vnf-id'>\r
60                                             <block atomic='true'>\r
61                                                 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
62                 resource="generic-vnf" \r
63                 key="generic-vnf.vnf-id = $aai.service-instance.relationship-list.relationship[$ridx].relationship-data[$rdidx].relationship-value"\r
64         pfx='aai.generic-vnf' local-only='false' >\r
65                                                     <outcome value='success'>\r
66                                                         <block atomic='true'>\r
67                                                             <switch test='`$aai.generic-vnf.vnf-type`'>\r
68                                                                 <outcome value='InternetProfile'>\r
69                                                                     <set>\r
70                                                                         <parameter name='prop.bbs.internetProfileVNFId' value='`$aai.generic-vnf.vnf-id`' />\r
71                                                                     </set>\r
72                                                                 </outcome>\r
73                                                             </switch>\r
74                                                         </block>\r
75                                                     </outcome>\r
76                                                 </get-resource>\r
77                                             </block>\r
78                                         </outcome>\r
79                                     </switch>\r
80                                 </block>\r
81                             </for>\r
82                         </for>\r
83                         <for silentFailure='true' index='rix' start='0' end="`$aai.service-instance.metadata.metadatum_length`" >\r
84                             <switch test='`$aai.service-instance.metadata.metadatum[$rix].metaname`'>\r
85                                 <outcome value='service-type'>\r
86                                     <block atomic='true'>\r
87                                         <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
88         resource="service-instance"\r
89                 key="customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id AND\r
90                         service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type AND\r
91                         service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id AND\r
92                         metadatum.metaname = $aai.service-instance.metadata.metadatum[$rix].metaname" ></delete>\r
93                                     </block>\r
94                                 </outcome>\r
95                                 <outcome value='up-speed'>\r
96                                     <block atomic='true'>\r
97                                         <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
98         resource="service-instance"\r
99                 key="customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id AND\r
100                         service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type AND\r
101                         service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id AND\r
102                         metadatum.metaname = $aai.service-instance.metadata.metadatum[$rix].metaname" ></delete>\r
103                                     </block>\r
104                                 </outcome>\r
105                                 <outcome value='down-speed'>\r
106                                     <block atomic='true'>\r
107                                         <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
108         resource="service-instance"\r
109                 key="customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id AND\r
110                         service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type AND\r
111                         service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id AND\r
112                         metadatum.metaname = $aai.service-instance.metadata.metadatum[$rix].metaname" ></delete>\r
113                                     </block>\r
114                                 </outcome>\r
115                             </switch>\r
116                         </for>\r
117                     </block>\r
118                 </outcome>\r
119             </get-resource>\r
120             <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
121                 resource="generic-vnf" \r
122                 key="generic-vnf.vnf-id = $prop.bbs.internetProfileVNFId">\r
123                 <outcome value='failure'>\r
124                     <return status='failure'>\r
125                         <parameter name='error-code' value='' />\r
126                         <parameter name='error-message' value='' />\r
127                     </return>\r
128                 </outcome>\r
129                 <outcome value='not-found'>\r
130                     <return status='failure'>\r
131                         <parameter name='error-code' value='' />\r
132                         <parameter name='error-message' value='' />\r
133                     </return>\r
134                 </outcome>\r
135             </delete>\r
136             <return status='success'>\r
137                 <parameter name="ack-final-indicator" value="Y" />\r
138                 <parameter name="error-code" value="200" />\r
139                 <parameter name="error-message" value="`$error-message`" />\r
140             </return>\r
141         </block>\r
142     </method>\r
143 </service-logic>