Chore: Add gerrit maven verify GHA workflow
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_network-topology-operation.xml
1 <?xml version="1.0" encoding="utf-8"?>
2
3 <service-logic
4     xmlns='http://www.onap.org/sdnc/svclogic'
5     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}'>
6     <method rpc='network-topology-operation' mode='sync'>
7         <block atomic="true">
8             <call module='GENERIC-RESOURCE-API' rpc='validate-network-input' mode='sync' ></call>
9             <switch test='`$network-topology-operation-input.sdnc-request-header.svc-action`'>
10                 <outcome value='assign'>
11                     <block atomic="true">
12                         <switch test='`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`'>
13                             <outcome value='Created'>
14                                 <return status='failure'>
15                                     <parameter name='ack-final' value='Y'/>
16                                     <parameter name="error-code" value="500" />
17                                     <parameter name="error-message" value="`'Network is not in appropriate state for assign. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`" />
18                                 </return>
19                             </outcome>
20                             <outcome value='PendingDelete'>
21                                 <return status='failure'>
22                                     <parameter name='ack-final' value='Y'/>
23                                     <parameter name="error-code" value="500" />
24                                     <parameter name="error-message" value="`'Network is not in appropriate state for assign. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`" />
25                                 </return>
26                             </outcome>
27                             <outcome value='PendingCreate'>
28                                 <return status='failure'>
29                                     <parameter name='ack-final' value='Y'/>
30                                     <parameter name="error-code" value="500" />
31                                     <parameter name="error-message" value="`'Network is not in appropriate state for assign. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`" />
32                                 </return>
33                             </outcome>
34                             <outcome value='Other'>
35                                 <call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-assign' mode='sync' ></call>
36                             </outcome>
37                         </switch>
38                     </block>
39                 </outcome>
40                 <outcome value='activate'>
41                     <switch test='`$network-topology-operation-input.request-information.request-action`'>
42                         <outcome value='ActivateSOTNConnectivityInstance'>
43                             <call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-activate' mode='sync' ></call>
44                         </outcome>
45                         <outcome value='ActivateDCINetworkInstance'>
46                             <call module='GENERIC-RESOURCE-API' rpc='dci-connects-network-topology-operation-activate' mode='sync' ></call>
47                         </outcome>
48                         <outcome value='ActivateSDWANConnectivityInstance'>
49                             <call module='GENERIC-RESOURCE-API' rpc='sdwan-network-topology-operation-activate' mode='sync' ></call>
50                         </outcome>
51                         <outcome value='other'>
52                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >
53                                 <parameter name="source" value="`$network-topology-operation-input.service-information.onap-model-information.model-name`"/>
54                                 <parameter name="target" value="wan-connection"/>
55                                 <outcome value='true'>
56                                     <call module='GENERIC-RESOURCE-API' rpc='wan-connection-topology-operation-activate' mode='sync' ></call>
57                                 </outcome>
58                                 <outcome value='false'>
59                                     <block atomic="true">
60                                         <switch test='`$service-data.networks.network_length`'>
61                                             <outcome value=''>
62                                                 <return status='failure'>
63                                                     <parameter name='ack-final' value='Y'/>
64                                                     <parameter name="error-code" value="500" />
65                                                     <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data" />
66                                                 </return>
67                                             </outcome>
68                                             <outcome value='Other'>
69                                                 <block atomic="true">
70                                                     <for index='nidx' start='0' end='`$service-data.networks.network_length`' >
71                                                         <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">
72                                                             <outcome value='true'>
73                                                                 <set>
74                                                                     <parameter name='tmp.nidx' value='`$nidx`' />
75                                                                     <parameter name='network-data.' value='`$service-data.networks.network[$nidx].`' />
76                                                                 </set>
77                                                             </outcome>
78                                                         </switch>
79                                                     </for>
80                                                     <switch test="`$tmp.nidx`">
81                                                         <outcome value=''>
82                                                             <return status='failure'>
83                                                                 <parameter name='ack-final' value='Y'/>
84                                                                 <parameter name="error-code" value="500" />
85                                                                 <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data" />
86                                                             </return>
87                                                         </outcome>
88                                                         <outcome value='Other'>
89                                                             <set>
90                                                                 <parameter name='nidx' value='`$tmp.nidx`' />
91                                                             </set>
92                                                         </outcome>
93                                                     </switch>
94                                                 </block>
95                                             </outcome>
96                                         </switch>
97                                         <switch test='`$network-topology-operation-input.network-information.network-instance-group-id`'>
98                                             <outcome value=''>
99                                                 <return status='success'></return>
100                                             </outcome>
101                                             <outcome value='Other'>
102                                                 <block>
103                                                     <switch test='`$service-data.network-instance-groups.network-instance-group_length`'>
104                                                         <outcome value=''>
105                                                             <return status='failure'>
106                                                                 <parameter name='ack-final' value='Y'/>
107                                                                 <parameter name="error-code" value="500" />
108                                                                 <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-instance-group-id not found in service-data" />
109                                                             </return>
110                                                         </outcome>
111                                                         <outcome value='Other'>
112                                                             <block atomic="true">
113                                                                 <for index='ngidx' start='0' end='`$service-data.network-instance-groups.network-instance-_length`' >
114                                                                     <switch test="`$service-data.network-instance-groups.network-instance-group[$nidx].network-instance-group-id == $network-topology-operation-input.network-information.network-instance-group-id`">
115                                                                         <outcome value='true'>
116                                                                             <block atomic="true">
117                                                                                 <set>
118                                                                                     <parameter name='tmp.ngidx' value='`$ngidx`' />
119                                                                                     <parameter name='ctx.network-instance-group-data.' value='`$service-data.network-instance-groups.network-instance-group[$ngidx].`' />
120                                                                                 </set>
121                                                                             </block>
122                                                                         </outcome>
123                                                                     </switch>
124                                                                 </for>
125                                                             </block>
126                                                         </outcome>
127                                                     </switch>
128                                                 </block>
129                                             </outcome>
130                                         </switch>
131                                         <switch test='`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`'>
132                                             <outcome value='PendingCreate'>
133                                                 <call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-activate' mode='sync' ></call>
134                                             </outcome>
135                                             <outcome value='Other'>
136                                                 <return status='failure'>
137                                                     <parameter name='ack-final' value='Y'/>
138                                                     <parameter name="error-code" value="500" />
139                                                     <parameter name="error-message" value="`'Network is not in appropriate state for activate. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`" />
140                                                 </return>
141                                             </outcome>
142                                         </switch>
143                                     </block>
144                                 </outcome>
145                             </execute>
146                         </outcome>
147                     </switch>
148                 </outcome>
149                 <outcome value='changeassign'>
150                     <block atomic="true">
151                         <switch test='`$service-data.networks.network_length`'>
152                             <outcome value=''>
153                                 <return status='failure'>
154                                     <parameter name='ack-final' value='Y'/>
155                                     <parameter name="error-code" value="500" />
156                                     <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data" />
157                                 </return>
158                             </outcome>
159                             <outcome value='Other'>
160                                 <block atomic="true">
161                                     <for index='nidx' start='0' end='`$service-data.networks.network_length`' >
162                                         <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">
163                                             <outcome value='true'>
164                                                 <set>
165                                                     <parameter name='tmp.nidx' value='`$nidx`' />
166                                                     <parameter name='network-data.' value='`$service-data.networks.network[$nidx].`' />
167                                                 </set>
168                                             </outcome>
169                                         </switch>
170                                     </for>
171                                     <switch test="`$tmp.nidx`">
172                                         <outcome value=''>
173                                             <return status='failure'>
174                                                 <parameter name='ack-final' value='Y'/>
175                                                 <parameter name="error-code" value="500" />
176                                                 <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data" />
177                                             </return>
178                                         </outcome>
179                                         <outcome value='Other'>
180                                             <set>
181                                                 <parameter name='nidx' value='`$tmp.nidx`' />
182                                             </set>
183                                         </outcome>
184                                     </switch>
185                                 </block>
186                             </outcome>
187                         </switch>
188                         <call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-changeassign' mode='sync' ></call>
189                     </block>
190                 </outcome>
191                 <outcome value='deactivate'>
192                     <switch test='`$network-topology-operation-input.request-information.request-action`'>
193                         <outcome value='DeactivateSOTNConnectivityInstance'>
194                             <call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-deactivate' mode='sync' ></call>
195                         </outcome>
196                         <outcome value='DeActivateDCINetworkInstance'>
197                             <call module='GENERIC-RESOURCE-API' rpc='dci-connects-network-topology-operation-deactivate' mode='sync' ></call>
198                         </outcome>
199                         <outcome value='DeactivateSDWANConnectivityInstance'>
200                             <call module='GENERIC-RESOURCE-API' rpc='sdwan-network-topology-operation-deactivate' mode='sync' ></call>
201                         </outcome>
202                         <outcome value='Other'>
203                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >
204                                 <parameter name="source" value="`$network-topology-operation-input.service-information.onap-model-information.model-name`"/>
205                                 <parameter name="target" value="wan-connection"/>
206                                 <outcome value='true'>
207                                     <call module='GENERIC-RESOURCE-API' rpc='wan-connection-topology-operation-deactivate' mode='sync' ></call>
208                                 </outcome>
209                                 <outcome value='false'>
210                                     <block atomic="true">
211                                         <switch test='`$service-data.networks.network_length`'>
212                                             <outcome value=''>
213                                                 <return status='failure'>
214                                                     <parameter name='ack-final' value='Y'/>
215                                                     <parameter name="error-code" value="500" />
216                                                     <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data" />
217                                                 </return>
218                                             </outcome>
219                                             <outcome value='Other'>
220                                                 <block atomic="true">
221                                                     <for index='nidx' start='0' end='`$service-data.networks.network_length`' >
222                                                         <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">
223                                                             <outcome value='true'>
224                                                                 <set>
225                                                                     <parameter name='tmp.nidx' value='`$nidx`' />
226                                                                     <parameter name='network-data.' value='`$service-data.networks.network[$nidx].`' />
227                                                                 </set>
228                                                             </outcome>
229                                                         </switch>
230                                                     </for>
231                                                     <switch test="`$tmp.nidx`">
232                                                         <outcome value=''>
233                                                             <return status='failure'>
234                                                                 <parameter name='ack-final' value='Y'/>
235                                                                 <parameter name="error-code" value="500" />
236                                                                 <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data" />
237                                                             </return>
238                                                         </outcome>
239                                                         <outcome value='Other'>
240                                                             <set>
241                                                                 <parameter name='nidx' value='`$tmp.nidx`' />
242                                                             </set>
243                                                         </outcome>
244                                                     </switch>
245                                                 </block>
246                                             </outcome>
247                                         </switch>
248                                         <switch test='`$network-topology-operation-input.network-information.network-instance-group-id`'>
249                                             <outcome value=''>
250                                                 <return status='success'></return>
251                                             </outcome>
252                                             <outcome value='Other'>
253                                                 <block>
254                                                     <switch test='`$service-data.network-instance-groups.network-instance-group_length`'>
255                                                         <outcome value=''>
256                                                             <return status='failure'>
257                                                                 <parameter name='ack-final' value='Y'/>
258                                                                 <parameter name="error-code" value="500" />
259                                                                 <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-instance-group-id not found in service-data" />
260                                                             </return>
261                                                         </outcome>
262                                                         <outcome value='Other'>
263                                                             <block atomic="true">
264                                                                 <for index='ngidx' start='0' end='`$service-data.network-instance-groups.network-instance-_length`' >
265                                                                     <switch test="`$service-data.network-instance-groups.network-instance-group[$nidx].network-instance-group-id == $network-topology-operation-input.network-information.network-instance-group-id`">
266                                                                         <outcome value='true'>
267                                                                             <block atomic="true">
268                                                                                 <set>
269                                                                                     <parameter name='tmp.ngidx' value='`$ngidx`' />
270                                                                                     <parameter name='ctx.network-instance-group-data.' value='`$service-data.network-instance-groups.network-instance-group[$ngidx].`' />
271                                                                                 </set>
272                                                                             </block>
273                                                                         </outcome>
274                                                                     </switch>
275                                                                 </for>
276                                                             </block>
277                                                         </outcome>
278                                                     </switch>
279                                                 </block>
280                                             </outcome>
281                                         </switch>
282                                         <call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-deactivate' mode='sync' ></call>
283                                     </block>
284                                 </outcome>
285                             </execute>
286                         </outcome>
287                     </switch>
288                 </outcome>
289                 <outcome value='unassign'>
290                     <block atomic="true">
291                         <switch test='`$service-data.networks.network_length`'>
292                             <outcome value=''>
293                                 <return status='failure'>
294                                     <parameter name='ack-final' value='Y'/>
295                                     <parameter name="error-code" value="500" />
296                                     <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data" />
297                                 </return>
298                             </outcome>
299                             <outcome value='Other'>
300                                 <block atomic="true">
301                                     <for index='nidx' start='0' end='`$service-data.networks.network_length`' >
302                                         <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">
303                                             <outcome value='true'>
304                                                 <set>
305                                                     <parameter name='tmp.nidx' value='`$nidx`' />
306                                                     <parameter name='network-data.' value='`$service-data.networks.network[$nidx].`' />
307                                                 </set>
308                                             </outcome>
309                                         </switch>
310                                     </for>
311                                     <switch test="`$tmp.nidx`">
312                                         <outcome value=''>
313                                             <return status='failure'>
314                                                 <parameter name='ack-final' value='Y'/>
315                                                 <parameter name="error-code" value="500" />
316                                                 <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data" />
317                                             </return>
318                                         </outcome>
319                                         <outcome value='Other'>
320                                             <set>
321                                                 <parameter name='nidx' value='`$tmp.nidx`' />
322                                             </set>
323                                         </outcome>
324                                     </switch>
325                                 </block>
326                             </outcome>
327                         </switch>
328                         <switch test='`$network-topology-operation-input.network-information.network-instance-group-id`'>
329                             <outcome value=''>
330                                 <return status='success'></return>
331                             </outcome>
332                             <outcome value='Other'>
333                                 <block>
334                                     <switch test='`$service-data.network-instance-groups.network-instance-group_length`'>
335                                         <outcome value=''>
336                                             <return status='failure'>
337                                                 <parameter name='ack-final' value='Y'/>
338                                                 <parameter name="error-code" value="500" />
339                                                 <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-instance-group-id not found in service-data" />
340                                             </return>
341                                         </outcome>
342                                         <outcome value='Other'>
343                                             <block atomic="true">
344                                                 <for index='ngidx' start='0' end='`$service-data.network-instance-groups.network-instance-_length`' >
345                                                     <switch test="`$service-data.network-instance-groups.network-instance-group[$nidx].network-instance-group-id == $network-topology-operation-input.network-information.network-instance-group-id`">
346                                                         <outcome value='true'>
347                                                             <block atomic="true">
348                                                                 <set>
349                                                                     <parameter name='tmp.ngidx' value='`$ngidx`' />
350                                                                     <parameter name='ctx.network-instance-group-data.' value='`$service-data.network-instance-groups.network-instance-group[$ngidx].`' />
351                                                                 </set>
352                                                             </block>
353                                                         </outcome>
354                                                     </switch>
355                                                 </for>
356                                             </block>
357                                         </outcome>
358                                     </switch>
359                                 </block>
360                             </outcome>
361                         </switch>
362                         <switch test='`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`'>
363                             <outcome value='PendingCreate'>
364                                 <call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-unassign' mode='sync' ></call>
365                             </outcome>
366                             <outcome value='PendingDelete'>
367                                 <call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-unassign' mode='sync' ></call>
368                             </outcome>
369                             <outcome value='Other'>
370                                 <return status='failure'>
371                                     <parameter name='ack-final' value='Y'/>
372                                     <parameter name="error-code" value="500" />
373                                     <parameter name="error-message" value="`'Network is not in appropriate state for unassign. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`" />
374                                 </return>
375                             </outcome>
376                         </switch>
377                     </block>
378                 </outcome>
379                 <outcome value='update'>
380                     <switch test='`$network-topology-operation-input.request-information.request-action`'>
381                         <outcome value='ChangeInternetProfileInstance'>
382                             <for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >
383                                 <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'manufacturer'`">
384                                     <outcome value='true'>
385                                         <switch test='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`'>
386                                             <outcome value='HUAWEI'>
387                                                 <call module='GENERIC-RESOURCE-API' rpc='bbs-internet-profile-network-topology-operation-change-huawei' mode='sync' ></call>
388                                             </outcome>
389                                             <outcome value='NOKIA'>
390                                                 <call module='GENERIC-RESOURCE-API' rpc='bbs-internet-profile-network-topology-operation-change-nokia' mode='sync' ></call>
391                                             </outcome>
392                                             <outcome value='Other'>
393                                                 <return status='failure'>
394                                                     <parameter name='ack-final' value='Y'/>
395                                                     <parameter name="error-code" value="500" />
396                                                     <parameter name="error-message" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name+' is invalid manufacturer,please check!'`" />
397                                                 </return>
398                                             </outcome>
399                                         </switch>
400                                     </outcome>
401                                 </switch>
402                             </for>
403                         </outcome>
404                     </switch>
405                 </outcome>
406                 <outcome value='create'>
407                     <switch test='`$network-topology-operation-input.request-information.request-action`'>
408                         <outcome value='CreateSOTNConnectivityInstance'>
409                             <call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-create' mode='sync' ></call>
410                         </outcome>
411                         <outcome value='CreateSDWANConnectivityInstance'>
412                             <call module='GENERIC-RESOURCE-API' rpc='sdwan-network-topology-operation-create' mode='sync' ></call>
413                         </outcome>
414                         <outcome value='other'>
415                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >
416                                 <parameter name="source" value="`$network-topology-operation-input.service-information.onap-model-information.model-name`"/>
417                                 <parameter name="target" value="wan-connection"/>
418                                 <outcome value='true'>
419                                     <call module='GENERIC-RESOURCE-API' rpc='wan-connection-topology-operation-create' mode='sync' ></call>
420                                 </outcome>
421                                 <outcome value='false'>
422                                     <block atomic="true">
423                                         <call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-create' mode='sync' ></call>
424                                     </block>
425                                 </outcome>
426                             </execute>
427                         </outcome>
428                         <outcome value='CreateInternetProfileInstance'>
429                             <for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >
430                                 <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'manufacturer'`">
431                                     <outcome value='true'>
432                                         <switch test='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`'>
433                                             <outcome value='HUAWEI'>
434                                                 <call module='GENERIC-RESOURCE-API' rpc='bbs-internet-profile-network-topology-operation-create-huawei' mode='sync' ></call>
435                                             </outcome>
436                                             <outcome value='NOKIA'>
437                                                 <call module='GENERIC-RESOURCE-API' rpc='bbs-internet-profile-network-topology-operation-create-nokia' mode='sync' ></call>
438                                             </outcome>
439                                             <outcome value='Other'>
440                                                 <return status='failure'>
441                                                     <parameter name='ack-final' value='Y'/>
442                                                     <parameter name="error-code" value="500" />
443                                                     <parameter name="error-message" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name+' is invalid manufacturer,please check!'`" />
444                                                 </return>
445                                             </outcome>
446                                         </switch>
447                                     </outcome>
448                                 </switch>
449                             </for>
450                         </outcome>
451                         <outcome value='CreateAccessConnectivityInstance'>
452                             <for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >
453                                 <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'manufacturer'`">
454                                     <outcome value='true'>
455                                         <switch test='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`'>
456                                             <outcome value='HUAWEI'>
457                                                 <call module='GENERIC-RESOURCE-API' rpc='bbs-access-connectivity-network-topology-operation-create-huawei' mode='sync' ></call>
458                                             </outcome>
459                                             <outcome value='NOKIA'>
460                                                 <call module='GENERIC-RESOURCE-API' rpc='bbs-access-connectivity-network-topology-operation-create-nokia' mode='sync' ></call>
461                                             </outcome>
462                                             <outcome value='Other'>
463                                                 <return status='failure'>
464                                                     <parameter name='ack-final' value='Y'/>
465                                                     <parameter name="error-code" value="500" />
466                                                     <parameter name="error-message" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name+' is invalid manufacturer,please check!'`" />
467                                                 </return>
468                                             </outcome>
469                                         </switch>
470                                     </outcome>
471                                 </switch>
472                             </for>
473                         </outcome>
474                     </switch>
475                 </outcome>
476                 <outcome value='delete'>
477                     <switch test='`$network-topology-operation-input.request-information.request-action`'>
478                         <outcome value='DeleteSOTNConnectivityInstance'>
479                             <call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-delete' mode='sync' ></call>
480                         </outcome>
481                         <outcome value='DeleteSDWANConnectivityInstance'>
482                             <call module='GENERIC-RESOURCE-API' rpc='sdwan-network-topology-operation-delete' mode='sync' ></call>
483                         </outcome>
484                         <outcome value='other'>
485                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >
486                                 <parameter name="source" value="`$network-topology-operation-input.service-information.onap-model-information.model-name`"/>
487                                 <parameter name="target" value="wan-connection"/>
488                                 <outcome value='true'>
489                                     <call module='GENERIC-RESOURCE-API' rpc='wan-connection-topology-operation-deactivate' mode='sync' ></call>
490                                 </outcome>
491                                 <outcome value='false'>
492                                     <block atomic="true">
493                                         <call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-delete' mode='sync' ></call>
494                                     </block>
495                                 </outcome>
496                             </execute>
497                         </outcome>
498                         <outcome value='DeleteAccessConnectivityInstance'>
499                             <for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >
500                                 <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'manufacturer'`">
501                                     <outcome value='true'>
502                                         <switch test='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`'>
503                                             <outcome value='Other'>
504                                                 <return status='failure'>
505                                                     <parameter name='ack-final' value='Y'/>
506                                                     <parameter name="error-code" value="500" />
507                                                     <parameter name="error-message" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name+' is invalid manufacturer,please check!'`" />
508                                                 </return>
509                                             </outcome>
510                                             <outcome value='HUAWEI'>
511                                                 <call module='GENERIC-RESOURCE-API' rpc='bbs-access-connectivity-network-topology-operation-delete-huawei' mode='sync' ></call>
512                                             </outcome>
513                                             <outcome value='NOKIA'>
514                                                 <call module='GENERIC-RESOURCE-API' rpc='bbs-access-connectivity-network-topology-operation-delete-nokia' mode='sync' ></call>
515                                             </outcome>
516                                         </switch>
517                                     </outcome>
518                                 </switch>
519                             </for>
520                         </outcome>
521                         <outcome value='DeleteInternetProfileInstance'>
522                             <for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >
523                                 <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'manufacturer'`">
524                                     <outcome value='true'>
525                                         <switch test='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`'>
526                                             <outcome value='Other'>
527                                                 <return status='failure'>
528                                                     <parameter name='ack-final' value='Y'/>
529                                                     <parameter name="error-code" value="500" />
530                                                     <parameter name="error-message" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name+' is invalid manufacturer,please check!'`" />
531                                                 </return>
532                                             </outcome>
533                                             <outcome value='HUAWEI'>
534                                                 <call module='GENERIC-RESOURCE-API' rpc='bbs-internet-profile-network-topology-operation-delete-huawei' mode='sync' ></call>
535                                             </outcome>
536                                             <outcome value='NOKIA'>
537                                                 <call module='GENERIC-RESOURCE-API' rpc='bbs-internet-profile-network-topology-operation-delete-nokia' mode='sync' ></call>
538                                             </outcome>
539                                         </switch>
540                                     </outcome>
541                                 </switch>
542                             </for>
543                         </outcome>
544                     </switch>
545                 </outcome>
546                 <outcome value='reoptimize'>
547                     <switch test='`$network-topology-operation-input.request-information.request-action`'>
548                         <outcome value='ReoptimizeSOTNInstance'>
549                             <call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-reoptimize' mode='sync' ></call>
550                         </outcome>
551                     </switch>
552                 </outcome>
553                 <outcome value='Other'>
554                     <return status='failure'>
555                         <parameter name='ack-final' value='Y'/>
556                         <parameter name="error-code" value="500" />
557                         <parameter name="error-message" value="sdnc-request-header.svc-action is a required input" />
558                     </return>
559                 </outcome>
560             </switch>
561             <set>
562                 <parameter name="ack-final" value="Y"/>
563             </set>
564             <return status='success'>
565                 <parameter name="ack-final-indicator" value="Y" />
566                 <parameter name="error-code" value="200" />
567                 <parameter name="error-message" value="`$error-message`" />
568             </return>
569         </block>
570     </method>
571 </service-logic>