63a6ca268843589d8fe3672adfa4935a3907e14e
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_self-serve-aai-vf-module-put.xml
1 <service-logic\r
2     xmlns='http://www.onap.org/sdnc/svclogic'\r
3     xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>\r
4     <method rpc='self-serve-aai-vf-module-put' mode='sync'>\r
5         <block atomic="true">\r
6             <switch test='`$ss.capability-name`'>\r
7                 <outcome value=''>\r
8                     <return status="failure">\r
9                         <parameter name="ack-final" value="Y" />\r
10                         <parameter name="error-code" value="500"/>\r
11                         <parameter name="error-message" value="ss.capability-name is null" />\r
12                     </return>\r
13                 </outcome>\r
14             </switch>\r
15             <switch test='`$ss.capability-action`'>\r
16                 <outcome value=''>\r
17                     <return status="failure">\r
18                         <parameter name="ack-final" value="Y" />\r
19                         <parameter name="error-code" value="500"/>\r
20                         <parameter name="error-message" value="ss.capability-action is null" />\r
21                     </return>\r
22                 </outcome>\r
23                 <outcome value='assign'>\r
24                     <block atomic='true'>\r
25                         <block>\r
26                             <set>\r
27                                 <parameter name='nidx' value='0' />\r
28                             </set>\r
29                             <for silentFailure='true' index="bidx" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param_length`" >\r
30                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='startsWith' emitsOutcome='true' >\r
31                                     <parameter name="source" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].name`" />\r
32                                     <parameter name="target" value="sriov"/>\r
33                                     <outcome value='true'>\r
34                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='endsWith' emitsOutcome='true' >\r
35                                             <parameter name="source" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].name`" />\r
36                                             <parameter name="target" value="_net_id"/>\r
37                                             <outcome value='true'>\r
38                                                 <block>\r
39                                                     <set>\r
40                                                         <parameter name='ss.network[$nidx].netid' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
41                                                     </set>\r
42                                                     <set>\r
43                                                         <parameter name='nidx' value='`$nidx + 1`' />\r
44                                                     </set>\r
45                                                 </block>\r
46                                             </outcome>\r
47                                         </execute>\r
48                                     </outcome>\r
49                                     <outcome value='false'>\r
50                                         <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].name`'>\r
51                                             <outcome value='vf_module_id'>\r
52                                                 <set>\r
53                                                     <parameter name='ss.param.vf-module-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
54                                                 </set>\r
55                                             </outcome>\r
56                                             <outcome value='vf_module_name'>\r
57                                                 <set>\r
58                                                     <parameter name='ss.param.vf-module-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
59                                                 </set>\r
60                                             </outcome>\r
61                                             <outcome value='volume-group-id'>\r
62                                                 <set>\r
63                                                     <parameter name='ss.param.volume-group-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
64                                                 </set>\r
65                                             </outcome>\r
66                                             <outcome value='volume-group-name'>\r
67                                                 <set>\r
68                                                     <parameter name='ss.param.volume-group-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
69                                                 </set>\r
70                                             </outcome>\r
71                                             <outcome value='aic-cloud-region'>\r
72                                                 <set>\r
73                                                     <parameter name='ss.param.aic-cloud-region' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
74                                                 </set>\r
75                                             </outcome>\r
76                                             <outcome value='vnfc-name'>\r
77                                                 <set>\r
78                                                     <parameter name='ss.param.vnfc-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
79                                                     <parameter name='ss.param.vnfc-name-index' value='`$bidx`' />\r
80                                                 </set>\r
81                                             </outcome>\r
82                                             <outcome value='oam-interface-name'>\r
83                                                 <set>\r
84                                                     <parameter name='ss.param.oam-interface-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
85                                                     <parameter name='ss.param.oam-interface-name-index' value='`$bidx`' />\r
86                                                 </set>\r
87                                             </outcome>\r
88                                             <outcome value='=รข\80\9dlo0-interface-name'>\r
89                                                 <set>\r
90                                                     <parameter name='ss.param.lo0-interface-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
91                                                     <parameter name='ss.param.lo0-interface-name-index' value='`$bidx`' />\r
92                                                 </set>\r
93                                             </outcome>\r
94                                             <outcome value='ipv4-oam-address'>\r
95                                                 <set>\r
96                                                     <parameter name='ss.param.ipv4-oam-address' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
97                                                     <parameter name='ss.param.ipv4-oam-address-index' value='`$bidx`' />\r
98                                                 </set>\r
99                                             </outcome>\r
100                                             <outcome value='ipv4-oam-address-prefix'>\r
101                                                 <set>\r
102                                                     <parameter name='ss.param.ipv4-oam-address-prefix' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
103                                                     <parameter name='ss.param.ipv4-oam-address-prefix-index' value='`$bidx`' />\r
104                                                 </set>\r
105                                             </outcome>\r
106                                             <outcome value='loopback0_ipv4_address'>\r
107                                                 <set>\r
108                                                     <parameter name='ss.param.loopback0-ipv4-address' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
109                                                     <parameter name='ss.param.loopback0-ipv4-address-index' value='`$bidx`' />\r
110                                                 </set>\r
111                                             </outcome>\r
112                                             <outcome value='ipv4-loopback0-address'>\r
113                                                 <set>\r
114                                                     <parameter name='ss.param.ipv4-loopback0-address' value ='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
115                                                     <parameter name='ss.param.ipv4-loopback0-address-index' value='`bidx`' />\r
116                                                 </set>\r
117                                             </outcome>\r
118                                             <outcome value='nfc-naming-code'>\r
119                                                 <set>\r
120                                                     <parameter name='ss.param.nfc-naming-code' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
121                                                     <parameter name='ss.param.nfc-naming-code-index' value='`$bidx`' />\r
122                                                 </set>\r
123                                             </outcome>\r
124                                             <outcome value='nfc-function'>\r
125                                                 <set>\r
126                                                     <parameter name='ss.param.nfc-function' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
127                                                     <parameter name='ss.param.nfc-function-index' value='`$bidx`' />\r
128                                                 </set>\r
129                                             </outcome>\r
130                                             <outcome value='vnfc-model-customization-uuid'>\r
131                                                 <set>\r
132                                                     <parameter name='ss.param.vnfc-model-customization-uuid' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
133                                                     <parameter name='ss.param.vnfc-model-customization-uuid-index' value='`$bidx`' />\r
134                                                 </set>\r
135                                             </outcome>\r
136                                             <outcome value='vnfc-model-invariant-uuid'>\r
137                                                 <set>\r
138                                                     <parameter name='ss.param.vnfc-model-invariant-uuid' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
139                                                     <parameter name='ss.param.vnfc-model-invariant-uuid-index' value='`$bidx`' />\r
140                                                 </set>\r
141                                             </outcome>\r
142                                             <outcome value='vnfc-model-version'>\r
143                                                 <set>\r
144                                                     <parameter name='ss.param.vnfc-model-version' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
145                                                     <parameter name='ss.param.vnfc-model-version-index' value='`$bidx`' />\r
146                                                 </set>\r
147                                             </outcome>\r
148                                             <outcome value='as-number'>\r
149                                                 <set>\r
150                                                     <parameter name='ss.param.as-number' value ='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
151                                                     <parameter name='ss.param.as-number-index' value='`$bidx`' />\r
152                                                 </set>\r
153                                             </outcome>\r
154                                             <outcome value='vlan-id-outer'>\r
155                                                 <set>\r
156                                                     <parameter name='ss.param.vlan-id-outer' value ='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
157                                                     <parameter name='ss.param.vlan-id-outer-index' value='`$bidx`' />\r
158                                                 </set>\r
159                                             </outcome>\r
160                                             <outcome value='availability_zone_0'>\r
161                                                 <set>\r
162                                                     <parameter name='ss.param.availability-zone-0' value ='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
163                                                     <parameter name='ss.param.availability-zone-0-index' value='`$bidx`' />\r
164                                                 </set>\r
165                                             </outcome>\r
166                                             <outcome value='aai-vf-module-put'>\r
167                                                 <block>\r
168                                                     <set>\r
169                                                         <parameter name='ss.param.aai-vf-module-put-index' value='`$bidx`' />\r
170                                                     </set>\r
171                                                     <for silentFailure='true' index="kidx" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key_length`">\r
172                                                         <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key[$kidx].name`'>\r
173                                                             <outcome value='generic-vnf'>\r
174                                                                 <set>\r
175                                                                     <parameter name='ss.resource-key.generic-vnf' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key[$kidx].value`' />\r
176                                                                 </set>\r
177                                                             </outcome>\r
178                                                             <outcome value='vf-module'>\r
179                                                                 <set>\r
180                                                                     <parameter name='ss.resource-key.vf-module' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key[$kidx].value`' />\r
181                                                                 </set>\r
182                                                             </outcome>\r
183                                                             <outcome value='volume-group'>\r
184                                                                 <set>\r
185                                                                     <parameter name='ss.resource-key.volume-group' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key[$kidx].value`' />\r
186                                                                 </set>\r
187                                                             </outcome>\r
188                                                             <outcome value='vnfc'>\r
189                                                                 <set>\r
190                                                                     <parameter name='ss.resource-key.vnfc' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key[$kidx].value`' />\r
191                                                                 </set>\r
192                                                             </outcome>\r
193                                                             <outcome value='connection-points'>\r
194                                                                 <set>\r
195                                                                     <parameter name='ss.resource-key.connection-points' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key[$kidx].value`' />\r
196                                                                 </set>\r
197                                                             </outcome>\r
198                                                             <outcome value='l-interface'>\r
199                                                                 <set>\r
200                                                                     <parameter name='ss.resource-key.l-interface' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key[$kidx].value`' />\r
201                                                                 </set>\r
202                                                             </outcome>\r
203                                                             <outcome value='l3-netework'>\r
204                                                                 <set>\r
205                                                                     <parameter name='ss.resource-key.l3-network' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key[$kidx].value`' />\r
206                                                                 </set>\r
207                                                             </outcome>\r
208                                                         </switch>\r
209                                                     </for>\r
210                                                 </block>\r
211                                             </outcome>\r
212                                         </switch>\r
213                                     </outcome>\r
214                                 </execute>\r
215                             </for>\r
216                             <set>\r
217                                 <parameter name='ss.param.vnf-id' value ='`$service-data.vnfs.vnf[$vnf-index].vnf-id`' />\r
218                             </set>\r
219                         </block>\r
220                         <switch test="`$ss.resource-key.generic-vnf`">\r
221                             <outcome value='generic-vnf'>\r
222                                 <block atomic='true'>\r
223                                     <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
224         resource="generic-vnf"\r
225                 key="generic-vnf.vnf-id = $ss.param.vnf-id "\r
226         pfx="tmp.aai.vnf" >\r
227                                         <outcome value='failure'>\r
228                                             <block atomic='true'>\r
229                                                 <set>\r
230                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.param.aai-vnf-put-index].resource-resolution-data.status' \r
231         value='FAILED' />\r
232                                                 </set>\r
233                                                 <return status='failure'>\r
234                                                     <parameter name='error-code' value='500' />\r
235                                                     <parameter name='error-message' value="`'Encountered error to get generic-vnf with vnf-id=' + $ss.param.vnf-id + ' from AnAI'`" />\r
236                                                 </return>\r
237                                             </block>\r
238                                         </outcome>\r
239                                         <outcome value='not-found'>\r
240                                             <block atomic='true'>\r
241                                                 <set>\r
242                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.param.aai-vnf-put-index].resource-resolution-data.status' \r
243         value='FAILED' />\r
244                                                 </set>\r
245                                                 <return status='failure'>\r
246                                                     <parameter name='error-code' value='500' />\r
247                                                     <parameter name='error-message' value="`'generic-vnf.vnf-name with vnf-id=' + $ss.param.vnf-id + ' not found in AAI. '`" />\r
248                                                 </return>\r
249                                             </block>\r
250                                         </outcome>\r
251                                     </get-resource>\r
252                                     <switch test="`$ss.param.ipv4-loopback0-address != ''`">\r
253                                         <outcome value='true'>\r
254                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >\r
255                                                 <parameter name='source' value='`$ss.param.ipv4-loopback0-address`' />\r
256                                                 <parameter name='target' value='$' />\r
257                                                 <outcome value='true'>\r
258                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
259                                                         <parameter name="logger" value="message-log"/>\r
260                                                         <parameter name="field1" value="__TIMESTAMP__"/>\r
261                                                         <parameter name="field2" value="`'ss.param.ipv4-loopback0-address = ' + $ss.param.ipv4-loopback0-address`"/>\r
262                                                         <parameter name="field3" value="__SKIP ipv4-loopback0-address update for generic-vnf in AnAI__"/>\r
263                                                     </record>\r
264                                                 </outcome>\r
265                                                 <outcome value='false'>\r
266                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
267         resource="generic-vnf"\r
268                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
269                                                         <parameter name="ipv4-loopback0-address" value='`$ss.param.ipv4-loopback0-address`' />\r
270                                                         <outcome value='failure'>\r
271                                                             <return status='failure'>\r
272                                                                 <parameter name='error-code' value='500' />\r
273                                                                 <parameter name='error-message' value="`'Failed to update generic-vnf.ipv4-loopback0-address in AnAI with ipv4-loopback0-address=' + $ss.param.ipv4-loopback0-address + '; ' + $error-message`" />\r
274                                                             </return>\r
275                                                         </outcome>\r
276                                                         <outcome value='not-found'>\r
277                                                             <return status='failure'>\r
278                                                                 <parameter name='error-code' value='500' />\r
279                                                                 <parameter name='error-message' value="`'Failed to update generic-vnf because vnf-id =' + $ss.param.vnf-id + ' is not found in AAI. ' + $error-message`" />\r
280                                                             </return>\r
281                                                         </outcome>\r
282                                                         <outcome value='success'>\r
283                                                             <set>\r
284                                                                 <parameter name='ss.ipv4-loopback0-address-updated' value='true' />\r
285                                                             </set>\r
286                                                         </outcome>\r
287                                                     </update>\r
288                                                 </outcome>\r
289                                             </execute>\r
290                                         </outcome>\r
291                                     </switch>\r
292                                     <switch test="`$ss.param.ipv4-oam-address != ''`">\r
293                                         <outcome value='true'>\r
294                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >\r
295                                                 <parameter name='source' value='`$ss.param.ipv4-oam-address`' />\r
296                                                 <parameter name='target' value='$' />\r
297                                                 <outcome value='true'>\r
298                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
299                                                         <parameter name="logger" value="message-log"/>\r
300                                                         <parameter name="field1" value="__TIMESTAMP__"/>\r
301                                                         <parameter name="field2" value="`'ss.param.ipv4-oam-address = ' + $ss.param.ipv4-oam-address`"/>\r
302                                                         <parameter name="field3" value="__SKIP ipv4-oam-address update for generic-vnf in AnAI__"/>\r
303                                                     </record>\r
304                                                 </outcome>\r
305                                                 <outcome value='false'>\r
306                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
307         resource="generic-vnf"\r
308                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
309                                                         <parameter name="ipv4-oam-address" value='`$ss.param.ipv4-oam-address`' />\r
310                                                         <outcome value='failure'>\r
311                                                             <block atomic='true'>\r
312                                                                 <block>\r
313                                                                     <switch test="`$ss.ipv4-loopback0-address-updated`">\r
314                                                                         <outcome value='true'>\r
315                                                                             <block>\r
316                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
317                                                                                     <parameter name="logger" value="message-log"/>\r
318                                                                                     <parameter name="field1" value="ROLLBACK generic-vnf.ipv4-loopback0-address update"/>\r
319                                                                                 </record>\r
320                                                                                 <set>\r
321                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
322         value='FAILED' />\r
323                                                                                 </set>\r
324                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
325         resource="generic-vnf"\r
326                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
327                                                                                     <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
328                                                                                     <outcome value='failure'>\r
329                                                                                         <set>\r
330                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.ipv4-loopback0-address update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
331                                                                                         </set>\r
332                                                                                     </outcome>\r
333                                                                                     <outcome value='not-found'>\r
334                                                                                         <set>\r
335                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
336                                                                                         </set>\r
337                                                                                     </outcome>\r
338                                                                                     <outcome value='success'>\r
339                                                                                         <set>\r
340                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.ipv4-loopback0-address update completed. '`" />\r
341                                                                                         </set>\r
342                                                                                     </outcome>\r
343                                                                                 </update>\r
344                                                                             </block>\r
345                                                                         </outcome>\r
346                                                                     </switch>\r
347                                                                 </block>\r
348                                                                 <return status='failure'>\r
349                                                                     <parameter name='error-code' value='500' />\r
350                                                                     <parameter name='error-message' value="`'Failed to update generic-vnf.ipv4-oam-address in AnAI with ipv4-oam-address=' + $ss.param.ipv4-oam-address + '; ' + $error-message`" />\r
351                                                                 </return>\r
352                                                             </block>\r
353                                                         </outcome>\r
354                                                         <outcome value='not-found'>\r
355                                                             <block atomic='true'>\r
356                                                                 <block>\r
357                                                                     <switch test="`$ss.ipv4-loopback0-address-updated`">\r
358                                                                         <outcome value='true'>\r
359                                                                             <block>\r
360                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
361                                                                                     <parameter name="logger" value="message-log"/>\r
362                                                                                     <parameter name="field1" value="ROLLBACK generic-vnf.ipv4-loopback0-address update"/>\r
363                                                                                 </record>\r
364                                                                                 <set>\r
365                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
366         value='FAILED' />\r
367                                                                                 </set>\r
368                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
369         resource="generic-vnf"\r
370                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
371                                                                                     <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
372                                                                                     <outcome value='failure'>\r
373                                                                                         <set>\r
374                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.ipv4-loopback0-address update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
375                                                                                         </set>\r
376                                                                                     </outcome>\r
377                                                                                     <outcome value='not-found'>\r
378                                                                                         <set>\r
379                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
380                                                                                         </set>\r
381                                                                                     </outcome>\r
382                                                                                     <outcome value='success'>\r
383                                                                                         <set>\r
384                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.ipv4-loopback0-address update completed. '`" />\r
385                                                                                         </set>\r
386                                                                                     </outcome>\r
387                                                                                 </update>\r
388                                                                             </block>\r
389                                                                         </outcome>\r
390                                                                     </switch>\r
391                                                                 </block>\r
392                                                                 <return status='failure'>\r
393                                                                     <parameter name='error-code' value='500' />\r
394                                                                     <parameter name='error-message' value="`'Failed to update generic-vnf because vnf-id =' + $ss.param.vnf-id + ' is not found in AAI' + '; ' + $error-message`" />\r
395                                                                 </return>\r
396                                                             </block>\r
397                                                         </outcome>\r
398                                                         <outcome value='success'>\r
399                                                             <set>\r
400                                                                 <parameter name='ss.ipv4-oam-address-updated' value='true' />\r
401                                                             </set>\r
402                                                         </outcome>\r
403                                                     </update>\r
404                                                 </outcome>\r
405                                             </execute>\r
406                                         </outcome>\r
407                                     </switch>\r
408                                     <switch test="`$ss.param.as-number != ''`">\r
409                                         <outcome value='true'>\r
410                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >\r
411                                                 <parameter name='source' value='`$ss.param.as-number`' />\r
412                                                 <parameter name='target' value='$' />\r
413                                                 <outcome value='true'>\r
414                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
415                                                         <parameter name="logger" value="message-log"/>\r
416                                                         <parameter name="field1" value="__TIMESTAMP__"/>\r
417                                                         <parameter name="field2" value="`'ss.param.as-number = ' + $ss.param.as-number`"/>\r
418                                                         <parameter name="field3" value="__SKIP as-number update for generic-vnf in AnAI__"/>\r
419                                                     </record>\r
420                                                 </outcome>\r
421                                                 <outcome value='false'>\r
422                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
423         resource="generic-vnf"\r
424                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
425                                                         <parameter name="as-number" value='`$ss.param.as-number`' />\r
426                                                         <outcome value='failure'>\r
427                                                             <block atomic='true'>\r
428                                                                 <block>\r
429                                                                     <block>\r
430                                                                         <switch test="`$ss.ipv4-loopback0-address-updated`">\r
431                                                                             <outcome value='true'>\r
432                                                                                 <block>\r
433                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
434                                                                                         <parameter name="logger" value="message-log"/>\r
435                                                                                         <parameter name="field1" value="ROLLBACK generic-vnf.ipv4-loopback0-address update"/>\r
436                                                                                     </record>\r
437                                                                                     <set>\r
438                                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
439         value='FAILED' />\r
440                                                                                     </set>\r
441                                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
442         resource="generic-vnf"\r
443                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
444                                                                                         <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
445                                                                                         <outcome value='failure'>\r
446                                                                                             <set>\r
447                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.ipv4-loopback0-address update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
448                                                                                             </set>\r
449                                                                                         </outcome>\r
450                                                                                         <outcome value='not-found'>\r
451                                                                                             <set>\r
452                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
453                                                                                             </set>\r
454                                                                                         </outcome>\r
455                                                                                         <outcome value='success'>\r
456                                                                                             <set>\r
457                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.ipv4-loopback0-address update completed. '`" />\r
458                                                                                             </set>\r
459                                                                                         </outcome>\r
460                                                                                     </update>\r
461                                                                                 </block>\r
462                                                                             </outcome>\r
463                                                                         </switch>\r
464                                                                     </block>\r
465                                                                     <switch test="`$ss.ipv4-oam-address-updated`">\r
466                                                                         <outcome value='true'>\r
467                                                                             <block atomic='true'>\r
468                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
469                                                                                     <parameter name="logger" value="message-log"/>\r
470                                                                                     <parameter name="field1" value="ROLLBACK generic-vnf.ipv4-oam-address update"/>\r
471                                                                                 </record>\r
472                                                                                 <set>\r
473                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
474         value='FAILED' />\r
475                                                                                 </set>\r
476                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
477         resource="generic-vnf"\r
478                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
479                                                                                     <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
480                                                                                     <outcome value='failure'>\r
481                                                                                         <set>\r
482                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.ipv4-oam-address update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
483                                                                                         </set>\r
484                                                                                     </outcome>\r
485                                                                                     <outcome value='not-found'>\r
486                                                                                         <set>\r
487                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
488                                                                                         </set>\r
489                                                                                     </outcome>\r
490                                                                                     <outcome value='success'>\r
491                                                                                         <set>\r
492                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.ipv4-oam-address update completed. '`" />\r
493                                                                                         </set>\r
494                                                                                     </outcome>\r
495                                                                                 </update>\r
496                                                                             </block>\r
497                                                                         </outcome>\r
498                                                                     </switch>\r
499                                                                 </block>\r
500                                                                 <return status='failure'>\r
501                                                                     <parameter name='error-code' value='500' />\r
502                                                                     <parameter name='error-message' value="`'Failed to update generic-vnf.as-number in AnAI with as-number=' + $ss.param.as-number + '; ' + $error-message`" />\r
503                                                                 </return>\r
504                                                             </block>\r
505                                                         </outcome>\r
506                                                         <outcome value='not-found'>\r
507                                                             <block atomic='true'>\r
508                                                                 <block>\r
509                                                                     <block>\r
510                                                                         <switch test="`$ss.ipv4-loopback0-address-updated`">\r
511                                                                             <outcome value='true'>\r
512                                                                                 <block>\r
513                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
514                                                                                         <parameter name="logger" value="message-log"/>\r
515                                                                                         <parameter name="field1" value="ROLLBACK generic-vnf.ipv4-loopback0-address update"/>\r
516                                                                                     </record>\r
517                                                                                     <set>\r
518                                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
519         value='FAILED' />\r
520                                                                                     </set>\r
521                                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
522         resource="generic-vnf"\r
523                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
524                                                                                         <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
525                                                                                         <outcome value='failure'>\r
526                                                                                             <set>\r
527                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.ipv4-loopback0-address update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
528                                                                                             </set>\r
529                                                                                         </outcome>\r
530                                                                                         <outcome value='not-found'>\r
531                                                                                             <set>\r
532                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
533                                                                                             </set>\r
534                                                                                         </outcome>\r
535                                                                                         <outcome value='success'>\r
536                                                                                             <set>\r
537                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.ipv4-loopback0-address update completed. '`" />\r
538                                                                                             </set>\r
539                                                                                         </outcome>\r
540                                                                                     </update>\r
541                                                                                 </block>\r
542                                                                             </outcome>\r
543                                                                         </switch>\r
544                                                                     </block>\r
545                                                                     <switch test="`$ss.ipv4-oam-address-updated`">\r
546                                                                         <outcome value='true'>\r
547                                                                             <block atomic='true'>\r
548                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
549                                                                                     <parameter name="logger" value="message-log"/>\r
550                                                                                     <parameter name="field1" value="ROLLBACK generic-vnf.ipv4-oam-address update"/>\r
551                                                                                 </record>\r
552                                                                                 <set>\r
553                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
554         value='FAILED' />\r
555                                                                                 </set>\r
556                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
557         resource="generic-vnf"\r
558                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
559                                                                                     <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
560                                                                                     <outcome value='failure'>\r
561                                                                                         <set>\r
562                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.ipv4-oam-address update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
563                                                                                         </set>\r
564                                                                                     </outcome>\r
565                                                                                     <outcome value='not-found'>\r
566                                                                                         <set>\r
567                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
568                                                                                         </set>\r
569                                                                                     </outcome>\r
570                                                                                     <outcome value='success'>\r
571                                                                                         <set>\r
572                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.ipv4-oam-address update completed. '`" />\r
573                                                                                         </set>\r
574                                                                                     </outcome>\r
575                                                                                 </update>\r
576                                                                             </block>\r
577                                                                         </outcome>\r
578                                                                     </switch>\r
579                                                                 </block>\r
580                                                                 <return status='failure'>\r
581                                                                     <parameter name='error-code' value='500' />\r
582                                                                     <parameter name='error-message' value="`'Failed to update generic-vnf because vnf-id =' + $ss.param.vnf-id + ' is not found in AAI. ' + $error-message`" />\r
583                                                                 </return>\r
584                                                             </block>\r
585                                                         </outcome>\r
586                                                         <outcome value='success'>\r
587                                                             <set>\r
588                                                                 <parameter name='ss.as-number-updated' value='true' />\r
589                                                             </set>\r
590                                                         </outcome>\r
591                                                     </update>\r
592                                                 </outcome>\r
593                                             </execute>\r
594                                         </outcome>\r
595                                     </switch>\r
596                                     <switch test="`$ss.param.vlan-id-outer != ''`">\r
597                                         <outcome value='true'>\r
598                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >\r
599                                                 <parameter name='source' value='`$ss.param.vlan-id-outer`' />\r
600                                                 <parameter name='target' value='$' />\r
601                                                 <outcome value='true'>\r
602                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
603                                                         <parameter name="logger" value="message-log"/>\r
604                                                         <parameter name="field1" value="__TIMESTAMP__"/>\r
605                                                         <parameter name="field2" value="`'ss.param.vlan-id-outer = ' + $ss.param.vlan-id-outer`"/>\r
606                                                         <parameter name="field3" value="__SKIP vlan-id-outer update for generic-vnf in AnAI__"/>\r
607                                                     </record>\r
608                                                 </outcome>\r
609                                                 <outcome value='false'>\r
610                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
611         resource="generic-vnf"\r
612                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
613                                                         <parameter name="vlan-id-outer" value='`$ss.param.vlan-id-outer`' />\r
614                                                         <outcome value='failure'>\r
615                                                             <block atomic='true'>\r
616                                                                 <block>\r
617                                                                     <block>\r
618                                                                         <block>\r
619                                                                             <switch test="`$ss.ipv4-loopback0-address-updated`">\r
620                                                                                 <outcome value='true'>\r
621                                                                                     <block>\r
622                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
623                                                                                             <parameter name="logger" value="message-log"/>\r
624                                                                                             <parameter name="field1" value="ROLLBACK generic-vnf.ipv4-loopback0-address update"/>\r
625                                                                                         </record>\r
626                                                                                         <set>\r
627                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
628         value='FAILED' />\r
629                                                                                         </set>\r
630                                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
631         resource="generic-vnf"\r
632                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
633                                                                                             <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
634                                                                                             <outcome value='failure'>\r
635                                                                                                 <set>\r
636                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.ipv4-loopback0-address update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
637                                                                                                 </set>\r
638                                                                                             </outcome>\r
639                                                                                             <outcome value='not-found'>\r
640                                                                                                 <set>\r
641                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
642                                                                                                 </set>\r
643                                                                                             </outcome>\r
644                                                                                             <outcome value='success'>\r
645                                                                                                 <set>\r
646                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.ipv4-loopback0-address update completed. '`" />\r
647                                                                                                 </set>\r
648                                                                                             </outcome>\r
649                                                                                         </update>\r
650                                                                                     </block>\r
651                                                                                 </outcome>\r
652                                                                             </switch>\r
653                                                                         </block>\r
654                                                                         <switch test="`$ss.ipv4-oam-address-updated`">\r
655                                                                             <outcome value='true'>\r
656                                                                                 <block atomic='true'>\r
657                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
658                                                                                         <parameter name="logger" value="message-log"/>\r
659                                                                                         <parameter name="field1" value="ROLLBACK generic-vnf.ipv4-oam-address update"/>\r
660                                                                                     </record>\r
661                                                                                     <set>\r
662                                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
663         value='FAILED' />\r
664                                                                                     </set>\r
665                                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
666         resource="generic-vnf"\r
667                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
668                                                                                         <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
669                                                                                         <outcome value='failure'>\r
670                                                                                             <set>\r
671                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.ipv4-oam-address update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
672                                                                                             </set>\r
673                                                                                         </outcome>\r
674                                                                                         <outcome value='not-found'>\r
675                                                                                             <set>\r
676                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
677                                                                                             </set>\r
678                                                                                         </outcome>\r
679                                                                                         <outcome value='success'>\r
680                                                                                             <set>\r
681                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.ipv4-oam-address update completed. '`" />\r
682                                                                                             </set>\r
683                                                                                         </outcome>\r
684                                                                                     </update>\r
685                                                                                 </block>\r
686                                                                             </outcome>\r
687                                                                         </switch>\r
688                                                                     </block>\r
689                                                                     <switch test="`$ss.as-number-updated`">\r
690                                                                         <outcome value='true'>\r
691                                                                             <block>\r
692                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
693                                                                                     <parameter name="logger" value="message-log"/>\r
694                                                                                     <parameter name="field1" value="ROLLBACK generic-vnf.as-number update"/>\r
695                                                                                 </record>\r
696                                                                                 <set>\r
697                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
698         value='FAILED' />\r
699                                                                                 </set>\r
700                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
701         resource="generic-vnf"\r
702                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
703                                                                                     <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
704                                                                                     <outcome value='failure'>\r
705                                                                                         <set>\r
706                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.as-number update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
707                                                                                         </set>\r
708                                                                                     </outcome>\r
709                                                                                     <outcome value='not-found'>\r
710                                                                                         <set>\r
711                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
712                                                                                         </set>\r
713                                                                                     </outcome>\r
714                                                                                     <outcome value='success'>\r
715                                                                                         <set>\r
716                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.as-number update completed. '`" />\r
717                                                                                         </set>\r
718                                                                                     </outcome>\r
719                                                                                 </update>\r
720                                                                             </block>\r
721                                                                         </outcome>\r
722                                                                     </switch>\r
723                                                                 </block>\r
724                                                                 <return status='failure'>\r
725                                                                     <parameter name='error-code' value='500' />\r
726                                                                     <parameter name='error-message' value="`'Failed to update generic-vnf.vlan-id-outer in AnAI with as-number=' + $ss.param.as-number  + '; ' + $error-message`" />\r
727                                                                 </return>\r
728                                                             </block>\r
729                                                         </outcome>\r
730                                                         <outcome value='not-found'>\r
731                                                             <block atomic='true'>\r
732                                                                 <block>\r
733                                                                     <block>\r
734                                                                         <block>\r
735                                                                             <switch test="`$ss.ipv4-loopback0-address-updated`">\r
736                                                                                 <outcome value='true'>\r
737                                                                                     <block>\r
738                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
739                                                                                             <parameter name="logger" value="message-log"/>\r
740                                                                                             <parameter name="field1" value="ROLLBACK generic-vnf.ipv4-loopback0-address update"/>\r
741                                                                                         </record>\r
742                                                                                         <set>\r
743                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
744         value='FAILED' />\r
745                                                                                         </set>\r
746                                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
747         resource="generic-vnf"\r
748                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
749                                                                                             <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
750                                                                                             <outcome value='failure'>\r
751                                                                                                 <set>\r
752                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.ipv4-loopback0-address update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
753                                                                                                 </set>\r
754                                                                                             </outcome>\r
755                                                                                             <outcome value='not-found'>\r
756                                                                                                 <set>\r
757                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
758                                                                                                 </set>\r
759                                                                                             </outcome>\r
760                                                                                             <outcome value='success'>\r
761                                                                                                 <set>\r
762                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.ipv4-loopback0-address update completed. '`" />\r
763                                                                                                 </set>\r
764                                                                                             </outcome>\r
765                                                                                         </update>\r
766                                                                                     </block>\r
767                                                                                 </outcome>\r
768                                                                             </switch>\r
769                                                                         </block>\r
770                                                                         <switch test="`$ss.ipv4-oam-address-updated`">\r
771                                                                             <outcome value='true'>\r
772                                                                                 <block atomic='true'>\r
773                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
774                                                                                         <parameter name="logger" value="message-log"/>\r
775                                                                                         <parameter name="field1" value="ROLLBACK generic-vnf.ipv4-oam-address update"/>\r
776                                                                                     </record>\r
777                                                                                     <set>\r
778                                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
779         value='FAILED' />\r
780                                                                                     </set>\r
781                                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
782         resource="generic-vnf"\r
783                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
784                                                                                         <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
785                                                                                         <outcome value='failure'>\r
786                                                                                             <set>\r
787                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.ipv4-oam-address update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
788                                                                                             </set>\r
789                                                                                         </outcome>\r
790                                                                                         <outcome value='not-found'>\r
791                                                                                             <set>\r
792                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
793                                                                                             </set>\r
794                                                                                         </outcome>\r
795                                                                                         <outcome value='success'>\r
796                                                                                             <set>\r
797                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.ipv4-oam-address update completed. '`" />\r
798                                                                                             </set>\r
799                                                                                         </outcome>\r
800                                                                                     </update>\r
801                                                                                 </block>\r
802                                                                             </outcome>\r
803                                                                         </switch>\r
804                                                                     </block>\r
805                                                                     <switch test="`$ss.as-number-updated`">\r
806                                                                         <outcome value='true'>\r
807                                                                             <block>\r
808                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
809                                                                                     <parameter name="logger" value="message-log"/>\r
810                                                                                     <parameter name="field1" value="ROLLBACK generic-vnf.as-number update"/>\r
811                                                                                 </record>\r
812                                                                                 <set>\r
813                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
814         value='FAILED' />\r
815                                                                                 </set>\r
816                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
817         resource="generic-vnf"\r
818                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
819                                                                                     <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
820                                                                                     <outcome value='failure'>\r
821                                                                                         <set>\r
822                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.as-number update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
823                                                                                         </set>\r
824                                                                                     </outcome>\r
825                                                                                     <outcome value='not-found'>\r
826                                                                                         <set>\r
827                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
828                                                                                         </set>\r
829                                                                                     </outcome>\r
830                                                                                     <outcome value='success'>\r
831                                                                                         <set>\r
832                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.as-number update completed. '`" />\r
833                                                                                         </set>\r
834                                                                                     </outcome>\r
835                                                                                 </update>\r
836                                                                             </block>\r
837                                                                         </outcome>\r
838                                                                     </switch>\r
839                                                                 </block>\r
840                                                                 <return status='failure'>\r
841                                                                     <parameter name='error-code' value='500' />\r
842                                                                     <parameter name='error-message' value="`'Failed to update generic-vnf because vnf-id =' + $ss.param.vnf-id + ' is not found in AAI. ' + $error-message`" />\r
843                                                                 </return>\r
844                                                             </block>\r
845                                                         </outcome>\r
846                                                         <outcome value='success'>\r
847                                                             <set>\r
848                                                                 <parameter name='ss.vlan-id-outer-updated' value='true' />\r
849                                                             </set>\r
850                                                         </outcome>\r
851                                                     </update>\r
852                                                 </outcome>\r
853                                             </execute>\r
854                                         </outcome>\r
855                                     </switch>\r
856                                     <switch test="`$ss.param.availability-zone-0 != ''`">\r
857                                         <outcome value='true'>\r
858                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >\r
859                                                 <parameter name='source' value='`$ss.param.availability-zone-0`' />\r
860                                                 <parameter name='target' value='$' />\r
861                                                 <outcome value='true'>\r
862                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
863                                                         <parameter name="logger" value="message-log"/>\r
864                                                         <parameter name="field1" value="__TIMESTAMP__"/>\r
865                                                         <parameter name="field2" value="`'ss.param.availability-zone-0 = ' + $ss.param.availability-zone-0`"/>\r
866                                                         <parameter name="field3" value="__SKIP availability-zone-0 update for generic-vnf in AnAI__"/>\r
867                                                     </record>\r
868                                                 </outcome>\r
869                                                 <outcome value='false'>\r
870                                                     <block atomic='true'>\r
871                                                         <set>\r
872                                                             <parameter name='ss.availability-zone.related-link' \r
873         value="`'/aai/v$/cloud-infrastructure/cloud-regions/cloud-region/' + \r
874         $prop.cloud-region.cloud-owner + '/' + $ss.param.aic-cloud-region + \r
875         '/availability-zones/availability-zone/' + \r
876         $ss.param.availability-zone-0`" />\r
877                                                         </set>\r
878                                                         <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
879         resource="generic-vnf:relationship-list"\r
880                 key="generic-vnf.vnf-id = $ss.param.vnf-id" >\r
881                                                             <parameter name="relationship-list.relationship[0].related-to" value="availability-zone" />\r
882                                                             <parameter name="relationship-list.relationship[0].related-link" value="`$ss.availability-zone.related-link`" />\r
883                                                             <!--\r
884 <parameter name="relationship-list.relationship[0].related-to" value="availability-zone" /><parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="cloud-region.cloud-owner" /><parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$prop.cloud-region.cloud-owner`" /><parameter name="relationship-list.relationship[0].relationship-data[1].relationship-key" value="cloud-region.cloud-region-id" /><parameter name="relationship-list.relationship[0].relationship-data[1].relationship-value" value="`$ss.param.aic-cloud-region`" /><parameter name="relationship-list.relationship[0].relationship-data[2].relationship-key" value="availability-zone.availability-zone-name" /><parameter name="relationship-list.relationship[0].relationship-data[2].relationship-value" value="`$ss.param.availability-zone-0`" />\r
885 -->\r
886                                                             <outcome value='failure'>\r
887                                                                 <block atomic='true'>\r
888                                                                     <block>\r
889                                                                         <block>\r
890                                                                             <block>\r
891                                                                                 <block>\r
892                                                                                     <switch test="`$ss.ipv4-loopback0-address-updated`">\r
893                                                                                         <outcome value='true'>\r
894                                                                                             <block>\r
895                                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
896                                                                                                     <parameter name="logger" value="message-log"/>\r
897                                                                                                     <parameter name="field1" value="ROLLBACK generic-vnf.ipv4-loopback0-address update"/>\r
898                                                                                                 </record>\r
899                                                                                                 <set>\r
900                                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
901         value='FAILED' />\r
902                                                                                                 </set>\r
903                                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
904         resource="generic-vnf"\r
905                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
906                                                                                                     <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
907                                                                                                     <outcome value='failure'>\r
908                                                                                                         <set>\r
909                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.ipv4-loopback0-address update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
910                                                                                                         </set>\r
911                                                                                                     </outcome>\r
912                                                                                                     <outcome value='not-found'>\r
913                                                                                                         <set>\r
914                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
915                                                                                                         </set>\r
916                                                                                                     </outcome>\r
917                                                                                                     <outcome value='success'>\r
918                                                                                                         <set>\r
919                                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.ipv4-loopback0-address update completed. '`" />\r
920                                                                                                         </set>\r
921                                                                                                     </outcome>\r
922                                                                                                 </update>\r
923                                                                                             </block>\r
924                                                                                         </outcome>\r
925                                                                                     </switch>\r
926                                                                                 </block>\r
927                                                                                 <switch test="`$ss.ipv4-oam-address-updated`">\r
928                                                                                     <outcome value='true'>\r
929                                                                                         <block atomic='true'>\r
930                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
931                                                                                                 <parameter name="logger" value="message-log"/>\r
932                                                                                                 <parameter name="field1" value="ROLLBACK generic-vnf.ipv4-oam-address update"/>\r
933                                                                                             </record>\r
934                                                                                             <set>\r
935                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
936         value='FAILED' />\r
937                                                                                             </set>\r
938                                                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
939         resource="generic-vnf"\r
940                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
941                                                                                                 <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
942                                                                                                 <outcome value='failure'>\r
943                                                                                                     <set>\r
944                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.ipv4-oam-address update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
945                                                                                                     </set>\r
946                                                                                                 </outcome>\r
947                                                                                                 <outcome value='not-found'>\r
948                                                                                                     <set>\r
949                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
950                                                                                                     </set>\r
951                                                                                                 </outcome>\r
952                                                                                                 <outcome value='success'>\r
953                                                                                                     <set>\r
954                                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.ipv4-oam-address update completed. '`" />\r
955                                                                                                     </set>\r
956                                                                                                 </outcome>\r
957                                                                                             </update>\r
958                                                                                         </block>\r
959                                                                                     </outcome>\r
960                                                                                 </switch>\r
961                                                                             </block>\r
962                                                                             <switch test="`$ss.as-number-updated`">\r
963                                                                                 <outcome value='true'>\r
964                                                                                     <block>\r
965                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
966                                                                                             <parameter name="logger" value="message-log"/>\r
967                                                                                             <parameter name="field1" value="ROLLBACK generic-vnf.as-number update"/>\r
968                                                                                         </record>\r
969                                                                                         <set>\r
970                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
971         value='FAILED' />\r
972                                                                                         </set>\r
973                                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
974         resource="generic-vnf"\r
975                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
976                                                                                             <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
977                                                                                             <outcome value='failure'>\r
978                                                                                                 <set>\r
979                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.as-number update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
980                                                                                                 </set>\r
981                                                                                             </outcome>\r
982                                                                                             <outcome value='not-found'>\r
983                                                                                                 <set>\r
984                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
985                                                                                                 </set>\r
986                                                                                             </outcome>\r
987                                                                                             <outcome value='success'>\r
988                                                                                                 <set>\r
989                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.as-number update completed. '`" />\r
990                                                                                                 </set>\r
991                                                                                             </outcome>\r
992                                                                                         </update>\r
993                                                                                     </block>\r
994                                                                                 </outcome>\r
995                                                                             </switch>\r
996                                                                         </block>\r
997                                                                         <switch test="`$ss.vlan-id-outer-updated`">\r
998                                                                             <outcome value='true'>\r
999                                                                                 <block>\r
1000                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1001                                                                                         <parameter name="logger" value="message-log"/>\r
1002                                                                                         <parameter name="field1" value="ROLLBACK generic-vnf.vlan-id-outer update"/>\r
1003                                                                                     </record>\r
1004                                                                                     <set>\r
1005                                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
1006         value='FAILED' />\r
1007                                                                                     </set>\r
1008                                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1009         resource="generic-vnf"\r
1010                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
1011                                                                                         <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
1012                                                                                         <outcome value='failure'>\r
1013                                                                                             <set>\r
1014                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.vlan-id-outer update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1015                                                                                             </set>\r
1016                                                                                         </outcome>\r
1017                                                                                         <outcome value='not-found'>\r
1018                                                                                             <set>\r
1019                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1020                                                                                             </set>\r
1021                                                                                         </outcome>\r
1022                                                                                         <outcome value='success'>\r
1023                                                                                             <set>\r
1024                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.vlan-id-outer update completed. '`" />\r
1025                                                                                             </set>\r
1026                                                                                         </outcome>\r
1027                                                                                     </update>\r
1028                                                                                 </block>\r
1029                                                                             </outcome>\r
1030                                                                         </switch>\r
1031                                                                     </block>\r
1032                                                                     <return status='failure'>\r
1033                                                                         <parameter name='error-code' value='500' />\r
1034                                                                         <parameter name='error-message' value="`'Failed to save availability-zone relationship for generic-vnf in AnAI with availability-zone-name =' + $ss.param.as-number + '; ' + $error-message`" />\r
1035                                                                     </return>\r
1036                                                                 </block>\r
1037                                                             </outcome>\r
1038                                                             <outcome value='not-found'>\r
1039                                                                 <block atomic='true'>\r
1040                                                                     <block>\r
1041                                                                         <block>\r
1042                                                                             <block>\r
1043                                                                                 <block>\r
1044                                                                                     <switch test="`$ss.ipv4-loopback0-address-updated`">\r
1045                                                                                         <outcome value='true'>\r
1046                                                                                             <block>\r
1047                                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1048                                                                                                     <parameter name="logger" value="message-log"/>\r
1049                                                                                                     <parameter name="field1" value="ROLLBACK generic-vnf.ipv4-loopback0-address update"/>\r
1050                                                                                                 </record>\r
1051                                                                                                 <set>\r
1052                                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
1053         value='FAILED' />\r
1054                                                                                                 </set>\r
1055                                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1056         resource="generic-vnf"\r
1057                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
1058                                                                                                     <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
1059                                                                                                     <outcome value='failure'>\r
1060                                                                                                         <set>\r
1061                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.ipv4-loopback0-address update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1062                                                                                                         </set>\r
1063                                                                                                     </outcome>\r
1064                                                                                                     <outcome value='not-found'>\r
1065                                                                                                         <set>\r
1066                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1067                                                                                                         </set>\r
1068                                                                                                     </outcome>\r
1069                                                                                                     <outcome value='success'>\r
1070                                                                                                         <set>\r
1071                                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.ipv4-loopback0-address update completed. '`" />\r
1072                                                                                                         </set>\r
1073                                                                                                     </outcome>\r
1074                                                                                                 </update>\r
1075                                                                                             </block>\r
1076                                                                                         </outcome>\r
1077                                                                                     </switch>\r
1078                                                                                 </block>\r
1079                                                                                 <switch test="`$ss.ipv4-oam-address-updated`">\r
1080                                                                                     <outcome value='true'>\r
1081                                                                                         <block atomic='true'>\r
1082                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1083                                                                                                 <parameter name="logger" value="message-log"/>\r
1084                                                                                                 <parameter name="field1" value="ROLLBACK generic-vnf.ipv4-oam-address update"/>\r
1085                                                                                             </record>\r
1086                                                                                             <set>\r
1087                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
1088         value='FAILED' />\r
1089                                                                                             </set>\r
1090                                                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1091         resource="generic-vnf"\r
1092                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
1093                                                                                                 <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
1094                                                                                                 <outcome value='failure'>\r
1095                                                                                                     <set>\r
1096                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.ipv4-oam-address update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1097                                                                                                     </set>\r
1098                                                                                                 </outcome>\r
1099                                                                                                 <outcome value='not-found'>\r
1100                                                                                                     <set>\r
1101                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1102                                                                                                     </set>\r
1103                                                                                                 </outcome>\r
1104                                                                                                 <outcome value='success'>\r
1105                                                                                                     <set>\r
1106                                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.ipv4-oam-address update completed. '`" />\r
1107                                                                                                     </set>\r
1108                                                                                                 </outcome>\r
1109                                                                                             </update>\r
1110                                                                                         </block>\r
1111                                                                                     </outcome>\r
1112                                                                                 </switch>\r
1113                                                                             </block>\r
1114                                                                             <switch test="`$ss.as-number-updated`">\r
1115                                                                                 <outcome value='true'>\r
1116                                                                                     <block>\r
1117                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1118                                                                                             <parameter name="logger" value="message-log"/>\r
1119                                                                                             <parameter name="field1" value="ROLLBACK generic-vnf.as-number update"/>\r
1120                                                                                         </record>\r
1121                                                                                         <set>\r
1122                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
1123         value='FAILED' />\r
1124                                                                                         </set>\r
1125                                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1126         resource="generic-vnf"\r
1127                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
1128                                                                                             <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
1129                                                                                             <outcome value='failure'>\r
1130                                                                                                 <set>\r
1131                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.as-number update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1132                                                                                                 </set>\r
1133                                                                                             </outcome>\r
1134                                                                                             <outcome value='not-found'>\r
1135                                                                                                 <set>\r
1136                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1137                                                                                                 </set>\r
1138                                                                                             </outcome>\r
1139                                                                                             <outcome value='success'>\r
1140                                                                                                 <set>\r
1141                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.as-number update completed. '`" />\r
1142                                                                                                 </set>\r
1143                                                                                             </outcome>\r
1144                                                                                         </update>\r
1145                                                                                     </block>\r
1146                                                                                 </outcome>\r
1147                                                                             </switch>\r
1148                                                                         </block>\r
1149                                                                         <switch test="`$ss.vlan-id-outer-updated`">\r
1150                                                                             <outcome value='true'>\r
1151                                                                                 <block>\r
1152                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1153                                                                                         <parameter name="logger" value="message-log"/>\r
1154                                                                                         <parameter name="field1" value="ROLLBACK generic-vnf.vlan-id-outer update"/>\r
1155                                                                                     </record>\r
1156                                                                                     <set>\r
1157                                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
1158         value='FAILED' />\r
1159                                                                                     </set>\r
1160                                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1161         resource="generic-vnf"\r
1162                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
1163                                                                                         <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
1164                                                                                         <outcome value='failure'>\r
1165                                                                                             <set>\r
1166                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf.vlan-id-outer update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1167                                                                                             </set>\r
1168                                                                                         </outcome>\r
1169                                                                                         <outcome value='not-found'>\r
1170                                                                                             <set>\r
1171                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1172                                                                                             </set>\r
1173                                                                                         </outcome>\r
1174                                                                                         <outcome value='success'>\r
1175                                                                                             <set>\r
1176                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf.vlan-id-outer update completed. '`" />\r
1177                                                                                             </set>\r
1178                                                                                         </outcome>\r
1179                                                                                     </update>\r
1180                                                                                 </block>\r
1181                                                                             </outcome>\r
1182                                                                         </switch>\r
1183                                                                     </block>\r
1184                                                                     <return status='failure'>\r
1185                                                                         <parameter name='error-code' value='500' />\r
1186                                                                         <parameter name='error-message' value="`'Failed to create availability-zone relationship because generic-vnf with vnf-id =' + $ss.param.vnf-id + ' is not found in AAI. ' + $error-message`" />\r
1187                                                                     </return>\r
1188                                                                 </block>\r
1189                                                             </outcome>\r
1190                                                             <outcome value='success'>\r
1191                                                                 <set>\r
1192                                                                     <parameter name='ss.availability-zone-0-updated' value='true' />\r
1193                                                                 </set>\r
1194                                                             </outcome>\r
1195                                                         </save>\r
1196                                                     </block>\r
1197                                                 </outcome>\r
1198                                             </execute>\r
1199                                         </outcome>\r
1200                                     </switch>\r
1201                                 </block>\r
1202                             </outcome>\r
1203                         </switch>\r
1204                         <switch test="`$ss.resource-key.vf-module`">\r
1205                             <outcome value='vf-module'>\r
1206                                 <block atomic='true'>\r
1207                                     <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1208         resource="vf-module"\r
1209                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
1210                         AND vf-module.vf-module-id = $ss.param.vf-module-id "\r
1211         pfx="tmp.aai.vfmdoule" >\r
1212                                         <outcome value='failure'>\r
1213                                             <block atomic='true'>\r
1214                                                 <block>\r
1215                                                     <switch test="`$ss.resource-key.generic-vnf`">\r
1216                                                         <outcome value='generic-vnf'>\r
1217                                                             <block>\r
1218                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1219                                                                     <parameter name="logger" value="message-log"/>\r
1220                                                                     <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
1221                                                                 </record>\r
1222                                                                 <set>\r
1223                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
1224         value='FAILED' />\r
1225                                                                 </set>\r
1226                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1227         resource="generic-vnf"\r
1228                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
1229                                                                     <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
1230                                                                     <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
1231                                                                     <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
1232                                                                     <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
1233                                                                     <outcome value='failure'>\r
1234                                                                         <set>\r
1235                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1236                                                                         </set>\r
1237                                                                     </outcome>\r
1238                                                                     <outcome value='not-found'>\r
1239                                                                         <set>\r
1240                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1241                                                                         </set>\r
1242                                                                     </outcome>\r
1243                                                                     <outcome value='success'>\r
1244                                                                         <set>\r
1245                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
1246                                                                         </set>\r
1247                                                                     </outcome>\r
1248                                                                 </update>\r
1249                                                             </block>\r
1250                                                         </outcome>\r
1251                                                     </switch>\r
1252                                                 </block>\r
1253                                                 <return status='failure'>\r
1254                                                     <parameter name='error-code' value='500' />\r
1255                                                     <parameter name='error-message' value="`'Failed to get vf-module in AnAI with vf-module-id = ' + $ss.param.vf-module-id  + '; ' + $error-message`" />\r
1256                                                 </return>\r
1257                                             </block>\r
1258                                         </outcome>\r
1259                                         <outcome value='not-found'>\r
1260                                             <block atomic='true'>\r
1261                                                 <block>\r
1262                                                     <switch test="`$ss.resource-key.generic-vnf`">\r
1263                                                         <outcome value='generic-vnf'>\r
1264                                                             <block>\r
1265                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1266                                                                     <parameter name="logger" value="message-log"/>\r
1267                                                                     <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
1268                                                                 </record>\r
1269                                                                 <set>\r
1270                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
1271         value='FAILED' />\r
1272                                                                 </set>\r
1273                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1274         resource="generic-vnf"\r
1275                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
1276                                                                     <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
1277                                                                     <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
1278                                                                     <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
1279                                                                     <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
1280                                                                     <outcome value='failure'>\r
1281                                                                         <set>\r
1282                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1283                                                                         </set>\r
1284                                                                     </outcome>\r
1285                                                                     <outcome value='not-found'>\r
1286                                                                         <set>\r
1287                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1288                                                                         </set>\r
1289                                                                     </outcome>\r
1290                                                                     <outcome value='success'>\r
1291                                                                         <set>\r
1292                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
1293                                                                         </set>\r
1294                                                                     </outcome>\r
1295                                                                 </update>\r
1296                                                             </block>\r
1297                                                         </outcome>\r
1298                                                     </switch>\r
1299                                                 </block>\r
1300                                                 <return status='failure'>\r
1301                                                     <parameter name='error-code' value='500' />\r
1302                                                     <parameter name='error-message' value="`'vf-module not found in AnAI with vf-module-id=' + $ss.param.vf-module-id + $error-message`" />\r
1303                                                 </return>\r
1304                                             </block>\r
1305                                         </outcome>\r
1306                                     </get-resource>\r
1307                                     <set>\r
1308                                         <parameter name='ss.selflink' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/' + \r
1309 $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.service-information.service-instance-id + \r
1310 '/service-data/vnfs/vnf/' + \r
1311 $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vnf-information.vnf-id + \r
1312 '/vnf-data/vf-modules/vf-module/' + \r
1313 $ss.param.vf-module-id + \r
1314 '/vf-module-data/vf-module-topology/'`" />\r
1315                                     </set>\r
1316                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1317         resource="vf-module"\r
1318                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
1319                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
1320                                         <parameter name="vf-module-name" value='`$ss.param.vf-module-name`' />\r
1321                                         <parameter name="selflink" value='`$ss.selflink`' />\r
1322                                         <outcome value='failure'>\r
1323                                             <block atomic='true'>\r
1324                                                 <block>\r
1325                                                     <switch test="`$ss.resource-key.generic-vnf`">\r
1326                                                         <outcome value='generic-vnf'>\r
1327                                                             <block>\r
1328                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1329                                                                     <parameter name="logger" value="message-log"/>\r
1330                                                                     <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
1331                                                                 </record>\r
1332                                                                 <set>\r
1333                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
1334         value='FAILED' />\r
1335                                                                 </set>\r
1336                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1337         resource="generic-vnf"\r
1338                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
1339                                                                     <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
1340                                                                     <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
1341                                                                     <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
1342                                                                     <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
1343                                                                     <outcome value='failure'>\r
1344                                                                         <set>\r
1345                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1346                                                                         </set>\r
1347                                                                     </outcome>\r
1348                                                                     <outcome value='not-found'>\r
1349                                                                         <set>\r
1350                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1351                                                                         </set>\r
1352                                                                     </outcome>\r
1353                                                                     <outcome value='success'>\r
1354                                                                         <set>\r
1355                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
1356                                                                         </set>\r
1357                                                                     </outcome>\r
1358                                                                 </update>\r
1359                                                             </block>\r
1360                                                         </outcome>\r
1361                                                     </switch>\r
1362                                                 </block>\r
1363                                                 <return status='failure'>\r
1364                                                     <parameter name='error-code' value='500' />\r
1365                                                     <parameter name='error-message' value="`'Failed to update vf-module-name with vf-module-id = ' + $ss.param.vf-module-id + ' in AnAI; ' + $error-message`" />\r
1366                                                 </return>\r
1367                                             </block>\r
1368                                         </outcome>\r
1369                                         <outcome value='not-found'>\r
1370                                             <block atomic='true'>\r
1371                                                 <block>\r
1372                                                     <switch test="`$ss.resource-key.generic-vnf`">\r
1373                                                         <outcome value='generic-vnf'>\r
1374                                                             <block>\r
1375                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1376                                                                     <parameter name="logger" value="message-log"/>\r
1377                                                                     <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
1378                                                                 </record>\r
1379                                                                 <set>\r
1380                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
1381         value='FAILED' />\r
1382                                                                 </set>\r
1383                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1384         resource="generic-vnf"\r
1385                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
1386                                                                     <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
1387                                                                     <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
1388                                                                     <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
1389                                                                     <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
1390                                                                     <outcome value='failure'>\r
1391                                                                         <set>\r
1392                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1393                                                                         </set>\r
1394                                                                     </outcome>\r
1395                                                                     <outcome value='not-found'>\r
1396                                                                         <set>\r
1397                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1398                                                                         </set>\r
1399                                                                     </outcome>\r
1400                                                                     <outcome value='success'>\r
1401                                                                         <set>\r
1402                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
1403                                                                         </set>\r
1404                                                                     </outcome>\r
1405                                                                 </update>\r
1406                                                             </block>\r
1407                                                         </outcome>\r
1408                                                     </switch>\r
1409                                                 </block>\r
1410                                                 <return status='failure'>\r
1411                                                     <parameter name='error-code' value='500' />\r
1412                                                     <parameter name='error-message' value="`'Failed to update vf-module-name with vf-module-id =' + $ss.param.vf-module-id + ' because vf-module is not found in AAI' + $error-message`" />\r
1413                                                 </return>\r
1414                                             </block>\r
1415                                         </outcome>\r
1416                                     </update>\r
1417                                 </block>\r
1418                             </outcome>\r
1419                         </switch>\r
1420                         <switch test="`$ss.resource-key.volume-group`">\r
1421                             <outcome value='volume-group'>\r
1422                                 <block atomic='true'>\r
1423                                     <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1424         resource="volume-group"\r
1425                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
1426                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
1427                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
1428                         AND volume-group-id = $ss.param.volume-group-id" \r
1429         pfx="tmp.aai.volume-group" >\r
1430                                         <outcome value='failure'>\r
1431                                             <block atomic='true'>\r
1432                                                 <block>\r
1433                                                     <block>\r
1434                                                         <switch test="`$ss.resource-key.generic-vnf`">\r
1435                                                             <outcome value='generic-vnf'>\r
1436                                                                 <block>\r
1437                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1438                                                                         <parameter name="logger" value="message-log"/>\r
1439                                                                         <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
1440                                                                     </record>\r
1441                                                                     <set>\r
1442                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
1443         value='FAILED' />\r
1444                                                                     </set>\r
1445                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1446         resource="generic-vnf"\r
1447                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
1448                                                                         <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
1449                                                                         <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
1450                                                                         <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
1451                                                                         <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
1452                                                                         <outcome value='failure'>\r
1453                                                                             <set>\r
1454                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1455                                                                             </set>\r
1456                                                                         </outcome>\r
1457                                                                         <outcome value='not-found'>\r
1458                                                                             <set>\r
1459                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1460                                                                             </set>\r
1461                                                                         </outcome>\r
1462                                                                         <outcome value='success'>\r
1463                                                                             <set>\r
1464                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
1465                                                                             </set>\r
1466                                                                         </outcome>\r
1467                                                                     </update>\r
1468                                                                 </block>\r
1469                                                             </outcome>\r
1470                                                         </switch>\r
1471                                                     </block>\r
1472                                                     <switch test="`$ss.resource-key.vf-module`">\r
1473                                                         <outcome value='vf-module'>\r
1474                                                             <block>\r
1475                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1476                                                                     <parameter name="logger" value="message-log"/>\r
1477                                                                     <parameter name="field1" value="ROLLBACK vf-module update"/>\r
1478                                                                 </record>\r
1479                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1480         resource="vf-module"\r
1481                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
1482                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
1483                                                                     <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
1484                                                                     <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
1485                                                                     <outcome value='failure'>\r
1486                                                                         <set>\r
1487                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
1488                                                                         </set>\r
1489                                                                     </outcome>\r
1490                                                                     <outcome value='not-found'>\r
1491                                                                         <set>\r
1492                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
1493                                                                         </set>\r
1494                                                                     </outcome>\r
1495                                                                     <outcome value='success'>\r
1496                                                                         <set>\r
1497                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
1498                                                                         </set>\r
1499                                                                     </outcome>\r
1500                                                                 </update>\r
1501                                                             </block>\r
1502                                                         </outcome>\r
1503                                                     </switch>\r
1504                                                 </block>\r
1505                                                 <return status='failure'>\r
1506                                                     <parameter name='error-code' value='500' />\r
1507                                                     <parameter name='error-message' value="`'Failed to get volume-group in AnAI with volume-group-id = ' + $ss.param.volume-group-id  + '; ' + $error-message`" />\r
1508                                                 </return>\r
1509                                             </block>\r
1510                                         </outcome>\r
1511                                         <outcome value='not-found'>\r
1512                                             <block atomic='true'>\r
1513                                                 <block>\r
1514                                                     <block>\r
1515                                                         <switch test="`$ss.resource-key.generic-vnf`">\r
1516                                                             <outcome value='generic-vnf'>\r
1517                                                                 <block>\r
1518                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1519                                                                         <parameter name="logger" value="message-log"/>\r
1520                                                                         <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
1521                                                                     </record>\r
1522                                                                     <set>\r
1523                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
1524         value='FAILED' />\r
1525                                                                     </set>\r
1526                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1527         resource="generic-vnf"\r
1528                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
1529                                                                         <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
1530                                                                         <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
1531                                                                         <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
1532                                                                         <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
1533                                                                         <outcome value='failure'>\r
1534                                                                             <set>\r
1535                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1536                                                                             </set>\r
1537                                                                         </outcome>\r
1538                                                                         <outcome value='not-found'>\r
1539                                                                             <set>\r
1540                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1541                                                                             </set>\r
1542                                                                         </outcome>\r
1543                                                                         <outcome value='success'>\r
1544                                                                             <set>\r
1545                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
1546                                                                             </set>\r
1547                                                                         </outcome>\r
1548                                                                     </update>\r
1549                                                                 </block>\r
1550                                                             </outcome>\r
1551                                                         </switch>\r
1552                                                     </block>\r
1553                                                     <switch test="`$ss.resource-key.vf-module`">\r
1554                                                         <outcome value='vf-module'>\r
1555                                                             <block>\r
1556                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1557                                                                     <parameter name="logger" value="message-log"/>\r
1558                                                                     <parameter name="field1" value="ROLLBACK vf-module update"/>\r
1559                                                                 </record>\r
1560                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1561         resource="vf-module"\r
1562                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
1563                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
1564                                                                     <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
1565                                                                     <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
1566                                                                     <outcome value='failure'>\r
1567                                                                         <set>\r
1568                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
1569                                                                         </set>\r
1570                                                                     </outcome>\r
1571                                                                     <outcome value='not-found'>\r
1572                                                                         <set>\r
1573                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
1574                                                                         </set>\r
1575                                                                     </outcome>\r
1576                                                                     <outcome value='success'>\r
1577                                                                         <set>\r
1578                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
1579                                                                         </set>\r
1580                                                                     </outcome>\r
1581                                                                 </update>\r
1582                                                             </block>\r
1583                                                         </outcome>\r
1584                                                     </switch>\r
1585                                                 </block>\r
1586                                                 <return status='failure'>\r
1587                                                     <parameter name='error-code' value='500' />\r
1588                                                     <parameter name='error-message' value="`'volume-group not found in AnAI with volume-group-id=' + $ss.param.volume-group-id  + '; ' + $error-message`" />\r
1589                                                 </return>\r
1590                                             </block>\r
1591                                         </outcome>\r
1592                                     </get-resource>\r
1593                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1594         resource="volume-group"\r
1595                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
1596                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
1597                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
1598                         AND volume-group-id = $ss.param.volume-group-id" >\r
1599                                         <parameter name="volume-group-name" value='`$ss.param.volume-group-name`' />\r
1600                                         <parameter name="volume-group-id" value='`$ss.param.volume-group-id`' />\r
1601                                         <outcome value='failure'>\r
1602                                             <block atomic='true'>\r
1603                                                 <block>\r
1604                                                     <block>\r
1605                                                         <switch test="`$ss.resource-key.generic-vnf`">\r
1606                                                             <outcome value='generic-vnf'>\r
1607                                                                 <block>\r
1608                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1609                                                                         <parameter name="logger" value="message-log"/>\r
1610                                                                         <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
1611                                                                     </record>\r
1612                                                                     <set>\r
1613                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
1614         value='FAILED' />\r
1615                                                                     </set>\r
1616                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1617         resource="generic-vnf"\r
1618                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
1619                                                                         <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
1620                                                                         <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
1621                                                                         <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
1622                                                                         <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
1623                                                                         <outcome value='failure'>\r
1624                                                                             <set>\r
1625                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1626                                                                             </set>\r
1627                                                                         </outcome>\r
1628                                                                         <outcome value='not-found'>\r
1629                                                                             <set>\r
1630                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1631                                                                             </set>\r
1632                                                                         </outcome>\r
1633                                                                         <outcome value='success'>\r
1634                                                                             <set>\r
1635                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
1636                                                                             </set>\r
1637                                                                         </outcome>\r
1638                                                                     </update>\r
1639                                                                 </block>\r
1640                                                             </outcome>\r
1641                                                         </switch>\r
1642                                                     </block>\r
1643                                                     <switch test="`$ss.resource-key.vf-module`">\r
1644                                                         <outcome value='vf-module'>\r
1645                                                             <block>\r
1646                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1647                                                                     <parameter name="logger" value="message-log"/>\r
1648                                                                     <parameter name="field1" value="ROLLBACK vf-module update"/>\r
1649                                                                 </record>\r
1650                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1651         resource="vf-module"\r
1652                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
1653                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
1654                                                                     <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
1655                                                                     <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
1656                                                                     <outcome value='failure'>\r
1657                                                                         <set>\r
1658                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
1659                                                                         </set>\r
1660                                                                     </outcome>\r
1661                                                                     <outcome value='not-found'>\r
1662                                                                         <set>\r
1663                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
1664                                                                         </set>\r
1665                                                                     </outcome>\r
1666                                                                     <outcome value='success'>\r
1667                                                                         <set>\r
1668                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
1669                                                                         </set>\r
1670                                                                     </outcome>\r
1671                                                                 </update>\r
1672                                                             </block>\r
1673                                                         </outcome>\r
1674                                                     </switch>\r
1675                                                 </block>\r
1676                                                 <return status='failure'>\r
1677                                                     <parameter name='error-code' value='500' />\r
1678                                                     <parameter name='error-message' value="`' Failed to update volume-group with volume-group-id =' + $ss.param.volume-group-id + ' and volume-group-name = ' + $ss.param.volume-group-name + ' in AnAI.' + $error-message`" />\r
1679                                                 </return>\r
1680                                             </block>\r
1681                                         </outcome>\r
1682                                         <outcome value='not-found'>\r
1683                                             <block atomic='true'>\r
1684                                                 <block>\r
1685                                                     <block>\r
1686                                                         <switch test="`$ss.resource-key.generic-vnf`">\r
1687                                                             <outcome value='generic-vnf'>\r
1688                                                                 <block>\r
1689                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1690                                                                         <parameter name="logger" value="message-log"/>\r
1691                                                                         <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
1692                                                                     </record>\r
1693                                                                     <set>\r
1694                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
1695         value='FAILED' />\r
1696                                                                     </set>\r
1697                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1698         resource="generic-vnf"\r
1699                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
1700                                                                         <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
1701                                                                         <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
1702                                                                         <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
1703                                                                         <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
1704                                                                         <outcome value='failure'>\r
1705                                                                             <set>\r
1706                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1707                                                                             </set>\r
1708                                                                         </outcome>\r
1709                                                                         <outcome value='not-found'>\r
1710                                                                             <set>\r
1711                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1712                                                                             </set>\r
1713                                                                         </outcome>\r
1714                                                                         <outcome value='success'>\r
1715                                                                             <set>\r
1716                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
1717                                                                             </set>\r
1718                                                                         </outcome>\r
1719                                                                     </update>\r
1720                                                                 </block>\r
1721                                                             </outcome>\r
1722                                                         </switch>\r
1723                                                     </block>\r
1724                                                     <switch test="`$ss.resource-key.vf-module`">\r
1725                                                         <outcome value='vf-module'>\r
1726                                                             <block>\r
1727                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1728                                                                     <parameter name="logger" value="message-log"/>\r
1729                                                                     <parameter name="field1" value="ROLLBACK vf-module update"/>\r
1730                                                                 </record>\r
1731                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1732         resource="vf-module"\r
1733                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
1734                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
1735                                                                     <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
1736                                                                     <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
1737                                                                     <outcome value='failure'>\r
1738                                                                         <set>\r
1739                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
1740                                                                         </set>\r
1741                                                                     </outcome>\r
1742                                                                     <outcome value='not-found'>\r
1743                                                                         <set>\r
1744                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
1745                                                                         </set>\r
1746                                                                     </outcome>\r
1747                                                                     <outcome value='success'>\r
1748                                                                         <set>\r
1749                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
1750                                                                         </set>\r
1751                                                                     </outcome>\r
1752                                                                 </update>\r
1753                                                             </block>\r
1754                                                         </outcome>\r
1755                                                     </switch>\r
1756                                                 </block>\r
1757                                                 <return status='failure'>\r
1758                                                     <parameter name='error-code' value='500' />\r
1759                                                     <parameter name='error-message' value="`'volume-group not found in AnAI with volume-group-id=' + $ss.param.volume-group-id  + '; ' + $error-message`" />\r
1760                                                 </return>\r
1761                                             </block>\r
1762                                         </outcome>\r
1763                                     </update>\r
1764                                 </block>\r
1765                             </outcome>\r
1766                         </switch>\r
1767                         <switch test="`$ss.resource-key.vnfc`">\r
1768                             <outcome value='vnfc'>\r
1769                                 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1770         resource="vnfc"\r
1771                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
1772                                     <parameter name="nfc-naming-code" value='`$ss.param.nfc-naming-code`' />\r
1773                                     <parameter name="nfc-function" value='`$ss.param.nfc-function`' />\r
1774                                     <parameter name="model-customization-id" value='`$ss.param.vnfc-model-customization-uuid`' />\r
1775                                     <parameter name="model-invariant-id" value='`$ss.param.vnfc-model-invariant-uuid`' />\r
1776                                     <parameter name="model-version-id" value='`$ss.param.vnfc-model-version`' />\r
1777                                     <outcome value='failure'>\r
1778                                         <block atomic='true'>\r
1779                                             <block>\r
1780                                                 <block>\r
1781                                                     <block>\r
1782                                                         <switch test="`$ss.resource-key.generic-vnf`">\r
1783                                                             <outcome value='generic-vnf'>\r
1784                                                                 <block>\r
1785                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1786                                                                         <parameter name="logger" value="message-log"/>\r
1787                                                                         <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
1788                                                                     </record>\r
1789                                                                     <set>\r
1790                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
1791         value='FAILED' />\r
1792                                                                     </set>\r
1793                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1794         resource="generic-vnf"\r
1795                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
1796                                                                         <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
1797                                                                         <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
1798                                                                         <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
1799                                                                         <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
1800                                                                         <outcome value='failure'>\r
1801                                                                             <set>\r
1802                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1803                                                                             </set>\r
1804                                                                         </outcome>\r
1805                                                                         <outcome value='not-found'>\r
1806                                                                             <set>\r
1807                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1808                                                                             </set>\r
1809                                                                         </outcome>\r
1810                                                                         <outcome value='success'>\r
1811                                                                             <set>\r
1812                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
1813                                                                             </set>\r
1814                                                                         </outcome>\r
1815                                                                     </update>\r
1816                                                                 </block>\r
1817                                                             </outcome>\r
1818                                                         </switch>\r
1819                                                     </block>\r
1820                                                     <switch test="`$ss.resource-key.vf-module`">\r
1821                                                         <outcome value='vf-module'>\r
1822                                                             <block>\r
1823                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1824                                                                     <parameter name="logger" value="message-log"/>\r
1825                                                                     <parameter name="field1" value="ROLLBACK vf-module update"/>\r
1826                                                                 </record>\r
1827                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1828         resource="vf-module"\r
1829                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
1830                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
1831                                                                     <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
1832                                                                     <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
1833                                                                     <outcome value='failure'>\r
1834                                                                         <set>\r
1835                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
1836                                                                         </set>\r
1837                                                                     </outcome>\r
1838                                                                     <outcome value='not-found'>\r
1839                                                                         <set>\r
1840                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
1841                                                                         </set>\r
1842                                                                     </outcome>\r
1843                                                                     <outcome value='success'>\r
1844                                                                         <set>\r
1845                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
1846                                                                         </set>\r
1847                                                                     </outcome>\r
1848                                                                 </update>\r
1849                                                             </block>\r
1850                                                         </outcome>\r
1851                                                     </switch>\r
1852                                                 </block>\r
1853                                                 <switch test="`$ss.resource-key.volume-group`">\r
1854                                                     <outcome value='volume-group'>\r
1855                                                         <block>\r
1856                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1857                                                                 <parameter name="logger" value="message-log"/>\r
1858                                                                 <parameter name="field1" value="ROLLBACK volume-group update"/>\r
1859                                                             </record>\r
1860                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1861         resource="volume-group"\r
1862                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
1863                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
1864                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
1865                         AND volume-group-id = $ss.param.volume-group-id" >\r
1866                                                                 <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
1867                                                                 <outcome value='failure'>\r
1868                                                                     <set>\r
1869                                                                         <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1870                                                                     </set>\r
1871                                                                 </outcome>\r
1872                                                                 <outcome value='not-found'>\r
1873                                                                     <set>\r
1874                                                                         <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
1875                                                                     </set>\r
1876                                                                 </outcome>\r
1877                                                                 <outcome value='success'>\r
1878                                                                     <set>\r
1879                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
1880                                                                     </set>\r
1881                                                                 </outcome>\r
1882                                                             </update>\r
1883                                                         </block>\r
1884                                                     </outcome>\r
1885                                                 </switch>\r
1886                                             </block>\r
1887                                             <return status='failure'>\r
1888                                                 <parameter name='error-code' value='500' />\r
1889                                                 <parameter name='error-message' value="`' Failed to create vnfc with vnfc-name =' + $ss.param.vnfc-name + ' in AnAI. ' + $error-message`" />\r
1890                                             </return>\r
1891                                         </block>\r
1892                                     </outcome>\r
1893                                     <outcome value='not-found'>\r
1894                                         <block atomic='true'>\r
1895                                             <block>\r
1896                                                 <block>\r
1897                                                     <block>\r
1898                                                         <switch test="`$ss.resource-key.generic-vnf`">\r
1899                                                             <outcome value='generic-vnf'>\r
1900                                                                 <block>\r
1901                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1902                                                                         <parameter name="logger" value="message-log"/>\r
1903                                                                         <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
1904                                                                     </record>\r
1905                                                                     <set>\r
1906                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
1907         value='FAILED' />\r
1908                                                                     </set>\r
1909                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1910         resource="generic-vnf"\r
1911                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
1912                                                                         <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
1913                                                                         <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
1914                                                                         <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
1915                                                                         <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
1916                                                                         <outcome value='failure'>\r
1917                                                                             <set>\r
1918                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1919                                                                             </set>\r
1920                                                                         </outcome>\r
1921                                                                         <outcome value='not-found'>\r
1922                                                                             <set>\r
1923                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1924                                                                             </set>\r
1925                                                                         </outcome>\r
1926                                                                         <outcome value='success'>\r
1927                                                                             <set>\r
1928                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
1929                                                                             </set>\r
1930                                                                         </outcome>\r
1931                                                                     </update>\r
1932                                                                 </block>\r
1933                                                             </outcome>\r
1934                                                         </switch>\r
1935                                                     </block>\r
1936                                                     <switch test="`$ss.resource-key.vf-module`">\r
1937                                                         <outcome value='vf-module'>\r
1938                                                             <block>\r
1939                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1940                                                                     <parameter name="logger" value="message-log"/>\r
1941                                                                     <parameter name="field1" value="ROLLBACK vf-module update"/>\r
1942                                                                 </record>\r
1943                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1944         resource="vf-module"\r
1945                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
1946                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
1947                                                                     <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
1948                                                                     <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
1949                                                                     <outcome value='failure'>\r
1950                                                                         <set>\r
1951                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
1952                                                                         </set>\r
1953                                                                     </outcome>\r
1954                                                                     <outcome value='not-found'>\r
1955                                                                         <set>\r
1956                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
1957                                                                         </set>\r
1958                                                                     </outcome>\r
1959                                                                     <outcome value='success'>\r
1960                                                                         <set>\r
1961                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
1962                                                                         </set>\r
1963                                                                     </outcome>\r
1964                                                                 </update>\r
1965                                                             </block>\r
1966                                                         </outcome>\r
1967                                                     </switch>\r
1968                                                 </block>\r
1969                                                 <switch test="`$ss.resource-key.volume-group`">\r
1970                                                     <outcome value='volume-group'>\r
1971                                                         <block>\r
1972                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
1973                                                                 <parameter name="logger" value="message-log"/>\r
1974                                                                 <parameter name="field1" value="ROLLBACK volume-group update"/>\r
1975                                                             </record>\r
1976                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
1977         resource="volume-group"\r
1978                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
1979                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
1980                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
1981                         AND volume-group-id = $ss.param.volume-group-id" >\r
1982                                                                 <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
1983                                                                 <outcome value='failure'>\r
1984                                                                     <set>\r
1985                                                                         <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
1986                                                                     </set>\r
1987                                                                 </outcome>\r
1988                                                                 <outcome value='not-found'>\r
1989                                                                     <set>\r
1990                                                                         <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
1991                                                                     </set>\r
1992                                                                 </outcome>\r
1993                                                                 <outcome value='success'>\r
1994                                                                     <set>\r
1995                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
1996                                                                     </set>\r
1997                                                                 </outcome>\r
1998                                                             </update>\r
1999                                                         </block>\r
2000                                                     </outcome>\r
2001                                                 </switch>\r
2002                                             </block>\r
2003                                             <return status='failure'>\r
2004                                                 <parameter name='error-code' value='500' />\r
2005                                                 <parameter name='error-message' value="`' Failed to create vnfc with vnfc-name =' + $ss.param.vnfc-name + ' in AnAI. ' + $error-message`" />\r
2006                                             </return>\r
2007                                         </block>\r
2008                                     </outcome>\r
2009                                 </save>\r
2010                             </outcome>\r
2011                         </switch>\r
2012                         <switch test="`$ss.resource-key.connection-points`">\r
2013                             <outcome value='connection-points'>\r
2014                                 <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data_length`' >\r
2015                                     <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2016         resource="cp"\r
2017                 key="cp.cp-instance-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.connection-point-id \r
2018                 AND vnfc.vnfc-name = $ss.param.vnfc-name" >\r
2019                                         <parameter name="cp-instance-id" \r
2020         value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.connection-point-id`' />\r
2021                                         <outcome value='failure'>\r
2022                                             <block atomic='true'>\r
2023                                                 <block atomic='true'>\r
2024                                                     <block>\r
2025                                                         <block>\r
2026                                                             <block>\r
2027                                                                 <switch test="`$ss.resource-key.generic-vnf`">\r
2028                                                                     <outcome value='generic-vnf'>\r
2029                                                                         <block>\r
2030                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2031                                                                                 <parameter name="logger" value="message-log"/>\r
2032                                                                                 <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
2033                                                                             </record>\r
2034                                                                             <set>\r
2035                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
2036         value='FAILED' />\r
2037                                                                             </set>\r
2038                                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2039         resource="generic-vnf"\r
2040                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
2041                                                                                 <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
2042                                                                                 <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
2043                                                                                 <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
2044                                                                                 <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
2045                                                                                 <outcome value='failure'>\r
2046                                                                                     <set>\r
2047                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2048                                                                                     </set>\r
2049                                                                                 </outcome>\r
2050                                                                                 <outcome value='not-found'>\r
2051                                                                                     <set>\r
2052                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2053                                                                                     </set>\r
2054                                                                                 </outcome>\r
2055                                                                                 <outcome value='success'>\r
2056                                                                                     <set>\r
2057                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
2058                                                                                     </set>\r
2059                                                                                 </outcome>\r
2060                                                                             </update>\r
2061                                                                         </block>\r
2062                                                                     </outcome>\r
2063                                                                 </switch>\r
2064                                                             </block>\r
2065                                                             <switch test="`$ss.resource-key.vf-module`">\r
2066                                                                 <outcome value='vf-module'>\r
2067                                                                     <block>\r
2068                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2069                                                                             <parameter name="logger" value="message-log"/>\r
2070                                                                             <parameter name="field1" value="ROLLBACK vf-module update"/>\r
2071                                                                         </record>\r
2072                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2073         resource="vf-module"\r
2074                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
2075                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
2076                                                                             <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
2077                                                                             <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
2078                                                                             <outcome value='failure'>\r
2079                                                                                 <set>\r
2080                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
2081                                                                                 </set>\r
2082                                                                             </outcome>\r
2083                                                                             <outcome value='not-found'>\r
2084                                                                                 <set>\r
2085                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
2086                                                                                 </set>\r
2087                                                                             </outcome>\r
2088                                                                             <outcome value='success'>\r
2089                                                                                 <set>\r
2090                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
2091                                                                                 </set>\r
2092                                                                             </outcome>\r
2093                                                                         </update>\r
2094                                                                     </block>\r
2095                                                                 </outcome>\r
2096                                                             </switch>\r
2097                                                         </block>\r
2098                                                         <switch test="`$ss.resource-key.volume-group`">\r
2099                                                             <outcome value='volume-group'>\r
2100                                                                 <block>\r
2101                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2102                                                                         <parameter name="logger" value="message-log"/>\r
2103                                                                         <parameter name="field1" value="ROLLBACK volume-group update"/>\r
2104                                                                     </record>\r
2105                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2106         resource="volume-group"\r
2107                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
2108                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
2109                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
2110                         AND volume-group-id = $ss.param.volume-group-id" >\r
2111                                                                         <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
2112                                                                         <outcome value='failure'>\r
2113                                                                             <set>\r
2114                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2115                                                                             </set>\r
2116                                                                         </outcome>\r
2117                                                                         <outcome value='not-found'>\r
2118                                                                             <set>\r
2119                                                                                 <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
2120                                                                             </set>\r
2121                                                                         </outcome>\r
2122                                                                         <outcome value='success'>\r
2123                                                                             <set>\r
2124                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
2125                                                                             </set>\r
2126                                                                         </outcome>\r
2127                                                                     </update>\r
2128                                                                 </block>\r
2129                                                             </outcome>\r
2130                                                         </switch>\r
2131                                                     </block>\r
2132                                                     <switch test="`$ss.resource-key.vnfc`">\r
2133                                                         <outcome value='vnfc'>\r
2134                                                             <block atomic='true'>\r
2135                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2136                                                                     <parameter name="logger" value="message-log"/>\r
2137                                                                     <parameter name="field1" value="ROLLBACK vnfc save"/>\r
2138                                                                 </record>\r
2139                                                                 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2140         resource="vnfc"\r
2141                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
2142                                                                     <outcome value='failure'>\r
2143                                                                         <block atomic='true'>\r
2144                                                                             <set>\r
2145                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2146                                                                             </set>\r
2147                                                                             <switch test='`$tmp.return-failure`'>\r
2148                                                                                 <outcome value='true'>\r
2149                                                                                     <block atomic='true'>\r
2150                                                                                         <set>\r
2151                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
2152         value='FAILED' />\r
2153                                                                                         </set>\r
2154                                                                                         <return status='failure'>\r
2155                                                                                             <parameter name='error-code' value='500' />\r
2156                                                                                             <parameter name='error-message' value='`$error-message`' />\r
2157                                                                                         </return>\r
2158                                                                                     </block>\r
2159                                                                                 </outcome>\r
2160                                                                             </switch>\r
2161                                                                         </block>\r
2162                                                                     </outcome>\r
2163                                                                     <outcome value='not-found'>\r
2164                                                                         <set>\r
2165                                                                             <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
2166                                                                         </set>\r
2167                                                                     </outcome>\r
2168                                                                     <outcome value='success'>\r
2169                                                                         <set>\r
2170                                                                             <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
2171                                                                         </set>\r
2172                                                                     </outcome>\r
2173                                                                 </delete>\r
2174                                                             </block>\r
2175                                                         </outcome>\r
2176                                                     </switch>\r
2177                                                 </block>\r
2178                                                 <return status='failure'>\r
2179                                                     <parameter name='error-code' value='500' />\r
2180                                                     <parameter name='error-message' value="`' Failed to create connection-point with cp-instance-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.connection-point-id + ' in AnAI. ' + $error-message`" />\r
2181                                                 </return>\r
2182                                             </block>\r
2183                                         </outcome>\r
2184                                         <outcome value='not-found'>\r
2185                                             <block atomic='true'>\r
2186                                                 <block atomic='true'>\r
2187                                                     <block>\r
2188                                                         <block>\r
2189                                                             <block>\r
2190                                                                 <switch test="`$ss.resource-key.generic-vnf`">\r
2191                                                                     <outcome value='generic-vnf'>\r
2192                                                                         <block>\r
2193                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2194                                                                                 <parameter name="logger" value="message-log"/>\r
2195                                                                                 <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
2196                                                                             </record>\r
2197                                                                             <set>\r
2198                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
2199         value='FAILED' />\r
2200                                                                             </set>\r
2201                                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2202         resource="generic-vnf"\r
2203                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
2204                                                                                 <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
2205                                                                                 <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
2206                                                                                 <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
2207                                                                                 <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
2208                                                                                 <outcome value='failure'>\r
2209                                                                                     <set>\r
2210                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2211                                                                                     </set>\r
2212                                                                                 </outcome>\r
2213                                                                                 <outcome value='not-found'>\r
2214                                                                                     <set>\r
2215                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2216                                                                                     </set>\r
2217                                                                                 </outcome>\r
2218                                                                                 <outcome value='success'>\r
2219                                                                                     <set>\r
2220                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
2221                                                                                     </set>\r
2222                                                                                 </outcome>\r
2223                                                                             </update>\r
2224                                                                         </block>\r
2225                                                                     </outcome>\r
2226                                                                 </switch>\r
2227                                                             </block>\r
2228                                                             <switch test="`$ss.resource-key.vf-module`">\r
2229                                                                 <outcome value='vf-module'>\r
2230                                                                     <block>\r
2231                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2232                                                                             <parameter name="logger" value="message-log"/>\r
2233                                                                             <parameter name="field1" value="ROLLBACK vf-module update"/>\r
2234                                                                         </record>\r
2235                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2236         resource="vf-module"\r
2237                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
2238                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
2239                                                                             <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
2240                                                                             <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
2241                                                                             <outcome value='failure'>\r
2242                                                                                 <set>\r
2243                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
2244                                                                                 </set>\r
2245                                                                             </outcome>\r
2246                                                                             <outcome value='not-found'>\r
2247                                                                                 <set>\r
2248                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
2249                                                                                 </set>\r
2250                                                                             </outcome>\r
2251                                                                             <outcome value='success'>\r
2252                                                                                 <set>\r
2253                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
2254                                                                                 </set>\r
2255                                                                             </outcome>\r
2256                                                                         </update>\r
2257                                                                     </block>\r
2258                                                                 </outcome>\r
2259                                                             </switch>\r
2260                                                         </block>\r
2261                                                         <switch test="`$ss.resource-key.volume-group`">\r
2262                                                             <outcome value='volume-group'>\r
2263                                                                 <block>\r
2264                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2265                                                                         <parameter name="logger" value="message-log"/>\r
2266                                                                         <parameter name="field1" value="ROLLBACK volume-group update"/>\r
2267                                                                     </record>\r
2268                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2269         resource="volume-group"\r
2270                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
2271                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
2272                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
2273                         AND volume-group-id = $ss.param.volume-group-id" >\r
2274                                                                         <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
2275                                                                         <outcome value='failure'>\r
2276                                                                             <set>\r
2277                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2278                                                                             </set>\r
2279                                                                         </outcome>\r
2280                                                                         <outcome value='not-found'>\r
2281                                                                             <set>\r
2282                                                                                 <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
2283                                                                             </set>\r
2284                                                                         </outcome>\r
2285                                                                         <outcome value='success'>\r
2286                                                                             <set>\r
2287                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
2288                                                                             </set>\r
2289                                                                         </outcome>\r
2290                                                                     </update>\r
2291                                                                 </block>\r
2292                                                             </outcome>\r
2293                                                         </switch>\r
2294                                                     </block>\r
2295                                                     <switch test="`$ss.resource-key.vnfc`">\r
2296                                                         <outcome value='vnfc'>\r
2297                                                             <block atomic='true'>\r
2298                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2299                                                                     <parameter name="logger" value="message-log"/>\r
2300                                                                     <parameter name="field1" value="ROLLBACK vnfc save"/>\r
2301                                                                 </record>\r
2302                                                                 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2303         resource="vnfc"\r
2304                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
2305                                                                     <outcome value='failure'>\r
2306                                                                         <block atomic='true'>\r
2307                                                                             <set>\r
2308                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2309                                                                             </set>\r
2310                                                                             <switch test='`$tmp.return-failure`'>\r
2311                                                                                 <outcome value='true'>\r
2312                                                                                     <block atomic='true'>\r
2313                                                                                         <set>\r
2314                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
2315         value='FAILED' />\r
2316                                                                                         </set>\r
2317                                                                                         <return status='failure'>\r
2318                                                                                             <parameter name='error-code' value='500' />\r
2319                                                                                             <parameter name='error-message' value='`$error-message`' />\r
2320                                                                                         </return>\r
2321                                                                                     </block>\r
2322                                                                                 </outcome>\r
2323                                                                             </switch>\r
2324                                                                         </block>\r
2325                                                                     </outcome>\r
2326                                                                     <outcome value='not-found'>\r
2327                                                                         <set>\r
2328                                                                             <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
2329                                                                         </set>\r
2330                                                                     </outcome>\r
2331                                                                     <outcome value='success'>\r
2332                                                                         <set>\r
2333                                                                             <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
2334                                                                         </set>\r
2335                                                                     </outcome>\r
2336                                                                 </delete>\r
2337                                                             </block>\r
2338                                                         </outcome>\r
2339                                                     </switch>\r
2340                                                 </block>\r
2341                                                 <return status='failure'>\r
2342                                                     <parameter name='error-code' value='500' />\r
2343                                                     <parameter name='error-message' value="`' Failed to create connection-point with cp-instance-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.connection-point-id + ' in AnAI. ' + $error-message`" />\r
2344                                                 </return>\r
2345                                             </block>\r
2346                                         </outcome>\r
2347                                         <outcome value='success'>\r
2348                                             <for silentFailure='true' index='j' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data_length`' >\r
2349                                                 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2350         resource="vlan-tag"\r
2351                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
2352                                                     <parameter name="vlan-tag-id" \r
2353         value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid`' />\r
2354                                                     <parameter name="vlan-tag-role" \r
2355         value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-tag-description`' />\r
2356                                                     <parameter name="vlan-id-outer" \r
2357         value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-tag-id`' />\r
2358                                                     <outcome value='success'>\r
2359                                                         <block atomic='true'>\r
2360                                                             <set>\r
2361                                                                 <parameter name='ss.cp.related-link' \r
2362         value="`'/aai/v$/network/vnfcs/vnfc/' + \r
2363         $ss.param.vnfc-name + \r
2364         '/cps/cp/' + \r
2365         $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.connection-point-id`" />\r
2366                                                             </set>\r
2367                                                             <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2368         resource="vlan-tag:relationship-list"\r
2369                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
2370                                                                 <parameter name="relationship-list.relationship[0].related-to" value="cp" />\r
2371                                                                 <parameter name="relationship-list.relationship[0].related-link" value="`$ss.cp.related-link`" />\r
2372                                                                 <outcome value='failure'>\r
2373                                                                     <block atomic='true'>\r
2374                                                                         <block>\r
2375                                                                             <block atomic='true'>\r
2376                                                                                 <block>\r
2377                                                                                     <block>\r
2378                                                                                         <block>\r
2379                                                                                             <switch test="`$ss.resource-key.generic-vnf`">\r
2380                                                                                                 <outcome value='generic-vnf'>\r
2381                                                                                                     <block>\r
2382                                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2383                                                                                                             <parameter name="logger" value="message-log"/>\r
2384                                                                                                             <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
2385                                                                                                         </record>\r
2386                                                                                                         <set>\r
2387                                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
2388         value='FAILED' />\r
2389                                                                                                         </set>\r
2390                                                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2391         resource="generic-vnf"\r
2392                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
2393                                                                                                             <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
2394                                                                                                             <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
2395                                                                                                             <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
2396                                                                                                             <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
2397                                                                                                             <outcome value='failure'>\r
2398                                                                                                                 <set>\r
2399                                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2400                                                                                                                 </set>\r
2401                                                                                                             </outcome>\r
2402                                                                                                             <outcome value='not-found'>\r
2403                                                                                                                 <set>\r
2404                                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2405                                                                                                                 </set>\r
2406                                                                                                             </outcome>\r
2407                                                                                                             <outcome value='success'>\r
2408                                                                                                                 <set>\r
2409                                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
2410                                                                                                                 </set>\r
2411                                                                                                             </outcome>\r
2412                                                                                                         </update>\r
2413                                                                                                     </block>\r
2414                                                                                                 </outcome>\r
2415                                                                                             </switch>\r
2416                                                                                         </block>\r
2417                                                                                         <switch test="`$ss.resource-key.vf-module`">\r
2418                                                                                             <outcome value='vf-module'>\r
2419                                                                                                 <block>\r
2420                                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2421                                                                                                         <parameter name="logger" value="message-log"/>\r
2422                                                                                                         <parameter name="field1" value="ROLLBACK vf-module update"/>\r
2423                                                                                                     </record>\r
2424                                                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2425         resource="vf-module"\r
2426                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
2427                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
2428                                                                                                         <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
2429                                                                                                         <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
2430                                                                                                         <outcome value='failure'>\r
2431                                                                                                             <set>\r
2432                                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
2433                                                                                                             </set>\r
2434                                                                                                         </outcome>\r
2435                                                                                                         <outcome value='not-found'>\r
2436                                                                                                             <set>\r
2437                                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
2438                                                                                                             </set>\r
2439                                                                                                         </outcome>\r
2440                                                                                                         <outcome value='success'>\r
2441                                                                                                             <set>\r
2442                                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
2443                                                                                                             </set>\r
2444                                                                                                         </outcome>\r
2445                                                                                                     </update>\r
2446                                                                                                 </block>\r
2447                                                                                             </outcome>\r
2448                                                                                         </switch>\r
2449                                                                                     </block>\r
2450                                                                                     <switch test="`$ss.resource-key.volume-group`">\r
2451                                                                                         <outcome value='volume-group'>\r
2452                                                                                             <block>\r
2453                                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2454                                                                                                     <parameter name="logger" value="message-log"/>\r
2455                                                                                                     <parameter name="field1" value="ROLLBACK volume-group update"/>\r
2456                                                                                                 </record>\r
2457                                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2458         resource="volume-group"\r
2459                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
2460                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
2461                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
2462                         AND volume-group-id = $ss.param.volume-group-id" >\r
2463                                                                                                     <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
2464                                                                                                     <outcome value='failure'>\r
2465                                                                                                         <set>\r
2466                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2467                                                                                                         </set>\r
2468                                                                                                     </outcome>\r
2469                                                                                                     <outcome value='not-found'>\r
2470                                                                                                         <set>\r
2471                                                                                                             <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
2472                                                                                                         </set>\r
2473                                                                                                     </outcome>\r
2474                                                                                                     <outcome value='success'>\r
2475                                                                                                         <set>\r
2476                                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
2477                                                                                                         </set>\r
2478                                                                                                     </outcome>\r
2479                                                                                                 </update>\r
2480                                                                                             </block>\r
2481                                                                                         </outcome>\r
2482                                                                                     </switch>\r
2483                                                                                 </block>\r
2484                                                                                 <switch test="`$ss.resource-key.vnfc`">\r
2485                                                                                     <outcome value='vnfc'>\r
2486                                                                                         <block atomic='true'>\r
2487                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2488                                                                                                 <parameter name="logger" value="message-log"/>\r
2489                                                                                                 <parameter name="field1" value="ROLLBACK vnfc save"/>\r
2490                                                                                             </record>\r
2491                                                                                             <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2492         resource="vnfc"\r
2493                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
2494                                                                                                 <outcome value='failure'>\r
2495                                                                                                     <block atomic='true'>\r
2496                                                                                                         <set>\r
2497                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2498                                                                                                         </set>\r
2499                                                                                                         <switch test='`$tmp.return-failure`'>\r
2500                                                                                                             <outcome value='true'>\r
2501                                                                                                                 <block atomic='true'>\r
2502                                                                                                                     <set>\r
2503                                                                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
2504         value='FAILED' />\r
2505                                                                                                                     </set>\r
2506                                                                                                                     <return status='failure'>\r
2507                                                                                                                         <parameter name='error-code' value='500' />\r
2508                                                                                                                         <parameter name='error-message' value='`$error-message`' />\r
2509                                                                                                                     </return>\r
2510                                                                                                                 </block>\r
2511                                                                                                             </outcome>\r
2512                                                                                                         </switch>\r
2513                                                                                                     </block>\r
2514                                                                                                 </outcome>\r
2515                                                                                                 <outcome value='not-found'>\r
2516                                                                                                     <set>\r
2517                                                                                                         <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
2518                                                                                                     </set>\r
2519                                                                                                 </outcome>\r
2520                                                                                                 <outcome value='success'>\r
2521                                                                                                     <set>\r
2522                                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
2523                                                                                                     </set>\r
2524                                                                                                 </outcome>\r
2525                                                                                             </delete>\r
2526                                                                                         </block>\r
2527                                                                                     </outcome>\r
2528                                                                                 </switch>\r
2529                                                                             </block>\r
2530                                                                             <block atomic='true'>\r
2531                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2532                                                                                     <parameter name="logger" value="message-log"/>\r
2533                                                                                     <parameter name="field1" value="ROLLBACK vlan-tag save"/>\r
2534                                                                                 </record>\r
2535                                                                                 <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data_length`' >\r
2536                                                                                     <for silentFailure='true' index='j' start='0' end='$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data_length`' >\r
2537                                                                                         <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2538         resource="vlan-tag"\r
2539                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
2540                                                                                             <outcome value='failure'>\r
2541                                                                                                 <block atomic='true'>\r
2542                                                                                                     <set>\r
2543                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to delete vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2544                                                                                                     </set>\r
2545                                                                                                     <switch test='`$tmp.return-failure`'>\r
2546                                                                                                         <outcome value='true'>\r
2547                                                                                                             <block atomic='true'>\r
2548                                                                                                                 <set>\r
2549                                                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
2550         value='FAILED' />\r
2551                                                                                                                 </set>\r
2552                                                                                                                 <return status='failure'>\r
2553                                                                                                                     <parameter name='error-code' value='500' />\r
2554                                                                                                                     <parameter name='error-message' value='`$error-message`' />\r
2555                                                                                                                 </return>\r
2556                                                                                                             </block>\r
2557                                                                                                         </outcome>\r
2558                                                                                                     </switch>\r
2559                                                                                                 </block>\r
2560                                                                                             </outcome>\r
2561                                                                                             <outcome value='not-found'>\r
2562                                                                                                 <set>\r
2563                                                                                                     <parameter name='error-message' value="`$error-message + ' vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' not found in AAI. Consider silent success!'`" />\r
2564                                                                                                 </set>\r
2565                                                                                             </outcome>\r
2566                                                                                             <outcome value='success'>\r
2567                                                                                                 <set>\r
2568                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + '  completed.'`" />\r
2569                                                                                                 </set>\r
2570                                                                                             </outcome>\r
2571                                                                                         </delete>\r
2572                                                                                     </for>\r
2573                                                                                 </for>\r
2574                                                                             </block>\r
2575                                                                         </block>\r
2576                                                                         <return status='failure'>\r
2577                                                                             <parameter name='error-code' value='500' />\r
2578                                                                             <parameter name='error-message' value="`' Failed to create cp relationship for vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' in AnAI. ' + $error-message`" />\r
2579                                                                         </return>\r
2580                                                                     </block>\r
2581                                                                 </outcome>\r
2582                                                                 <outcome value='not-found'>\r
2583                                                                     <block atomic='true'>\r
2584                                                                         <block>\r
2585                                                                             <block atomic='true'>\r
2586                                                                                 <block>\r
2587                                                                                     <block>\r
2588                                                                                         <block>\r
2589                                                                                             <switch test="`$ss.resource-key.generic-vnf`">\r
2590                                                                                                 <outcome value='generic-vnf'>\r
2591                                                                                                     <block>\r
2592                                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2593                                                                                                             <parameter name="logger" value="message-log"/>\r
2594                                                                                                             <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
2595                                                                                                         </record>\r
2596                                                                                                         <set>\r
2597                                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
2598         value='FAILED' />\r
2599                                                                                                         </set>\r
2600                                                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2601         resource="generic-vnf"\r
2602                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
2603                                                                                                             <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
2604                                                                                                             <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
2605                                                                                                             <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
2606                                                                                                             <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
2607                                                                                                             <outcome value='failure'>\r
2608                                                                                                                 <set>\r
2609                                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2610                                                                                                                 </set>\r
2611                                                                                                             </outcome>\r
2612                                                                                                             <outcome value='not-found'>\r
2613                                                                                                                 <set>\r
2614                                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2615                                                                                                                 </set>\r
2616                                                                                                             </outcome>\r
2617                                                                                                             <outcome value='success'>\r
2618                                                                                                                 <set>\r
2619                                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
2620                                                                                                                 </set>\r
2621                                                                                                             </outcome>\r
2622                                                                                                         </update>\r
2623                                                                                                     </block>\r
2624                                                                                                 </outcome>\r
2625                                                                                             </switch>\r
2626                                                                                         </block>\r
2627                                                                                         <switch test="`$ss.resource-key.vf-module`">\r
2628                                                                                             <outcome value='vf-module'>\r
2629                                                                                                 <block>\r
2630                                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2631                                                                                                         <parameter name="logger" value="message-log"/>\r
2632                                                                                                         <parameter name="field1" value="ROLLBACK vf-module update"/>\r
2633                                                                                                     </record>\r
2634                                                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2635         resource="vf-module"\r
2636                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
2637                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
2638                                                                                                         <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
2639                                                                                                         <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
2640                                                                                                         <outcome value='failure'>\r
2641                                                                                                             <set>\r
2642                                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
2643                                                                                                             </set>\r
2644                                                                                                         </outcome>\r
2645                                                                                                         <outcome value='not-found'>\r
2646                                                                                                             <set>\r
2647                                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
2648                                                                                                             </set>\r
2649                                                                                                         </outcome>\r
2650                                                                                                         <outcome value='success'>\r
2651                                                                                                             <set>\r
2652                                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
2653                                                                                                             </set>\r
2654                                                                                                         </outcome>\r
2655                                                                                                     </update>\r
2656                                                                                                 </block>\r
2657                                                                                             </outcome>\r
2658                                                                                         </switch>\r
2659                                                                                     </block>\r
2660                                                                                     <switch test="`$ss.resource-key.volume-group`">\r
2661                                                                                         <outcome value='volume-group'>\r
2662                                                                                             <block>\r
2663                                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2664                                                                                                     <parameter name="logger" value="message-log"/>\r
2665                                                                                                     <parameter name="field1" value="ROLLBACK volume-group update"/>\r
2666                                                                                                 </record>\r
2667                                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2668         resource="volume-group"\r
2669                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
2670                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
2671                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
2672                         AND volume-group-id = $ss.param.volume-group-id" >\r
2673                                                                                                     <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
2674                                                                                                     <outcome value='failure'>\r
2675                                                                                                         <set>\r
2676                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2677                                                                                                         </set>\r
2678                                                                                                     </outcome>\r
2679                                                                                                     <outcome value='not-found'>\r
2680                                                                                                         <set>\r
2681                                                                                                             <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
2682                                                                                                         </set>\r
2683                                                                                                     </outcome>\r
2684                                                                                                     <outcome value='success'>\r
2685                                                                                                         <set>\r
2686                                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
2687                                                                                                         </set>\r
2688                                                                                                     </outcome>\r
2689                                                                                                 </update>\r
2690                                                                                             </block>\r
2691                                                                                         </outcome>\r
2692                                                                                     </switch>\r
2693                                                                                 </block>\r
2694                                                                                 <switch test="`$ss.resource-key.vnfc`">\r
2695                                                                                     <outcome value='vnfc'>\r
2696                                                                                         <block atomic='true'>\r
2697                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2698                                                                                                 <parameter name="logger" value="message-log"/>\r
2699                                                                                                 <parameter name="field1" value="ROLLBACK vnfc save"/>\r
2700                                                                                             </record>\r
2701                                                                                             <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2702         resource="vnfc"\r
2703                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
2704                                                                                                 <outcome value='failure'>\r
2705                                                                                                     <block atomic='true'>\r
2706                                                                                                         <set>\r
2707                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2708                                                                                                         </set>\r
2709                                                                                                         <switch test='`$tmp.return-failure`'>\r
2710                                                                                                             <outcome value='true'>\r
2711                                                                                                                 <block atomic='true'>\r
2712                                                                                                                     <set>\r
2713                                                                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
2714         value='FAILED' />\r
2715                                                                                                                     </set>\r
2716                                                                                                                     <return status='failure'>\r
2717                                                                                                                         <parameter name='error-code' value='500' />\r
2718                                                                                                                         <parameter name='error-message' value='`$error-message`' />\r
2719                                                                                                                     </return>\r
2720                                                                                                                 </block>\r
2721                                                                                                             </outcome>\r
2722                                                                                                         </switch>\r
2723                                                                                                     </block>\r
2724                                                                                                 </outcome>\r
2725                                                                                                 <outcome value='not-found'>\r
2726                                                                                                     <set>\r
2727                                                                                                         <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
2728                                                                                                     </set>\r
2729                                                                                                 </outcome>\r
2730                                                                                                 <outcome value='success'>\r
2731                                                                                                     <set>\r
2732                                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
2733                                                                                                     </set>\r
2734                                                                                                 </outcome>\r
2735                                                                                             </delete>\r
2736                                                                                         </block>\r
2737                                                                                     </outcome>\r
2738                                                                                 </switch>\r
2739                                                                             </block>\r
2740                                                                             <block atomic='true'>\r
2741                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2742                                                                                     <parameter name="logger" value="message-log"/>\r
2743                                                                                     <parameter name="field1" value="ROLLBACK vlan-tag save"/>\r
2744                                                                                 </record>\r
2745                                                                                 <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data_length`' >\r
2746                                                                                     <for silentFailure='true' index='j' start='0' end='$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data_length`' >\r
2747                                                                                         <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2748         resource="vlan-tag"\r
2749                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
2750                                                                                             <outcome value='failure'>\r
2751                                                                                                 <block atomic='true'>\r
2752                                                                                                     <set>\r
2753                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to delete vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2754                                                                                                     </set>\r
2755                                                                                                     <switch test='`$tmp.return-failure`'>\r
2756                                                                                                         <outcome value='true'>\r
2757                                                                                                             <block atomic='true'>\r
2758                                                                                                                 <set>\r
2759                                                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
2760         value='FAILED' />\r
2761                                                                                                                 </set>\r
2762                                                                                                                 <return status='failure'>\r
2763                                                                                                                     <parameter name='error-code' value='500' />\r
2764                                                                                                                     <parameter name='error-message' value='`$error-message`' />\r
2765                                                                                                                 </return>\r
2766                                                                                                             </block>\r
2767                                                                                                         </outcome>\r
2768                                                                                                     </switch>\r
2769                                                                                                 </block>\r
2770                                                                                             </outcome>\r
2771                                                                                             <outcome value='not-found'>\r
2772                                                                                                 <set>\r
2773                                                                                                     <parameter name='error-message' value="`$error-message + ' vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' not found in AAI. Consider silent success!'`" />\r
2774                                                                                                 </set>\r
2775                                                                                             </outcome>\r
2776                                                                                             <outcome value='success'>\r
2777                                                                                                 <set>\r
2778                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + '  completed.'`" />\r
2779                                                                                                 </set>\r
2780                                                                                             </outcome>\r
2781                                                                                         </delete>\r
2782                                                                                     </for>\r
2783                                                                                 </for>\r
2784                                                                             </block>\r
2785                                                                         </block>\r
2786                                                                         <return status='failure'>\r
2787                                                                             <parameter name='error-code' value='500' />\r
2788                                                                             <parameter name='error-message' value="`' Failed to create cp relationship for vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' in AnAI. ' + $error-message`" />\r
2789                                                                         </return>\r
2790                                                                     </block>\r
2791                                                                 </outcome>\r
2792                                                             </save>\r
2793                                                         </block>\r
2794                                                     </outcome>\r
2795                                                     <outcome value='failure'>\r
2796                                                         <block atomic='true'>\r
2797                                                             <block>\r
2798                                                                 <block atomic='true'>\r
2799                                                                     <block>\r
2800                                                                         <block>\r
2801                                                                             <block>\r
2802                                                                                 <switch test="`$ss.resource-key.generic-vnf`">\r
2803                                                                                     <outcome value='generic-vnf'>\r
2804                                                                                         <block>\r
2805                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2806                                                                                                 <parameter name="logger" value="message-log"/>\r
2807                                                                                                 <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
2808                                                                                             </record>\r
2809                                                                                             <set>\r
2810                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
2811         value='FAILED' />\r
2812                                                                                             </set>\r
2813                                                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2814         resource="generic-vnf"\r
2815                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
2816                                                                                                 <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
2817                                                                                                 <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
2818                                                                                                 <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
2819                                                                                                 <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
2820                                                                                                 <outcome value='failure'>\r
2821                                                                                                     <set>\r
2822                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2823                                                                                                     </set>\r
2824                                                                                                 </outcome>\r
2825                                                                                                 <outcome value='not-found'>\r
2826                                                                                                     <set>\r
2827                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2828                                                                                                     </set>\r
2829                                                                                                 </outcome>\r
2830                                                                                                 <outcome value='success'>\r
2831                                                                                                     <set>\r
2832                                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
2833                                                                                                     </set>\r
2834                                                                                                 </outcome>\r
2835                                                                                             </update>\r
2836                                                                                         </block>\r
2837                                                                                     </outcome>\r
2838                                                                                 </switch>\r
2839                                                                             </block>\r
2840                                                                             <switch test="`$ss.resource-key.vf-module`">\r
2841                                                                                 <outcome value='vf-module'>\r
2842                                                                                     <block>\r
2843                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2844                                                                                             <parameter name="logger" value="message-log"/>\r
2845                                                                                             <parameter name="field1" value="ROLLBACK vf-module update"/>\r
2846                                                                                         </record>\r
2847                                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2848         resource="vf-module"\r
2849                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
2850                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
2851                                                                                             <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
2852                                                                                             <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
2853                                                                                             <outcome value='failure'>\r
2854                                                                                                 <set>\r
2855                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
2856                                                                                                 </set>\r
2857                                                                                             </outcome>\r
2858                                                                                             <outcome value='not-found'>\r
2859                                                                                                 <set>\r
2860                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
2861                                                                                                 </set>\r
2862                                                                                             </outcome>\r
2863                                                                                             <outcome value='success'>\r
2864                                                                                                 <set>\r
2865                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
2866                                                                                                 </set>\r
2867                                                                                             </outcome>\r
2868                                                                                         </update>\r
2869                                                                                     </block>\r
2870                                                                                 </outcome>\r
2871                                                                             </switch>\r
2872                                                                         </block>\r
2873                                                                         <switch test="`$ss.resource-key.volume-group`">\r
2874                                                                             <outcome value='volume-group'>\r
2875                                                                                 <block>\r
2876                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2877                                                                                         <parameter name="logger" value="message-log"/>\r
2878                                                                                         <parameter name="field1" value="ROLLBACK volume-group update"/>\r
2879                                                                                     </record>\r
2880                                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2881         resource="volume-group"\r
2882                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
2883                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
2884                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
2885                         AND volume-group-id = $ss.param.volume-group-id" >\r
2886                                                                                         <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
2887                                                                                         <outcome value='failure'>\r
2888                                                                                             <set>\r
2889                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2890                                                                                             </set>\r
2891                                                                                         </outcome>\r
2892                                                                                         <outcome value='not-found'>\r
2893                                                                                             <set>\r
2894                                                                                                 <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
2895                                                                                             </set>\r
2896                                                                                         </outcome>\r
2897                                                                                         <outcome value='success'>\r
2898                                                                                             <set>\r
2899                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
2900                                                                                             </set>\r
2901                                                                                         </outcome>\r
2902                                                                                     </update>\r
2903                                                                                 </block>\r
2904                                                                             </outcome>\r
2905                                                                         </switch>\r
2906                                                                     </block>\r
2907                                                                     <switch test="`$ss.resource-key.vnfc`">\r
2908                                                                         <outcome value='vnfc'>\r
2909                                                                             <block atomic='true'>\r
2910                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2911                                                                                     <parameter name="logger" value="message-log"/>\r
2912                                                                                     <parameter name="field1" value="ROLLBACK vnfc save"/>\r
2913                                                                                 </record>\r
2914                                                                                 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2915         resource="vnfc"\r
2916                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
2917                                                                                     <outcome value='failure'>\r
2918                                                                                         <block atomic='true'>\r
2919                                                                                             <set>\r
2920                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2921                                                                                             </set>\r
2922                                                                                             <switch test='`$tmp.return-failure`'>\r
2923                                                                                                 <outcome value='true'>\r
2924                                                                                                     <block atomic='true'>\r
2925                                                                                                         <set>\r
2926                                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
2927         value='FAILED' />\r
2928                                                                                                         </set>\r
2929                                                                                                         <return status='failure'>\r
2930                                                                                                             <parameter name='error-code' value='500' />\r
2931                                                                                                             <parameter name='error-message' value='`$error-message`' />\r
2932                                                                                                         </return>\r
2933                                                                                                     </block>\r
2934                                                                                                 </outcome>\r
2935                                                                                             </switch>\r
2936                                                                                         </block>\r
2937                                                                                     </outcome>\r
2938                                                                                     <outcome value='not-found'>\r
2939                                                                                         <set>\r
2940                                                                                             <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
2941                                                                                         </set>\r
2942                                                                                     </outcome>\r
2943                                                                                     <outcome value='success'>\r
2944                                                                                         <set>\r
2945                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
2946                                                                                         </set>\r
2947                                                                                     </outcome>\r
2948                                                                                 </delete>\r
2949                                                                             </block>\r
2950                                                                         </outcome>\r
2951                                                                     </switch>\r
2952                                                                 </block>\r
2953                                                                 <block atomic='true'>\r
2954                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
2955                                                                         <parameter name="logger" value="message-log"/>\r
2956                                                                         <parameter name="field1" value="ROLLBACK vlan-tag save"/>\r
2957                                                                     </record>\r
2958                                                                     <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data_length`' >\r
2959                                                                         <for silentFailure='true' index='j' start='0' end='$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data_length`' >\r
2960                                                                             <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
2961         resource="vlan-tag"\r
2962                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
2963                                                                                 <outcome value='failure'>\r
2964                                                                                     <block atomic='true'>\r
2965                                                                                         <set>\r
2966                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to delete vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
2967                                                                                         </set>\r
2968                                                                                         <switch test='`$tmp.return-failure`'>\r
2969                                                                                             <outcome value='true'>\r
2970                                                                                                 <block atomic='true'>\r
2971                                                                                                     <set>\r
2972                                                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
2973         value='FAILED' />\r
2974                                                                                                     </set>\r
2975                                                                                                     <return status='failure'>\r
2976                                                                                                         <parameter name='error-code' value='500' />\r
2977                                                                                                         <parameter name='error-message' value='`$error-message`' />\r
2978                                                                                                     </return>\r
2979                                                                                                 </block>\r
2980                                                                                             </outcome>\r
2981                                                                                         </switch>\r
2982                                                                                     </block>\r
2983                                                                                 </outcome>\r
2984                                                                                 <outcome value='not-found'>\r
2985                                                                                     <set>\r
2986                                                                                         <parameter name='error-message' value="`$error-message + ' vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' not found in AAI. Consider silent success!'`" />\r
2987                                                                                     </set>\r
2988                                                                                 </outcome>\r
2989                                                                                 <outcome value='success'>\r
2990                                                                                     <set>\r
2991                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + '  completed.'`" />\r
2992                                                                                     </set>\r
2993                                                                                 </outcome>\r
2994                                                                             </delete>\r
2995                                                                         </for>\r
2996                                                                     </for>\r
2997                                                                 </block>\r
2998                                                             </block>\r
2999                                                             <return status='failure'>\r
3000                                                                 <parameter name='error-code' value='500' />\r
3001                                                                 <parameter name='error-message' value="`' Failed to create vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' in AnAI. ' + $error-message`" />\r
3002                                                             </return>\r
3003                                                         </block>\r
3004                                                     </outcome>\r
3005                                                     <outcome value='not-found'>\r
3006                                                         <block atomic='true'>\r
3007                                                             <block>\r
3008                                                                 <block atomic='true'>\r
3009                                                                     <block>\r
3010                                                                         <block>\r
3011                                                                             <block>\r
3012                                                                                 <switch test="`$ss.resource-key.generic-vnf`">\r
3013                                                                                     <outcome value='generic-vnf'>\r
3014                                                                                         <block>\r
3015                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3016                                                                                                 <parameter name="logger" value="message-log"/>\r
3017                                                                                                 <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
3018                                                                                             </record>\r
3019                                                                                             <set>\r
3020                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
3021         value='FAILED' />\r
3022                                                                                             </set>\r
3023                                                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3024         resource="generic-vnf"\r
3025                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
3026                                                                                                 <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
3027                                                                                                 <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
3028                                                                                                 <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
3029                                                                                                 <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
3030                                                                                                 <outcome value='failure'>\r
3031                                                                                                     <set>\r
3032                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3033                                                                                                     </set>\r
3034                                                                                                 </outcome>\r
3035                                                                                                 <outcome value='not-found'>\r
3036                                                                                                     <set>\r
3037                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3038                                                                                                     </set>\r
3039                                                                                                 </outcome>\r
3040                                                                                                 <outcome value='success'>\r
3041                                                                                                     <set>\r
3042                                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
3043                                                                                                     </set>\r
3044                                                                                                 </outcome>\r
3045                                                                                             </update>\r
3046                                                                                         </block>\r
3047                                                                                     </outcome>\r
3048                                                                                 </switch>\r
3049                                                                             </block>\r
3050                                                                             <switch test="`$ss.resource-key.vf-module`">\r
3051                                                                                 <outcome value='vf-module'>\r
3052                                                                                     <block>\r
3053                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3054                                                                                             <parameter name="logger" value="message-log"/>\r
3055                                                                                             <parameter name="field1" value="ROLLBACK vf-module update"/>\r
3056                                                                                         </record>\r
3057                                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3058         resource="vf-module"\r
3059                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
3060                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
3061                                                                                             <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
3062                                                                                             <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
3063                                                                                             <outcome value='failure'>\r
3064                                                                                                 <set>\r
3065                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
3066                                                                                                 </set>\r
3067                                                                                             </outcome>\r
3068                                                                                             <outcome value='not-found'>\r
3069                                                                                                 <set>\r
3070                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
3071                                                                                                 </set>\r
3072                                                                                             </outcome>\r
3073                                                                                             <outcome value='success'>\r
3074                                                                                                 <set>\r
3075                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
3076                                                                                                 </set>\r
3077                                                                                             </outcome>\r
3078                                                                                         </update>\r
3079                                                                                     </block>\r
3080                                                                                 </outcome>\r
3081                                                                             </switch>\r
3082                                                                         </block>\r
3083                                                                         <switch test="`$ss.resource-key.volume-group`">\r
3084                                                                             <outcome value='volume-group'>\r
3085                                                                                 <block>\r
3086                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3087                                                                                         <parameter name="logger" value="message-log"/>\r
3088                                                                                         <parameter name="field1" value="ROLLBACK volume-group update"/>\r
3089                                                                                     </record>\r
3090                                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3091         resource="volume-group"\r
3092                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
3093                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
3094                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
3095                         AND volume-group-id = $ss.param.volume-group-id" >\r
3096                                                                                         <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
3097                                                                                         <outcome value='failure'>\r
3098                                                                                             <set>\r
3099                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3100                                                                                             </set>\r
3101                                                                                         </outcome>\r
3102                                                                                         <outcome value='not-found'>\r
3103                                                                                             <set>\r
3104                                                                                                 <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
3105                                                                                             </set>\r
3106                                                                                         </outcome>\r
3107                                                                                         <outcome value='success'>\r
3108                                                                                             <set>\r
3109                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
3110                                                                                             </set>\r
3111                                                                                         </outcome>\r
3112                                                                                     </update>\r
3113                                                                                 </block>\r
3114                                                                             </outcome>\r
3115                                                                         </switch>\r
3116                                                                     </block>\r
3117                                                                     <switch test="`$ss.resource-key.vnfc`">\r
3118                                                                         <outcome value='vnfc'>\r
3119                                                                             <block atomic='true'>\r
3120                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3121                                                                                     <parameter name="logger" value="message-log"/>\r
3122                                                                                     <parameter name="field1" value="ROLLBACK vnfc save"/>\r
3123                                                                                 </record>\r
3124                                                                                 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3125         resource="vnfc"\r
3126                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
3127                                                                                     <outcome value='failure'>\r
3128                                                                                         <block atomic='true'>\r
3129                                                                                             <set>\r
3130                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3131                                                                                             </set>\r
3132                                                                                             <switch test='`$tmp.return-failure`'>\r
3133                                                                                                 <outcome value='true'>\r
3134                                                                                                     <block atomic='true'>\r
3135                                                                                                         <set>\r
3136                                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
3137         value='FAILED' />\r
3138                                                                                                         </set>\r
3139                                                                                                         <return status='failure'>\r
3140                                                                                                             <parameter name='error-code' value='500' />\r
3141                                                                                                             <parameter name='error-message' value='`$error-message`' />\r
3142                                                                                                         </return>\r
3143                                                                                                     </block>\r
3144                                                                                                 </outcome>\r
3145                                                                                             </switch>\r
3146                                                                                         </block>\r
3147                                                                                     </outcome>\r
3148                                                                                     <outcome value='not-found'>\r
3149                                                                                         <set>\r
3150                                                                                             <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
3151                                                                                         </set>\r
3152                                                                                     </outcome>\r
3153                                                                                     <outcome value='success'>\r
3154                                                                                         <set>\r
3155                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
3156                                                                                         </set>\r
3157                                                                                     </outcome>\r
3158                                                                                 </delete>\r
3159                                                                             </block>\r
3160                                                                         </outcome>\r
3161                                                                     </switch>\r
3162                                                                 </block>\r
3163                                                                 <block atomic='true'>\r
3164                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3165                                                                         <parameter name="logger" value="message-log"/>\r
3166                                                                         <parameter name="field1" value="ROLLBACK vlan-tag save"/>\r
3167                                                                     </record>\r
3168                                                                     <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data_length`' >\r
3169                                                                         <for silentFailure='true' index='j' start='0' end='$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data_length`' >\r
3170                                                                             <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3171         resource="vlan-tag"\r
3172                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
3173                                                                                 <outcome value='failure'>\r
3174                                                                                     <block atomic='true'>\r
3175                                                                                         <set>\r
3176                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to delete vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3177                                                                                         </set>\r
3178                                                                                         <switch test='`$tmp.return-failure`'>\r
3179                                                                                             <outcome value='true'>\r
3180                                                                                                 <block atomic='true'>\r
3181                                                                                                     <set>\r
3182                                                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
3183         value='FAILED' />\r
3184                                                                                                     </set>\r
3185                                                                                                     <return status='failure'>\r
3186                                                                                                         <parameter name='error-code' value='500' />\r
3187                                                                                                         <parameter name='error-message' value='`$error-message`' />\r
3188                                                                                                     </return>\r
3189                                                                                                 </block>\r
3190                                                                                             </outcome>\r
3191                                                                                         </switch>\r
3192                                                                                     </block>\r
3193                                                                                 </outcome>\r
3194                                                                                 <outcome value='not-found'>\r
3195                                                                                     <set>\r
3196                                                                                         <parameter name='error-message' value="`$error-message + ' vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' not found in AAI. Consider silent success!'`" />\r
3197                                                                                     </set>\r
3198                                                                                 </outcome>\r
3199                                                                                 <outcome value='success'>\r
3200                                                                                     <set>\r
3201                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + '  completed.'`" />\r
3202                                                                                     </set>\r
3203                                                                                 </outcome>\r
3204                                                                             </delete>\r
3205                                                                         </for>\r
3206                                                                     </for>\r
3207                                                                 </block>\r
3208                                                             </block>\r
3209                                                             <return status='failure'>\r
3210                                                                 <parameter name='error-code' value='500' />\r
3211                                                                 <parameter name='error-message' value="`' Failed to create vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' in AnAI. ' + $error-message`" />\r
3212                                                             </return>\r
3213                                                         </block>\r
3214                                                     </outcome>\r
3215                                                 </save>\r
3216                                             </for>\r
3217                                         </outcome>\r
3218                                     </save>\r
3219                                 </for>\r
3220                             </outcome>\r
3221                         </switch>\r
3222                         <switch test="`$ss.resource-key.l-interface`">\r
3223                             <outcome value='l-interface'>\r
3224                                 <block atomic='true'>\r
3225                                     <switch test="`$ss.param.oam-interface-name != ''`">\r
3226                                         <outcome value='true'>\r
3227                                             <block atomic='true'>\r
3228                                                 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3229         resource="l-interface"\r
3230                 key="l-interface.interface-name = $ss.param.oam-interface-name\r
3231                 AND generic-vnf.vnf-id = $ss.param.vnf-id" >\r
3232                                                     <parameter name="interface-name" value='`$ss.param.oam-interface-name`' />\r
3233                                                     <parameter name="interface-role" value='OAM' />\r
3234                                                     <outcome value='failure'>\r
3235                                                         <block atomic='true'>\r
3236                                                             <block>\r
3237                                                                 <block atomic='true'>\r
3238                                                                     <block>\r
3239                                                                         <block>\r
3240                                                                             <block>\r
3241                                                                                 <switch test="`$ss.resource-key.generic-vnf`">\r
3242                                                                                     <outcome value='generic-vnf'>\r
3243                                                                                         <block>\r
3244                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3245                                                                                                 <parameter name="logger" value="message-log"/>\r
3246                                                                                                 <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
3247                                                                                             </record>\r
3248                                                                                             <set>\r
3249                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
3250         value='FAILED' />\r
3251                                                                                             </set>\r
3252                                                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3253         resource="generic-vnf"\r
3254                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
3255                                                                                                 <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
3256                                                                                                 <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
3257                                                                                                 <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
3258                                                                                                 <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
3259                                                                                                 <outcome value='failure'>\r
3260                                                                                                     <set>\r
3261                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3262                                                                                                     </set>\r
3263                                                                                                 </outcome>\r
3264                                                                                                 <outcome value='not-found'>\r
3265                                                                                                     <set>\r
3266                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3267                                                                                                     </set>\r
3268                                                                                                 </outcome>\r
3269                                                                                                 <outcome value='success'>\r
3270                                                                                                     <set>\r
3271                                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
3272                                                                                                     </set>\r
3273                                                                                                 </outcome>\r
3274                                                                                             </update>\r
3275                                                                                         </block>\r
3276                                                                                     </outcome>\r
3277                                                                                 </switch>\r
3278                                                                             </block>\r
3279                                                                             <switch test="`$ss.resource-key.vf-module`">\r
3280                                                                                 <outcome value='vf-module'>\r
3281                                                                                     <block>\r
3282                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3283                                                                                             <parameter name="logger" value="message-log"/>\r
3284                                                                                             <parameter name="field1" value="ROLLBACK vf-module update"/>\r
3285                                                                                         </record>\r
3286                                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3287         resource="vf-module"\r
3288                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
3289                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
3290                                                                                             <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
3291                                                                                             <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
3292                                                                                             <outcome value='failure'>\r
3293                                                                                                 <set>\r
3294                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
3295                                                                                                 </set>\r
3296                                                                                             </outcome>\r
3297                                                                                             <outcome value='not-found'>\r
3298                                                                                                 <set>\r
3299                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
3300                                                                                                 </set>\r
3301                                                                                             </outcome>\r
3302                                                                                             <outcome value='success'>\r
3303                                                                                                 <set>\r
3304                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
3305                                                                                                 </set>\r
3306                                                                                             </outcome>\r
3307                                                                                         </update>\r
3308                                                                                     </block>\r
3309                                                                                 </outcome>\r
3310                                                                             </switch>\r
3311                                                                         </block>\r
3312                                                                         <switch test="`$ss.resource-key.volume-group`">\r
3313                                                                             <outcome value='volume-group'>\r
3314                                                                                 <block>\r
3315                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3316                                                                                         <parameter name="logger" value="message-log"/>\r
3317                                                                                         <parameter name="field1" value="ROLLBACK volume-group update"/>\r
3318                                                                                     </record>\r
3319                                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3320         resource="volume-group"\r
3321                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
3322                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
3323                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
3324                         AND volume-group-id = $ss.param.volume-group-id" >\r
3325                                                                                         <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
3326                                                                                         <outcome value='failure'>\r
3327                                                                                             <set>\r
3328                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3329                                                                                             </set>\r
3330                                                                                         </outcome>\r
3331                                                                                         <outcome value='not-found'>\r
3332                                                                                             <set>\r
3333                                                                                                 <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
3334                                                                                             </set>\r
3335                                                                                         </outcome>\r
3336                                                                                         <outcome value='success'>\r
3337                                                                                             <set>\r
3338                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
3339                                                                                             </set>\r
3340                                                                                         </outcome>\r
3341                                                                                     </update>\r
3342                                                                                 </block>\r
3343                                                                             </outcome>\r
3344                                                                         </switch>\r
3345                                                                     </block>\r
3346                                                                     <switch test="`$ss.resource-key.vnfc`">\r
3347                                                                         <outcome value='vnfc'>\r
3348                                                                             <block atomic='true'>\r
3349                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3350                                                                                     <parameter name="logger" value="message-log"/>\r
3351                                                                                     <parameter name="field1" value="ROLLBACK vnfc save"/>\r
3352                                                                                 </record>\r
3353                                                                                 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3354         resource="vnfc"\r
3355                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
3356                                                                                     <outcome value='failure'>\r
3357                                                                                         <block atomic='true'>\r
3358                                                                                             <set>\r
3359                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3360                                                                                             </set>\r
3361                                                                                             <switch test='`$tmp.return-failure`'>\r
3362                                                                                                 <outcome value='true'>\r
3363                                                                                                     <block atomic='true'>\r
3364                                                                                                         <set>\r
3365                                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
3366         value='FAILED' />\r
3367                                                                                                         </set>\r
3368                                                                                                         <return status='failure'>\r
3369                                                                                                             <parameter name='error-code' value='500' />\r
3370                                                                                                             <parameter name='error-message' value='`$error-message`' />\r
3371                                                                                                         </return>\r
3372                                                                                                     </block>\r
3373                                                                                                 </outcome>\r
3374                                                                                             </switch>\r
3375                                                                                         </block>\r
3376                                                                                     </outcome>\r
3377                                                                                     <outcome value='not-found'>\r
3378                                                                                         <set>\r
3379                                                                                             <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
3380                                                                                         </set>\r
3381                                                                                     </outcome>\r
3382                                                                                     <outcome value='success'>\r
3383                                                                                         <set>\r
3384                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
3385                                                                                         </set>\r
3386                                                                                     </outcome>\r
3387                                                                                 </delete>\r
3388                                                                             </block>\r
3389                                                                         </outcome>\r
3390                                                                     </switch>\r
3391                                                                 </block>\r
3392                                                                 <block atomic='true'>\r
3393                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3394                                                                         <parameter name="logger" value="message-log"/>\r
3395                                                                         <parameter name="field1" value="ROLLBACK vlan-tag save"/>\r
3396                                                                     </record>\r
3397                                                                     <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data_length`' >\r
3398                                                                         <for silentFailure='true' index='j' start='0' end='$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data_length`' >\r
3399                                                                             <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3400         resource="vlan-tag"\r
3401                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
3402                                                                                 <outcome value='failure'>\r
3403                                                                                     <block atomic='true'>\r
3404                                                                                         <set>\r
3405                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to delete vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3406                                                                                         </set>\r
3407                                                                                         <switch test='`$tmp.return-failure`'>\r
3408                                                                                             <outcome value='true'>\r
3409                                                                                                 <block atomic='true'>\r
3410                                                                                                     <set>\r
3411                                                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
3412         value='FAILED' />\r
3413                                                                                                     </set>\r
3414                                                                                                     <return status='failure'>\r
3415                                                                                                         <parameter name='error-code' value='500' />\r
3416                                                                                                         <parameter name='error-message' value='`$error-message`' />\r
3417                                                                                                     </return>\r
3418                                                                                                 </block>\r
3419                                                                                             </outcome>\r
3420                                                                                         </switch>\r
3421                                                                                     </block>\r
3422                                                                                 </outcome>\r
3423                                                                                 <outcome value='not-found'>\r
3424                                                                                     <set>\r
3425                                                                                         <parameter name='error-message' value="`$error-message + ' vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' not found in AAI. Consider silent success!'`" />\r
3426                                                                                     </set>\r
3427                                                                                 </outcome>\r
3428                                                                                 <outcome value='success'>\r
3429                                                                                     <set>\r
3430                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + '  completed.'`" />\r
3431                                                                                     </set>\r
3432                                                                                 </outcome>\r
3433                                                                             </delete>\r
3434                                                                         </for>\r
3435                                                                     </for>\r
3436                                                                 </block>\r
3437                                                             </block>\r
3438                                                             <return status='failure'>\r
3439                                                                 <parameter name='error-code' value='500' />\r
3440                                                                 <parameter name='error-message' value="`' Failed to create l-interface with interface-name = ' + $ss.param.oam-interface-name + ' in AnAI. ' + $error-message`" />\r
3441                                                             </return>\r
3442                                                         </block>\r
3443                                                     </outcome>\r
3444                                                     <outcome value='not-found'>\r
3445                                                         <block atomic='true'>\r
3446                                                             <block>\r
3447                                                                 <block atomic='true'>\r
3448                                                                     <block>\r
3449                                                                         <block>\r
3450                                                                             <block>\r
3451                                                                                 <switch test="`$ss.resource-key.generic-vnf`">\r
3452                                                                                     <outcome value='generic-vnf'>\r
3453                                                                                         <block>\r
3454                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3455                                                                                                 <parameter name="logger" value="message-log"/>\r
3456                                                                                                 <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
3457                                                                                             </record>\r
3458                                                                                             <set>\r
3459                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
3460         value='FAILED' />\r
3461                                                                                             </set>\r
3462                                                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3463         resource="generic-vnf"\r
3464                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
3465                                                                                                 <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
3466                                                                                                 <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
3467                                                                                                 <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
3468                                                                                                 <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
3469                                                                                                 <outcome value='failure'>\r
3470                                                                                                     <set>\r
3471                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3472                                                                                                     </set>\r
3473                                                                                                 </outcome>\r
3474                                                                                                 <outcome value='not-found'>\r
3475                                                                                                     <set>\r
3476                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3477                                                                                                     </set>\r
3478                                                                                                 </outcome>\r
3479                                                                                                 <outcome value='success'>\r
3480                                                                                                     <set>\r
3481                                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
3482                                                                                                     </set>\r
3483                                                                                                 </outcome>\r
3484                                                                                             </update>\r
3485                                                                                         </block>\r
3486                                                                                     </outcome>\r
3487                                                                                 </switch>\r
3488                                                                             </block>\r
3489                                                                             <switch test="`$ss.resource-key.vf-module`">\r
3490                                                                                 <outcome value='vf-module'>\r
3491                                                                                     <block>\r
3492                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3493                                                                                             <parameter name="logger" value="message-log"/>\r
3494                                                                                             <parameter name="field1" value="ROLLBACK vf-module update"/>\r
3495                                                                                         </record>\r
3496                                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3497         resource="vf-module"\r
3498                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
3499                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
3500                                                                                             <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
3501                                                                                             <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
3502                                                                                             <outcome value='failure'>\r
3503                                                                                                 <set>\r
3504                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
3505                                                                                                 </set>\r
3506                                                                                             </outcome>\r
3507                                                                                             <outcome value='not-found'>\r
3508                                                                                                 <set>\r
3509                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
3510                                                                                                 </set>\r
3511                                                                                             </outcome>\r
3512                                                                                             <outcome value='success'>\r
3513                                                                                                 <set>\r
3514                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
3515                                                                                                 </set>\r
3516                                                                                             </outcome>\r
3517                                                                                         </update>\r
3518                                                                                     </block>\r
3519                                                                                 </outcome>\r
3520                                                                             </switch>\r
3521                                                                         </block>\r
3522                                                                         <switch test="`$ss.resource-key.volume-group`">\r
3523                                                                             <outcome value='volume-group'>\r
3524                                                                                 <block>\r
3525                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3526                                                                                         <parameter name="logger" value="message-log"/>\r
3527                                                                                         <parameter name="field1" value="ROLLBACK volume-group update"/>\r
3528                                                                                     </record>\r
3529                                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3530         resource="volume-group"\r
3531                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
3532                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
3533                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
3534                         AND volume-group-id = $ss.param.volume-group-id" >\r
3535                                                                                         <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
3536                                                                                         <outcome value='failure'>\r
3537                                                                                             <set>\r
3538                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3539                                                                                             </set>\r
3540                                                                                         </outcome>\r
3541                                                                                         <outcome value='not-found'>\r
3542                                                                                             <set>\r
3543                                                                                                 <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
3544                                                                                             </set>\r
3545                                                                                         </outcome>\r
3546                                                                                         <outcome value='success'>\r
3547                                                                                             <set>\r
3548                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
3549                                                                                             </set>\r
3550                                                                                         </outcome>\r
3551                                                                                     </update>\r
3552                                                                                 </block>\r
3553                                                                             </outcome>\r
3554                                                                         </switch>\r
3555                                                                     </block>\r
3556                                                                     <switch test="`$ss.resource-key.vnfc`">\r
3557                                                                         <outcome value='vnfc'>\r
3558                                                                             <block atomic='true'>\r
3559                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3560                                                                                     <parameter name="logger" value="message-log"/>\r
3561                                                                                     <parameter name="field1" value="ROLLBACK vnfc save"/>\r
3562                                                                                 </record>\r
3563                                                                                 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3564         resource="vnfc"\r
3565                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
3566                                                                                     <outcome value='failure'>\r
3567                                                                                         <block atomic='true'>\r
3568                                                                                             <set>\r
3569                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3570                                                                                             </set>\r
3571                                                                                             <switch test='`$tmp.return-failure`'>\r
3572                                                                                                 <outcome value='true'>\r
3573                                                                                                     <block atomic='true'>\r
3574                                                                                                         <set>\r
3575                                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
3576         value='FAILED' />\r
3577                                                                                                         </set>\r
3578                                                                                                         <return status='failure'>\r
3579                                                                                                             <parameter name='error-code' value='500' />\r
3580                                                                                                             <parameter name='error-message' value='`$error-message`' />\r
3581                                                                                                         </return>\r
3582                                                                                                     </block>\r
3583                                                                                                 </outcome>\r
3584                                                                                             </switch>\r
3585                                                                                         </block>\r
3586                                                                                     </outcome>\r
3587                                                                                     <outcome value='not-found'>\r
3588                                                                                         <set>\r
3589                                                                                             <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
3590                                                                                         </set>\r
3591                                                                                     </outcome>\r
3592                                                                                     <outcome value='success'>\r
3593                                                                                         <set>\r
3594                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
3595                                                                                         </set>\r
3596                                                                                     </outcome>\r
3597                                                                                 </delete>\r
3598                                                                             </block>\r
3599                                                                         </outcome>\r
3600                                                                     </switch>\r
3601                                                                 </block>\r
3602                                                                 <block atomic='true'>\r
3603                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3604                                                                         <parameter name="logger" value="message-log"/>\r
3605                                                                         <parameter name="field1" value="ROLLBACK vlan-tag save"/>\r
3606                                                                     </record>\r
3607                                                                     <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data_length`' >\r
3608                                                                         <for silentFailure='true' index='j' start='0' end='$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data_length`' >\r
3609                                                                             <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3610         resource="vlan-tag"\r
3611                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
3612                                                                                 <outcome value='failure'>\r
3613                                                                                     <block atomic='true'>\r
3614                                                                                         <set>\r
3615                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to delete vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3616                                                                                         </set>\r
3617                                                                                         <switch test='`$tmp.return-failure`'>\r
3618                                                                                             <outcome value='true'>\r
3619                                                                                                 <block atomic='true'>\r
3620                                                                                                     <set>\r
3621                                                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
3622         value='FAILED' />\r
3623                                                                                                     </set>\r
3624                                                                                                     <return status='failure'>\r
3625                                                                                                         <parameter name='error-code' value='500' />\r
3626                                                                                                         <parameter name='error-message' value='`$error-message`' />\r
3627                                                                                                     </return>\r
3628                                                                                                 </block>\r
3629                                                                                             </outcome>\r
3630                                                                                         </switch>\r
3631                                                                                     </block>\r
3632                                                                                 </outcome>\r
3633                                                                                 <outcome value='not-found'>\r
3634                                                                                     <set>\r
3635                                                                                         <parameter name='error-message' value="`$error-message + ' vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' not found in AAI. Consider silent success!'`" />\r
3636                                                                                     </set>\r
3637                                                                                 </outcome>\r
3638                                                                                 <outcome value='success'>\r
3639                                                                                     <set>\r
3640                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + '  completed.'`" />\r
3641                                                                                     </set>\r
3642                                                                                 </outcome>\r
3643                                                                             </delete>\r
3644                                                                         </for>\r
3645                                                                     </for>\r
3646                                                                 </block>\r
3647                                                             </block>\r
3648                                                             <return status='failure'>\r
3649                                                                 <parameter name='error-code' value='500' />\r
3650                                                                 <parameter name='error-message' value="`' Failed to create l-interface with interface-name = ' + $ss.param.oam-interface-name + ' in AnAI. ' + $error-message`" />\r
3651                                                             </return>\r
3652                                                         </block>\r
3653                                                     </outcome>\r
3654                                                 </save>\r
3655                                                 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3656         resource="l3-interface-ipv4-address-list"\r
3657                 key="l3-interface-ipv4-address-list.l3-interface-ipv4-address = $ss.param.ipv4-oam-address \r
3658                 AND generic-vnf.vnf-id = $ss.param.vnf-id \r
3659                 AND l-interface.interface-name = $ss.param.oam-interface-name" >\r
3660                                                     <parameter name="l3-interface-ipv4-address" value='`$ss.param.ipv4-oam-address`' />\r
3661                                                     <parameter name="l3-interface-ipv4-prefix-length" value='`$ss.param.ipv4-oam-address-prefix`' />\r
3662                                                     <outcome value='failure'>\r
3663                                                         <block atomic='true'>\r
3664                                                             <block>\r
3665                                                                 <block>\r
3666                                                                     <block atomic='true'>\r
3667                                                                         <block>\r
3668                                                                             <block>\r
3669                                                                                 <block>\r
3670                                                                                     <switch test="`$ss.resource-key.generic-vnf`">\r
3671                                                                                         <outcome value='generic-vnf'>\r
3672                                                                                             <block>\r
3673                                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3674                                                                                                     <parameter name="logger" value="message-log"/>\r
3675                                                                                                     <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
3676                                                                                                 </record>\r
3677                                                                                                 <set>\r
3678                                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
3679         value='FAILED' />\r
3680                                                                                                 </set>\r
3681                                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3682         resource="generic-vnf"\r
3683                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
3684                                                                                                     <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
3685                                                                                                     <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
3686                                                                                                     <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
3687                                                                                                     <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
3688                                                                                                     <outcome value='failure'>\r
3689                                                                                                         <set>\r
3690                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3691                                                                                                         </set>\r
3692                                                                                                     </outcome>\r
3693                                                                                                     <outcome value='not-found'>\r
3694                                                                                                         <set>\r
3695                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3696                                                                                                         </set>\r
3697                                                                                                     </outcome>\r
3698                                                                                                     <outcome value='success'>\r
3699                                                                                                         <set>\r
3700                                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
3701                                                                                                         </set>\r
3702                                                                                                     </outcome>\r
3703                                                                                                 </update>\r
3704                                                                                             </block>\r
3705                                                                                         </outcome>\r
3706                                                                                     </switch>\r
3707                                                                                 </block>\r
3708                                                                                 <switch test="`$ss.resource-key.vf-module`">\r
3709                                                                                     <outcome value='vf-module'>\r
3710                                                                                         <block>\r
3711                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3712                                                                                                 <parameter name="logger" value="message-log"/>\r
3713                                                                                                 <parameter name="field1" value="ROLLBACK vf-module update"/>\r
3714                                                                                             </record>\r
3715                                                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3716         resource="vf-module"\r
3717                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
3718                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
3719                                                                                                 <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
3720                                                                                                 <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
3721                                                                                                 <outcome value='failure'>\r
3722                                                                                                     <set>\r
3723                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
3724                                                                                                     </set>\r
3725                                                                                                 </outcome>\r
3726                                                                                                 <outcome value='not-found'>\r
3727                                                                                                     <set>\r
3728                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
3729                                                                                                     </set>\r
3730                                                                                                 </outcome>\r
3731                                                                                                 <outcome value='success'>\r
3732                                                                                                     <set>\r
3733                                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
3734                                                                                                     </set>\r
3735                                                                                                 </outcome>\r
3736                                                                                             </update>\r
3737                                                                                         </block>\r
3738                                                                                     </outcome>\r
3739                                                                                 </switch>\r
3740                                                                             </block>\r
3741                                                                             <switch test="`$ss.resource-key.volume-group`">\r
3742                                                                                 <outcome value='volume-group'>\r
3743                                                                                     <block>\r
3744                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3745                                                                                             <parameter name="logger" value="message-log"/>\r
3746                                                                                             <parameter name="field1" value="ROLLBACK volume-group update"/>\r
3747                                                                                         </record>\r
3748                                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3749         resource="volume-group"\r
3750                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
3751                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
3752                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
3753                         AND volume-group-id = $ss.param.volume-group-id" >\r
3754                                                                                             <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
3755                                                                                             <outcome value='failure'>\r
3756                                                                                                 <set>\r
3757                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3758                                                                                                 </set>\r
3759                                                                                             </outcome>\r
3760                                                                                             <outcome value='not-found'>\r
3761                                                                                                 <set>\r
3762                                                                                                     <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
3763                                                                                                 </set>\r
3764                                                                                             </outcome>\r
3765                                                                                             <outcome value='success'>\r
3766                                                                                                 <set>\r
3767                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
3768                                                                                                 </set>\r
3769                                                                                             </outcome>\r
3770                                                                                         </update>\r
3771                                                                                     </block>\r
3772                                                                                 </outcome>\r
3773                                                                             </switch>\r
3774                                                                         </block>\r
3775                                                                         <switch test="`$ss.resource-key.vnfc`">\r
3776                                                                             <outcome value='vnfc'>\r
3777                                                                                 <block atomic='true'>\r
3778                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3779                                                                                         <parameter name="logger" value="message-log"/>\r
3780                                                                                         <parameter name="field1" value="ROLLBACK vnfc save"/>\r
3781                                                                                     </record>\r
3782                                                                                     <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3783         resource="vnfc"\r
3784                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
3785                                                                                         <outcome value='failure'>\r
3786                                                                                             <block atomic='true'>\r
3787                                                                                                 <set>\r
3788                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3789                                                                                                 </set>\r
3790                                                                                                 <switch test='`$tmp.return-failure`'>\r
3791                                                                                                     <outcome value='true'>\r
3792                                                                                                         <block atomic='true'>\r
3793                                                                                                             <set>\r
3794                                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
3795         value='FAILED' />\r
3796                                                                                                             </set>\r
3797                                                                                                             <return status='failure'>\r
3798                                                                                                                 <parameter name='error-code' value='500' />\r
3799                                                                                                                 <parameter name='error-message' value='`$error-message`' />\r
3800                                                                                                             </return>\r
3801                                                                                                         </block>\r
3802                                                                                                     </outcome>\r
3803                                                                                                 </switch>\r
3804                                                                                             </block>\r
3805                                                                                         </outcome>\r
3806                                                                                         <outcome value='not-found'>\r
3807                                                                                             <set>\r
3808                                                                                                 <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
3809                                                                                             </set>\r
3810                                                                                         </outcome>\r
3811                                                                                         <outcome value='success'>\r
3812                                                                                             <set>\r
3813                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
3814                                                                                             </set>\r
3815                                                                                         </outcome>\r
3816                                                                                     </delete>\r
3817                                                                                 </block>\r
3818                                                                             </outcome>\r
3819                                                                         </switch>\r
3820                                                                     </block>\r
3821                                                                     <block atomic='true'>\r
3822                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3823                                                                             <parameter name="logger" value="message-log"/>\r
3824                                                                             <parameter name="field1" value="ROLLBACK vlan-tag save"/>\r
3825                                                                         </record>\r
3826                                                                         <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data_length`' >\r
3827                                                                             <for silentFailure='true' index='j' start='0' end='$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data_length`' >\r
3828                                                                                 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3829         resource="vlan-tag"\r
3830                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
3831                                                                                     <outcome value='failure'>\r
3832                                                                                         <block atomic='true'>\r
3833                                                                                             <set>\r
3834                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to delete vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3835                                                                                             </set>\r
3836                                                                                             <switch test='`$tmp.return-failure`'>\r
3837                                                                                                 <outcome value='true'>\r
3838                                                                                                     <block atomic='true'>\r
3839                                                                                                         <set>\r
3840                                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
3841         value='FAILED' />\r
3842                                                                                                         </set>\r
3843                                                                                                         <return status='failure'>\r
3844                                                                                                             <parameter name='error-code' value='500' />\r
3845                                                                                                             <parameter name='error-message' value='`$error-message`' />\r
3846                                                                                                         </return>\r
3847                                                                                                     </block>\r
3848                                                                                                 </outcome>\r
3849                                                                                             </switch>\r
3850                                                                                         </block>\r
3851                                                                                     </outcome>\r
3852                                                                                     <outcome value='not-found'>\r
3853                                                                                         <set>\r
3854                                                                                             <parameter name='error-message' value="`$error-message + ' vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' not found in AAI. Consider silent success!'`" />\r
3855                                                                                         </set>\r
3856                                                                                     </outcome>\r
3857                                                                                     <outcome value='success'>\r
3858                                                                                         <set>\r
3859                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + '  completed.'`" />\r
3860                                                                                         </set>\r
3861                                                                                     </outcome>\r
3862                                                                                 </delete>\r
3863                                                                             </for>\r
3864                                                                         </for>\r
3865                                                                     </block>\r
3866                                                                 </block>\r
3867                                                                 <switch test="`$ss.resource-key.l-interface`">\r
3868                                                                     <outcome value='l-interface'>\r
3869                                                                         <block atomic='true'>\r
3870                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3871                                                                                 <parameter name="logger" value="message-log"/>\r
3872                                                                                 <parameter name="field1" value="ROLLBACK l-interface (oam) save"/>\r
3873                                                                             </record>\r
3874                                                                             <switch test="`$ss.param.oam-interface-name != ''`">\r
3875                                                                                 <outcome value='true'>\r
3876                                                                                     <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3877         resource="l-interface"\r
3878                 key="l-interface.interface-name = $ss.param.oam-interface-name\r
3879                 AND generic-vnf.vnf-id = $ss.param.vnf-id" >\r
3880                                                                                         <outcome value='failure'>\r
3881                                                                                             <block atomic='true'>\r
3882                                                                                                 <set>\r
3883                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to delete l-interface.interface-name = ' + $ss.param.oam-interface-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3884                                                                                                 </set>\r
3885                                                                                                 <switch test='`$tmp.return-failure`'>\r
3886                                                                                                     <outcome value='true'>\r
3887                                                                                                         <block atomic='true'>\r
3888                                                                                                             <set>\r
3889                                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
3890         value='FAILED' />\r
3891                                                                                                             </set>\r
3892                                                                                                             <return status='failure'>\r
3893                                                                                                                 <parameter name='error-code' value='500' />\r
3894                                                                                                                 <parameter name='error-message' value='`$error-message`' />\r
3895                                                                                                             </return>\r
3896                                                                                                         </block>\r
3897                                                                                                     </outcome>\r
3898                                                                                                 </switch>\r
3899                                                                                             </block>\r
3900                                                                                         </outcome>\r
3901                                                                                         <outcome value='not-found'>\r
3902                                                                                             <set>\r
3903                                                                                                 <parameter name='error-message' value="`$error-message + ' l-interface.interface-name = ' + $ss.param.oam-interface-name + ' not found in AAI. Consider silent success!'`" />\r
3904                                                                                             </set>\r
3905                                                                                         </outcome>\r
3906                                                                                         <outcome value='success'>\r
3907                                                                                             <set>\r
3908                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback (delete) of l-interface with interface-name = ' + $ss.param.oam-interface-name + '  completed.'`" />\r
3909                                                                                             </set>\r
3910                                                                                         </outcome>\r
3911                                                                                     </delete>\r
3912                                                                                 </outcome>\r
3913                                                                             </switch>\r
3914                                                                         </block>\r
3915                                                                     </outcome>\r
3916                                                                 </switch>\r
3917                                                             </block>\r
3918                                                             <return status='failure'>\r
3919                                                                 <parameter name='error-code' value='500' />\r
3920                                                                 <parameter name='error-message' value="`' Failed to create l3-interface-ipv4-address-list with l3-interface-ipv4-address = ' + $ss.param.ipv4-oam-address + ' in AnAI. ' + $error-message`" />\r
3921                                                             </return>\r
3922                                                         </block>\r
3923                                                     </outcome>\r
3924                                                     <outcome value='not-found'>\r
3925                                                         <block atomic='true'>\r
3926                                                             <block>\r
3927                                                                 <block>\r
3928                                                                     <block atomic='true'>\r
3929                                                                         <block>\r
3930                                                                             <block>\r
3931                                                                                 <block>\r
3932                                                                                     <switch test="`$ss.resource-key.generic-vnf`">\r
3933                                                                                         <outcome value='generic-vnf'>\r
3934                                                                                             <block>\r
3935                                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3936                                                                                                     <parameter name="logger" value="message-log"/>\r
3937                                                                                                     <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
3938                                                                                                 </record>\r
3939                                                                                                 <set>\r
3940                                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
3941         value='FAILED' />\r
3942                                                                                                 </set>\r
3943                                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3944         resource="generic-vnf"\r
3945                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
3946                                                                                                     <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
3947                                                                                                     <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
3948                                                                                                     <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
3949                                                                                                     <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
3950                                                                                                     <outcome value='failure'>\r
3951                                                                                                         <set>\r
3952                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3953                                                                                                         </set>\r
3954                                                                                                     </outcome>\r
3955                                                                                                     <outcome value='not-found'>\r
3956                                                                                                         <set>\r
3957                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
3958                                                                                                         </set>\r
3959                                                                                                     </outcome>\r
3960                                                                                                     <outcome value='success'>\r
3961                                                                                                         <set>\r
3962                                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
3963                                                                                                         </set>\r
3964                                                                                                     </outcome>\r
3965                                                                                                 </update>\r
3966                                                                                             </block>\r
3967                                                                                         </outcome>\r
3968                                                                                     </switch>\r
3969                                                                                 </block>\r
3970                                                                                 <switch test="`$ss.resource-key.vf-module`">\r
3971                                                                                     <outcome value='vf-module'>\r
3972                                                                                         <block>\r
3973                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
3974                                                                                                 <parameter name="logger" value="message-log"/>\r
3975                                                                                                 <parameter name="field1" value="ROLLBACK vf-module update"/>\r
3976                                                                                             </record>\r
3977                                                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
3978         resource="vf-module"\r
3979                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
3980                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
3981                                                                                                 <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
3982                                                                                                 <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
3983                                                                                                 <outcome value='failure'>\r
3984                                                                                                     <set>\r
3985                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
3986                                                                                                     </set>\r
3987                                                                                                 </outcome>\r
3988                                                                                                 <outcome value='not-found'>\r
3989                                                                                                     <set>\r
3990                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
3991                                                                                                     </set>\r
3992                                                                                                 </outcome>\r
3993                                                                                                 <outcome value='success'>\r
3994                                                                                                     <set>\r
3995                                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
3996                                                                                                     </set>\r
3997                                                                                                 </outcome>\r
3998                                                                                             </update>\r
3999                                                                                         </block>\r
4000                                                                                     </outcome>\r
4001                                                                                 </switch>\r
4002                                                                             </block>\r
4003                                                                             <switch test="`$ss.resource-key.volume-group`">\r
4004                                                                                 <outcome value='volume-group'>\r
4005                                                                                     <block>\r
4006                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4007                                                                                             <parameter name="logger" value="message-log"/>\r
4008                                                                                             <parameter name="field1" value="ROLLBACK volume-group update"/>\r
4009                                                                                         </record>\r
4010                                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4011         resource="volume-group"\r
4012                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
4013                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
4014                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
4015                         AND volume-group-id = $ss.param.volume-group-id" >\r
4016                                                                                             <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
4017                                                                                             <outcome value='failure'>\r
4018                                                                                                 <set>\r
4019                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4020                                                                                                 </set>\r
4021                                                                                             </outcome>\r
4022                                                                                             <outcome value='not-found'>\r
4023                                                                                                 <set>\r
4024                                                                                                     <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
4025                                                                                                 </set>\r
4026                                                                                             </outcome>\r
4027                                                                                             <outcome value='success'>\r
4028                                                                                                 <set>\r
4029                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
4030                                                                                                 </set>\r
4031                                                                                             </outcome>\r
4032                                                                                         </update>\r
4033                                                                                     </block>\r
4034                                                                                 </outcome>\r
4035                                                                             </switch>\r
4036                                                                         </block>\r
4037                                                                         <switch test="`$ss.resource-key.vnfc`">\r
4038                                                                             <outcome value='vnfc'>\r
4039                                                                                 <block atomic='true'>\r
4040                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4041                                                                                         <parameter name="logger" value="message-log"/>\r
4042                                                                                         <parameter name="field1" value="ROLLBACK vnfc save"/>\r
4043                                                                                     </record>\r
4044                                                                                     <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4045         resource="vnfc"\r
4046                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
4047                                                                                         <outcome value='failure'>\r
4048                                                                                             <block atomic='true'>\r
4049                                                                                                 <set>\r
4050                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4051                                                                                                 </set>\r
4052                                                                                                 <switch test='`$tmp.return-failure`'>\r
4053                                                                                                     <outcome value='true'>\r
4054                                                                                                         <block atomic='true'>\r
4055                                                                                                             <set>\r
4056                                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
4057         value='FAILED' />\r
4058                                                                                                             </set>\r
4059                                                                                                             <return status='failure'>\r
4060                                                                                                                 <parameter name='error-code' value='500' />\r
4061                                                                                                                 <parameter name='error-message' value='`$error-message`' />\r
4062                                                                                                             </return>\r
4063                                                                                                         </block>\r
4064                                                                                                     </outcome>\r
4065                                                                                                 </switch>\r
4066                                                                                             </block>\r
4067                                                                                         </outcome>\r
4068                                                                                         <outcome value='not-found'>\r
4069                                                                                             <set>\r
4070                                                                                                 <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
4071                                                                                             </set>\r
4072                                                                                         </outcome>\r
4073                                                                                         <outcome value='success'>\r
4074                                                                                             <set>\r
4075                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
4076                                                                                             </set>\r
4077                                                                                         </outcome>\r
4078                                                                                     </delete>\r
4079                                                                                 </block>\r
4080                                                                             </outcome>\r
4081                                                                         </switch>\r
4082                                                                     </block>\r
4083                                                                     <block atomic='true'>\r
4084                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4085                                                                             <parameter name="logger" value="message-log"/>\r
4086                                                                             <parameter name="field1" value="ROLLBACK vlan-tag save"/>\r
4087                                                                         </record>\r
4088                                                                         <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data_length`' >\r
4089                                                                             <for silentFailure='true' index='j' start='0' end='$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data_length`' >\r
4090                                                                                 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4091         resource="vlan-tag"\r
4092                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
4093                                                                                     <outcome value='failure'>\r
4094                                                                                         <block atomic='true'>\r
4095                                                                                             <set>\r
4096                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to delete vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4097                                                                                             </set>\r
4098                                                                                             <switch test='`$tmp.return-failure`'>\r
4099                                                                                                 <outcome value='true'>\r
4100                                                                                                     <block atomic='true'>\r
4101                                                                                                         <set>\r
4102                                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
4103         value='FAILED' />\r
4104                                                                                                         </set>\r
4105                                                                                                         <return status='failure'>\r
4106                                                                                                             <parameter name='error-code' value='500' />\r
4107                                                                                                             <parameter name='error-message' value='`$error-message`' />\r
4108                                                                                                         </return>\r
4109                                                                                                     </block>\r
4110                                                                                                 </outcome>\r
4111                                                                                             </switch>\r
4112                                                                                         </block>\r
4113                                                                                     </outcome>\r
4114                                                                                     <outcome value='not-found'>\r
4115                                                                                         <set>\r
4116                                                                                             <parameter name='error-message' value="`$error-message + ' vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' not found in AAI. Consider silent success!'`" />\r
4117                                                                                         </set>\r
4118                                                                                     </outcome>\r
4119                                                                                     <outcome value='success'>\r
4120                                                                                         <set>\r
4121                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + '  completed.'`" />\r
4122                                                                                         </set>\r
4123                                                                                     </outcome>\r
4124                                                                                 </delete>\r
4125                                                                             </for>\r
4126                                                                         </for>\r
4127                                                                     </block>\r
4128                                                                 </block>\r
4129                                                                 <switch test="`$ss.resource-key.l-interface`">\r
4130                                                                     <outcome value='l-interface'>\r
4131                                                                         <block atomic='true'>\r
4132                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4133                                                                                 <parameter name="logger" value="message-log"/>\r
4134                                                                                 <parameter name="field1" value="ROLLBACK l-interface (oam) save"/>\r
4135                                                                             </record>\r
4136                                                                             <switch test="`$ss.param.oam-interface-name != ''`">\r
4137                                                                                 <outcome value='true'>\r
4138                                                                                     <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4139         resource="l-interface"\r
4140                 key="l-interface.interface-name = $ss.param.oam-interface-name\r
4141                 AND generic-vnf.vnf-id = $ss.param.vnf-id" >\r
4142                                                                                         <outcome value='failure'>\r
4143                                                                                             <block atomic='true'>\r
4144                                                                                                 <set>\r
4145                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to delete l-interface.interface-name = ' + $ss.param.oam-interface-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4146                                                                                                 </set>\r
4147                                                                                                 <switch test='`$tmp.return-failure`'>\r
4148                                                                                                     <outcome value='true'>\r
4149                                                                                                         <block atomic='true'>\r
4150                                                                                                             <set>\r
4151                                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
4152         value='FAILED' />\r
4153                                                                                                             </set>\r
4154                                                                                                             <return status='failure'>\r
4155                                                                                                                 <parameter name='error-code' value='500' />\r
4156                                                                                                                 <parameter name='error-message' value='`$error-message`' />\r
4157                                                                                                             </return>\r
4158                                                                                                         </block>\r
4159                                                                                                     </outcome>\r
4160                                                                                                 </switch>\r
4161                                                                                             </block>\r
4162                                                                                         </outcome>\r
4163                                                                                         <outcome value='not-found'>\r
4164                                                                                             <set>\r
4165                                                                                                 <parameter name='error-message' value="`$error-message + ' l-interface.interface-name = ' + $ss.param.oam-interface-name + ' not found in AAI. Consider silent success!'`" />\r
4166                                                                                             </set>\r
4167                                                                                         </outcome>\r
4168                                                                                         <outcome value='success'>\r
4169                                                                                             <set>\r
4170                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback (delete) of l-interface with interface-name = ' + $ss.param.oam-interface-name + '  completed.'`" />\r
4171                                                                                             </set>\r
4172                                                                                         </outcome>\r
4173                                                                                     </delete>\r
4174                                                                                 </outcome>\r
4175                                                                             </switch>\r
4176                                                                         </block>\r
4177                                                                     </outcome>\r
4178                                                                 </switch>\r
4179                                                             </block>\r
4180                                                             <return status='failure'>\r
4181                                                                 <parameter name='error-code' value='500' />\r
4182                                                                 <parameter name='error-message' value="`' Failed to create l3-interface-ipv4-address-list with l3-interface-ipv4-address = ' + $ss.param.ipv4-oam-address + ' in AnAI. ' + $error-message`" />\r
4183                                                             </return>\r
4184                                                         </block>\r
4185                                                     </outcome>\r
4186                                                 </save>\r
4187                                             </block>\r
4188                                         </outcome>\r
4189                                     </switch>\r
4190                                     <switch test="`$ss.param.lo0-interface-name != ''`">\r
4191                                         <outcome value='true'>\r
4192                                             <block atomic='true'>\r
4193                                                 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4194         resource="l-interface"\r
4195                 key="l-interface.interface-name = $ss.param.lo0-interface-name\r
4196                 AND generic-vnf.vnf-id = $ss.param.vnf-id" >\r
4197                                                     <parameter name="interface-name" value='`$ss.param.lo0-interface-name`' />\r
4198                                                     <parameter name="interface-role" value='loopback' />\r
4199                                                     <outcome value='failure'>\r
4200                                                         <block atomic='true'>\r
4201                                                             <block>\r
4202                                                                 <block>\r
4203                                                                     <block atomic='true'>\r
4204                                                                         <block>\r
4205                                                                             <block>\r
4206                                                                                 <block>\r
4207                                                                                     <switch test="`$ss.resource-key.generic-vnf`">\r
4208                                                                                         <outcome value='generic-vnf'>\r
4209                                                                                             <block>\r
4210                                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4211                                                                                                     <parameter name="logger" value="message-log"/>\r
4212                                                                                                     <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
4213                                                                                                 </record>\r
4214                                                                                                 <set>\r
4215                                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
4216         value='FAILED' />\r
4217                                                                                                 </set>\r
4218                                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4219         resource="generic-vnf"\r
4220                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
4221                                                                                                     <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
4222                                                                                                     <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
4223                                                                                                     <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
4224                                                                                                     <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
4225                                                                                                     <outcome value='failure'>\r
4226                                                                                                         <set>\r
4227                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4228                                                                                                         </set>\r
4229                                                                                                     </outcome>\r
4230                                                                                                     <outcome value='not-found'>\r
4231                                                                                                         <set>\r
4232                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4233                                                                                                         </set>\r
4234                                                                                                     </outcome>\r
4235                                                                                                     <outcome value='success'>\r
4236                                                                                                         <set>\r
4237                                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
4238                                                                                                         </set>\r
4239                                                                                                     </outcome>\r
4240                                                                                                 </update>\r
4241                                                                                             </block>\r
4242                                                                                         </outcome>\r
4243                                                                                     </switch>\r
4244                                                                                 </block>\r
4245                                                                                 <switch test="`$ss.resource-key.vf-module`">\r
4246                                                                                     <outcome value='vf-module'>\r
4247                                                                                         <block>\r
4248                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4249                                                                                                 <parameter name="logger" value="message-log"/>\r
4250                                                                                                 <parameter name="field1" value="ROLLBACK vf-module update"/>\r
4251                                                                                             </record>\r
4252                                                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4253         resource="vf-module"\r
4254                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
4255                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
4256                                                                                                 <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
4257                                                                                                 <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
4258                                                                                                 <outcome value='failure'>\r
4259                                                                                                     <set>\r
4260                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
4261                                                                                                     </set>\r
4262                                                                                                 </outcome>\r
4263                                                                                                 <outcome value='not-found'>\r
4264                                                                                                     <set>\r
4265                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
4266                                                                                                     </set>\r
4267                                                                                                 </outcome>\r
4268                                                                                                 <outcome value='success'>\r
4269                                                                                                     <set>\r
4270                                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
4271                                                                                                     </set>\r
4272                                                                                                 </outcome>\r
4273                                                                                             </update>\r
4274                                                                                         </block>\r
4275                                                                                     </outcome>\r
4276                                                                                 </switch>\r
4277                                                                             </block>\r
4278                                                                             <switch test="`$ss.resource-key.volume-group`">\r
4279                                                                                 <outcome value='volume-group'>\r
4280                                                                                     <block>\r
4281                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4282                                                                                             <parameter name="logger" value="message-log"/>\r
4283                                                                                             <parameter name="field1" value="ROLLBACK volume-group update"/>\r
4284                                                                                         </record>\r
4285                                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4286         resource="volume-group"\r
4287                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
4288                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
4289                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
4290                         AND volume-group-id = $ss.param.volume-group-id" >\r
4291                                                                                             <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
4292                                                                                             <outcome value='failure'>\r
4293                                                                                                 <set>\r
4294                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4295                                                                                                 </set>\r
4296                                                                                             </outcome>\r
4297                                                                                             <outcome value='not-found'>\r
4298                                                                                                 <set>\r
4299                                                                                                     <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
4300                                                                                                 </set>\r
4301                                                                                             </outcome>\r
4302                                                                                             <outcome value='success'>\r
4303                                                                                                 <set>\r
4304                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
4305                                                                                                 </set>\r
4306                                                                                             </outcome>\r
4307                                                                                         </update>\r
4308                                                                                     </block>\r
4309                                                                                 </outcome>\r
4310                                                                             </switch>\r
4311                                                                         </block>\r
4312                                                                         <switch test="`$ss.resource-key.vnfc`">\r
4313                                                                             <outcome value='vnfc'>\r
4314                                                                                 <block atomic='true'>\r
4315                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4316                                                                                         <parameter name="logger" value="message-log"/>\r
4317                                                                                         <parameter name="field1" value="ROLLBACK vnfc save"/>\r
4318                                                                                     </record>\r
4319                                                                                     <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4320         resource="vnfc"\r
4321                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
4322                                                                                         <outcome value='failure'>\r
4323                                                                                             <block atomic='true'>\r
4324                                                                                                 <set>\r
4325                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4326                                                                                                 </set>\r
4327                                                                                                 <switch test='`$tmp.return-failure`'>\r
4328                                                                                                     <outcome value='true'>\r
4329                                                                                                         <block atomic='true'>\r
4330                                                                                                             <set>\r
4331                                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
4332         value='FAILED' />\r
4333                                                                                                             </set>\r
4334                                                                                                             <return status='failure'>\r
4335                                                                                                                 <parameter name='error-code' value='500' />\r
4336                                                                                                                 <parameter name='error-message' value='`$error-message`' />\r
4337                                                                                                             </return>\r
4338                                                                                                         </block>\r
4339                                                                                                     </outcome>\r
4340                                                                                                 </switch>\r
4341                                                                                             </block>\r
4342                                                                                         </outcome>\r
4343                                                                                         <outcome value='not-found'>\r
4344                                                                                             <set>\r
4345                                                                                                 <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
4346                                                                                             </set>\r
4347                                                                                         </outcome>\r
4348                                                                                         <outcome value='success'>\r
4349                                                                                             <set>\r
4350                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
4351                                                                                             </set>\r
4352                                                                                         </outcome>\r
4353                                                                                     </delete>\r
4354                                                                                 </block>\r
4355                                                                             </outcome>\r
4356                                                                         </switch>\r
4357                                                                     </block>\r
4358                                                                     <block atomic='true'>\r
4359                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4360                                                                             <parameter name="logger" value="message-log"/>\r
4361                                                                             <parameter name="field1" value="ROLLBACK vlan-tag save"/>\r
4362                                                                         </record>\r
4363                                                                         <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data_length`' >\r
4364                                                                             <for silentFailure='true' index='j' start='0' end='$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data_length`' >\r
4365                                                                                 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4366         resource="vlan-tag"\r
4367                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
4368                                                                                     <outcome value='failure'>\r
4369                                                                                         <block atomic='true'>\r
4370                                                                                             <set>\r
4371                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to delete vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4372                                                                                             </set>\r
4373                                                                                             <switch test='`$tmp.return-failure`'>\r
4374                                                                                                 <outcome value='true'>\r
4375                                                                                                     <block atomic='true'>\r
4376                                                                                                         <set>\r
4377                                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
4378         value='FAILED' />\r
4379                                                                                                         </set>\r
4380                                                                                                         <return status='failure'>\r
4381                                                                                                             <parameter name='error-code' value='500' />\r
4382                                                                                                             <parameter name='error-message' value='`$error-message`' />\r
4383                                                                                                         </return>\r
4384                                                                                                     </block>\r
4385                                                                                                 </outcome>\r
4386                                                                                             </switch>\r
4387                                                                                         </block>\r
4388                                                                                     </outcome>\r
4389                                                                                     <outcome value='not-found'>\r
4390                                                                                         <set>\r
4391                                                                                             <parameter name='error-message' value="`$error-message + ' vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' not found in AAI. Consider silent success!'`" />\r
4392                                                                                         </set>\r
4393                                                                                     </outcome>\r
4394                                                                                     <outcome value='success'>\r
4395                                                                                         <set>\r
4396                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + '  completed.'`" />\r
4397                                                                                         </set>\r
4398                                                                                     </outcome>\r
4399                                                                                 </delete>\r
4400                                                                             </for>\r
4401                                                                         </for>\r
4402                                                                     </block>\r
4403                                                                 </block>\r
4404                                                                 <switch test="`$ss.resource-key.l-interface`">\r
4405                                                                     <outcome value='l-interface'>\r
4406                                                                         <block atomic='true'>\r
4407                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4408                                                                                 <parameter name="logger" value="message-log"/>\r
4409                                                                                 <parameter name="field1" value="ROLLBACK l-interface (oam) save"/>\r
4410                                                                             </record>\r
4411                                                                             <switch test="`$ss.param.oam-interface-name != ''`">\r
4412                                                                                 <outcome value='true'>\r
4413                                                                                     <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4414         resource="l-interface"\r
4415                 key="l-interface.interface-name = $ss.param.oam-interface-name\r
4416                 AND generic-vnf.vnf-id = $ss.param.vnf-id" >\r
4417                                                                                         <outcome value='failure'>\r
4418                                                                                             <block atomic='true'>\r
4419                                                                                                 <set>\r
4420                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to delete l-interface.interface-name = ' + $ss.param.oam-interface-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4421                                                                                                 </set>\r
4422                                                                                                 <switch test='`$tmp.return-failure`'>\r
4423                                                                                                     <outcome value='true'>\r
4424                                                                                                         <block atomic='true'>\r
4425                                                                                                             <set>\r
4426                                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
4427         value='FAILED' />\r
4428                                                                                                             </set>\r
4429                                                                                                             <return status='failure'>\r
4430                                                                                                                 <parameter name='error-code' value='500' />\r
4431                                                                                                                 <parameter name='error-message' value='`$error-message`' />\r
4432                                                                                                             </return>\r
4433                                                                                                         </block>\r
4434                                                                                                     </outcome>\r
4435                                                                                                 </switch>\r
4436                                                                                             </block>\r
4437                                                                                         </outcome>\r
4438                                                                                         <outcome value='not-found'>\r
4439                                                                                             <set>\r
4440                                                                                                 <parameter name='error-message' value="`$error-message + ' l-interface.interface-name = ' + $ss.param.oam-interface-name + ' not found in AAI. Consider silent success!'`" />\r
4441                                                                                             </set>\r
4442                                                                                         </outcome>\r
4443                                                                                         <outcome value='success'>\r
4444                                                                                             <set>\r
4445                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback (delete) of l-interface with interface-name = ' + $ss.param.oam-interface-name + '  completed.'`" />\r
4446                                                                                             </set>\r
4447                                                                                         </outcome>\r
4448                                                                                     </delete>\r
4449                                                                                 </outcome>\r
4450                                                                             </switch>\r
4451                                                                         </block>\r
4452                                                                     </outcome>\r
4453                                                                 </switch>\r
4454                                                             </block>\r
4455                                                             <return status='failure'>\r
4456                                                                 <parameter name='error-code' value='500' />\r
4457                                                                 <parameter name='error-message' value="`' Failed to create l-interface with interface-name = ' + $ss.param.lo0-interface-name + ' in AnAI. ' + $error-message`" />\r
4458                                                             </return>\r
4459                                                         </block>\r
4460                                                     </outcome>\r
4461                                                     <outcome value='not-found'>\r
4462                                                         <block atomic='true'>\r
4463                                                             <block>\r
4464                                                                 <block>\r
4465                                                                     <block atomic='true'>\r
4466                                                                         <block>\r
4467                                                                             <block>\r
4468                                                                                 <block>\r
4469                                                                                     <switch test="`$ss.resource-key.generic-vnf`">\r
4470                                                                                         <outcome value='generic-vnf'>\r
4471                                                                                             <block>\r
4472                                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4473                                                                                                     <parameter name="logger" value="message-log"/>\r
4474                                                                                                     <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
4475                                                                                                 </record>\r
4476                                                                                                 <set>\r
4477                                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
4478         value='FAILED' />\r
4479                                                                                                 </set>\r
4480                                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4481         resource="generic-vnf"\r
4482                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
4483                                                                                                     <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
4484                                                                                                     <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
4485                                                                                                     <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
4486                                                                                                     <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
4487                                                                                                     <outcome value='failure'>\r
4488                                                                                                         <set>\r
4489                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4490                                                                                                         </set>\r
4491                                                                                                     </outcome>\r
4492                                                                                                     <outcome value='not-found'>\r
4493                                                                                                         <set>\r
4494                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4495                                                                                                         </set>\r
4496                                                                                                     </outcome>\r
4497                                                                                                     <outcome value='success'>\r
4498                                                                                                         <set>\r
4499                                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
4500                                                                                                         </set>\r
4501                                                                                                     </outcome>\r
4502                                                                                                 </update>\r
4503                                                                                             </block>\r
4504                                                                                         </outcome>\r
4505                                                                                     </switch>\r
4506                                                                                 </block>\r
4507                                                                                 <switch test="`$ss.resource-key.vf-module`">\r
4508                                                                                     <outcome value='vf-module'>\r
4509                                                                                         <block>\r
4510                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4511                                                                                                 <parameter name="logger" value="message-log"/>\r
4512                                                                                                 <parameter name="field1" value="ROLLBACK vf-module update"/>\r
4513                                                                                             </record>\r
4514                                                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4515         resource="vf-module"\r
4516                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
4517                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
4518                                                                                                 <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
4519                                                                                                 <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
4520                                                                                                 <outcome value='failure'>\r
4521                                                                                                     <set>\r
4522                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
4523                                                                                                     </set>\r
4524                                                                                                 </outcome>\r
4525                                                                                                 <outcome value='not-found'>\r
4526                                                                                                     <set>\r
4527                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
4528                                                                                                     </set>\r
4529                                                                                                 </outcome>\r
4530                                                                                                 <outcome value='success'>\r
4531                                                                                                     <set>\r
4532                                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
4533                                                                                                     </set>\r
4534                                                                                                 </outcome>\r
4535                                                                                             </update>\r
4536                                                                                         </block>\r
4537                                                                                     </outcome>\r
4538                                                                                 </switch>\r
4539                                                                             </block>\r
4540                                                                             <switch test="`$ss.resource-key.volume-group`">\r
4541                                                                                 <outcome value='volume-group'>\r
4542                                                                                     <block>\r
4543                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4544                                                                                             <parameter name="logger" value="message-log"/>\r
4545                                                                                             <parameter name="field1" value="ROLLBACK volume-group update"/>\r
4546                                                                                         </record>\r
4547                                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4548         resource="volume-group"\r
4549                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
4550                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
4551                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
4552                         AND volume-group-id = $ss.param.volume-group-id" >\r
4553                                                                                             <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
4554                                                                                             <outcome value='failure'>\r
4555                                                                                                 <set>\r
4556                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4557                                                                                                 </set>\r
4558                                                                                             </outcome>\r
4559                                                                                             <outcome value='not-found'>\r
4560                                                                                                 <set>\r
4561                                                                                                     <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
4562                                                                                                 </set>\r
4563                                                                                             </outcome>\r
4564                                                                                             <outcome value='success'>\r
4565                                                                                                 <set>\r
4566                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
4567                                                                                                 </set>\r
4568                                                                                             </outcome>\r
4569                                                                                         </update>\r
4570                                                                                     </block>\r
4571                                                                                 </outcome>\r
4572                                                                             </switch>\r
4573                                                                         </block>\r
4574                                                                         <switch test="`$ss.resource-key.vnfc`">\r
4575                                                                             <outcome value='vnfc'>\r
4576                                                                                 <block atomic='true'>\r
4577                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4578                                                                                         <parameter name="logger" value="message-log"/>\r
4579                                                                                         <parameter name="field1" value="ROLLBACK vnfc save"/>\r
4580                                                                                     </record>\r
4581                                                                                     <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4582         resource="vnfc"\r
4583                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
4584                                                                                         <outcome value='failure'>\r
4585                                                                                             <block atomic='true'>\r
4586                                                                                                 <set>\r
4587                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4588                                                                                                 </set>\r
4589                                                                                                 <switch test='`$tmp.return-failure`'>\r
4590                                                                                                     <outcome value='true'>\r
4591                                                                                                         <block atomic='true'>\r
4592                                                                                                             <set>\r
4593                                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
4594         value='FAILED' />\r
4595                                                                                                             </set>\r
4596                                                                                                             <return status='failure'>\r
4597                                                                                                                 <parameter name='error-code' value='500' />\r
4598                                                                                                                 <parameter name='error-message' value='`$error-message`' />\r
4599                                                                                                             </return>\r
4600                                                                                                         </block>\r
4601                                                                                                     </outcome>\r
4602                                                                                                 </switch>\r
4603                                                                                             </block>\r
4604                                                                                         </outcome>\r
4605                                                                                         <outcome value='not-found'>\r
4606                                                                                             <set>\r
4607                                                                                                 <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
4608                                                                                             </set>\r
4609                                                                                         </outcome>\r
4610                                                                                         <outcome value='success'>\r
4611                                                                                             <set>\r
4612                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
4613                                                                                             </set>\r
4614                                                                                         </outcome>\r
4615                                                                                     </delete>\r
4616                                                                                 </block>\r
4617                                                                             </outcome>\r
4618                                                                         </switch>\r
4619                                                                     </block>\r
4620                                                                     <block atomic='true'>\r
4621                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4622                                                                             <parameter name="logger" value="message-log"/>\r
4623                                                                             <parameter name="field1" value="ROLLBACK vlan-tag save"/>\r
4624                                                                         </record>\r
4625                                                                         <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data_length`' >\r
4626                                                                             <for silentFailure='true' index='j' start='0' end='$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data_length`' >\r
4627                                                                                 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4628         resource="vlan-tag"\r
4629                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
4630                                                                                     <outcome value='failure'>\r
4631                                                                                         <block atomic='true'>\r
4632                                                                                             <set>\r
4633                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to delete vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4634                                                                                             </set>\r
4635                                                                                             <switch test='`$tmp.return-failure`'>\r
4636                                                                                                 <outcome value='true'>\r
4637                                                                                                     <block atomic='true'>\r
4638                                                                                                         <set>\r
4639                                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
4640         value='FAILED' />\r
4641                                                                                                         </set>\r
4642                                                                                                         <return status='failure'>\r
4643                                                                                                             <parameter name='error-code' value='500' />\r
4644                                                                                                             <parameter name='error-message' value='`$error-message`' />\r
4645                                                                                                         </return>\r
4646                                                                                                     </block>\r
4647                                                                                                 </outcome>\r
4648                                                                                             </switch>\r
4649                                                                                         </block>\r
4650                                                                                     </outcome>\r
4651                                                                                     <outcome value='not-found'>\r
4652                                                                                         <set>\r
4653                                                                                             <parameter name='error-message' value="`$error-message + ' vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' not found in AAI. Consider silent success!'`" />\r
4654                                                                                         </set>\r
4655                                                                                     </outcome>\r
4656                                                                                     <outcome value='success'>\r
4657                                                                                         <set>\r
4658                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + '  completed.'`" />\r
4659                                                                                         </set>\r
4660                                                                                     </outcome>\r
4661                                                                                 </delete>\r
4662                                                                             </for>\r
4663                                                                         </for>\r
4664                                                                     </block>\r
4665                                                                 </block>\r
4666                                                                 <switch test="`$ss.resource-key.l-interface`">\r
4667                                                                     <outcome value='l-interface'>\r
4668                                                                         <block atomic='true'>\r
4669                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4670                                                                                 <parameter name="logger" value="message-log"/>\r
4671                                                                                 <parameter name="field1" value="ROLLBACK l-interface (oam) save"/>\r
4672                                                                             </record>\r
4673                                                                             <switch test="`$ss.param.oam-interface-name != ''`">\r
4674                                                                                 <outcome value='true'>\r
4675                                                                                     <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4676         resource="l-interface"\r
4677                 key="l-interface.interface-name = $ss.param.oam-interface-name\r
4678                 AND generic-vnf.vnf-id = $ss.param.vnf-id" >\r
4679                                                                                         <outcome value='failure'>\r
4680                                                                                             <block atomic='true'>\r
4681                                                                                                 <set>\r
4682                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to delete l-interface.interface-name = ' + $ss.param.oam-interface-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4683                                                                                                 </set>\r
4684                                                                                                 <switch test='`$tmp.return-failure`'>\r
4685                                                                                                     <outcome value='true'>\r
4686                                                                                                         <block atomic='true'>\r
4687                                                                                                             <set>\r
4688                                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
4689         value='FAILED' />\r
4690                                                                                                             </set>\r
4691                                                                                                             <return status='failure'>\r
4692                                                                                                                 <parameter name='error-code' value='500' />\r
4693                                                                                                                 <parameter name='error-message' value='`$error-message`' />\r
4694                                                                                                             </return>\r
4695                                                                                                         </block>\r
4696                                                                                                     </outcome>\r
4697                                                                                                 </switch>\r
4698                                                                                             </block>\r
4699                                                                                         </outcome>\r
4700                                                                                         <outcome value='not-found'>\r
4701                                                                                             <set>\r
4702                                                                                                 <parameter name='error-message' value="`$error-message + ' l-interface.interface-name = ' + $ss.param.oam-interface-name + ' not found in AAI. Consider silent success!'`" />\r
4703                                                                                             </set>\r
4704                                                                                         </outcome>\r
4705                                                                                         <outcome value='success'>\r
4706                                                                                             <set>\r
4707                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback (delete) of l-interface with interface-name = ' + $ss.param.oam-interface-name + '  completed.'`" />\r
4708                                                                                             </set>\r
4709                                                                                         </outcome>\r
4710                                                                                     </delete>\r
4711                                                                                 </outcome>\r
4712                                                                             </switch>\r
4713                                                                         </block>\r
4714                                                                     </outcome>\r
4715                                                                 </switch>\r
4716                                                             </block>\r
4717                                                             <return status='failure'>\r
4718                                                                 <parameter name='error-code' value='500' />\r
4719                                                                 <parameter name='error-message' value="`' Failed to create l-interface with interface-name = ' + $ss.param.lo0-interface-name + ' in AnAI. ' + $error-message`" />\r
4720                                                             </return>\r
4721                                                         </block>\r
4722                                                     </outcome>\r
4723                                                 </save>\r
4724                                                 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4725         resource="l3-interface-ipv4-address-list"\r
4726                 key="l3-interface-ipv4-address-list.l3-interface-ipv4-address = $ss.param.ipv4-loopback0-address \r
4727                 AND generic-vnf.vnf-id = $ss.param.vnf-id \r
4728                 AND l-interface.interface-name = $ss.param.lo0-interface-name" >\r
4729                                                     <parameter name="l3-interface-ipv4-address" value='`$ss.param.ipv4-loopback0-address`' />\r
4730                                                     <parameter name="l3-interface-ipv4-prefix-length" value='32' />\r
4731                                                     <outcome value='failure'>\r
4732                                                         <block atomic='true'>\r
4733                                                             <block>\r
4734                                                                 <block>\r
4735                                                                     <block>\r
4736                                                                         <block atomic='true'>\r
4737                                                                             <block>\r
4738                                                                                 <block>\r
4739                                                                                     <block>\r
4740                                                                                         <switch test="`$ss.resource-key.generic-vnf`">\r
4741                                                                                             <outcome value='generic-vnf'>\r
4742                                                                                                 <block>\r
4743                                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4744                                                                                                         <parameter name="logger" value="message-log"/>\r
4745                                                                                                         <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
4746                                                                                                     </record>\r
4747                                                                                                     <set>\r
4748                                                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
4749         value='FAILED' />\r
4750                                                                                                     </set>\r
4751                                                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4752         resource="generic-vnf"\r
4753                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
4754                                                                                                         <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
4755                                                                                                         <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
4756                                                                                                         <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
4757                                                                                                         <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
4758                                                                                                         <outcome value='failure'>\r
4759                                                                                                             <set>\r
4760                                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4761                                                                                                             </set>\r
4762                                                                                                         </outcome>\r
4763                                                                                                         <outcome value='not-found'>\r
4764                                                                                                             <set>\r
4765                                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4766                                                                                                             </set>\r
4767                                                                                                         </outcome>\r
4768                                                                                                         <outcome value='success'>\r
4769                                                                                                             <set>\r
4770                                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
4771                                                                                                             </set>\r
4772                                                                                                         </outcome>\r
4773                                                                                                     </update>\r
4774                                                                                                 </block>\r
4775                                                                                             </outcome>\r
4776                                                                                         </switch>\r
4777                                                                                     </block>\r
4778                                                                                     <switch test="`$ss.resource-key.vf-module`">\r
4779                                                                                         <outcome value='vf-module'>\r
4780                                                                                             <block>\r
4781                                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4782                                                                                                     <parameter name="logger" value="message-log"/>\r
4783                                                                                                     <parameter name="field1" value="ROLLBACK vf-module update"/>\r
4784                                                                                                 </record>\r
4785                                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4786         resource="vf-module"\r
4787                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
4788                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
4789                                                                                                     <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
4790                                                                                                     <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
4791                                                                                                     <outcome value='failure'>\r
4792                                                                                                         <set>\r
4793                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
4794                                                                                                         </set>\r
4795                                                                                                     </outcome>\r
4796                                                                                                     <outcome value='not-found'>\r
4797                                                                                                         <set>\r
4798                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
4799                                                                                                         </set>\r
4800                                                                                                     </outcome>\r
4801                                                                                                     <outcome value='success'>\r
4802                                                                                                         <set>\r
4803                                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
4804                                                                                                         </set>\r
4805                                                                                                     </outcome>\r
4806                                                                                                 </update>\r
4807                                                                                             </block>\r
4808                                                                                         </outcome>\r
4809                                                                                     </switch>\r
4810                                                                                 </block>\r
4811                                                                                 <switch test="`$ss.resource-key.volume-group`">\r
4812                                                                                     <outcome value='volume-group'>\r
4813                                                                                         <block>\r
4814                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4815                                                                                                 <parameter name="logger" value="message-log"/>\r
4816                                                                                                 <parameter name="field1" value="ROLLBACK volume-group update"/>\r
4817                                                                                             </record>\r
4818                                                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4819         resource="volume-group"\r
4820                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
4821                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
4822                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
4823                         AND volume-group-id = $ss.param.volume-group-id" >\r
4824                                                                                                 <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
4825                                                                                                 <outcome value='failure'>\r
4826                                                                                                     <set>\r
4827                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4828                                                                                                     </set>\r
4829                                                                                                 </outcome>\r
4830                                                                                                 <outcome value='not-found'>\r
4831                                                                                                     <set>\r
4832                                                                                                         <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
4833                                                                                                     </set>\r
4834                                                                                                 </outcome>\r
4835                                                                                                 <outcome value='success'>\r
4836                                                                                                     <set>\r
4837                                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
4838                                                                                                     </set>\r
4839                                                                                                 </outcome>\r
4840                                                                                             </update>\r
4841                                                                                         </block>\r
4842                                                                                     </outcome>\r
4843                                                                                 </switch>\r
4844                                                                             </block>\r
4845                                                                             <switch test="`$ss.resource-key.vnfc`">\r
4846                                                                                 <outcome value='vnfc'>\r
4847                                                                                     <block atomic='true'>\r
4848                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4849                                                                                             <parameter name="logger" value="message-log"/>\r
4850                                                                                             <parameter name="field1" value="ROLLBACK vnfc save"/>\r
4851                                                                                         </record>\r
4852                                                                                         <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4853         resource="vnfc"\r
4854                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
4855                                                                                             <outcome value='failure'>\r
4856                                                                                                 <block atomic='true'>\r
4857                                                                                                     <set>\r
4858                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4859                                                                                                     </set>\r
4860                                                                                                     <switch test='`$tmp.return-failure`'>\r
4861                                                                                                         <outcome value='true'>\r
4862                                                                                                             <block atomic='true'>\r
4863                                                                                                                 <set>\r
4864                                                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
4865         value='FAILED' />\r
4866                                                                                                                 </set>\r
4867                                                                                                                 <return status='failure'>\r
4868                                                                                                                     <parameter name='error-code' value='500' />\r
4869                                                                                                                     <parameter name='error-message' value='`$error-message`' />\r
4870                                                                                                                 </return>\r
4871                                                                                                             </block>\r
4872                                                                                                         </outcome>\r
4873                                                                                                     </switch>\r
4874                                                                                                 </block>\r
4875                                                                                             </outcome>\r
4876                                                                                             <outcome value='not-found'>\r
4877                                                                                                 <set>\r
4878                                                                                                     <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
4879                                                                                                 </set>\r
4880                                                                                             </outcome>\r
4881                                                                                             <outcome value='success'>\r
4882                                                                                                 <set>\r
4883                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
4884                                                                                                 </set>\r
4885                                                                                             </outcome>\r
4886                                                                                         </delete>\r
4887                                                                                     </block>\r
4888                                                                                 </outcome>\r
4889                                                                             </switch>\r
4890                                                                         </block>\r
4891                                                                         <block atomic='true'>\r
4892                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4893                                                                                 <parameter name="logger" value="message-log"/>\r
4894                                                                                 <parameter name="field1" value="ROLLBACK vlan-tag save"/>\r
4895                                                                             </record>\r
4896                                                                             <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data_length`' >\r
4897                                                                                 <for silentFailure='true' index='j' start='0' end='$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data_length`' >\r
4898                                                                                     <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4899         resource="vlan-tag"\r
4900                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
4901                                                                                         <outcome value='failure'>\r
4902                                                                                             <block atomic='true'>\r
4903                                                                                                 <set>\r
4904                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to delete vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4905                                                                                                 </set>\r
4906                                                                                                 <switch test='`$tmp.return-failure`'>\r
4907                                                                                                     <outcome value='true'>\r
4908                                                                                                         <block atomic='true'>\r
4909                                                                                                             <set>\r
4910                                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
4911         value='FAILED' />\r
4912                                                                                                             </set>\r
4913                                                                                                             <return status='failure'>\r
4914                                                                                                                 <parameter name='error-code' value='500' />\r
4915                                                                                                                 <parameter name='error-message' value='`$error-message`' />\r
4916                                                                                                             </return>\r
4917                                                                                                         </block>\r
4918                                                                                                     </outcome>\r
4919                                                                                                 </switch>\r
4920                                                                                             </block>\r
4921                                                                                         </outcome>\r
4922                                                                                         <outcome value='not-found'>\r
4923                                                                                             <set>\r
4924                                                                                                 <parameter name='error-message' value="`$error-message + ' vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' not found in AAI. Consider silent success!'`" />\r
4925                                                                                             </set>\r
4926                                                                                         </outcome>\r
4927                                                                                         <outcome value='success'>\r
4928                                                                                             <set>\r
4929                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + '  completed.'`" />\r
4930                                                                                             </set>\r
4931                                                                                         </outcome>\r
4932                                                                                     </delete>\r
4933                                                                                 </for>\r
4934                                                                             </for>\r
4935                                                                         </block>\r
4936                                                                     </block>\r
4937                                                                     <switch test="`$ss.resource-key.l-interface`">\r
4938                                                                         <outcome value='l-interface'>\r
4939                                                                             <block atomic='true'>\r
4940                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4941                                                                                     <parameter name="logger" value="message-log"/>\r
4942                                                                                     <parameter name="field1" value="ROLLBACK l-interface (oam) save"/>\r
4943                                                                                 </record>\r
4944                                                                                 <switch test="`$ss.param.oam-interface-name != ''`">\r
4945                                                                                     <outcome value='true'>\r
4946                                                                                         <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4947         resource="l-interface"\r
4948                 key="l-interface.interface-name = $ss.param.oam-interface-name\r
4949                 AND generic-vnf.vnf-id = $ss.param.vnf-id" >\r
4950                                                                                             <outcome value='failure'>\r
4951                                                                                                 <block atomic='true'>\r
4952                                                                                                     <set>\r
4953                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to delete l-interface.interface-name = ' + $ss.param.oam-interface-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
4954                                                                                                     </set>\r
4955                                                                                                     <switch test='`$tmp.return-failure`'>\r
4956                                                                                                         <outcome value='true'>\r
4957                                                                                                             <block atomic='true'>\r
4958                                                                                                                 <set>\r
4959                                                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
4960         value='FAILED' />\r
4961                                                                                                                 </set>\r
4962                                                                                                                 <return status='failure'>\r
4963                                                                                                                     <parameter name='error-code' value='500' />\r
4964                                                                                                                     <parameter name='error-message' value='`$error-message`' />\r
4965                                                                                                                 </return>\r
4966                                                                                                             </block>\r
4967                                                                                                         </outcome>\r
4968                                                                                                     </switch>\r
4969                                                                                                 </block>\r
4970                                                                                             </outcome>\r
4971                                                                                             <outcome value='not-found'>\r
4972                                                                                                 <set>\r
4973                                                                                                     <parameter name='error-message' value="`$error-message + ' l-interface.interface-name = ' + $ss.param.oam-interface-name + ' not found in AAI. Consider silent success!'`" />\r
4974                                                                                                 </set>\r
4975                                                                                             </outcome>\r
4976                                                                                             <outcome value='success'>\r
4977                                                                                                 <set>\r
4978                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback (delete) of l-interface with interface-name = ' + $ss.param.oam-interface-name + '  completed.'`" />\r
4979                                                                                                 </set>\r
4980                                                                                             </outcome>\r
4981                                                                                         </delete>\r
4982                                                                                     </outcome>\r
4983                                                                                 </switch>\r
4984                                                                             </block>\r
4985                                                                         </outcome>\r
4986                                                                     </switch>\r
4987                                                                 </block>\r
4988                                                                 <switch test="`$ss.resource-key.l-interface`">\r
4989                                                                     <outcome value='l-interface'>\r
4990                                                                         <block atomic='true'>\r
4991                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
4992                                                                                 <parameter name="logger" value="message-log"/>\r
4993                                                                                 <parameter name="field1" value="ROLLBACK l-interface (oam) save"/>\r
4994                                                                             </record>\r
4995                                                                             <switch test="`$ss.param.lo0-interface-name != ''`">\r
4996                                                                                 <outcome value='true'>\r
4997                                                                                     <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
4998         resource="l-interface"\r
4999                 key="l-interface.interface-name = $ss.param.lo0-interface-name\r
5000                 AND generic-vnf.vnf-id = $ss.param.vnf-id" >\r
5001                                                                                         <outcome value='failure'>\r
5002                                                                                             <block atomic='true'>\r
5003                                                                                                 <set>\r
5004                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to delete l-interface.interface-name = ' + $ss.param.lo0-interface-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5005                                                                                                 </set>\r
5006                                                                                                 <switch test='`$tmp.return-failure`'>\r
5007                                                                                                     <outcome value='true'>\r
5008                                                                                                         <block atomic='true'>\r
5009                                                                                                             <set>\r
5010                                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
5011         value='FAILED' />\r
5012                                                                                                             </set>\r
5013                                                                                                             <return status='failure'>\r
5014                                                                                                                 <parameter name='error-code' value='500' />\r
5015                                                                                                                 <parameter name='error-message' value='`$error-message`' />\r
5016                                                                                                             </return>\r
5017                                                                                                         </block>\r
5018                                                                                                     </outcome>\r
5019                                                                                                 </switch>\r
5020                                                                                             </block>\r
5021                                                                                         </outcome>\r
5022                                                                                         <outcome value='not-found'>\r
5023                                                                                             <set>\r
5024                                                                                                 <parameter name='error-message' value="`$error-message + ' l-interface.interface-name = ' + $ss.param.lo0-interface-name + ' not found in AAI. Consider silent success!'`" />\r
5025                                                                                             </set>\r
5026                                                                                         </outcome>\r
5027                                                                                         <outcome value='success'>\r
5028                                                                                             <set>\r
5029                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback (delete) of l-interface with interface-name = ' + $ss.param.lo0-interface-name + '  completed.'`" />\r
5030                                                                                             </set>\r
5031                                                                                         </outcome>\r
5032                                                                                     </delete>\r
5033                                                                                 </outcome>\r
5034                                                                             </switch>\r
5035                                                                         </block>\r
5036                                                                     </outcome>\r
5037                                                                 </switch>\r
5038                                                             </block>\r
5039                                                             <return status='failure'>\r
5040                                                                 <parameter name='error-code' value='500' />\r
5041                                                                 <parameter name='error-message' value="`' Failed to create l3-interface-ipv4-address-list with l3-interface-ipv4-address = ' + $ss.param.loopback0-ipv4-address + ' in AnAI. ' + $error-message`" />\r
5042                                                             </return>\r
5043                                                         </block>\r
5044                                                     </outcome>\r
5045                                                     <outcome value='not-found'>\r
5046                                                         <block atomic='true'>\r
5047                                                             <block>\r
5048                                                                 <block>\r
5049                                                                     <block>\r
5050                                                                         <block atomic='true'>\r
5051                                                                             <block>\r
5052                                                                                 <block>\r
5053                                                                                     <block>\r
5054                                                                                         <switch test="`$ss.resource-key.generic-vnf`">\r
5055                                                                                             <outcome value='generic-vnf'>\r
5056                                                                                                 <block>\r
5057                                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5058                                                                                                         <parameter name="logger" value="message-log"/>\r
5059                                                                                                         <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
5060                                                                                                     </record>\r
5061                                                                                                     <set>\r
5062                                                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
5063         value='FAILED' />\r
5064                                                                                                     </set>\r
5065                                                                                                     <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5066         resource="generic-vnf"\r
5067                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
5068                                                                                                         <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
5069                                                                                                         <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
5070                                                                                                         <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
5071                                                                                                         <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
5072                                                                                                         <outcome value='failure'>\r
5073                                                                                                             <set>\r
5074                                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5075                                                                                                             </set>\r
5076                                                                                                         </outcome>\r
5077                                                                                                         <outcome value='not-found'>\r
5078                                                                                                             <set>\r
5079                                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5080                                                                                                             </set>\r
5081                                                                                                         </outcome>\r
5082                                                                                                         <outcome value='success'>\r
5083                                                                                                             <set>\r
5084                                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
5085                                                                                                             </set>\r
5086                                                                                                         </outcome>\r
5087                                                                                                     </update>\r
5088                                                                                                 </block>\r
5089                                                                                             </outcome>\r
5090                                                                                         </switch>\r
5091                                                                                     </block>\r
5092                                                                                     <switch test="`$ss.resource-key.vf-module`">\r
5093                                                                                         <outcome value='vf-module'>\r
5094                                                                                             <block>\r
5095                                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5096                                                                                                     <parameter name="logger" value="message-log"/>\r
5097                                                                                                     <parameter name="field1" value="ROLLBACK vf-module update"/>\r
5098                                                                                                 </record>\r
5099                                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5100         resource="vf-module"\r
5101                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
5102                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
5103                                                                                                     <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
5104                                                                                                     <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
5105                                                                                                     <outcome value='failure'>\r
5106                                                                                                         <set>\r
5107                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
5108                                                                                                         </set>\r
5109                                                                                                     </outcome>\r
5110                                                                                                     <outcome value='not-found'>\r
5111                                                                                                         <set>\r
5112                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
5113                                                                                                         </set>\r
5114                                                                                                     </outcome>\r
5115                                                                                                     <outcome value='success'>\r
5116                                                                                                         <set>\r
5117                                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
5118                                                                                                         </set>\r
5119                                                                                                     </outcome>\r
5120                                                                                                 </update>\r
5121                                                                                             </block>\r
5122                                                                                         </outcome>\r
5123                                                                                     </switch>\r
5124                                                                                 </block>\r
5125                                                                                 <switch test="`$ss.resource-key.volume-group`">\r
5126                                                                                     <outcome value='volume-group'>\r
5127                                                                                         <block>\r
5128                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5129                                                                                                 <parameter name="logger" value="message-log"/>\r
5130                                                                                                 <parameter name="field1" value="ROLLBACK volume-group update"/>\r
5131                                                                                             </record>\r
5132                                                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5133         resource="volume-group"\r
5134                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
5135                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
5136                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
5137                         AND volume-group-id = $ss.param.volume-group-id" >\r
5138                                                                                                 <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
5139                                                                                                 <outcome value='failure'>\r
5140                                                                                                     <set>\r
5141                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5142                                                                                                     </set>\r
5143                                                                                                 </outcome>\r
5144                                                                                                 <outcome value='not-found'>\r
5145                                                                                                     <set>\r
5146                                                                                                         <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
5147                                                                                                     </set>\r
5148                                                                                                 </outcome>\r
5149                                                                                                 <outcome value='success'>\r
5150                                                                                                     <set>\r
5151                                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
5152                                                                                                     </set>\r
5153                                                                                                 </outcome>\r
5154                                                                                             </update>\r
5155                                                                                         </block>\r
5156                                                                                     </outcome>\r
5157                                                                                 </switch>\r
5158                                                                             </block>\r
5159                                                                             <switch test="`$ss.resource-key.vnfc`">\r
5160                                                                                 <outcome value='vnfc'>\r
5161                                                                                     <block atomic='true'>\r
5162                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5163                                                                                             <parameter name="logger" value="message-log"/>\r
5164                                                                                             <parameter name="field1" value="ROLLBACK vnfc save"/>\r
5165                                                                                         </record>\r
5166                                                                                         <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5167         resource="vnfc"\r
5168                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
5169                                                                                             <outcome value='failure'>\r
5170                                                                                                 <block atomic='true'>\r
5171                                                                                                     <set>\r
5172                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5173                                                                                                     </set>\r
5174                                                                                                     <switch test='`$tmp.return-failure`'>\r
5175                                                                                                         <outcome value='true'>\r
5176                                                                                                             <block atomic='true'>\r
5177                                                                                                                 <set>\r
5178                                                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
5179         value='FAILED' />\r
5180                                                                                                                 </set>\r
5181                                                                                                                 <return status='failure'>\r
5182                                                                                                                     <parameter name='error-code' value='500' />\r
5183                                                                                                                     <parameter name='error-message' value='`$error-message`' />\r
5184                                                                                                                 </return>\r
5185                                                                                                             </block>\r
5186                                                                                                         </outcome>\r
5187                                                                                                     </switch>\r
5188                                                                                                 </block>\r
5189                                                                                             </outcome>\r
5190                                                                                             <outcome value='not-found'>\r
5191                                                                                                 <set>\r
5192                                                                                                     <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
5193                                                                                                 </set>\r
5194                                                                                             </outcome>\r
5195                                                                                             <outcome value='success'>\r
5196                                                                                                 <set>\r
5197                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
5198                                                                                                 </set>\r
5199                                                                                             </outcome>\r
5200                                                                                         </delete>\r
5201                                                                                     </block>\r
5202                                                                                 </outcome>\r
5203                                                                             </switch>\r
5204                                                                         </block>\r
5205                                                                         <block atomic='true'>\r
5206                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5207                                                                                 <parameter name="logger" value="message-log"/>\r
5208                                                                                 <parameter name="field1" value="ROLLBACK vlan-tag save"/>\r
5209                                                                             </record>\r
5210                                                                             <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data_length`' >\r
5211                                                                                 <for silentFailure='true' index='j' start='0' end='$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data_length`' >\r
5212                                                                                     <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5213         resource="vlan-tag"\r
5214                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
5215                                                                                         <outcome value='failure'>\r
5216                                                                                             <block atomic='true'>\r
5217                                                                                                 <set>\r
5218                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to delete vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5219                                                                                                 </set>\r
5220                                                                                                 <switch test='`$tmp.return-failure`'>\r
5221                                                                                                     <outcome value='true'>\r
5222                                                                                                         <block atomic='true'>\r
5223                                                                                                             <set>\r
5224                                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
5225         value='FAILED' />\r
5226                                                                                                             </set>\r
5227                                                                                                             <return status='failure'>\r
5228                                                                                                                 <parameter name='error-code' value='500' />\r
5229                                                                                                                 <parameter name='error-message' value='`$error-message`' />\r
5230                                                                                                             </return>\r
5231                                                                                                         </block>\r
5232                                                                                                     </outcome>\r
5233                                                                                                 </switch>\r
5234                                                                                             </block>\r
5235                                                                                         </outcome>\r
5236                                                                                         <outcome value='not-found'>\r
5237                                                                                             <set>\r
5238                                                                                                 <parameter name='error-message' value="`$error-message + ' vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' not found in AAI. Consider silent success!'`" />\r
5239                                                                                             </set>\r
5240                                                                                         </outcome>\r
5241                                                                                         <outcome value='success'>\r
5242                                                                                             <set>\r
5243                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + '  completed.'`" />\r
5244                                                                                             </set>\r
5245                                                                                         </outcome>\r
5246                                                                                     </delete>\r
5247                                                                                 </for>\r
5248                                                                             </for>\r
5249                                                                         </block>\r
5250                                                                     </block>\r
5251                                                                     <switch test="`$ss.resource-key.l-interface`">\r
5252                                                                         <outcome value='l-interface'>\r
5253                                                                             <block atomic='true'>\r
5254                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5255                                                                                     <parameter name="logger" value="message-log"/>\r
5256                                                                                     <parameter name="field1" value="ROLLBACK l-interface (oam) save"/>\r
5257                                                                                 </record>\r
5258                                                                                 <switch test="`$ss.param.oam-interface-name != ''`">\r
5259                                                                                     <outcome value='true'>\r
5260                                                                                         <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5261         resource="l-interface"\r
5262                 key="l-interface.interface-name = $ss.param.oam-interface-name\r
5263                 AND generic-vnf.vnf-id = $ss.param.vnf-id" >\r
5264                                                                                             <outcome value='failure'>\r
5265                                                                                                 <block atomic='true'>\r
5266                                                                                                     <set>\r
5267                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to delete l-interface.interface-name = ' + $ss.param.oam-interface-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5268                                                                                                     </set>\r
5269                                                                                                     <switch test='`$tmp.return-failure`'>\r
5270                                                                                                         <outcome value='true'>\r
5271                                                                                                             <block atomic='true'>\r
5272                                                                                                                 <set>\r
5273                                                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
5274         value='FAILED' />\r
5275                                                                                                                 </set>\r
5276                                                                                                                 <return status='failure'>\r
5277                                                                                                                     <parameter name='error-code' value='500' />\r
5278                                                                                                                     <parameter name='error-message' value='`$error-message`' />\r
5279                                                                                                                 </return>\r
5280                                                                                                             </block>\r
5281                                                                                                         </outcome>\r
5282                                                                                                     </switch>\r
5283                                                                                                 </block>\r
5284                                                                                             </outcome>\r
5285                                                                                             <outcome value='not-found'>\r
5286                                                                                                 <set>\r
5287                                                                                                     <parameter name='error-message' value="`$error-message + ' l-interface.interface-name = ' + $ss.param.oam-interface-name + ' not found in AAI. Consider silent success!'`" />\r
5288                                                                                                 </set>\r
5289                                                                                             </outcome>\r
5290                                                                                             <outcome value='success'>\r
5291                                                                                                 <set>\r
5292                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback (delete) of l-interface with interface-name = ' + $ss.param.oam-interface-name + '  completed.'`" />\r
5293                                                                                                 </set>\r
5294                                                                                             </outcome>\r
5295                                                                                         </delete>\r
5296                                                                                     </outcome>\r
5297                                                                                 </switch>\r
5298                                                                             </block>\r
5299                                                                         </outcome>\r
5300                                                                     </switch>\r
5301                                                                 </block>\r
5302                                                                 <switch test="`$ss.resource-key.l-interface`">\r
5303                                                                     <outcome value='l-interface'>\r
5304                                                                         <block atomic='true'>\r
5305                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5306                                                                                 <parameter name="logger" value="message-log"/>\r
5307                                                                                 <parameter name="field1" value="ROLLBACK l-interface (oam) save"/>\r
5308                                                                             </record>\r
5309                                                                             <switch test="`$ss.param.lo0-interface-name != ''`">\r
5310                                                                                 <outcome value='true'>\r
5311                                                                                     <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5312         resource="l-interface"\r
5313                 key="l-interface.interface-name = $ss.param.lo0-interface-name\r
5314                 AND generic-vnf.vnf-id = $ss.param.vnf-id" >\r
5315                                                                                         <outcome value='failure'>\r
5316                                                                                             <block atomic='true'>\r
5317                                                                                                 <set>\r
5318                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to delete l-interface.interface-name = ' + $ss.param.lo0-interface-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5319                                                                                                 </set>\r
5320                                                                                                 <switch test='`$tmp.return-failure`'>\r
5321                                                                                                     <outcome value='true'>\r
5322                                                                                                         <block atomic='true'>\r
5323                                                                                                             <set>\r
5324                                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
5325         value='FAILED' />\r
5326                                                                                                             </set>\r
5327                                                                                                             <return status='failure'>\r
5328                                                                                                                 <parameter name='error-code' value='500' />\r
5329                                                                                                                 <parameter name='error-message' value='`$error-message`' />\r
5330                                                                                                             </return>\r
5331                                                                                                         </block>\r
5332                                                                                                     </outcome>\r
5333                                                                                                 </switch>\r
5334                                                                                             </block>\r
5335                                                                                         </outcome>\r
5336                                                                                         <outcome value='not-found'>\r
5337                                                                                             <set>\r
5338                                                                                                 <parameter name='error-message' value="`$error-message + ' l-interface.interface-name = ' + $ss.param.lo0-interface-name + ' not found in AAI. Consider silent success!'`" />\r
5339                                                                                             </set>\r
5340                                                                                         </outcome>\r
5341                                                                                         <outcome value='success'>\r
5342                                                                                             <set>\r
5343                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback (delete) of l-interface with interface-name = ' + $ss.param.lo0-interface-name + '  completed.'`" />\r
5344                                                                                             </set>\r
5345                                                                                         </outcome>\r
5346                                                                                     </delete>\r
5347                                                                                 </outcome>\r
5348                                                                             </switch>\r
5349                                                                         </block>\r
5350                                                                     </outcome>\r
5351                                                                 </switch>\r
5352                                                             </block>\r
5353                                                             <return status='failure'>\r
5354                                                                 <parameter name='error-code' value='500' />\r
5355                                                                 <parameter name='error-message' value="`' Failed to create l3-interface-ipv4-address-list with l3-interface-ipv4-address = ' + $ss.param.loopback0-ipv4-address + ' in AnAI. ' + $error-message`" />\r
5356                                                             </return>\r
5357                                                         </block>\r
5358                                                     </outcome>\r
5359                                                 </save>\r
5360                                             </block>\r
5361                                         </outcome>\r
5362                                     </switch>\r
5363                                 </block>\r
5364                             </outcome>\r
5365                         </switch>\r
5366                         <switch test="`$ss.resource-key.l3-network`">\r
5367                             <outcome value='l3-netework'>\r
5368                                 <for silentFailure='true' index='n' start='0' end='`$nidx`' >\r
5369                                     <block atomic='true'>\r
5370                                         <set>\r
5371                                             <parameter name='ss.l3-network.related-link' \r
5372         value="`'/aai/v$/network/l3-networks/l3-network/' + $ss.network[$n].netid`" />\r
5373                                         </set>\r
5374                                         <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5375         resource="generic-vnf:relationship-list"\r
5376                 key="generic-vnf.vnf-id = $ss.param.vnf-id" >\r
5377                                             <parameter name="relationship-list.relationship[0].related-to" value="l3-network" />\r
5378                                             <parameter name="relationship-list.relationship[0].related-link" value="`$ss.l3-network.related-link`" />\r
5379                                             <!--\r
5380 <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="l3-network.network-id" /><parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$ss.network[$n].netid`" />\r
5381 -->\r
5382                                             <outcome value='failure'>\r
5383                                                 <block atomic='true'>\r
5384                                                     <block>\r
5385                                                         <block>\r
5386                                                             <block>\r
5387                                                                 <block>\r
5388                                                                     <block atomic='true'>\r
5389                                                                         <block>\r
5390                                                                             <block>\r
5391                                                                                 <block>\r
5392                                                                                     <switch test="`$ss.resource-key.generic-vnf`">\r
5393                                                                                         <outcome value='generic-vnf'>\r
5394                                                                                             <block>\r
5395                                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5396                                                                                                     <parameter name="logger" value="message-log"/>\r
5397                                                                                                     <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
5398                                                                                                 </record>\r
5399                                                                                                 <set>\r
5400                                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
5401         value='FAILED' />\r
5402                                                                                                 </set>\r
5403                                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5404         resource="generic-vnf"\r
5405                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
5406                                                                                                     <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
5407                                                                                                     <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
5408                                                                                                     <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
5409                                                                                                     <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
5410                                                                                                     <outcome value='failure'>\r
5411                                                                                                         <set>\r
5412                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5413                                                                                                         </set>\r
5414                                                                                                     </outcome>\r
5415                                                                                                     <outcome value='not-found'>\r
5416                                                                                                         <set>\r
5417                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5418                                                                                                         </set>\r
5419                                                                                                     </outcome>\r
5420                                                                                                     <outcome value='success'>\r
5421                                                                                                         <set>\r
5422                                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
5423                                                                                                         </set>\r
5424                                                                                                     </outcome>\r
5425                                                                                                 </update>\r
5426                                                                                             </block>\r
5427                                                                                         </outcome>\r
5428                                                                                     </switch>\r
5429                                                                                 </block>\r
5430                                                                                 <switch test="`$ss.resource-key.vf-module`">\r
5431                                                                                     <outcome value='vf-module'>\r
5432                                                                                         <block>\r
5433                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5434                                                                                                 <parameter name="logger" value="message-log"/>\r
5435                                                                                                 <parameter name="field1" value="ROLLBACK vf-module update"/>\r
5436                                                                                             </record>\r
5437                                                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5438         resource="vf-module"\r
5439                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
5440                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
5441                                                                                                 <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
5442                                                                                                 <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
5443                                                                                                 <outcome value='failure'>\r
5444                                                                                                     <set>\r
5445                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
5446                                                                                                     </set>\r
5447                                                                                                 </outcome>\r
5448                                                                                                 <outcome value='not-found'>\r
5449                                                                                                     <set>\r
5450                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
5451                                                                                                     </set>\r
5452                                                                                                 </outcome>\r
5453                                                                                                 <outcome value='success'>\r
5454                                                                                                     <set>\r
5455                                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
5456                                                                                                     </set>\r
5457                                                                                                 </outcome>\r
5458                                                                                             </update>\r
5459                                                                                         </block>\r
5460                                                                                     </outcome>\r
5461                                                                                 </switch>\r
5462                                                                             </block>\r
5463                                                                             <switch test="`$ss.resource-key.volume-group`">\r
5464                                                                                 <outcome value='volume-group'>\r
5465                                                                                     <block>\r
5466                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5467                                                                                             <parameter name="logger" value="message-log"/>\r
5468                                                                                             <parameter name="field1" value="ROLLBACK volume-group update"/>\r
5469                                                                                         </record>\r
5470                                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5471         resource="volume-group"\r
5472                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
5473                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
5474                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
5475                         AND volume-group-id = $ss.param.volume-group-id" >\r
5476                                                                                             <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
5477                                                                                             <outcome value='failure'>\r
5478                                                                                                 <set>\r
5479                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5480                                                                                                 </set>\r
5481                                                                                             </outcome>\r
5482                                                                                             <outcome value='not-found'>\r
5483                                                                                                 <set>\r
5484                                                                                                     <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
5485                                                                                                 </set>\r
5486                                                                                             </outcome>\r
5487                                                                                             <outcome value='success'>\r
5488                                                                                                 <set>\r
5489                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
5490                                                                                                 </set>\r
5491                                                                                             </outcome>\r
5492                                                                                         </update>\r
5493                                                                                     </block>\r
5494                                                                                 </outcome>\r
5495                                                                             </switch>\r
5496                                                                         </block>\r
5497                                                                         <switch test="`$ss.resource-key.vnfc`">\r
5498                                                                             <outcome value='vnfc'>\r
5499                                                                                 <block atomic='true'>\r
5500                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5501                                                                                         <parameter name="logger" value="message-log"/>\r
5502                                                                                         <parameter name="field1" value="ROLLBACK vnfc save"/>\r
5503                                                                                     </record>\r
5504                                                                                     <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5505         resource="vnfc"\r
5506                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
5507                                                                                         <outcome value='failure'>\r
5508                                                                                             <block atomic='true'>\r
5509                                                                                                 <set>\r
5510                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5511                                                                                                 </set>\r
5512                                                                                                 <switch test='`$tmp.return-failure`'>\r
5513                                                                                                     <outcome value='true'>\r
5514                                                                                                         <block atomic='true'>\r
5515                                                                                                             <set>\r
5516                                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
5517         value='FAILED' />\r
5518                                                                                                             </set>\r
5519                                                                                                             <return status='failure'>\r
5520                                                                                                                 <parameter name='error-code' value='500' />\r
5521                                                                                                                 <parameter name='error-message' value='`$error-message`' />\r
5522                                                                                                             </return>\r
5523                                                                                                         </block>\r
5524                                                                                                     </outcome>\r
5525                                                                                                 </switch>\r
5526                                                                                             </block>\r
5527                                                                                         </outcome>\r
5528                                                                                         <outcome value='not-found'>\r
5529                                                                                             <set>\r
5530                                                                                                 <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
5531                                                                                             </set>\r
5532                                                                                         </outcome>\r
5533                                                                                         <outcome value='success'>\r
5534                                                                                             <set>\r
5535                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
5536                                                                                             </set>\r
5537                                                                                         </outcome>\r
5538                                                                                     </delete>\r
5539                                                                                 </block>\r
5540                                                                             </outcome>\r
5541                                                                         </switch>\r
5542                                                                     </block>\r
5543                                                                     <block atomic='true'>\r
5544                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5545                                                                             <parameter name="logger" value="message-log"/>\r
5546                                                                             <parameter name="field1" value="ROLLBACK vlan-tag save"/>\r
5547                                                                         </record>\r
5548                                                                         <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data_length`' >\r
5549                                                                             <for silentFailure='true' index='j' start='0' end='$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data_length`' >\r
5550                                                                                 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5551         resource="vlan-tag"\r
5552                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
5553                                                                                     <outcome value='failure'>\r
5554                                                                                         <block atomic='true'>\r
5555                                                                                             <set>\r
5556                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to delete vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5557                                                                                             </set>\r
5558                                                                                             <switch test='`$tmp.return-failure`'>\r
5559                                                                                                 <outcome value='true'>\r
5560                                                                                                     <block atomic='true'>\r
5561                                                                                                         <set>\r
5562                                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
5563         value='FAILED' />\r
5564                                                                                                         </set>\r
5565                                                                                                         <return status='failure'>\r
5566                                                                                                             <parameter name='error-code' value='500' />\r
5567                                                                                                             <parameter name='error-message' value='`$error-message`' />\r
5568                                                                                                         </return>\r
5569                                                                                                     </block>\r
5570                                                                                                 </outcome>\r
5571                                                                                             </switch>\r
5572                                                                                         </block>\r
5573                                                                                     </outcome>\r
5574                                                                                     <outcome value='not-found'>\r
5575                                                                                         <set>\r
5576                                                                                             <parameter name='error-message' value="`$error-message + ' vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' not found in AAI. Consider silent success!'`" />\r
5577                                                                                         </set>\r
5578                                                                                     </outcome>\r
5579                                                                                     <outcome value='success'>\r
5580                                                                                         <set>\r
5581                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + '  completed.'`" />\r
5582                                                                                         </set>\r
5583                                                                                     </outcome>\r
5584                                                                                 </delete>\r
5585                                                                             </for>\r
5586                                                                         </for>\r
5587                                                                     </block>\r
5588                                                                 </block>\r
5589                                                                 <switch test="`$ss.resource-key.l-interface`">\r
5590                                                                     <outcome value='l-interface'>\r
5591                                                                         <block atomic='true'>\r
5592                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5593                                                                                 <parameter name="logger" value="message-log"/>\r
5594                                                                                 <parameter name="field1" value="ROLLBACK l-interface (oam) save"/>\r
5595                                                                             </record>\r
5596                                                                             <switch test="`$ss.param.oam-interface-name != ''`">\r
5597                                                                                 <outcome value='true'>\r
5598                                                                                     <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5599         resource="l-interface"\r
5600                 key="l-interface.interface-name = $ss.param.oam-interface-name\r
5601                 AND generic-vnf.vnf-id = $ss.param.vnf-id" >\r
5602                                                                                         <outcome value='failure'>\r
5603                                                                                             <block atomic='true'>\r
5604                                                                                                 <set>\r
5605                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to delete l-interface.interface-name = ' + $ss.param.oam-interface-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5606                                                                                                 </set>\r
5607                                                                                                 <switch test='`$tmp.return-failure`'>\r
5608                                                                                                     <outcome value='true'>\r
5609                                                                                                         <block atomic='true'>\r
5610                                                                                                             <set>\r
5611                                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
5612         value='FAILED' />\r
5613                                                                                                             </set>\r
5614                                                                                                             <return status='failure'>\r
5615                                                                                                                 <parameter name='error-code' value='500' />\r
5616                                                                                                                 <parameter name='error-message' value='`$error-message`' />\r
5617                                                                                                             </return>\r
5618                                                                                                         </block>\r
5619                                                                                                     </outcome>\r
5620                                                                                                 </switch>\r
5621                                                                                             </block>\r
5622                                                                                         </outcome>\r
5623                                                                                         <outcome value='not-found'>\r
5624                                                                                             <set>\r
5625                                                                                                 <parameter name='error-message' value="`$error-message + ' l-interface.interface-name = ' + $ss.param.oam-interface-name + ' not found in AAI. Consider silent success!'`" />\r
5626                                                                                             </set>\r
5627                                                                                         </outcome>\r
5628                                                                                         <outcome value='success'>\r
5629                                                                                             <set>\r
5630                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback (delete) of l-interface with interface-name = ' + $ss.param.oam-interface-name + '  completed.'`" />\r
5631                                                                                             </set>\r
5632                                                                                         </outcome>\r
5633                                                                                     </delete>\r
5634                                                                                 </outcome>\r
5635                                                                             </switch>\r
5636                                                                         </block>\r
5637                                                                     </outcome>\r
5638                                                                 </switch>\r
5639                                                             </block>\r
5640                                                             <switch test="`$ss.resource-key.l-interface`">\r
5641                                                                 <outcome value='l-interface'>\r
5642                                                                     <block atomic='true'>\r
5643                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5644                                                                             <parameter name="logger" value="message-log"/>\r
5645                                                                             <parameter name="field1" value="ROLLBACK l-interface (oam) save"/>\r
5646                                                                         </record>\r
5647                                                                         <switch test="`$ss.param.lo0-interface-name != ''`">\r
5648                                                                             <outcome value='true'>\r
5649                                                                                 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5650         resource="l-interface"\r
5651                 key="l-interface.interface-name = $ss.param.lo0-interface-name\r
5652                 AND generic-vnf.vnf-id = $ss.param.vnf-id" >\r
5653                                                                                     <outcome value='failure'>\r
5654                                                                                         <block atomic='true'>\r
5655                                                                                             <set>\r
5656                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to delete l-interface.interface-name = ' + $ss.param.lo0-interface-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5657                                                                                             </set>\r
5658                                                                                             <switch test='`$tmp.return-failure`'>\r
5659                                                                                                 <outcome value='true'>\r
5660                                                                                                     <block atomic='true'>\r
5661                                                                                                         <set>\r
5662                                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
5663         value='FAILED' />\r
5664                                                                                                         </set>\r
5665                                                                                                         <return status='failure'>\r
5666                                                                                                             <parameter name='error-code' value='500' />\r
5667                                                                                                             <parameter name='error-message' value='`$error-message`' />\r
5668                                                                                                         </return>\r
5669                                                                                                     </block>\r
5670                                                                                                 </outcome>\r
5671                                                                                             </switch>\r
5672                                                                                         </block>\r
5673                                                                                     </outcome>\r
5674                                                                                     <outcome value='not-found'>\r
5675                                                                                         <set>\r
5676                                                                                             <parameter name='error-message' value="`$error-message + ' l-interface.interface-name = ' + $ss.param.lo0-interface-name + ' not found in AAI. Consider silent success!'`" />\r
5677                                                                                         </set>\r
5678                                                                                     </outcome>\r
5679                                                                                     <outcome value='success'>\r
5680                                                                                         <set>\r
5681                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback (delete) of l-interface with interface-name = ' + $ss.param.lo0-interface-name + '  completed.'`" />\r
5682                                                                                         </set>\r
5683                                                                                     </outcome>\r
5684                                                                                 </delete>\r
5685                                                                             </outcome>\r
5686                                                                         </switch>\r
5687                                                                     </block>\r
5688                                                                 </outcome>\r
5689                                                             </switch>\r
5690                                                         </block>\r
5691                                                         <switch test="`$ss.resource-key.l3-network`">\r
5692                                                             <outcome value='l3-netework'>\r
5693                                                                 <block atomic='true'>\r
5694                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5695                                                                         <parameter name="logger" value="message-log"/>\r
5696                                                                         <parameter name="field1" value="ROLLBACK VNF l3-network relationship"/>\r
5697                                                                     </record>\r
5698                                                                     <for silentFailure='true' index='n' start='0' end='`$nidx`' >\r
5699                                                                         <set>\r
5700                                                                             <parameter name='tmp.related-link' value="`'/aai/v$/network/l3-networks/l3-network/' + $ss.network[$n].netid`" />\r
5701                                                                             <!--\r
5702 <parameter name='tmp.related-link' value="`'/aai/' + $prop.aai.version + '/network/l3-networks/l3-network/' + $ss.network[$n].netid`" />\r
5703 -->\r
5704                                                                         </set>\r
5705                                                                         <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
5706         resource="generic-vnf:relationship-list" \r
5707                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
5708                 AND related-to = l3-network \r
5709                 AND relationship.related-link = $tmp.related-link" >\r
5710                                                                             <outcome value='failure'>\r
5711                                                                                 <block atomic='true'>\r
5712                                                                                     <set>\r
5713                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to delete VNF l3-network relationship for generic-vnf.vnfid = ' + $ss.param.vnf-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5714                                                                                     </set>\r
5715                                                                                     <switch test='`$tmp.return-failure`'>\r
5716                                                                                         <outcome value='true'>\r
5717                                                                                             <block atomic='true'>\r
5718                                                                                                 <set>\r
5719                                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
5720         value='FAILED' />\r
5721                                                                                                 </set>\r
5722                                                                                                 <return status='failure'>\r
5723                                                                                                     <parameter name='error-code' value='500' />\r
5724                                                                                                     <parameter name='error-message' value='`$error-message`' />\r
5725                                                                                                 </return>\r
5726                                                                                             </block>\r
5727                                                                                         </outcome>\r
5728                                                                                     </switch>\r
5729                                                                                 </block>\r
5730                                                                             </outcome>\r
5731                                                                             <outcome value='not-found'>\r
5732                                                                                 <set>\r
5733                                                                                     <parameter name='error-message' value="`$error-message + ' l3-network relationship with related-path = ' + $tmp.related-path  + ' not found in AAI. Consider silent success!'`" />\r
5734                                                                                 </set>\r
5735                                                                             </outcome>\r
5736                                                                             <outcome value='success'>\r
5737                                                                                 <set>\r
5738                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback (delete) of generic-vnf l3-network relationships completed.'`" />\r
5739                                                                                 </set>\r
5740                                                                             </outcome>\r
5741                                                                         </delete>\r
5742                                                                     </for>\r
5743                                                                 </block>\r
5744                                                             </outcome>\r
5745                                                         </switch>\r
5746                                                     </block>\r
5747                                                     <return status='failure'>\r
5748                                                         <parameter name='error-code' value='500' />\r
5749                                                         <parameter name='error-message' value="`' Failed to create generic-vnf releationship for l3-network with network-id =' + $ss.network[$n].netid + ' in AnAI. ' + $error-message`" />\r
5750                                                     </return>\r
5751                                                 </block>\r
5752                                             </outcome>\r
5753                                             <outcome value='not-found'>\r
5754                                                 <block atomic='true'>\r
5755                                                     <block>\r
5756                                                         <block>\r
5757                                                             <block>\r
5758                                                                 <block>\r
5759                                                                     <block atomic='true'>\r
5760                                                                         <block>\r
5761                                                                             <block>\r
5762                                                                                 <block>\r
5763                                                                                     <switch test="`$ss.resource-key.generic-vnf`">\r
5764                                                                                         <outcome value='generic-vnf'>\r
5765                                                                                             <block>\r
5766                                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5767                                                                                                     <parameter name="logger" value="message-log"/>\r
5768                                                                                                     <parameter name="field1" value="ROLLBACK generic-vnf update"/>\r
5769                                                                                                 </record>\r
5770                                                                                                 <set>\r
5771                                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
5772         value='FAILED' />\r
5773                                                                                                 </set>\r
5774                                                                                                 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5775         resource="generic-vnf"\r
5776                 key="generic-vnf.vnf-id = $ss.param.vnf-id " >\r
5777                                                                                                     <parameter name="ipv4-loopback0-address" value='`$tmp.aai.vnf.ipv4-loopback0-address`' />\r
5778                                                                                                     <parameter name="ipv4-oam-address" value='`$tmp.aai.vnf.ipv4-oam-address`' />\r
5779                                                                                                     <parameter name="as-number" value='`$tmp.aai.vnf.as-number`' />\r
5780                                                                                                     <parameter name="vlan-id-outer" value='`$tmp.aai.vnf.vlan-id-outer`' />\r
5781                                                                                                     <outcome value='failure'>\r
5782                                                                                                         <set>\r
5783                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5784                                                                                                         </set>\r
5785                                                                                                     </outcome>\r
5786                                                                                                     <outcome value='not-found'>\r
5787                                                                                                         <set>\r
5788                                                                                                             <parameter name='error-message' value="`$error-message + ' Failed to rollback generic-vnf update because generic-vnf with vnf-id=' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5789                                                                                                         </set>\r
5790                                                                                                     </outcome>\r
5791                                                                                                     <outcome value='success'>\r
5792                                                                                                         <set>\r
5793                                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback of generic-vnf update completed. '`" />\r
5794                                                                                                         </set>\r
5795                                                                                                     </outcome>\r
5796                                                                                                 </update>\r
5797                                                                                             </block>\r
5798                                                                                         </outcome>\r
5799                                                                                     </switch>\r
5800                                                                                 </block>\r
5801                                                                                 <switch test="`$ss.resource-key.vf-module`">\r
5802                                                                                     <outcome value='vf-module'>\r
5803                                                                                         <block>\r
5804                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5805                                                                                                 <parameter name="logger" value="message-log"/>\r
5806                                                                                                 <parameter name="field1" value="ROLLBACK vf-module update"/>\r
5807                                                                                             </record>\r
5808                                                                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5809         resource="vf-module"\r
5810                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
5811                         AND vf-module.vf-module-id = $ss.param.vf-module-id " >\r
5812                                                                                                 <parameter name="vf-module-name" value='`$tmp.aai.vfmdoule.vf-module-name`' />\r
5813                                                                                                 <parameter name="selflink" value='`$tmp.aai.vfmdoule.selflink`' />\r
5814                                                                                                 <outcome value='failure'>\r
5815                                                                                                     <set>\r
5816                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' in AnAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
5817                                                                                                     </set>\r
5818                                                                                                 </outcome>\r
5819                                                                                                 <outcome value='not-found'>\r
5820                                                                                                     <set>\r
5821                                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to rollback vf-module update with vf-module-id=' + $ss.param.vf-module-id + ' because vf-module not found in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />\r
5822                                                                                                     </set>\r
5823                                                                                                 </outcome>\r
5824                                                                                                 <outcome value='success'>\r
5825                                                                                                     <set>\r
5826                                                                                                         <parameter name='error-message' value="`$error-message + ' Rollback of vf-module update completed.'`" />\r
5827                                                                                                     </set>\r
5828                                                                                                 </outcome>\r
5829                                                                                             </update>\r
5830                                                                                         </block>\r
5831                                                                                     </outcome>\r
5832                                                                                 </switch>\r
5833                                                                             </block>\r
5834                                                                             <switch test="`$ss.resource-key.volume-group`">\r
5835                                                                                 <outcome value='volume-group'>\r
5836                                                                                     <block>\r
5837                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5838                                                                                             <parameter name="logger" value="message-log"/>\r
5839                                                                                             <parameter name="field1" value="ROLLBACK volume-group update"/>\r
5840                                                                                         </record>\r
5841                                                                                         <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5842         resource="volume-group"\r
5843                 key="cloud-region.cloud-owner = $prop.cloud-owner  \r
5844                         AND cloud-region.cloud-region-id = $ss.param.aic-cloud-region \r
5845                         AND cloud-region.cloud-owner = $prop.cloud-region.cloud-owner \r
5846                         AND volume-group-id = $ss.param.volume-group-id" >\r
5847                                                                                             <parameter name="volume-group-name" value='`$tmp.aai.volume-group.volume-group-name`' />\r
5848                                                                                             <outcome value='failure'>\r
5849                                                                                                 <set>\r
5850                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to UPDATE volume-group with volume-group-id=' + $ss.param.volume-group-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5851                                                                                                 </set>\r
5852                                                                                             </outcome>\r
5853                                                                                             <outcome value='not-found'>\r
5854                                                                                                 <set>\r
5855                                                                                                     <parameter name='error-message' value="`$error-message + ' volume-group with volume-group-id = ' + $ss.param.volume-group-id + ' not found in AAI. Consider silent success!'`" />\r
5856                                                                                                 </set>\r
5857                                                                                             </outcome>\r
5858                                                                                             <outcome value='success'>\r
5859                                                                                                 <set>\r
5860                                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback of volume_group completed.'`" />\r
5861                                                                                                 </set>\r
5862                                                                                             </outcome>\r
5863                                                                                         </update>\r
5864                                                                                     </block>\r
5865                                                                                 </outcome>\r
5866                                                                             </switch>\r
5867                                                                         </block>\r
5868                                                                         <switch test="`$ss.resource-key.vnfc`">\r
5869                                                                             <outcome value='vnfc'>\r
5870                                                                                 <block atomic='true'>\r
5871                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5872                                                                                         <parameter name="logger" value="message-log"/>\r
5873                                                                                         <parameter name="field1" value="ROLLBACK vnfc save"/>\r
5874                                                                                     </record>\r
5875                                                                                     <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5876         resource="vnfc"\r
5877                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
5878                                                                                         <outcome value='failure'>\r
5879                                                                                             <block atomic='true'>\r
5880                                                                                                 <set>\r
5881                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5882                                                                                                 </set>\r
5883                                                                                                 <switch test='`$tmp.return-failure`'>\r
5884                                                                                                     <outcome value='true'>\r
5885                                                                                                         <block atomic='true'>\r
5886                                                                                                             <set>\r
5887                                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
5888         value='FAILED' />\r
5889                                                                                                             </set>\r
5890                                                                                                             <return status='failure'>\r
5891                                                                                                                 <parameter name='error-code' value='500' />\r
5892                                                                                                                 <parameter name='error-message' value='`$error-message`' />\r
5893                                                                                                             </return>\r
5894                                                                                                         </block>\r
5895                                                                                                     </outcome>\r
5896                                                                                                 </switch>\r
5897                                                                                             </block>\r
5898                                                                                         </outcome>\r
5899                                                                                         <outcome value='not-found'>\r
5900                                                                                             <set>\r
5901                                                                                                 <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
5902                                                                                             </set>\r
5903                                                                                         </outcome>\r
5904                                                                                         <outcome value='success'>\r
5905                                                                                             <set>\r
5906                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
5907                                                                                             </set>\r
5908                                                                                         </outcome>\r
5909                                                                                     </delete>\r
5910                                                                                 </block>\r
5911                                                                             </outcome>\r
5912                                                                         </switch>\r
5913                                                                     </block>\r
5914                                                                     <block atomic='true'>\r
5915                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5916                                                                             <parameter name="logger" value="message-log"/>\r
5917                                                                             <parameter name="field1" value="ROLLBACK vlan-tag save"/>\r
5918                                                                         </record>\r
5919                                                                         <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data_length`' >\r
5920                                                                             <for silentFailure='true' index='j' start='0' end='$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data_length`' >\r
5921                                                                                 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5922         resource="vlan-tag"\r
5923                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
5924                                                                                     <outcome value='failure'>\r
5925                                                                                         <block atomic='true'>\r
5926                                                                                             <set>\r
5927                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to delete vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5928                                                                                             </set>\r
5929                                                                                             <switch test='`$tmp.return-failure`'>\r
5930                                                                                                 <outcome value='true'>\r
5931                                                                                                     <block atomic='true'>\r
5932                                                                                                         <set>\r
5933                                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
5934         value='FAILED' />\r
5935                                                                                                         </set>\r
5936                                                                                                         <return status='failure'>\r
5937                                                                                                             <parameter name='error-code' value='500' />\r
5938                                                                                                             <parameter name='error-message' value='`$error-message`' />\r
5939                                                                                                         </return>\r
5940                                                                                                     </block>\r
5941                                                                                                 </outcome>\r
5942                                                                                             </switch>\r
5943                                                                                         </block>\r
5944                                                                                     </outcome>\r
5945                                                                                     <outcome value='not-found'>\r
5946                                                                                         <set>\r
5947                                                                                             <parameter name='error-message' value="`$error-message + ' vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' not found in AAI. Consider silent success!'`" />\r
5948                                                                                         </set>\r
5949                                                                                     </outcome>\r
5950                                                                                     <outcome value='success'>\r
5951                                                                                         <set>\r
5952                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + '  completed.'`" />\r
5953                                                                                         </set>\r
5954                                                                                     </outcome>\r
5955                                                                                 </delete>\r
5956                                                                             </for>\r
5957                                                                         </for>\r
5958                                                                     </block>\r
5959                                                                 </block>\r
5960                                                                 <switch test="`$ss.resource-key.l-interface`">\r
5961                                                                     <outcome value='l-interface'>\r
5962                                                                         <block atomic='true'>\r
5963                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
5964                                                                                 <parameter name="logger" value="message-log"/>\r
5965                                                                                 <parameter name="field1" value="ROLLBACK l-interface (oam) save"/>\r
5966                                                                             </record>\r
5967                                                                             <switch test="`$ss.param.oam-interface-name != ''`">\r
5968                                                                                 <outcome value='true'>\r
5969                                                                                     <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
5970         resource="l-interface"\r
5971                 key="l-interface.interface-name = $ss.param.oam-interface-name\r
5972                 AND generic-vnf.vnf-id = $ss.param.vnf-id" >\r
5973                                                                                         <outcome value='failure'>\r
5974                                                                                             <block atomic='true'>\r
5975                                                                                                 <set>\r
5976                                                                                                     <parameter name='error-message' value="`$error-message + ' Failed to delete l-interface.interface-name = ' + $ss.param.oam-interface-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
5977                                                                                                 </set>\r
5978                                                                                                 <switch test='`$tmp.return-failure`'>\r
5979                                                                                                     <outcome value='true'>\r
5980                                                                                                         <block atomic='true'>\r
5981                                                                                                             <set>\r
5982                                                                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
5983         value='FAILED' />\r
5984                                                                                                             </set>\r
5985                                                                                                             <return status='failure'>\r
5986                                                                                                                 <parameter name='error-code' value='500' />\r
5987                                                                                                                 <parameter name='error-message' value='`$error-message`' />\r
5988                                                                                                             </return>\r
5989                                                                                                         </block>\r
5990                                                                                                     </outcome>\r
5991                                                                                                 </switch>\r
5992                                                                                             </block>\r
5993                                                                                         </outcome>\r
5994                                                                                         <outcome value='not-found'>\r
5995                                                                                             <set>\r
5996                                                                                                 <parameter name='error-message' value="`$error-message + ' l-interface.interface-name = ' + $ss.param.oam-interface-name + ' not found in AAI. Consider silent success!'`" />\r
5997                                                                                             </set>\r
5998                                                                                         </outcome>\r
5999                                                                                         <outcome value='success'>\r
6000                                                                                             <set>\r
6001                                                                                                 <parameter name='error-message' value="`$error-message + ' Rollback (delete) of l-interface with interface-name = ' + $ss.param.oam-interface-name + '  completed.'`" />\r
6002                                                                                             </set>\r
6003                                                                                         </outcome>\r
6004                                                                                     </delete>\r
6005                                                                                 </outcome>\r
6006                                                                             </switch>\r
6007                                                                         </block>\r
6008                                                                     </outcome>\r
6009                                                                 </switch>\r
6010                                                             </block>\r
6011                                                             <switch test="`$ss.resource-key.l-interface`">\r
6012                                                                 <outcome value='l-interface'>\r
6013                                                                     <block atomic='true'>\r
6014                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
6015                                                                             <parameter name="logger" value="message-log"/>\r
6016                                                                             <parameter name="field1" value="ROLLBACK l-interface (oam) save"/>\r
6017                                                                         </record>\r
6018                                                                         <switch test="`$ss.param.lo0-interface-name != ''`">\r
6019                                                                             <outcome value='true'>\r
6020                                                                                 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
6021         resource="l-interface"\r
6022                 key="l-interface.interface-name = $ss.param.lo0-interface-name\r
6023                 AND generic-vnf.vnf-id = $ss.param.vnf-id" >\r
6024                                                                                     <outcome value='failure'>\r
6025                                                                                         <block atomic='true'>\r
6026                                                                                             <set>\r
6027                                                                                                 <parameter name='error-message' value="`$error-message + ' Failed to delete l-interface.interface-name = ' + $ss.param.lo0-interface-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
6028                                                                                             </set>\r
6029                                                                                             <switch test='`$tmp.return-failure`'>\r
6030                                                                                                 <outcome value='true'>\r
6031                                                                                                     <block atomic='true'>\r
6032                                                                                                         <set>\r
6033                                                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
6034         value='FAILED' />\r
6035                                                                                                         </set>\r
6036                                                                                                         <return status='failure'>\r
6037                                                                                                             <parameter name='error-code' value='500' />\r
6038                                                                                                             <parameter name='error-message' value='`$error-message`' />\r
6039                                                                                                         </return>\r
6040                                                                                                     </block>\r
6041                                                                                                 </outcome>\r
6042                                                                                             </switch>\r
6043                                                                                         </block>\r
6044                                                                                     </outcome>\r
6045                                                                                     <outcome value='not-found'>\r
6046                                                                                         <set>\r
6047                                                                                             <parameter name='error-message' value="`$error-message + ' l-interface.interface-name = ' + $ss.param.lo0-interface-name + ' not found in AAI. Consider silent success!'`" />\r
6048                                                                                         </set>\r
6049                                                                                     </outcome>\r
6050                                                                                     <outcome value='success'>\r
6051                                                                                         <set>\r
6052                                                                                             <parameter name='error-message' value="`$error-message + ' Rollback (delete) of l-interface with interface-name = ' + $ss.param.lo0-interface-name + '  completed.'`" />\r
6053                                                                                         </set>\r
6054                                                                                     </outcome>\r
6055                                                                                 </delete>\r
6056                                                                             </outcome>\r
6057                                                                         </switch>\r
6058                                                                     </block>\r
6059                                                                 </outcome>\r
6060                                                             </switch>\r
6061                                                         </block>\r
6062                                                         <switch test="`$ss.resource-key.l3-network`">\r
6063                                                             <outcome value='l3-netework'>\r
6064                                                                 <block atomic='true'>\r
6065                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
6066                                                                         <parameter name="logger" value="message-log"/>\r
6067                                                                         <parameter name="field1" value="ROLLBACK VNF l3-network relationship"/>\r
6068                                                                     </record>\r
6069                                                                     <for silentFailure='true' index='n' start='0' end='`$nidx`' >\r
6070                                                                         <set>\r
6071                                                                             <parameter name='tmp.related-link' value="`'/aai/v$/network/l3-networks/l3-network/' + $ss.network[$n].netid`" />\r
6072                                                                             <!--\r
6073 <parameter name='tmp.related-link' value="`'/aai/' + $prop.aai.version + '/network/l3-networks/l3-network/' + $ss.network[$n].netid`" />\r
6074 -->\r
6075                                                                         </set>\r
6076                                                                         <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
6077         resource="generic-vnf:relationship-list" \r
6078                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
6079                 AND related-to = l3-network \r
6080                 AND relationship.related-link = $tmp.related-link" >\r
6081                                                                             <outcome value='failure'>\r
6082                                                                                 <block atomic='true'>\r
6083                                                                                     <set>\r
6084                                                                                         <parameter name='error-message' value="`$error-message + ' Failed to delete VNF l3-network relationship for generic-vnf.vnfid = ' + $ss.param.vnf-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
6085                                                                                     </set>\r
6086                                                                                     <switch test='`$tmp.return-failure`'>\r
6087                                                                                         <outcome value='true'>\r
6088                                                                                             <block atomic='true'>\r
6089                                                                                                 <set>\r
6090                                                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
6091         value='FAILED' />\r
6092                                                                                                 </set>\r
6093                                                                                                 <return status='failure'>\r
6094                                                                                                     <parameter name='error-code' value='500' />\r
6095                                                                                                     <parameter name='error-message' value='`$error-message`' />\r
6096                                                                                                 </return>\r
6097                                                                                             </block>\r
6098                                                                                         </outcome>\r
6099                                                                                     </switch>\r
6100                                                                                 </block>\r
6101                                                                             </outcome>\r
6102                                                                             <outcome value='not-found'>\r
6103                                                                                 <set>\r
6104                                                                                     <parameter name='error-message' value="`$error-message + ' l3-network relationship with related-path = ' + $tmp.related-path  + ' not found in AAI. Consider silent success!'`" />\r
6105                                                                                 </set>\r
6106                                                                             </outcome>\r
6107                                                                             <outcome value='success'>\r
6108                                                                                 <set>\r
6109                                                                                     <parameter name='error-message' value="`$error-message + ' Rollback (delete) of generic-vnf l3-network relationships completed.'`" />\r
6110                                                                                 </set>\r
6111                                                                             </outcome>\r
6112                                                                         </delete>\r
6113                                                                     </for>\r
6114                                                                 </block>\r
6115                                                             </outcome>\r
6116                                                         </switch>\r
6117                                                     </block>\r
6118                                                     <return status='failure'>\r
6119                                                         <parameter name='error-code' value='500' />\r
6120                                                         <parameter name='error-message' value="`' Failed to create generic-vnf releationship for l3-network with network-id =' + $ss.network[$n].netid + ' in AnAI. ' + $error-message`" />\r
6121                                                     </return>\r
6122                                                 </block>\r
6123                                             </outcome>\r
6124                                         </save>\r
6125                                     </block>\r
6126                                 </for>\r
6127                             </outcome>\r
6128                         </switch>\r
6129                         <set>\r
6130                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
6131         value='SUCCESS' />\r
6132                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].value' \r
6133         value='SUCCESS' />\r
6134                         </set>\r
6135                     </block>\r
6136                 </outcome>\r
6137                 <outcome value='unassign'>\r
6138                     <block atomic='true'>\r
6139                         <block>\r
6140                             <set>\r
6141                                 <parameter name='nidx' value='0' />\r
6142                             </set>\r
6143                             <for silentFailure='true' index="bidx" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param_length`" >\r
6144                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='startsWith' emitsOutcome='true' >\r
6145                                     <parameter name="source" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].name`" />\r
6146                                     <parameter name="target" value="sriov"/>\r
6147                                     <outcome value='true'>\r
6148                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='endsWith' emitsOutcome='true' >\r
6149                                             <parameter name="source" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].name`" />\r
6150                                             <parameter name="target" value="_net_id"/>\r
6151                                             <outcome value='true'>\r
6152                                                 <block>\r
6153                                                     <set>\r
6154                                                         <parameter name='ss.network[$nidx].netid' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6155                                                     </set>\r
6156                                                     <set>\r
6157                                                         <parameter name='nidx' value='`$nidx + 1`' />\r
6158                                                     </set>\r
6159                                                 </block>\r
6160                                             </outcome>\r
6161                                         </execute>\r
6162                                     </outcome>\r
6163                                     <outcome value='false'>\r
6164                                         <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].name`'>\r
6165                                             <outcome value='vf_module_id'>\r
6166                                                 <set>\r
6167                                                     <parameter name='ss.param.vf-module-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6168                                                 </set>\r
6169                                             </outcome>\r
6170                                             <outcome value='vf_module_name'>\r
6171                                                 <set>\r
6172                                                     <parameter name='ss.param.vf-module-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6173                                                 </set>\r
6174                                             </outcome>\r
6175                                             <outcome value='volume-group-id'>\r
6176                                                 <set>\r
6177                                                     <parameter name='ss.param.volume-group-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6178                                                 </set>\r
6179                                             </outcome>\r
6180                                             <outcome value='volume-group-name'>\r
6181                                                 <set>\r
6182                                                     <parameter name='ss.param.volume-group-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6183                                                 </set>\r
6184                                             </outcome>\r
6185                                             <outcome value='aic-cloud-region'>\r
6186                                                 <set>\r
6187                                                     <parameter name='ss.param.aic-cloud-region' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6188                                                 </set>\r
6189                                             </outcome>\r
6190                                             <outcome value='vnfc-name'>\r
6191                                                 <set>\r
6192                                                     <parameter name='ss.param.vnfc-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6193                                                     <parameter name='ss.param.vnfc-name-index' value='`$bidx`' />\r
6194                                                 </set>\r
6195                                             </outcome>\r
6196                                             <outcome value='oam-interface-name'>\r
6197                                                 <set>\r
6198                                                     <parameter name='ss.param.oam-interface-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6199                                                     <parameter name='ss.param.oam-interface-name-index' value='`$bidx`' />\r
6200                                                 </set>\r
6201                                             </outcome>\r
6202                                             <outcome value='=รข\80\9dlo0-interface-name'>\r
6203                                                 <set>\r
6204                                                     <parameter name='ss.param.lo0-interface-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6205                                                     <parameter name='ss.param.lo0-interface-name-index' value='`$bidx`' />\r
6206                                                 </set>\r
6207                                             </outcome>\r
6208                                             <outcome value='ipv4-oam-address'>\r
6209                                                 <set>\r
6210                                                     <parameter name='ss.param.ipv4-oam-address' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6211                                                     <parameter name='ss.param.ipv4-oam-address-index' value='`$bidx`' />\r
6212                                                 </set>\r
6213                                             </outcome>\r
6214                                             <outcome value='ipv4-oam-address-prefix'>\r
6215                                                 <set>\r
6216                                                     <parameter name='ss.param.ipv4-oam-address-prefix' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6217                                                     <parameter name='ss.param.ipv4-oam-address-prefix-index' value='`$bidx`' />\r
6218                                                 </set>\r
6219                                             </outcome>\r
6220                                             <outcome value='loopback0_ipv4_address'>\r
6221                                                 <set>\r
6222                                                     <parameter name='ss.param.loopback0-ipv4-address' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6223                                                     <parameter name='ss.param.loopback0-ipv4-address-index' value='`$bidx`' />\r
6224                                                 </set>\r
6225                                             </outcome>\r
6226                                             <outcome value='ipv4-loopback0-address'>\r
6227                                                 <set>\r
6228                                                     <parameter name='ss.param.ipv4-loopback0-address' value ='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6229                                                     <parameter name='ss.param.ipv4-loopback0-address-index' value='`bidx`' />\r
6230                                                 </set>\r
6231                                             </outcome>\r
6232                                             <outcome value='nfc-naming-code'>\r
6233                                                 <set>\r
6234                                                     <parameter name='ss.param.nfc-naming-code' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6235                                                     <parameter name='ss.param.nfc-naming-code-index' value='`$bidx`' />\r
6236                                                 </set>\r
6237                                             </outcome>\r
6238                                             <outcome value='nfc-function'>\r
6239                                                 <set>\r
6240                                                     <parameter name='ss.param.nfc-function' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6241                                                     <parameter name='ss.param.nfc-function-index' value='`$bidx`' />\r
6242                                                 </set>\r
6243                                             </outcome>\r
6244                                             <outcome value='vnfc-model-customization-uuid'>\r
6245                                                 <set>\r
6246                                                     <parameter name='ss.param.vnfc-model-customization-uuid' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6247                                                     <parameter name='ss.param.vnfc-model-customization-uuid-index' value='`$bidx`' />\r
6248                                                 </set>\r
6249                                             </outcome>\r
6250                                             <outcome value='vnfc-model-invariant-uuid'>\r
6251                                                 <set>\r
6252                                                     <parameter name='ss.param.vnfc-model-invariant-uuid' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6253                                                     <parameter name='ss.param.vnfc-model-invariant-uuid-index' value='`$bidx`' />\r
6254                                                 </set>\r
6255                                             </outcome>\r
6256                                             <outcome value='vnfc-model-version'>\r
6257                                                 <set>\r
6258                                                     <parameter name='ss.param.vnfc-model-version' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6259                                                     <parameter name='ss.param.vnfc-model-version-index' value='`$bidx`' />\r
6260                                                 </set>\r
6261                                             </outcome>\r
6262                                             <outcome value='as-number'>\r
6263                                                 <set>\r
6264                                                     <parameter name='ss.param.as-number' value ='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6265                                                     <parameter name='ss.param.as-number-index' value='`$bidx`' />\r
6266                                                 </set>\r
6267                                             </outcome>\r
6268                                             <outcome value='vlan-id-outer'>\r
6269                                                 <set>\r
6270                                                     <parameter name='ss.param.vlan-id-outer' value ='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6271                                                     <parameter name='ss.param.vlan-id-outer-index' value='`$bidx`' />\r
6272                                                 </set>\r
6273                                             </outcome>\r
6274                                             <outcome value='availability_zone_0'>\r
6275                                                 <set>\r
6276                                                     <parameter name='ss.param.availability-zone-0' value ='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].value`' />\r
6277                                                     <parameter name='ss.param.availability-zone-0-index' value='`$bidx`' />\r
6278                                                 </set>\r
6279                                             </outcome>\r
6280                                             <outcome value='aai-vf-module-put'>\r
6281                                                 <block>\r
6282                                                     <set>\r
6283                                                         <parameter name='ss.param.aai-vf-module-put-index' value='`$bidx`' />\r
6284                                                     </set>\r
6285                                                     <for silentFailure='true' index="kidx" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key_length`">\r
6286                                                         <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key[$kidx].name`'>\r
6287                                                             <outcome value='generic-vnf'>\r
6288                                                                 <set>\r
6289                                                                     <parameter name='ss.resource-key.generic-vnf' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key[$kidx].value`' />\r
6290                                                                 </set>\r
6291                                                             </outcome>\r
6292                                                             <outcome value='vf-module'>\r
6293                                                                 <set>\r
6294                                                                     <parameter name='ss.resource-key.vf-module' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key[$kidx].value`' />\r
6295                                                                 </set>\r
6296                                                             </outcome>\r
6297                                                             <outcome value='volume-group'>\r
6298                                                                 <set>\r
6299                                                                     <parameter name='ss.resource-key.volume-group' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key[$kidx].value`' />\r
6300                                                                 </set>\r
6301                                                             </outcome>\r
6302                                                             <outcome value='vnfc'>\r
6303                                                                 <set>\r
6304                                                                     <parameter name='ss.resource-key.vnfc' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key[$kidx].value`' />\r
6305                                                                 </set>\r
6306                                                             </outcome>\r
6307                                                             <outcome value='connection-points'>\r
6308                                                                 <set>\r
6309                                                                     <parameter name='ss.resource-key.connection-points' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key[$kidx].value`' />\r
6310                                                                 </set>\r
6311                                                             </outcome>\r
6312                                                             <outcome value='l-interface'>\r
6313                                                                 <set>\r
6314                                                                     <parameter name='ss.resource-key.l-interface' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key[$kidx].value`' />\r
6315                                                                 </set>\r
6316                                                             </outcome>\r
6317                                                             <outcome value='l3-netework'>\r
6318                                                                 <set>\r
6319                                                                     <parameter name='ss.resource-key.l3-network' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$bidx].resource-resolution-data.resource-key[$kidx].value`' />\r
6320                                                                 </set>\r
6321                                                             </outcome>\r
6322                                                         </switch>\r
6323                                                     </for>\r
6324                                                 </block>\r
6325                                             </outcome>\r
6326                                         </switch>\r
6327                                     </outcome>\r
6328                                 </execute>\r
6329                             </for>\r
6330                             <set>\r
6331                                 <parameter name='ss.param.vnf-id' value ='`$service-data.vnfs.vnf[$vnf-index].vnf-id`' />\r
6332                             </set>\r
6333                         </block>\r
6334                         <set>\r
6335                             <parameter name='tmp.return-failure' value ='true' />\r
6336                         </set>\r
6337                         <block atomic='true'>\r
6338                             <switch test="`$ss.resource-key.vnfc`">\r
6339                                 <outcome value='vnfc'>\r
6340                                     <block atomic='true'>\r
6341                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
6342                                             <parameter name="logger" value="message-log"/>\r
6343                                             <parameter name="field1" value="ROLLBACK vnfc save"/>\r
6344                                         </record>\r
6345                                         <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
6346         resource="vnfc"\r
6347                 key="vnfc.vnfc-name = $ss.param.vnfc-name" >\r
6348                                             <outcome value='failure'>\r
6349                                                 <block atomic='true'>\r
6350                                                     <set>\r
6351                                                         <parameter name='error-message' value="`$error-message + ' Failed to delete vnfc with vnfc-name=' + $ss.param.vnfc-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
6352                                                     </set>\r
6353                                                     <switch test='`$tmp.return-failure`'>\r
6354                                                         <outcome value='true'>\r
6355                                                             <block atomic='true'>\r
6356                                                                 <set>\r
6357                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
6358         value='FAILED' />\r
6359                                                                 </set>\r
6360                                                                 <return status='failure'>\r
6361                                                                     <parameter name='error-code' value='500' />\r
6362                                                                     <parameter name='error-message' value='`$error-message`' />\r
6363                                                                 </return>\r
6364                                                             </block>\r
6365                                                         </outcome>\r
6366                                                     </switch>\r
6367                                                 </block>\r
6368                                             </outcome>\r
6369                                             <outcome value='not-found'>\r
6370                                                 <set>\r
6371                                                     <parameter name='error-message' value="`$error-message + ' vnfc with vnfc-name=' + $ss.param.vnfc-name + ' not found in AAI. Consider silent success!'`" />\r
6372                                                 </set>\r
6373                                             </outcome>\r
6374                                             <outcome value='success'>\r
6375                                                 <set>\r
6376                                                     <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vnfc with vnfc-name=' + $ss.param.vnfc-name + '  completed.'`" />\r
6377                                                 </set>\r
6378                                             </outcome>\r
6379                                         </delete>\r
6380                                     </block>\r
6381                                 </outcome>\r
6382                             </switch>\r
6383                             <block atomic='true'>\r
6384                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
6385                                     <parameter name="logger" value="message-log"/>\r
6386                                     <parameter name="field1" value="ROLLBACK vlan-tag save"/>\r
6387                                 </record>\r
6388                                 <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data_length`' >\r
6389                                     <for silentFailure='true' index='j' start='0' end='$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data_length`' >\r
6390                                         <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
6391         resource="vlan-tag"\r
6392                 key="vlan-tag.vlan-tag-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid" >\r
6393                                             <outcome value='failure'>\r
6394                                                 <block atomic='true'>\r
6395                                                     <set>\r
6396                                                         <parameter name='error-message' value="`$error-message + ' Failed to delete vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
6397                                                     </set>\r
6398                                                     <switch test='`$tmp.return-failure`'>\r
6399                                                         <outcome value='true'>\r
6400                                                             <block atomic='true'>\r
6401                                                                 <set>\r
6402                                                                     <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
6403         value='FAILED' />\r
6404                                                                 </set>\r
6405                                                                 <return status='failure'>\r
6406                                                                     <parameter name='error-code' value='500' />\r
6407                                                                     <parameter name='error-message' value='`$error-message`' />\r
6408                                                                 </return>\r
6409                                                             </block>\r
6410                                                         </outcome>\r
6411                                                     </switch>\r
6412                                                 </block>\r
6413                                             </outcome>\r
6414                                             <outcome value='not-found'>\r
6415                                                 <set>\r
6416                                                     <parameter name='error-message' value="`$error-message + ' vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + ' not found in AAI. Consider silent success!'`" />\r
6417                                                 </set>\r
6418                                             </outcome>\r
6419                                             <outcome value='success'>\r
6420                                                 <set>\r
6421                                                     <parameter name='error-message' value="`$error-message + ' Rollback (delete) of vlan-tag with vlan-tag-id =' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[0].vm-names.vnfc-names[0].vnfc-networks.vnfc-network-data[$i].connection-point.vlan-data[$j].vlan-uuid + '  completed.'`" />\r
6422                                                 </set>\r
6423                                             </outcome>\r
6424                                         </delete>\r
6425                                     </for>\r
6426                                 </for>\r
6427                             </block>\r
6428                             <switch test="`$ss.resource-key.l-interface`">\r
6429                                 <outcome value='l-interface'>\r
6430                                     <block atomic='true'>\r
6431                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
6432                                             <parameter name="logger" value="message-log"/>\r
6433                                             <parameter name="field1" value="ROLLBACK l-interface (oam) save"/>\r
6434                                         </record>\r
6435                                         <switch test="`$ss.param.oam-interface-name != ''`">\r
6436                                             <outcome value='true'>\r
6437                                                 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
6438         resource="l-interface"\r
6439                 key="l-interface.interface-name = $ss.param.oam-interface-name\r
6440                 AND generic-vnf.vnf-id = $ss.param.vnf-id" >\r
6441                                                     <outcome value='failure'>\r
6442                                                         <block atomic='true'>\r
6443                                                             <set>\r
6444                                                                 <parameter name='error-message' value="`$error-message + ' Failed to delete l-interface.interface-name = ' + $ss.param.oam-interface-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
6445                                                             </set>\r
6446                                                             <switch test='`$tmp.return-failure`'>\r
6447                                                                 <outcome value='true'>\r
6448                                                                     <block atomic='true'>\r
6449                                                                         <set>\r
6450                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
6451         value='FAILED' />\r
6452                                                                         </set>\r
6453                                                                         <return status='failure'>\r
6454                                                                             <parameter name='error-code' value='500' />\r
6455                                                                             <parameter name='error-message' value='`$error-message`' />\r
6456                                                                         </return>\r
6457                                                                     </block>\r
6458                                                                 </outcome>\r
6459                                                             </switch>\r
6460                                                         </block>\r
6461                                                     </outcome>\r
6462                                                     <outcome value='not-found'>\r
6463                                                         <set>\r
6464                                                             <parameter name='error-message' value="`$error-message + ' l-interface.interface-name = ' + $ss.param.oam-interface-name + ' not found in AAI. Consider silent success!'`" />\r
6465                                                         </set>\r
6466                                                     </outcome>\r
6467                                                     <outcome value='success'>\r
6468                                                         <set>\r
6469                                                             <parameter name='error-message' value="`$error-message + ' Rollback (delete) of l-interface with interface-name = ' + $ss.param.oam-interface-name + '  completed.'`" />\r
6470                                                         </set>\r
6471                                                     </outcome>\r
6472                                                 </delete>\r
6473                                             </outcome>\r
6474                                         </switch>\r
6475                                     </block>\r
6476                                 </outcome>\r
6477                             </switch>\r
6478                             <switch test="`$ss.resource-key.l-interface`">\r
6479                                 <outcome value='l-interface'>\r
6480                                     <block atomic='true'>\r
6481                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
6482                                             <parameter name="logger" value="message-log"/>\r
6483                                             <parameter name="field1" value="ROLLBACK l-interface (oam) save"/>\r
6484                                         </record>\r
6485                                         <switch test="`$ss.param.lo0-interface-name != ''`">\r
6486                                             <outcome value='true'>\r
6487                                                 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
6488         resource="l-interface"\r
6489                 key="l-interface.interface-name = $ss.param.lo0-interface-name\r
6490                 AND generic-vnf.vnf-id = $ss.param.vnf-id" >\r
6491                                                     <outcome value='failure'>\r
6492                                                         <block atomic='true'>\r
6493                                                             <set>\r
6494                                                                 <parameter name='error-message' value="`$error-message + ' Failed to delete l-interface.interface-name = ' + $ss.param.lo0-interface-name + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
6495                                                             </set>\r
6496                                                             <switch test='`$tmp.return-failure`'>\r
6497                                                                 <outcome value='true'>\r
6498                                                                     <block atomic='true'>\r
6499                                                                         <set>\r
6500                                                                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
6501         value='FAILED' />\r
6502                                                                         </set>\r
6503                                                                         <return status='failure'>\r
6504                                                                             <parameter name='error-code' value='500' />\r
6505                                                                             <parameter name='error-message' value='`$error-message`' />\r
6506                                                                         </return>\r
6507                                                                     </block>\r
6508                                                                 </outcome>\r
6509                                                             </switch>\r
6510                                                         </block>\r
6511                                                     </outcome>\r
6512                                                     <outcome value='not-found'>\r
6513                                                         <set>\r
6514                                                             <parameter name='error-message' value="`$error-message + ' l-interface.interface-name = ' + $ss.param.lo0-interface-name + ' not found in AAI. Consider silent success!'`" />\r
6515                                                         </set>\r
6516                                                     </outcome>\r
6517                                                     <outcome value='success'>\r
6518                                                         <set>\r
6519                                                             <parameter name='error-message' value="`$error-message + ' Rollback (delete) of l-interface with interface-name = ' + $ss.param.lo0-interface-name + '  completed.'`" />\r
6520                                                         </set>\r
6521                                                     </outcome>\r
6522                                                 </delete>\r
6523                                             </outcome>\r
6524                                         </switch>\r
6525                                     </block>\r
6526                                 </outcome>\r
6527                             </switch>\r
6528                             <switch test="`$ss.resource-key.l3-network`">\r
6529                                 <outcome value='l3-netework'>\r
6530                                     <block atomic='true'>\r
6531                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
6532                                             <parameter name="logger" value="message-log"/>\r
6533                                             <parameter name="field1" value="ROLLBACK VNF l3-network relationship"/>\r
6534                                         </record>\r
6535                                         <for silentFailure='true' index='n' start='0' end='`$nidx`' >\r
6536                                             <set>\r
6537                                                 <parameter name='tmp.related-link' value="`'/aai/v$/network/l3-networks/l3-network/' + $ss.network[$n].netid`" />\r
6538                                                 <!--\r
6539 <parameter name='tmp.related-link' value="`'/aai/' + $prop.aai.version + '/network/l3-networks/l3-network/' + $ss.network[$n].netid`" />\r
6540 -->\r
6541                                             </set>\r
6542                                             <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
6543         resource="generic-vnf:relationship-list" \r
6544                 key="generic-vnf.vnf-id = $ss.param.vnf-id \r
6545                 AND related-to = l3-network \r
6546                 AND relationship.related-link = $tmp.related-link" >\r
6547                                                 <outcome value='failure'>\r
6548                                                     <block atomic='true'>\r
6549                                                         <set>\r
6550                                                             <parameter name='error-message' value="`$error-message + ' Failed to delete VNF l3-network relationship for generic-vnf.vnfid = ' + $ss.param.vnf-id + ' from AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />\r
6551                                                         </set>\r
6552                                                         <switch test='`$tmp.return-failure`'>\r
6553                                                             <outcome value='true'>\r
6554                                                                 <block atomic='true'>\r
6555                                                                     <set>\r
6556                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
6557         value='FAILED' />\r
6558                                                                     </set>\r
6559                                                                     <return status='failure'>\r
6560                                                                         <parameter name='error-code' value='500' />\r
6561                                                                         <parameter name='error-message' value='`$error-message`' />\r
6562                                                                     </return>\r
6563                                                                 </block>\r
6564                                                             </outcome>\r
6565                                                         </switch>\r
6566                                                     </block>\r
6567                                                 </outcome>\r
6568                                                 <outcome value='not-found'>\r
6569                                                     <set>\r
6570                                                         <parameter name='error-message' value="`$error-message + ' l3-network relationship with related-path = ' + $tmp.related-path  + ' not found in AAI. Consider silent success!'`" />\r
6571                                                     </set>\r
6572                                                 </outcome>\r
6573                                                 <outcome value='success'>\r
6574                                                     <set>\r
6575                                                         <parameter name='error-message' value="`$error-message + ' Rollback (delete) of generic-vnf l3-network relationships completed.'`" />\r
6576                                                     </set>\r
6577                                                 </outcome>\r
6578                                             </delete>\r
6579                                         </for>\r
6580                                     </block>\r
6581                                 </outcome>\r
6582                             </switch>\r
6583                         </block>\r
6584                         <set>\r
6585                             <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].resource-resolution-data.status' \r
6586         value='DELETED' />\r
6587                         </set>\r
6588                     </block>\r
6589                 </outcome>\r
6590             </switch>\r
6591             <set>\r
6592                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-module-put-index].value' \r
6593         value='SUCCESS' />\r
6594             </set>\r
6595             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\r
6596                 <parameter name='filename' value='/var/tmp/ss-aai-vfput.log' />\r
6597             </execute>\r
6598         </block>\r
6599     </method>\r
6600 </service-logic>