Fix ansible server path
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_self-serve-alts-assignment.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-alts-assignment' mode='sync'>\r
5         <block>\r
6             <call module='GENERIC-RESOURCE-API' rpc='self-serve-capability-param-resolution' mode='sync' ></call>\r
7             <switch test='`$ss.capability-name`'>\r
8                 <outcome value='alts-license-assign'>\r
9                     <switch test='`$ss.capability-action`'>\r
10                         <outcome value='assign'>\r
11                             <block atomic='true'>\r
12                                 <switch test='`$vnf-index`'>\r
13                                     <outcome value=''>\r
14                                         <return status='failure'>\r
15                                             <parameter name='error-code' value='500' />\r
16                                             <parameter name='error-message' value='vnf-index is required' />\r
17                                         </return>\r
18                                     </outcome>\r
19                                     <outcome value='Other'>\r
20                                         <block>\r
21                                             <for index="i" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`" >\r
22                                                 <block>\r
23                                                     <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.capability-name`'>\r
24                                                         <outcome value='alts-license-assign'>\r
25                                                             <block>\r
26                                                                 <set>\r
27                                                                     <parameter name='license-param-index' value='`$i`' />\r
28                                                                 </set>\r
29                                                             </block>\r
30                                                         </outcome>\r
31                                                         <outcome value='alts-entitlement-assign'>\r
32                                                             <block>\r
33                                                                 <set>\r
34                                                                     <parameter name='entitlement-param-index' value='`$i`' />\r
35                                                                 </set>\r
36                                                             </block>\r
37                                                         </outcome>\r
38                                                     </switch>\r
39                                                 </block>\r
40                                             </for>\r
41                                             <for index="k" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`" >\r
42                                                 <block>\r
43                                                     <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$k].name`'>\r
44                                                         <outcome value='license-key'>\r
45                                                             <block>\r
46                                                                 <set>\r
47                                                                     <parameter name='license-key-index' value='`$k`' />\r
48                                                                 </set>\r
49                                                             </block>\r
50                                                         </outcome>\r
51                                                         <outcome value='entitlement-key'>\r
52                                                             <block>\r
53                                                                 <set>\r
54                                                                     <parameter name='entitlement-key-index' value='`$k`' />\r
55                                                                 </set>\r
56                                                             </block>\r
57                                                         </outcome>\r
58                                                     </switch>\r
59                                                 </block>\r
60                                             </for>\r
61                                             <switch test='`$ss.capability-name`'>\r
62                                                 <outcome value='alts-license-assign'>\r
63                                                     <set>\r
64                                                         <parameter name='param-index' value='`$license-param-index`' />\r
65                                                     </set>\r
66                                                 </outcome>\r
67                                                 <outcome value='alts-entitlement-assign'>\r
68                                                     <set>\r
69                                                         <parameter name='param-index' value='`$entitlement-param-index`' />\r
70                                                     </set>\r
71                                                 </outcome>\r
72                                             </switch>\r
73                                             <for index="j" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key_length`" >\r
74                                                 <block>\r
75                                                     <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].name`'>\r
76                                                         <outcome value='vnf-id'>\r
77                                                             <set>\r
78                                                                 <parameter name='alts.vnf-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].value`' />\r
79                                                             </set>\r
80                                                         </outcome>\r
81                                                         <outcome value='vnf_name'>\r
82                                                             <set>\r
83                                                                 <parameter name='alts.vnf-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].value`' />\r
84                                                             </set>\r
85                                                         </outcome>\r
86                                                         <outcome value='license-assignment-group-uuid'>\r
87                                                             <set>\r
88                                                                 <parameter name='alts.license-assignment-group-uuid' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].value`' />\r
89                                                             </set>\r
90                                                         </outcome>\r
91                                                         <outcome value='entitlement-assignment-group-uuid'>\r
92                                                             <set>\r
93                                                                 <parameter name='alts.entitlement-assignment-group-uuid' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].value`' />\r
94                                                             </set>\r
95                                                         </outcome>\r
96                                                     </switch>\r
97                                                 </block>\r
98                                             </for>\r
99                                         </block>\r
100                                     </outcome>\r
101                                 </switch>\r
102                                 <execute plugin="com.att.sdnctl.sli.plugin.altsTools.AltsTools" method="acquireLicense" >\r
103                                     <parameter name="error-prefix" value="alts.error" />\r
104                                     <parameter name="prefix" value="alts.resp" />\r
105                                     <parameter name="assignment-group" value="`$alts.license-assignment-group-uuid`" />\r
106                                     <parameter name="hostname" value="`$alts.vnf-name`" />\r
107                                     <parameter name="vnf-id" value="`$alts.vnf-id`" />\r
108                                     <outcome value='success'>\r
109                                         <block>\r
110                                             <set>\r
111                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$license-key-index].value' value='`$alts.resp.license-key`' />\r
112                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.status' value='SUCCESS' />\r
113                                             </set>\r
114                                             <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
115         resource="license"\r
116                 key="generic-vnf.vnf-id = $alts.vnf-id \r
117                         AND license.group-uuid = $alts.license-assignment-group-uuid\r
118                         AND license.resource-uuid = $alts.resp.license-key"\r
119         pfx="tmp.AnAI.license" >\r
120                                                 <parameter name="group-uuid" value='`$alts.license-assignment-group-uuid`' />\r
121                                                 <parameter name="resource-uuid" value='`$alts.resp.license-key`' />\r
122                                                 <outcome value='failure'>\r
123                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
124                                                         <parameter name="logger" value="message-log" />\r
125                                                         <parameter name="level" value="error" />\r
126                                                         <parameter name="field1" value="Error Saving in AAI" />\r
127                                                         <parameter name="field2" value="`$tmp.AnAI-data.vnf.error-code`" />\r
128                                                         <parameter name="field3" value="`$tmp.AnAI-data.vnf.error-message`" />\r
129                                                     </record>\r
130                                                 </outcome>\r
131                                                 <outcome value='not-found'>\r
132                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
133                                                         <parameter name="logger" value="message-log" />\r
134                                                         <parameter name="level" value="error" />\r
135                                                         <parameter name="field1" value="Error Saving in AAI" />\r
136                                                         <parameter name="field2" value="`$tmp.AnAI-data.vnf.error-code`" />\r
137                                                         <parameter name="field3" value="`$tmp.AnAI-data.vnf.error-message`" />\r
138                                                     </record>\r
139                                                 </outcome>\r
140                                             </save>\r
141                                         </block>\r
142                                     </outcome>\r
143                                     <outcome value="failure">\r
144                                         <block>\r
145                                             <set>\r
146                                                 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.status`' value='FAILED' />\r
147                                             </set>\r
148                                         </block>\r
149                                     </outcome>\r
150                                     <outcome value="not-found">\r
151                                         <block>\r
152                                             <set>\r
153                                                 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.status`' value='FAILED' />\r
154                                             </set>\r
155                                         </block>\r
156                                     </outcome>\r
157                                     <outcome value="unsupported-method">\r
158                                         <block>\r
159                                             <set>\r
160                                                 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.status`' value='FAILED' />\r
161                                             </set>\r
162                                         </block>\r
163                                     </outcome>\r
164                                 </execute>\r
165                             </block>\r
166                         </outcome>\r
167                         <outcome value='unassign'>\r
168                             <block atomic='true'>\r
169                                 <switch test='`$vnf-index`'>\r
170                                     <outcome value=''>\r
171                                         <return status='failure'>\r
172                                             <parameter name='error-code' value='500' />\r
173                                             <parameter name='error-message' value='vnf-index is required' />\r
174                                         </return>\r
175                                     </outcome>\r
176                                     <outcome value='Other'>\r
177                                         <block>\r
178                                             <for index="i" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`" >\r
179                                                 <block>\r
180                                                     <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.capability-name`'>\r
181                                                         <outcome value='alts-license-assign'>\r
182                                                             <block>\r
183                                                                 <set>\r
184                                                                     <parameter name='license-param-index' value='`$i`' />\r
185                                                                 </set>\r
186                                                             </block>\r
187                                                         </outcome>\r
188                                                         <outcome value='alts-entitlement-assign'>\r
189                                                             <block>\r
190                                                                 <set>\r
191                                                                     <parameter name='entitlement-param-index' value='`$i`' />\r
192                                                                 </set>\r
193                                                             </block>\r
194                                                         </outcome>\r
195                                                     </switch>\r
196                                                 </block>\r
197                                             </for>\r
198                                             <for index="k" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`" >\r
199                                                 <block>\r
200                                                     <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$k].name`'>\r
201                                                         <outcome value='license-key'>\r
202                                                             <block>\r
203                                                                 <set>\r
204                                                                     <parameter name='license-key-index' value='`$k`' />\r
205                                                                 </set>\r
206                                                             </block>\r
207                                                         </outcome>\r
208                                                         <outcome value='entitlement-key'>\r
209                                                             <block>\r
210                                                                 <set>\r
211                                                                     <parameter name='entitlement-key-index' value='`$k`' />\r
212                                                                 </set>\r
213                                                             </block>\r
214                                                         </outcome>\r
215                                                     </switch>\r
216                                                 </block>\r
217                                             </for>\r
218                                             <switch test='`$ss.capability-name`'>\r
219                                                 <outcome value='alts-license-assign'>\r
220                                                     <set>\r
221                                                         <parameter name='param-index' value='`$license-param-index`' />\r
222                                                     </set>\r
223                                                 </outcome>\r
224                                                 <outcome value='alts-entitlement-assign'>\r
225                                                     <set>\r
226                                                         <parameter name='param-index' value='`$entitlement-param-index`' />\r
227                                                     </set>\r
228                                                 </outcome>\r
229                                             </switch>\r
230                                             <for index="j" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key_length`" >\r
231                                                 <block>\r
232                                                     <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].name`'>\r
233                                                         <outcome value='vnf-id'>\r
234                                                             <set>\r
235                                                                 <parameter name='alts.vnf-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].value`' />\r
236                                                             </set>\r
237                                                         </outcome>\r
238                                                         <outcome value='vnf_name'>\r
239                                                             <set>\r
240                                                                 <parameter name='alts.vnf-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].value`' />\r
241                                                             </set>\r
242                                                         </outcome>\r
243                                                         <outcome value='license-assignment-group-uuid'>\r
244                                                             <set>\r
245                                                                 <parameter name='alts.license-assignment-group-uuid' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].value`' />\r
246                                                             </set>\r
247                                                         </outcome>\r
248                                                         <outcome value='entitlement-assignment-group-uuid'>\r
249                                                             <set>\r
250                                                                 <parameter name='alts.entitlement-assignment-group-uuid' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].value`' />\r
251                                                             </set>\r
252                                                         </outcome>\r
253                                                     </switch>\r
254                                                 </block>\r
255                                             </for>\r
256                                         </block>\r
257                                     </outcome>\r
258                                 </switch>\r
259                                 <execute plugin="com.att.sdnctl.sli.plugin.altsTools.AltsTools" method="releaseLicense" >\r
260                                     <parameter name="asset-uuid" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$license-key-index].value`" />\r
261                                     <parameter name="error-prefix" value="alts.error" />\r
262                                     <parameter name="prefix" value="alts.resp" />\r
263                                     <parameter name="assignment-group" value="`$alts.license-assignment-group-uuid`" />\r
264                                     <parameter name="hostname" value="`$alts.vnf-name`" />\r
265                                     <parameter name="vnf-id" value="`$alts.vnf-id`" />\r
266                                     <outcome value='success'>\r
267                                         <block>\r
268                                             <set>\r
269                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.status' value='DELETED' />\r
270                                             </set>\r
271                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
272 resource="license"\r
273 key="generic-vnf.vnf-id = $alts.vnf-id "\r
274 force="true"\r
275 local-only="false"\r
276 pfx="tmp.AnAI-data.vnf" >\r
277                                                 <parameter name="group-uuid" value='' />\r
278                                                 <parameter name="resource-uuid" value='' />\r
279                                                 <outcome value='failure'>\r
280                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
281                                                         <parameter name="logger" value="message-log" />\r
282                                                         <parameter name="level" value="error" />\r
283                                                         <parameter name="field1" value="Error updating in AAI" />\r
284                                                         <parameter name="field2" value="`$tmp.AnAI-data.vnf.error-code`" />\r
285                                                         <parameter name="field3" value="`$tmp.AnAI-data.vnf.error-message`" />\r
286                                                     </record>\r
287                                                 </outcome>\r
288                                                 <outcome value='not-found'>\r
289                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
290                                                         <parameter name="logger" value="message-log" />\r
291                                                         <parameter name="level" value="error" />\r
292                                                         <parameter name="field1" value="Error updating in AAI" />\r
293                                                         <parameter name="field2" value="`$tmp.AnAI-data.vnf.error-code`" />\r
294                                                         <parameter name="field3" value="`$tmp.AnAI-data.vnf.error-message`" />\r
295                                                     </record>\r
296                                                 </outcome>\r
297                                             </update>\r
298                                         </block>\r
299                                     </outcome>\r
300                                     <outcome value="failure">\r
301                                         <block>\r
302                                             <return status='failure'>\r
303                                                 <parameter name='error-code' value='`$alts.error.error-code`' />\r
304                                                 <parameter name='error-message' value='`$alts.error.error-message`' />\r
305                                             </return>\r
306                                         </block>\r
307                                     </outcome>\r
308                                     <outcome value="not-found">\r
309                                         <block>\r
310                                             <return status='failure'>\r
311                                                 <parameter name='error-code' value='`$alts.error.error-code`' />\r
312                                                 <parameter name='error-message' value='`$alts.error.error-message`' />\r
313                                             </return>\r
314                                         </block>\r
315                                     </outcome>\r
316                                     <outcome value="unsupported-method">\r
317                                         <block>\r
318                                             <return status='failure'>\r
319                                                 <parameter name='error-code' value='`$alts.error.error-code`' />\r
320                                                 <parameter name='error-message' value='`$alts.error.error-message`' />\r
321                                             </return>\r
322                                         </block>\r
323                                     </outcome>\r
324                                 </execute>\r
325                             </block>\r
326                         </outcome>\r
327                     </switch>\r
328                 </outcome>\r
329                 <outcome value='alts-entitlement-assign'>\r
330                     <switch test='`$ss.capability-action`'>\r
331                         <outcome value='assign'>\r
332                             <block atomic='true'>\r
333                                 <switch test='`$vnf-index`'>\r
334                                     <outcome value=''>\r
335                                         <return status='failure'>\r
336                                             <parameter name='error-code' value='500' />\r
337                                             <parameter name='error-message' value='vnf-index is required' />\r
338                                         </return>\r
339                                     </outcome>\r
340                                     <outcome value='Other'>\r
341                                         <block>\r
342                                             <for index="i" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`" >\r
343                                                 <block>\r
344                                                     <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.capability-name`'>\r
345                                                         <outcome value='alts-license-assign'>\r
346                                                             <block>\r
347                                                                 <set>\r
348                                                                     <parameter name='license-param-index' value='`$i`' />\r
349                                                                 </set>\r
350                                                             </block>\r
351                                                         </outcome>\r
352                                                         <outcome value='alts-entitlement-assign'>\r
353                                                             <block>\r
354                                                                 <set>\r
355                                                                     <parameter name='entitlement-param-index' value='`$i`' />\r
356                                                                 </set>\r
357                                                             </block>\r
358                                                         </outcome>\r
359                                                     </switch>\r
360                                                 </block>\r
361                                             </for>\r
362                                             <for index="k" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`" >\r
363                                                 <block>\r
364                                                     <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$k].name`'>\r
365                                                         <outcome value='license-key'>\r
366                                                             <block>\r
367                                                                 <set>\r
368                                                                     <parameter name='license-key-index' value='`$k`' />\r
369                                                                 </set>\r
370                                                             </block>\r
371                                                         </outcome>\r
372                                                         <outcome value='entitlement-key'>\r
373                                                             <block>\r
374                                                                 <set>\r
375                                                                     <parameter name='entitlement-key-index' value='`$k`' />\r
376                                                                 </set>\r
377                                                             </block>\r
378                                                         </outcome>\r
379                                                     </switch>\r
380                                                 </block>\r
381                                             </for>\r
382                                             <switch test='`$ss.capability-name`'>\r
383                                                 <outcome value='alts-license-assign'>\r
384                                                     <set>\r
385                                                         <parameter name='param-index' value='`$license-param-index`' />\r
386                                                     </set>\r
387                                                 </outcome>\r
388                                                 <outcome value='alts-entitlement-assign'>\r
389                                                     <set>\r
390                                                         <parameter name='param-index' value='`$entitlement-param-index`' />\r
391                                                     </set>\r
392                                                 </outcome>\r
393                                             </switch>\r
394                                             <for index="j" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key_length`" >\r
395                                                 <block>\r
396                                                     <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].name`'>\r
397                                                         <outcome value='vnf-id'>\r
398                                                             <set>\r
399                                                                 <parameter name='alts.vnf-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].value`' />\r
400                                                             </set>\r
401                                                         </outcome>\r
402                                                         <outcome value='vnf_name'>\r
403                                                             <set>\r
404                                                                 <parameter name='alts.vnf-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].value`' />\r
405                                                             </set>\r
406                                                         </outcome>\r
407                                                         <outcome value='license-assignment-group-uuid'>\r
408                                                             <set>\r
409                                                                 <parameter name='alts.license-assignment-group-uuid' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].value`' />\r
410                                                             </set>\r
411                                                         </outcome>\r
412                                                         <outcome value='entitlement-assignment-group-uuid'>\r
413                                                             <set>\r
414                                                                 <parameter name='alts.entitlement-assignment-group-uuid' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].value`' />\r
415                                                             </set>\r
416                                                         </outcome>\r
417                                                     </switch>\r
418                                                 </block>\r
419                                             </for>\r
420                                         </block>\r
421                                     </outcome>\r
422                                 </switch>\r
423                                 <execute plugin="com.att.sdnctl.sli.plugin.altsTools.AltsTools" method="acquireEntitlement" >\r
424                                     <parameter name="error-prefix" value="alts.error" />\r
425                                     <parameter name="prefix" value="alts.resp" />\r
426                                     <parameter name="assignment-group" value="`$alts.entitlement-assignment-group-uuid`" />\r
427                                     <parameter name="hostname" value="`$alts.vnf-name`" />\r
428                                     <parameter name="vnf-id" value="`$alts.vnf-id`" />\r
429                                     <outcome value='success'>\r
430                                         <block>\r
431                                             <set>\r
432                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$entitlement-key-index].value' value='`$alts.resp.license-key`' />\r
433                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.status' value='SUCCESS' />\r
434                                             </set>\r
435                                             <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
436         resource="entitlement"\r
437                 key="generic-vnf.vnf-id = $alts.vnf-id  \r
438                         AND entitlement.group-uuid = $alts.entitlement-assignment-group-uuid \r
439                         AND entitlement.resource-uuid = $alts.resp.license-key "\r
440         pfx="tmp.AnAI.entitlement" >\r
441                                                 <parameter name="group-uuid" value='`$alts.entitlement-assignment-group-uuid`' />\r
442                                                 <parameter name="resource-uuid" value='`$alts.resp.license-key`' />\r
443                                                 <outcome value='failure'>\r
444                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
445                                                         <parameter name="logger" value="message-log" />\r
446                                                         <parameter name="level" value="error" />\r
447                                                         <parameter name="field1" value="Error Saving in AAI" />\r
448                                                         <parameter name="field2" value="`$tmp.AnAI-data.vnf.error-code`" />\r
449                                                         <parameter name="field3" value="`$tmp.AnAI-data.vnf.error-message`" />\r
450                                                     </record>\r
451                                                 </outcome>\r
452                                                 <outcome value='not-found'>\r
453                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
454                                                         <parameter name="logger" value="message-log" />\r
455                                                         <parameter name="level" value="error" />\r
456                                                         <parameter name="field1" value="Error Saving in AAI" />\r
457                                                         <parameter name="field2" value="`$tmp.AnAI-data.vnf.error-code`" />\r
458                                                         <parameter name="field3" value="`$tmp.AnAI-data.vnf.error-message`" />\r
459                                                     </record>\r
460                                                 </outcome>\r
461                                             </save>\r
462                                         </block>\r
463                                     </outcome>\r
464                                     <outcome value="failure">\r
465                                         <block>\r
466                                             <set>\r
467                                                 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.status`' value='FAILED' />\r
468                                             </set>\r
469                                         </block>\r
470                                     </outcome>\r
471                                     <outcome value="not-found">\r
472                                         <block>\r
473                                             <set>\r
474                                                 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.status`' value='FAILED' />\r
475                                             </set>\r
476                                         </block>\r
477                                     </outcome>\r
478                                     <outcome value="unsupported-method">\r
479                                         <block>\r
480                                             <set>\r
481                                                 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.status`' value='FAILED' />\r
482                                             </set>\r
483                                         </block>\r
484                                     </outcome>\r
485                                 </execute>\r
486                             </block>\r
487                         </outcome>\r
488                         <outcome value='unassign'>\r
489                             <block atomic='true'>\r
490                                 <switch test='`$vnf-index`'>\r
491                                     <outcome value=''>\r
492                                         <return status='failure'>\r
493                                             <parameter name='error-code' value='500' />\r
494                                             <parameter name='error-message' value='vnf-index is required' />\r
495                                         </return>\r
496                                     </outcome>\r
497                                     <outcome value='Other'>\r
498                                         <block>\r
499                                             <for index="i" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`" >\r
500                                                 <block>\r
501                                                     <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.capability-name`'>\r
502                                                         <outcome value='alts-license-assign'>\r
503                                                             <block>\r
504                                                                 <set>\r
505                                                                     <parameter name='license-param-index' value='`$i`' />\r
506                                                                 </set>\r
507                                                             </block>\r
508                                                         </outcome>\r
509                                                         <outcome value='alts-entitlement-assign'>\r
510                                                             <block>\r
511                                                                 <set>\r
512                                                                     <parameter name='entitlement-param-index' value='`$i`' />\r
513                                                                 </set>\r
514                                                             </block>\r
515                                                         </outcome>\r
516                                                     </switch>\r
517                                                 </block>\r
518                                             </for>\r
519                                             <for index="k" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`" >\r
520                                                 <block>\r
521                                                     <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$k].name`'>\r
522                                                         <outcome value='license-key'>\r
523                                                             <block>\r
524                                                                 <set>\r
525                                                                     <parameter name='license-key-index' value='`$k`' />\r
526                                                                 </set>\r
527                                                             </block>\r
528                                                         </outcome>\r
529                                                         <outcome value='entitlement-key'>\r
530                                                             <block>\r
531                                                                 <set>\r
532                                                                     <parameter name='entitlement-key-index' value='`$k`' />\r
533                                                                 </set>\r
534                                                             </block>\r
535                                                         </outcome>\r
536                                                     </switch>\r
537                                                 </block>\r
538                                             </for>\r
539                                             <switch test='`$ss.capability-name`'>\r
540                                                 <outcome value='alts-license-assign'>\r
541                                                     <set>\r
542                                                         <parameter name='param-index' value='`$license-param-index`' />\r
543                                                     </set>\r
544                                                 </outcome>\r
545                                                 <outcome value='alts-entitlement-assign'>\r
546                                                     <set>\r
547                                                         <parameter name='param-index' value='`$entitlement-param-index`' />\r
548                                                     </set>\r
549                                                 </outcome>\r
550                                             </switch>\r
551                                             <for index="j" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key_length`" >\r
552                                                 <block>\r
553                                                     <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].name`'>\r
554                                                         <outcome value='vnf-id'>\r
555                                                             <set>\r
556                                                                 <parameter name='alts.vnf-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].value`' />\r
557                                                             </set>\r
558                                                         </outcome>\r
559                                                         <outcome value='vnf_name'>\r
560                                                             <set>\r
561                                                                 <parameter name='alts.vnf-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].value`' />\r
562                                                             </set>\r
563                                                         </outcome>\r
564                                                         <outcome value='license-assignment-group-uuid'>\r
565                                                             <set>\r
566                                                                 <parameter name='alts.license-assignment-group-uuid' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].value`' />\r
567                                                             </set>\r
568                                                         </outcome>\r
569                                                         <outcome value='entitlement-assignment-group-uuid'>\r
570                                                             <set>\r
571                                                                 <parameter name='alts.entitlement-assignment-group-uuid' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.resource-key[$j].value`' />\r
572                                                             </set>\r
573                                                         </outcome>\r
574                                                     </switch>\r
575                                                 </block>\r
576                                             </for>\r
577                                         </block>\r
578                                     </outcome>\r
579                                 </switch>\r
580                                 <execute plugin="com.att.sdnctl.sli.plugin.altsTools.AltsTools" method="releaseEntitlement" >\r
581                                     <parameter name="asset-uuid" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$entitlement-key-index].value`" />\r
582                                     <parameter name="error-prefix" value="alts.error" />\r
583                                     <parameter name="prefix" value="alts.resp" />\r
584                                     <parameter name="assignment-group" value="`$alts.entitlement-assignment-group-uuid`" />\r
585                                     <parameter name="hostname" value="`$alts.vnf-name`" />\r
586                                     <parameter name="vnf-id" value="`$alts.vnf-id`" />\r
587                                     <outcome value='success'>\r
588                                         <block>\r
589                                             <set>\r
590                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].resource-resolution-data.status' value='DELETED' />\r
591                                             </set>\r
592                                             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
593 resource="license"\r
594 key="generic-vnf.vnf-id = $alts.vnf-id "\r
595 force="true"\r
596 local-only="false"\r
597 pfx="tmp.AnAI-data.vnf" >\r
598                                                 <parameter name="group-uuid" value='' />\r
599                                                 <parameter name="resource-uuid" value='' />\r
600                                                 <outcome value='failure'>\r
601                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
602                                                         <parameter name="logger" value="message-log" />\r
603                                                         <parameter name="level" value="error" />\r
604                                                         <parameter name="field1" value="Error updating in AAI" />\r
605                                                         <parameter name="field2" value="`$tmp.AnAI-data.vnf.error-code`" />\r
606                                                         <parameter name="field3" value="`$tmp.AnAI-data.vnf.error-message`" />\r
607                                                     </record>\r
608                                                 </outcome>\r
609                                                 <outcome value='not-found'>\r
610                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
611                                                         <parameter name="logger" value="message-log" />\r
612                                                         <parameter name="level" value="error" />\r
613                                                         <parameter name="field1" value="Error updating in AAI" />\r
614                                                         <parameter name="field2" value="`$tmp.AnAI-data.vnf.error-code`" />\r
615                                                         <parameter name="field3" value="`$tmp.AnAI-data.vnf.error-message`" />\r
616                                                     </record>\r
617                                                 </outcome>\r
618                                             </update>\r
619                                         </block>\r
620                                     </outcome>\r
621                                     <outcome value="failure">\r
622                                         <block>\r
623                                             <return status='failure'>\r
624                                                 <parameter name='error-code' value='`$alts.error.error-code`' />\r
625                                                 <parameter name='error-message' value='`$alts.error.error-message`' />\r
626                                             </return>\r
627                                         </block>\r
628                                     </outcome>\r
629                                     <outcome value="not-found">\r
630                                         <block>\r
631                                             <return status='failure'>\r
632                                                 <parameter name='error-code' value='`$alts.error.error-code`' />\r
633                                                 <parameter name='error-message' value='`$alts.error.error-message`' />\r
634                                             </return>\r
635                                         </block>\r
636                                     </outcome>\r
637                                     <outcome value="unsupported-method">\r
638                                         <block>\r
639                                             <return status='failure'>\r
640                                                 <parameter name='error-code' value='`$alts.error.error-code`' />\r
641                                                 <parameter name='error-message' value='`$alts.error.error-message`' />\r
642                                             </return>\r
643                                         </block>\r
644                                     </outcome>\r
645                                 </execute>\r
646                             </block>\r
647                         </outcome>\r
648                     </switch>\r
649                 </outcome>\r
650             </switch>\r
651         </block>\r
652     </method>\r
653 </service-logic>