Chore: Add gerrit maven verify GHA workflow
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_api-contrail-route-topology-operation-deactivate.xml
1 <service-logic
2     xmlns='http://www.onap.org/sdnc/svclogic'
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}'>
4     <method rpc='api-contrail-route-topology-operation-deactivate' mode='sync'>
5         <block atomic="true">
6             <call module='GENERIC-RESOURCE-API' rpc='validate-api-contrail-route-input' mode='sync' ></call>
7             <set>
8                 <parameter name='tmp.ar.allotted-resource-id' value='`$cto-api.contrail-route-allotted-resource-id`' />
9                 <parameter name='tmp.ar.parent-service-instance-id' value='`$cto-api.parent-service-instance-id`' />
10             </set>
11             <set>
12                 <parameter name='tmp.ar.self-link' value="`'restconf/config/GENERIC-RESOURCE-API:contrail-route-allotted-resources/contrail-route-allotted-resource/'
13  + $tmp.ar.allotted-resource-id
14  + '/allotted-resource-data/contrail-route-topology/'` " />
15             </set>
16             <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
17                 <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />
18                 <parameter name='contextPrefix' value='prop' />
19             </execute>
20             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
21                 <parameter name="source" value="`$prop.restapi.cr-allottedresource`"/>
22                 <parameter name="outputPath" value="tmp.ar-url"/>
23                 <parameter name="target" value="{allotted-resource-id}"/>
24                 <parameter name="replacement" value="`$tmp.ar.allotted-resource-id`"/>
25             </execute>
26             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
27                 <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url`' />
28                 <parameter name='restapiUser' value='`$prop.controller.user`' />
29                 <parameter name='restapiPassword' value='`$prop.controller.pwd`' />
30                 <parameter name='format' value='json' />
31                 <parameter name='httpMethod' value='GET' />
32                 <parameter name="responsePrefix" value="mdsal-ar" />
33                 <outcome value='success'>
34                     <block atomic="true">
35                         <switch test='`$mdsal-ar.contrail-route-allotted-resource_length`'>
36                             <outcome value='1'>
37                                 <block atomic='true'>
38                                     <set>
39                                         <parameter name='bk-cr-ar' value='$mdsal-ar.' />
40                                     </set>
41                                     <set>
42                                         <parameter name='ar.' value='$mdsal-ar.contrail-route-allotted-resource[0].' />
43                                     </set>
44                                     <switch test='`$ar.allotted-resource-data.allotted-resource-oper-status.order-status`'>
45                                         <outcome value='Active'>
46                                             <block></block>
47                                         </outcome>
48                                         <outcome value='Other'>
49                                             <return status='failure'>
50                                                 <parameter name='ack-final' value='Y'/>
51                                                 <parameter name="error-code" value="500" />
52                                                 <parameter name="error-message" 
53     value="`'Existing contrail-route-allotted-resource with order status of ' + $ar.allotted-resource-data.allotted-resource-oper-status.order-status + '.'`" />
54                                             </return>
55                                         </outcome>
56                                     </switch>
57                                 </block>
58                             </outcome>
59                             <outcome value='Other'>
60                                 <return status='failure'>
61                                     <parameter name='ack-final' value='Y'/>
62                                     <parameter name="error-code" value="404" />
63                                     <parameter name="error-message" value="Error: Contrail Route not found" />
64                                 </return>
65                             </outcome>
66                         </switch>
67                     </block>
68                 </outcome>
69                 <outcome value='Other'>
70                     <block atomic="true">
71                         <return status='failure'>
72                             <parameter name='ack-final' value='Y'/>
73                             <parameter name="error-code" value="404" />
74                             <parameter name="error-message" value="Error: Contrail Route not found" />
75                         </return>
76                     </block>
77                 </outcome>
78             </execute>
79             <set>
80                 <parameter name='ar-assignments.' value="`$ar.allotted-resource-data.contrail-route-topology.contrail-route-assignments.`" />
81             </set>
82             <switch test='`$ar-assignments.source-network.network-id`'>
83                 <outcome value=''>
84                     <return status='failure'>
85                         <parameter name='ack-final' value='Y'/>
86                         <parameter name="error-code" value="500" />
87                         <parameter name="error-message" value="Error activating contrail route.  Source network not found" />
88                     </return>
89                 </outcome>
90                 <outcome value='Other'>
91                     <block></block>
92                 </outcome>
93             </switch>
94             <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" 
95         resource="l3-network" 
96                 key="l3-network.network-id = $ar-assignments.source-network.network-id" 
97                 local-only="false" 
98                 pfx="aai.src-network">
99                 <outcome value='not-found'>
100                     <return status='failure'>
101                         <parameter name="error-code" value="500" />
102                         <parameter name="error-message" value="`'Error retrieving source network with network-id=' + $ar-assignments.source-network.network-id + ' from AnAI'`" />
103                     </return>
104                 </outcome>
105                 <outcome value='failure'>
106                     <return status='failure'>
107                         <parameter name="error-code" value="500" />
108                         <parameter name="error-message" value="`'Error retrieving source network with network-id=' + $ar-assignments.source-network.network-id + ' from AnAI'`" />
109                     </return>
110                 </outcome>
111                 <outcome value='success'>
112                     <block atomic="true"></block>
113                 </outcome>
114             </get-resource>
115             <set>
116                 <parameter name='cloud-region-id' value='`$tmp.ar.cloud-region-id`' />
117             </set>
118             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
119                 <parameter name='ctx_memory_result_key' value='virtual-network-fqdn-split' />
120                 <parameter name='original_string' value='`$aai.src-network.contrail-network-fqdn`' />
121                 <parameter name='regex' value=':' />
122             </execute>
123             <switch test='`$virtual-network-fqdn-split_length`'>
124                 <outcome value='0'>
125                     <return status='failure'>
126                         <parameter name='error-code' value='500' />
127                         <parameter name='error-message' value='Unable to determine network fq-name from contrail fqdn' />
128                     </return>
129                 </outcome>
130                 <outcome value='Other'>
131                     <set>
132                         <parameter name='src-virtual-network-fqname' value='`$virtual-network-fqdn-split[$virtual-network-fqdn-split_length - 1]`' />
133                     </set>
134                 </outcome>
135             </switch>
136             <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
137                 <parameter name='api-name' value='fqname-to-uuid' />
138                 <parameter name='api-action' value='get' />
139                 <parameter name='resp-prefix' value='uuidresp' />
140                 <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
141                 <parameter name='default-project' value='`$cto-api.default-project`' />
142                 <parameter name='default-domain' value='`$cto-api.default-domain`' />
143                 <parameter name='fqname-type' value='virtual-network' />
144                 <parameter name='policy-name' value='`$src-virtual-network-fqname`' />
145                 <outcome value='success'>
146                     <block></block>
147                 </outcome>
148                 <outcome value='failure'>
149                     <return status='failure'>
150                         <parameter name='ack-final' value='Y'/>
151                         <parameter name="error-code" value="500" />
152                         <parameter name="error-message" value="Failed to find network uuid for Contrail to source network" />
153                     </return>
154                 </outcome>
155             </execute>
156             <set>
157                 <parameter name='src-uuid' value='`$uuidresp.uuid`' />
158             </set>
159             <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
160                 <parameter name='api-name' value='network-policy' />
161                 <parameter name='api-action' value='remove' />
162                 <parameter name='resp-prefix' value='contrailResp' />
163                 <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
164                 <parameter name='default-project' value='`$cto-api.default-project`' />
165                 <parameter name='default-domain' value='`$cto-api.default-domain`' />
166                 <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
167                 <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
168                 <parameter name='contrail-virtual-network-id' value='`$uuidresp.uuid`' />
169                 <outcome value='success'>
170                     <block></block>
171                 </outcome>
172                 <outcome value='failure'>
173                     <return status='failure'>
174                         <parameter name='ack-final' value='Y'/>
175                         <parameter name="error-code" value="500" />
176                         <parameter name="error-message" value="Failed to remove policy in Contrail from source network" />
177                     </return>
178                 </outcome>
179             </execute>
180             <switch test='`$ar-assignments.dest-network.network-id`'>
181                 <outcome value=''>
182                     <return status='failure'>
183                         <parameter name='ack-final' value='Y'/>
184                         <parameter name="error-code" value="500" />
185                         <parameter name="error-message" value="Error activating contrail route.  Dest network not found" />
186                     </return>
187                 </outcome>
188                 <outcome value='Other'>
189                     <block></block>
190                 </outcome>
191             </switch>
192             <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" 
193         resource="l3-network" 
194                 key="l3-network.network-id = $ar-assignments.dest-network.network-id" 
195                 local-only="false" 
196                 pfx="aai.dest-network">
197                 <outcome value='not-found'>
198                     <block>
199                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
200                             <parameter name='api-name' value='network-policy' />
201                             <parameter name='api-action' value='remove' />
202                             <parameter name='resp-prefix' value='contrailResp' />
203                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
204                             <parameter name='default-project' value='`$cto-api.default-project`' />
205                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
206                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
207                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
208                             <parameter name='contrail-virtual-network-id' value='`$src-uuid`' />
209                             <outcome value='Other'>
210                                 <block></block>
211                             </outcome>
212                         </execute>
213                         <return status='failure'>
214                             <parameter name="error-code" value="500" />
215                             <parameter name="error-message" value="`'Error retrieving destination network with network-id=' + $ar.allotted-resource-data.contrail-route-topology.contrail-route-assignments.source-network.network-id + ' from AnAI'`" />
216                         </return>
217                     </block>
218                 </outcome>
219                 <outcome value='failure'>
220                     <block>
221                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
222                             <parameter name='api-name' value='network-policy' />
223                             <parameter name='api-action' value='remove' />
224                             <parameter name='resp-prefix' value='contrailResp' />
225                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
226                             <parameter name='default-project' value='`$cto-api.default-project`' />
227                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
228                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
229                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
230                             <parameter name='contrail-virtual-network-id' value='`$src-uuid`' />
231                             <outcome value='Other'>
232                                 <block></block>
233                             </outcome>
234                         </execute>
235                         <return status='failure'>
236                             <parameter name="error-code" value="500" />
237                             <parameter name="error-message" value="`'Error retrieving destination network with network-id=' + $ar.allotted-resource-data.contrail-route-topology.contrail-route-assignments.source-network.network-id + ' from AnAI'`" />
238                         </return>
239                     </block>
240                 </outcome>
241                 <outcome value='success'>
242                     <block atomic="true"></block>
243                 </outcome>
244             </get-resource>
245             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
246                 <parameter name='ctx_memory_result_key' value='virtual-network-fqdn-split' />
247                 <parameter name='original_string' value='`$aai.dest-network.contrail-network-fqdn`' />
248                 <parameter name='regex' value=':' />
249             </execute>
250             <switch test='`$virtual-network-fqdn-split_length`'>
251                 <outcome value='0'>
252                     <block>
253                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
254                             <parameter name='api-name' value='network-policy' />
255                             <parameter name='api-action' value='remove' />
256                             <parameter name='resp-prefix' value='contrailResp' />
257                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
258                             <parameter name='default-project' value='`$cto-api.default-project`' />
259                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
260                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
261                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
262                             <parameter name='contrail-virtual-network-id' value='`$src-uuid`' />
263                             <outcome value='Other'>
264                                 <block></block>
265                             </outcome>
266                         </execute>
267                         <return status='failure'>
268                             <parameter name='error-code' value='500' />
269                             <parameter name='error-message' value='Unable to determine network fq-name from contrail fqdn' />
270                         </return>
271                     </block>
272                 </outcome>
273                 <outcome value='Other'>
274                     <set>
275                         <parameter name='dest-virtual-network-fqname' value='`$virtual-network-fqdn-split[$virtual-network-fqdn-split_length - 1]`' />
276                         <parameter name='dest-default-project' value='`$virtual-network-fqdn-split[$virtual-network-fqdn-split_length - 2]`' />
277                     </set>
278                 </outcome>
279             </switch>
280             <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
281                 <parameter name='api-name' value='fqname-to-uuid' />
282                 <parameter name='api-action' value='get' />
283                 <parameter name='resp-prefix' value='uuidresp' />
284                 <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
285                 <parameter name='default-project' value='`$dest-default-project`' />
286                 <parameter name='default-domain' value='`$cto-api.default-domain`' />
287                 <parameter name='fqname-type' value='virtual-network' />
288                 <parameter name='policy-name' value='`$dest-virtual-network-fqname`' />
289                 <outcome value='success'>
290                     <block></block>
291                 </outcome>
292                 <outcome value='failure'>
293                     <block>
294                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
295                             <parameter name='api-name' value='network-policy' />
296                             <parameter name='api-action' value='remove' />
297                             <parameter name='resp-prefix' value='contrailResp' />
298                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
299                             <parameter name='default-project' value='`$cto-api.default-project`' />
300                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
301                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
302                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
303                             <parameter name='contrail-virtual-network-id' value='`$src-uuid`' />
304                             <outcome value='Other'>
305                                 <block></block>
306                             </outcome>
307                         </execute>
308                         <return status='failure'>
309                             <parameter name='ack-final' value='Y'/>
310                             <parameter name="error-code" value="500" />
311                             <parameter name="error-message" value="Failed to find network uuid for Contrail to destination network" />
312                         </return>
313                     </block>
314                 </outcome>
315             </execute>
316             <set>
317                 <parameter name='dest-uuid' value='`$uuidresp.uuid`' />
318             </set>
319             <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
320                 <parameter name='api-name' value='network-policy' />
321                 <parameter name='api-action' value='remove' />
322                 <parameter name='resp-prefix' value='contrailResp' />
323                 <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
324                 <parameter name='default-project' value='`$cto-api.default-project`' />
325                 <parameter name='default-domain' value='`$cto-api.default-domain`' />
326                 <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
327                 <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
328                 <parameter name='contrail-virtual-network-id' value='`$uuidresp.uuid`' />
329                 <outcome value='success'>
330                     <block></block>
331                 </outcome>
332                 <outcome value='failure'>
333                     <block>
334                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
335                             <parameter name='api-name' value='network-policy' />
336                             <parameter name='api-action' value='remove' />
337                             <parameter name='resp-prefix' value='contrailResp' />
338                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
339                             <parameter name='default-project' value='`$cto-api.default-project`' />
340                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
341                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
342                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
343                             <parameter name='contrail-virtual-network-id' value='`$src-uuid`' />
344                             <outcome value='Other'>
345                                 <block></block>
346                             </outcome>
347                         </execute>
348                         <return status='failure'>
349                             <parameter name='ack-final' value='Y'/>
350                             <parameter name="error-code" value="500" />
351                             <parameter name="error-message" value="Failed to remove policy in Contrail from dest network" />
352                         </return>
353                     </block>
354                 </outcome>
355             </execute>
356             <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" 
357         resource="network-policy:relationship-list" 
358         key="network-policy.network-policy-id = $ar-assignments.contrail-id and related-to = 'l3-network' " >
359                 <outcome value='failure'>
360                     <block>
361                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
362                             <parameter name='api-name' value='network-policy' />
363                             <parameter name='api-action' value='remove' />
364                             <parameter name='resp-prefix' value='contrailResp' />
365                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
366                             <parameter name='default-project' value='`$cto-api.default-project`' />
367                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
368                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
369                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
370                             <parameter name='contrail-virtual-network-id' value='`$src-uuid`' />
371                             <outcome value='Other'>
372                                 <block></block>
373                             </outcome>
374                         </execute>
375                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
376                             <parameter name='api-name' value='network-policy' />
377                             <parameter name='api-action' value='remove' />
378                             <parameter name='resp-prefix' value='contrailResp' />
379                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
380                             <parameter name='default-project' value='`$cto-api.default-project`' />
381                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
382                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
383                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
384                             <parameter name='contrail-virtual-network-id' value='`$dest-uuid`' />
385                             <outcome value='Other'>
386                                 <block></block>
387                             </outcome>
388                         </execute>
389                         <return status='failure'>
390                             <parameter name='ack-final' value='Y'/>
391                             <parameter name="error-code" value="500" />
392                             <parameter name="error-message" value="Failed to save network policy in AAI" />
393                         </return>
394                     </block>
395                 </outcome>
396                 <outcome value='not-found'>
397                     <block>
398                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
399                             <parameter name='api-name' value='network-policy' />
400                             <parameter name='api-action' value='remove' />
401                             <parameter name='resp-prefix' value='contrailResp' />
402                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
403                             <parameter name='default-project' value='`$cto-api.default-project`' />
404                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
405                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
406                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
407                             <parameter name='contrail-virtual-network-id' value='`$src-uuid`' />
408                             <outcome value='Other'>
409                                 <block></block>
410                             </outcome>
411                         </execute>
412                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
413                             <parameter name='api-name' value='network-policy' />
414                             <parameter name='api-action' value='remove' />
415                             <parameter name='resp-prefix' value='contrailResp' />
416                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
417                             <parameter name='default-project' value='`$cto-api.default-project`' />
418                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
419                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
420                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
421                             <parameter name='contrail-virtual-network-id' value='`$dest-uuid`' />
422                             <outcome value='Other'>
423                                 <block></block>
424                             </outcome>
425                         </execute>
426                         <return status='failure'>
427                             <parameter name='ack-final' value='Y'/>
428                             <parameter name="error-code" value="500" />
429                             <parameter name="error-message" value="Failed to save network policy in AAI" />
430                         </return>
431                     </block>
432                 </outcome>
433             </delete>
434             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" 
435                 resource="allotted-resource" 
436                 key="customer.global-customer-id = $service-data.service-information.global-customer-id AND
437                         service-subscription.service-type = $service-data.service-information.subscription-service-type AND
438                         service-instance.service-instance-id = $ar.allotted-resource-data.contrail-route-topology.allotted-resource-identifiers.parent-service-instance-id AND
439                         allotted-resource.id = $tmp.ar.allotted-resource-id"
440         pfx='pfx' local-only='false' force='false'>
441                 <parameter name="operational-status" value="out-of-service-path" />
442                 <parameter name="orchestration-status" value="deactivated" />
443                 <outcome value='failure'>
444                     <block>
445                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
446                             <parameter name='api-name' value='network-policy' />
447                             <parameter name='api-action' value='remove' />
448                             <parameter name='resp-prefix' value='contrailResp' />
449                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
450                             <parameter name='default-project' value='`$cto-api.default-project`' />
451                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
452                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
453                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
454                             <parameter name='contrail-virtual-network-id' value='`$src-uuid`' />
455                             <outcome value='Other'>
456                                 <block></block>
457                             </outcome>
458                         </execute>
459                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
460                             <parameter name='api-name' value='network-policy' />
461                             <parameter name='api-action' value='remove' />
462                             <parameter name='resp-prefix' value='contrailResp' />
463                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
464                             <parameter name='default-project' value='`$cto-api.default-project`' />
465                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
466                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
467                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
468                             <parameter name='contrail-virtual-network-id' value='`$dest-uuid`' />
469                             <outcome value='Other'>
470                                 <block></block>
471                             </outcome>
472                         </execute>
473                         <return status='failure'>
474                             <parameter name='ack-final' value='Y'/>
475                             <parameter name="error-code" value="500" />
476                             <parameter name="error-message" value="AAI failed" />
477                         </return>
478                     </block>
479                 </outcome>
480                 <outcome value='not-found'>
481                     <block>
482                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
483                             <parameter name='api-name' value='network-policy' />
484                             <parameter name='api-action' value='remove' />
485                             <parameter name='resp-prefix' value='contrailResp' />
486                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
487                             <parameter name='default-project' value='`$cto-api.default-project`' />
488                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
489                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
490                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
491                             <parameter name='contrail-virtual-network-id' value='`$src-uuid`' />
492                             <outcome value='Other'>
493                                 <block></block>
494                             </outcome>
495                         </execute>
496                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
497                             <parameter name='api-name' value='network-policy' />
498                             <parameter name='api-action' value='remove' />
499                             <parameter name='resp-prefix' value='contrailResp' />
500                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
501                             <parameter name='default-project' value='`$cto-api.default-project`' />
502                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
503                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
504                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
505                             <parameter name='contrail-virtual-network-id' value='`$dest-uuid`' />
506                             <outcome value='Other'>
507                                 <block></block>
508                             </outcome>
509                         </execute>
510                         <return status='failure'>
511                             <parameter name='ack-final' value='Y'/>
512                             <parameter name="error-code" value="500" />
513                             <parameter name="error-message" value="AAI failed" />
514                         </return>
515                     </block>
516                 </outcome>
517             </update>
518             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setTime' >
519                 <parameter name="outputPath" value="tmp.current-time" />
520             </execute>
521             <set>
522                 <parameter name='ar.allotted-resource-data.allotted-resource-oper-status.order-status' value='PendingDelete' />
523                 <parameter name='ar.allotted-resource-data.allotted-resource-oper-status.create-timestamp' value='`$tmp.current-time`' />
524             </set>
525             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
526                 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.cr.templatefile`" />
527                 <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url`' />
528                 <parameter name='restapiUser' value='`$prop.controller.user`' />
529                 <parameter name='restapiPassword' value='`$prop.controller.pwd`' />
530                 <parameter name='format' value='json' />
531                 <parameter name='httpMethod' value='PUT' />
532                 <parameter name="responsePrefix" value="mdsal-ar" />
533                 <outcome value='success'>
534                     <block></block>
535                 </outcome>
536                 <outcome value='failure'>
537                     <block>
538                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
539                             <parameter name='api-name' value='network-policy' />
540                             <parameter name='api-action' value='remove' />
541                             <parameter name='resp-prefix' value='contrailResp' />
542                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
543                             <parameter name='default-project' value='`$cto-api.default-project`' />
544                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
545                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
546                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
547                             <parameter name='contrail-virtual-network-id' value='`$src-uuid`' />
548                             <outcome value='Other'>
549                                 <block></block>
550                             </outcome>
551                         </execute>
552                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
553                             <parameter name='api-name' value='network-policy' />
554                             <parameter name='api-action' value='remove' />
555                             <parameter name='resp-prefix' value='contrailResp' />
556                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
557                             <parameter name='default-project' value='`$cto-api.default-project`' />
558                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
559                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
560                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
561                             <parameter name='contrail-virtual-network-id' value='`$dest-uuid`' />
562                             <outcome value='Other'>
563                                 <block></block>
564                             </outcome>
565                         </execute>
566                         <return status='failure'>
567                             <parameter name='ack-final' value='Y'/>
568                             <parameter name="error-code" value="500" />
569                             <parameter name="error-message" value="Error updating md-sal for contrail-route-allotted-resource" />
570                         </return>
571                     </block>
572                 </outcome>
573                 <outcome value='not-found'>
574                     <block>
575                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
576                             <parameter name='api-name' value='network-policy' />
577                             <parameter name='api-action' value='remove' />
578                             <parameter name='resp-prefix' value='contrailResp' />
579                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
580                             <parameter name='default-project' value='`$cto-api.default-project`' />
581                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
582                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
583                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
584                             <parameter name='contrail-virtual-network-id' value='`$src-uuid`' />
585                             <outcome value='Other'>
586                                 <block></block>
587                             </outcome>
588                         </execute>
589                         <execute plugin='org.onap.ccsdk.sli.plugins.contrail.ContrailAdaptor' method='sendContrailRequest' emitsOutcome='true' >
590                             <parameter name='api-name' value='network-policy' />
591                             <parameter name='api-action' value='remove' />
592                             <parameter name='resp-prefix' value='contrailResp' />
593                             <parameter name='cloud-region-id' value='`$cto-api.cloud-region-id`' />
594                             <parameter name='default-project' value='`$cto-api.default-project`' />
595                             <parameter name='default-domain' value='`$cto-api.default-domain`' />
596                             <parameter name='contrail-network-policy-id' value='`$ar-assignments.contrail-id`' />
597                             <parameter name='contrail-network-policy-fq-name' value='`$ar-assignments.fq-name`' />
598                             <parameter name='contrail-virtual-network-id' value='`$dest-uuid`' />
599                             <outcome value='Other'>
600                                 <block></block>
601                             </outcome>
602                         </execute>
603                         <return status='failure'>
604                             <parameter name='ack-final' value='Y'/>
605                             <parameter name="error-code" value="500" />
606                             <parameter name="error-message" value="Error updating md-sal for contrail-route-allotted-resource" />
607                         </return>
608                     </block>
609                 </outcome>
610             </execute>
611             <return status='success'>
612                 <parameter name="ack-final-indicator" value="Y" />
613                 <parameter name="error-code" value="200" />
614                 <parameter name="error-message" value="`$error-message`" />
615             </return>
616         </block>
617     </method>
618 </service-logic>