Inter Domain DG'S modified
[sdnc/oam.git] / platform-logic / optical-service / src / main / xml / optical-service_optical-service-delete.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='optical-service' version='${project.version}'>\r
4     <method rpc='optical-service-delete' mode='sync'>\r
5         <block atomic='true'>\r
6             <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\r
7                 <parameter name='fileName' value='/opt/onap/sdnc/data/properties/optical-service-dg.properties' />\r
8                 <parameter name='contextPrefix' value='prop' />\r
9             </execute>\r
10             <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
11 key='SELECT *\r
12 from REQUEST_DETAILS\r
13 WHERE request_id = $optical-service-delete-input.request-id'\r
14 pfx='detail-db'>\r
15                 <outcome value='success'>\r
16                     <set>\r
17                         <parameter name='domain-req' value='`$detail-db.domain-requests`' />\r
18                         <parameter name='delete-acc-svc-id' value='`$detail-db.service-instance-id`' />\r
19                     </set>\r
20                 </outcome>\r
21             </get-resource>\r
22             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
23                 <parameter name="original_string" value='`$domain-req`'/>\r
24                 <parameter name="regex" value=","/>\r
25                 <parameter name="ctx_memory_result_key" value="param-prefix1"/>\r
26             </execute>\r
27             <set>\r
28                 <parameter name='notification-url' value="http://167.254.204.152:31817/asyncNotification" />\r
29                 <parameter name='domain-service1' value='`$param-prefix1[0]`' />\r
30                 <parameter name='domain-service2' value='`$param-prefix1[1]`' />\r
31             </set>\r
32             <for index='ppx' start='0' end='`$param-prefix1_length`' >\r
33                 <switch test='`$param-prefix1_length`'>\r
34                     <outcome value='1'>\r
35                         <block atomic='true'>\r
36                             <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
37 key='SELECT controller_id\r
38 from REQUEST_DETAILS\r
39 WHERE request_id = $domain-service1'\r
40 pfx='detail-db1'>\r
41                                 <outcome value='success'>\r
42                                     <set>\r
43                                         <parameter name='controller-id1' value='`$detail-db1.controller-id`' />\r
44                                     </set>\r
45                                 </outcome>\r
46                             </get-resource>\r
47                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
48                                 <parameter name="original_string" value='`$controller-id1`'/>\r
49                                 <parameter name="regex" value="_"/>\r
50                                 <parameter name="ctx_memory_result_key" value="param-prefix"/>\r
51                             </execute>\r
52                             <set>\r
53                                 <parameter name='domain-type' value='`$param-prefix[0]`' />\r
54                                 <parameter name='controller-ip' value='`$param-prefix[1]`' />\r
55                                 <parameter name='optical-service-delete-input.request-id' value="`$domain-service1`" />\r
56                                 <parameter name='optical-service-delete-input.payload.service-name' value="`$optical-service-delete-input.payload.param[0].value + '_MDONS-OTN_'`"/>\r
57                             </set>\r
58                             <switch test='`$domain-type`'>\r
59                                 <outcome value='MSA'>\r
60                                     <block>\r
61                                         <call module='optical-service' rpc='service-delete-msa' mode='sync' >\r
62                                             <outcome value='success'>\r
63                                                 <block atomic='true'>\r
64                                                     <set>\r
65                                                         <parameter name='service1-status' value='`$final-response-code`' />\r
66                                                     </set>\r
67                                                 </block>\r
68                                             </outcome>\r
69                                             <outcome value='failure'>\r
70                                                 <return status='failure'>\r
71                                                     <parameter name='error-code' value='500' />\r
72                                                     <parameter name='error-message' value='Failed to call MSA DG' />\r
73                                                     <parameter name='ack-final-indicator' value="Y" />\r
74                                                 </return>\r
75                                             </outcome>\r
76                                         </call>\r
77                                     </block>\r
78                                 </outcome>\r
79                                 <outcome value='TAPI'>\r
80                                     <block>\r
81                                         <call module='optical-service' rpc='service-delete-tapi' mode='sync' >\r
82                                             <outcome value='success'>\r
83                                                 <block>\r
84                                                     <set>\r
85                                                         <parameter name='service1-status' value='`$final-response-code`' />\r
86                                                     </set>\r
87                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
88                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/service-delete-tapi.log" />\r
89                                                         <parameter name="level" value="info" />\r
90                                                         <parameter name="field1" value="`$service1-status`"/>\r
91                                                     </record>\r
92                                                 </block>\r
93                                             </outcome>\r
94                                             <outcome value='failure'>\r
95                                                 <return status='failure'>\r
96                                                     <parameter name='error-code' value='500' />\r
97                                                     <parameter name='error-message' value='Failed to call MSA DG' />\r
98                                                     <parameter name='ack-final-indicator' value="Y" />\r
99                                                 </return>\r
100                                             </outcome>\r
101                                         </call>\r
102                                     </block>\r
103                                 </outcome>\r
104                             </switch>\r
105                         </block>\r
106                     </outcome>\r
107                     <outcome value='2'>\r
108                         <switch test='`$ppx`'>\r
109                             <outcome value='0'>\r
110                                 <block>\r
111                                     <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
112 key='SELECT controller_id\r
113 from REQUEST_DETAILS\r
114 WHERE request_id = $domain-service1'\r
115 pfx='detail-db11'>\r
116                                         <outcome value='success'>\r
117                                             <set>\r
118                                                 <parameter name='controller-id11' value='`$detail-db11.controller-id`' />\r
119                                             </set>\r
120                                         </outcome>\r
121                                     </get-resource>\r
122                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
123                                         <parameter name="original_string" value='`$controller-id11`'/>\r
124                                         <parameter name="regex" value="_"/>\r
125                                         <parameter name="ctx_memory_result_key" value="domain1"/>\r
126                                     </execute>\r
127                                     <set>\r
128                                         <parameter name='optical-service-delete-input.request-id' value="`$domain-service1`" />\r
129                                         <parameter name='optical-service-delete-input.payload.service-name' value="`$optical-service-delete-input.payload.param[0].value + '_MDONS-OTN_'`"/>\r
130                                         <parameter name='domain-type' value='`$domain1[0]`' />\r
131                                         <parameter name='controller-ip' value='`$domain1[1]`' />\r
132                                     </set>\r
133                                     <call module='optical-service' rpc='service-delete-tapi' mode='sync' >\r
134                                         <outcome value='success'>\r
135                                             <block>\r
136                                                 <set>\r
137                                                     <parameter name='service1-status' value='`$final-response-code`' />\r
138                                                 </set>\r
139                                                 <switch test='`$service1-status == 200`'>\r
140                                                     <outcome value='true'>\r
141                                                         <set>\r
142                                                             <parameter name='service1' value='success' />\r
143                                                         </set>\r
144                                                     </outcome>\r
145                                                     <outcome value='false'>\r
146                                                         <set>\r
147                                                             <parameter name='service1' value='failure' />\r
148                                                         </set>\r
149                                                     </outcome>\r
150                                                 </switch>\r
151                                             </block>\r
152                                         </outcome>\r
153                                         <outcome value='failure'>\r
154                                             <return status='failure'>\r
155                                                 <parameter name='error-code' value='500' />\r
156                                                 <parameter name='error-message' value='Main Delete Dg not available' />\r
157                                                 <parameter name='ack-final-indicator' value="Y" />\r
158                                             </return>\r
159                                         </outcome>\r
160                                     </call>\r
161                                 </block>\r
162                             </outcome>\r
163                             <outcome value='1'>\r
164                                 <block>\r
165                                     <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
166 key='SELECT controller_id\r
167 from REQUEST_DETAILS\r
168 WHERE request_id = $domain-service2'\r
169 pfx='detail-db22'>\r
170                                         <outcome value='success'>\r
171                                             <set>\r
172                                                 <parameter name='controller-id22' value='`$detail-db22.controller-id`' />\r
173                                             </set>\r
174                                         </outcome>\r
175                                     </get-resource>\r
176                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
177                                         <parameter name="original_string" value='`$controller-id22`'/>\r
178                                         <parameter name="regex" value="_"/>\r
179                                         <parameter name="ctx_memory_result_key" value="domain2"/>\r
180                                     </execute>\r
181                                     <set>\r
182                                         <parameter name='optical-service-delete-input.request-id' value="`$domain-service2`" />\r
183                                         <parameter name='optical-service-delete-input.payload.service-name' value="`$optical-service-delete-input.payload.param[0].value + '_MDONS-OTN_'`"/>\r
184                                         <parameter name='domain-type' value='`$domain2[0]`' />\r
185                                         <parameter name='controller-ip' value='`$domain2[1]`' />\r
186                                     </set>\r
187                                     <call module='optical-service' rpc='service-delete-tapi' mode='sync' >\r
188                                         <outcome value='success'>\r
189                                             <block>\r
190                                                 <set>\r
191                                                     <parameter name='service2-status' value='`$final-response-code`' />\r
192                                                 </set>\r
193                                                 <switch test='`$service2-status == 200`'>\r
194                                                     <outcome value='true'>\r
195                                                         <set>\r
196                                                             <parameter name='service2' value='success' />\r
197                                                         </set>\r
198                                                     </outcome>\r
199                                                     <outcome value='false'>\r
200                                                         <set>\r
201                                                             <parameter name='service2' value='failure' />\r
202                                                         </set>\r
203                                                     </outcome>\r
204                                                 </switch>\r
205                                             </block>\r
206                                         </outcome>\r
207                                         <outcome value='failure'>\r
208                                             <return status='failure'>\r
209                                                 <parameter name='error-code' value='500' />\r
210                                                 <parameter name='error-message' value='Main Delete Dg not available' />\r
211                                                 <parameter name='ack-final-indicator' value="Y" />\r
212                                             </return>\r
213                                         </outcome>\r
214                                     </call>\r
215                                 </block>\r
216                             </outcome>\r
217                         </switch>\r
218                     </outcome>\r
219                 </switch>\r
220             </for>\r
221             <switch test='`$ppx`'>\r
222                 <outcome value='0'>\r
223                     <block>\r
224                         <switch test='`$service1-status`'>\r
225                             <outcome value='200'>\r
226                                 <block>\r
227                                     <delete plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'\r
228     resource="SQL"\r
229     key="DELETE FROM REQUEST_DETAILS WHERE request_id = $access-id"></delete>\r
230                                     <return status='success'>\r
231                                         <parameter name="error-code" value="200" />\r
232                                         <parameter name="error-message" value="Service Deleted Successfully" />\r
233                                         <parameter name='ack-final-indicator' value='Y' />\r
234                                     </return>\r
235                                 </block>\r
236                             </outcome>\r
237                             <outcome value='Other'>\r
238                                 <block>\r
239                                     <return status='failure'>\r
240                                         <parameter name='error-code' value='500' />\r
241                                         <parameter name='error-message' value='Access service request entry cannot be deleted' />\r
242                                         <parameter name='ack-final-indicator' value="Y" />\r
243                                     </return>\r
244                                 </block>\r
245                             </outcome>\r
246                         </switch>\r
247                     </block>\r
248                 </outcome>\r
249                 <outcome value='1'>\r
250                     <block>\r
251                         <switch test='`$service1-status == $service2-status == 200`'>\r
252                             <outcome value='true'>\r
253                                 <block>\r
254                                     <delete plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'\r
255     resource="SQL"\r
256     key="DELETE FROM REQUEST_DETAILS WHERE request_id = $access-id"></delete>\r
257                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
258                                         <parameter name="file" value="/opt/opendaylight/current/data/log/optical-service-create.log" />\r
259                                         <parameter name="level" value="info" />\r
260                                         <parameter name="field1" value="`'domain rquest_' + $domain-requests`"/>\r
261                                         <parameter name="field2" value="`'Access rquest_' + $as-request-id`"/>\r
262                                     </record>\r
263                                     <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
264 resource="service-instance"\r
265  key='customer.global-customer-id = $output.global-customer-id AND\r
266      service-subscription.service-type = $output.service-type AND\r
267      service-instance.service-instance-id = $delete-acc-svc-id' \r
268 pfx='acc-serv-dl'      local-only='false'></get-resource>\r
269                                     <set>\r
270                                         <parameter name='link-name' value='`$acc-serv-dl.relationship-list.relationship[0].relationship-data[0].relationship-value`' />\r
271                                     </set>\r
272                                     <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
273 force='true'\r
274 resource='logical-link'\r
275      key='logical-link.link-name = $link-name '\r
276       local-only='false'>\r
277                                         <parameter name='operational-status' value='available' />\r
278                                     </update>\r
279                                     <return status='success'>\r
280                                         <parameter name="error-code" value="200" />\r
281                                         <parameter name="error-message" value="Service Deleted Successfully" />\r
282                                         <parameter name='ack-final-indicator' value='Y' />\r
283                                     </return>\r
284                                 </block>\r
285                             </outcome>\r
286                             <outcome value='false'>\r
287                                 <block>\r
288                                     <return status='failure'>\r
289                                         <parameter name='error-code' value='500' />\r
290                                         <parameter name='error-message' value='Access service request entry cannot be deleted' />\r
291                                         <parameter name='ack-final-indicator' value="Y" />\r
292                                     </return>\r
293                                 </block>\r
294                             </outcome>\r
295                         </switch>\r
296                     </block>\r
297                 </outcome>\r
298             </switch>\r
299         </block>\r
300     </method>\r
301 </service-logic>