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-generate-name' mode='sync'>
\r
5 <block atomic="true">
\r
7 <parameter name='tmp.naming-data-payload' value='{"elements":[' />
\r
9 <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
\r
10 <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />
\r
11 <parameter name='contextPrefix' value='prop' />
\r
13 <call module='GENERIC-RESOURCE-API' rpc='self-serve-capability-param-resolution' mode='sync' >
\r
14 <outcome value='failure'>
\r
15 <return status='failure'>
\r
16 <parameter name='ack-final' value='Y'/>
\r
17 <parameter name="error-code" value="500" />
\r
18 <parameter name="error-message" value="Error from capability-param-resolution" />
\r
21 <outcome value='not-found'>
\r
22 <return status='failure'>
\r
23 <parameter name='ack-final' value='Y'/>
\r
24 <parameter name="error-code" value="500" />
\r
25 <parameter name="error-message" value="Error from capability-param-resolution" />
\r
29 <switch test="`$ss.capability-type == 'vnf'`">
\r
30 <outcome value='true'>
\r
32 <switch test="`$ss.capability-action == 'unassign'`">
\r
33 <outcome value='true'>
\r
34 <for index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`' >
\r
35 <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.capability-name == $ss.capability-name`'>
\r
36 <outcome value='true'>
\r
37 <block atomic='true'>
\r
39 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + '{'`" />
\r
40 <parameter name='tmp.gen-name_length' value='1' />
\r
42 <for index='j' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key_length`' >
\r
43 <switch test="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].name == 'external-key'`">
\r
44 <outcome value='true'>
\r
46 <parameter name="tmp.naming-data-payload" value="`$tmp.naming-data-payload + '"' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].name + '":' + '"' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].value + '",'`"/>
\r
47 <parameter name="`tmp.gen-name[0].element[$j].name`" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].name`"/>
\r
48 <parameter name="`tmp.gen-name[0].element[$j].value`" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].value`"/>
\r
49 <parameter name="`tmp.gen-name[0].element_length`" value='`$j + 1`' />
\r
55 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + '},'`" />
\r
58 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + ']}'`" />
\r
60 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace'>
\r
61 <parameter name='outputPath' value='tmp.naming-data-payload' />
\r
62 <parameter name='source' value='`$tmp.naming-data-payload`' />
\r
63 <parameter name='target' value=',}' />
\r
64 <parameter name='replacement' value='}' />
\r
66 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace'>
\r
67 <parameter name='outputPath' value='tmp.naming-data-payload' />
\r
68 <parameter name='source' value='`$tmp.naming-data-payload`' />
\r
69 <parameter name='target' value=',]' />
\r
70 <parameter name='replacement' value=']' />
\r
72 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
\r
73 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.naming.gen-name.templatefile`" />
\r
74 <parameter name='restapiUrl' value='`$prop.naming.gen-name.url + $prop.restapi.naming.gen-name.service`' />
\r
75 <parameter name='restapiUser' value='`$prop.naming.gen-name.user`' />
\r
76 <parameter name='restapiPassword' value='`$prop.naming.gen-name.pwd`' />
\r
77 <parameter name='format' value='json' />
\r
78 <parameter name='httpMethod' value='DELETE' />
\r
79 <parameter name="responsePrefix" value="nameGenResponse" />
\r
80 <outcome value='failure'>
\r
83 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.status`' value='FAILED' />
\r
85 <return status='failure'>
\r
86 <parameter name='ack-final' value='Y'/>
\r
87 <parameter name="error-code" value="500" />
\r
88 <parameter name="error-message" value="Error from NameGenerationNode Unassign" />
\r
92 <outcome value='not-found'>
\r
95 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.status`' value='FAILED' />
\r
97 <return status='failure'>
\r
98 <parameter name='ack-final' value='Y'/>
\r
99 <parameter name="error-code" value="500" />
\r
100 <parameter name="error-message" value="Error from NameGenerationNode Unassign" />
\r
105 <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="jsonStringToCtx">
\r
106 <parameter name="source" value="nameGenResponse.httpResponse" />
\r
107 <parameter name="outputPath" value="jsonContextPrefix" />
\r
108 <parameter name="isEscaped" value="false" />
\r
110 <for index='n' start='0' end='`$jsonContextPrefix.elements_length`' >
\r
111 <for index='l' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`' >
\r
112 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
\r
113 <parameter name="source" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].value`" />
\r
114 <parameter name="target" value="$"/>
\r
115 <outcome value='true'>
\r
117 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
\r
118 <parameter name='ctx_memory_result_key' value='resource-resolution-split' />
\r
119 <parameter name='original_string' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].value`' />
\r
120 <parameter name='regex' value='\$\{' />
\r
122 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
\r
123 <parameter name='ctx_memory_result_key' value='s2' />
\r
124 <parameter name='original_string' value='`$resource-resolution-split[1]`' />
\r
125 <parameter name='regex' value='\}' />
\r
127 <switch test='`$s2[0] == $jsonContextPrefix.elements[$n].resource-name`'>
\r
128 <outcome value='true'>
\r
131 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].value`' value="`$jsonContextPrefix.elements[$n].resource-value`" />
\r
134 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].resource-resolution-data.status`' value='DELETED' />
\r
150 <switch test="`$ss.capability-action == 'assign'`">
\r
151 <outcome value='true'>
\r
152 <block atomic='true'>
\r
154 <parameter name='tmp.naming-data-payload' value='{"elements":[' />
\r
155 <parameter name='tmp.gen-name_length' value='0' />
\r
157 <for index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`' >
\r
158 <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.capability-name == $ss.capability-name`'>
\r
159 <outcome value='true'>
\r
160 <block atomic='true'>
\r
162 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + '{'`" />
\r
164 <for index='j' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key_length`' >
\r
166 <parameter name="tmp.naming-data-payload" value="`$tmp.naming-data-payload + '"' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].name + '":' + '"' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].value + '",'`"/>
\r
167 <parameter name="`tmp.gen-name[$tmp.gen-name_length].element[$j].name`" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].name`"/>
\r
168 <parameter name="`tmp.gen-name[$tmp.gen-name_length].element[$j].value`" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].value`"/>
\r
169 <parameter name="`tmp.gen-name[$tmp.gen-name_length].element_length`" value='`$j + 1`' />
\r
173 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + '},'`" />
\r
174 <parameter name='tmp.gen-name_length' value='`$tmp.gen-name_length + 1`' />
\r
180 <switch test="`$tmp.naming-data-payload == ''`">
\r
181 <outcome value='false'>
\r
182 <block atomic='true'>
\r
184 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + ']}'`" />
\r
186 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace'>
\r
187 <parameter name='outputPath' value='tmp.naming-data-payload' />
\r
188 <parameter name='source' value='`$tmp.naming-data-payload`' />
\r
189 <parameter name='target' value=',}' />
\r
190 <parameter name='replacement' value='}' />
\r
192 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace'>
\r
193 <parameter name='outputPath' value='tmp.naming-data-payload' />
\r
194 <parameter name='source' value='`$tmp.naming-data-payload`' />
\r
195 <parameter name='target' value=',]' />
\r
196 <parameter name='replacement' value=']' />
\r
198 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
\r
199 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.naming.gen-name.templatefile`" />
\r
200 <parameter name='restapiUrl' value='`$prop.naming.gen-name.url + $prop.restapi.naming.gen-name.service`' />
\r
201 <parameter name='restapiUser' value='`$prop.naming.gen-name.user`' />
\r
202 <parameter name='restapiPassword' value='`$prop.naming.gen-name.pwd`' />
\r
203 <parameter name='format' value='json' />
\r
204 <parameter name='httpMethod' value='POST' />
\r
205 <parameter name="responsePrefix" value="nameGenResponse" />
\r
206 <outcome value='failure'>
\r
209 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.status`' value='FAILED' />
\r
211 <return status='failure'>
\r
212 <parameter name='ack-final' value='Y'/>
\r
213 <parameter name="error-code" value="500" />
\r
214 <parameter name="error-message" value="Error from NameGenerationNode Assign" />
\r
218 <outcome value='not-found'>
\r
221 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.status`' value='FAILED' />
\r
223 <return status='failure'>
\r
224 <parameter name='ack-final' value='Y'/>
\r
225 <parameter name="error-code" value="500" />
\r
226 <parameter name="error-message" value="Error from NameGenerationNode Assign" />
\r
231 <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="jsonStringToCtx">
\r
232 <parameter name="source" value="nameGenResponse.httpResponse" />
\r
233 <parameter name="outputPath" value="jsonContextPrefix" />
\r
234 <parameter name="isEscaped" value="false" />
\r
236 <for index='n' start='0' end='`$jsonContextPrefix.elements_length`' >
\r
237 <for index='l' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`' >
\r
238 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
\r
239 <parameter name="source" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].value`" />
\r
240 <parameter name="target" value="$"/>
\r
241 <outcome value='true'>
\r
243 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
\r
244 <parameter name='ctx_memory_result_key' value='resource-resolution-split' />
\r
245 <parameter name='original_string' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].value`' />
\r
246 <parameter name='regex' value='\$\{' />
\r
248 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
\r
249 <parameter name='ctx_memory_result_key' value='s2' />
\r
250 <parameter name='original_string' value='`$resource-resolution-split[1]`' />
\r
251 <parameter name='regex' value='\}' />
\r
253 <switch test='`$s2[0] == $jsonContextPrefix.elements[$n].resource-name`'>
\r
254 <outcome value='true'>
\r
257 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].value`' value="`$jsonContextPrefix.elements[$n].resource-value`" />
\r
260 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].resource-resolution-data.status`' value='SUCCESS' />
\r
270 <for index='l' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`' >
\r
271 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
\r
272 <parameter name="source" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].value`" />
\r
273 <parameter name="target" value="$"/>
\r
274 <outcome value='false'>
\r
277 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].resource-resolution-data.capability-name`' value='INPUT' />
\r
280 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].resource-resolution-data.status`' value='SUCCESS' />
\r
295 <switch test="`$ss.capability-type == 'vf-module'`">
\r
296 <outcome value='true'>
\r
298 <switch test="`$ss.capability-action == 'unassign'`">
\r
299 <outcome value='true'>
\r
300 <for 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-parameters.param_length`' >
\r
301 <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[$i].resource-resolution-data.capability-name == $ss.capability-name`'>
\r
302 <outcome value='true'>
\r
303 <block atomic='true'>
\r
305 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + '{'`" />
\r
306 <parameter name='tmp.gen-name_length' value='1' />
\r
308 <for 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-parameters.param[$i].resource-resolution-data.resource-key_length`' >
\r
309 <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[$i].resource-resolution-data.resource-key[$j].name == 'external-key'`">
\r
310 <outcome value='true'>
\r
312 <parameter name="tmp.naming-data-payload" value="`$tmp.naming-data-payload + '"' + $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[$i].resource-resolution-data.resource-key[$j].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[$i].resource-resolution-data.resource-key[$j].value + '",'`"/>
\r
313 <parameter name="`tmp.gen-name[0].element[$j].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[$i].resource-resolution-data.resource-key[$j].name`"/>
\r
314 <parameter name="`tmp.gen-name[0].element[$j].value`" 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[$i].resource-resolution-data.resource-key[$j].value`"/>
\r
315 <parameter name="`tmp.gen-name[0].element_length`" value='`$j + 1`' />
\r
321 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + '},'`" />
\r
324 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + ']}'`" />
\r
326 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace'>
\r
327 <parameter name='outputPath' value='tmp.naming-data-payload' />
\r
328 <parameter name='source' value='`$tmp.naming-data-payload`' />
\r
329 <parameter name='target' value=',}' />
\r
330 <parameter name='replacement' value='}' />
\r
332 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace'>
\r
333 <parameter name='outputPath' value='tmp.naming-data-payload' />
\r
334 <parameter name='source' value='`$tmp.naming-data-payload`' />
\r
335 <parameter name='target' value=',]' />
\r
336 <parameter name='replacement' value=']' />
\r
338 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
\r
339 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.naming.gen-name.templatefile`" />
\r
340 <parameter name='restapiUrl' value='`$prop.naming.gen-name.url + $prop.restapi.naming.gen-name.service`' />
\r
341 <parameter name='restapiUser' value='`$prop.naming.gen-name.user`' />
\r
342 <parameter name='restapiPassword' value='`$prop.naming.gen-name.pwd`' />
\r
343 <parameter name='format' value='json' />
\r
344 <parameter name='httpMethod' value='DELETE' />
\r
345 <parameter name="responsePrefix" value="nameGenResponse" />
\r
346 <outcome value='failure'>
\r
349 <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[$i].resource-resolution-data.status`' value='FAILED' />
\r
351 <return status='failure'>
\r
352 <parameter name='ack-final' value='Y'/>
\r
353 <parameter name="error-code" value="500" />
\r
354 <parameter name="error-message" value="Error from NameGenerationNode Unassign" />
\r
358 <outcome value='not-found'>
\r
361 <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[$i].resource-resolution-data.status`' value='FAILED' />
\r
363 <return status='failure'>
\r
364 <parameter name='ack-final' value='Y'/>
\r
365 <parameter name="error-code" value="500" />
\r
366 <parameter name="error-message" value="Error from NameGenerationNode Unassign" />
\r
371 <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="jsonStringToCtx">
\r
372 <parameter name="source" value="nameGenResponse.httpResponse" />
\r
373 <parameter name="outputPath" value="jsonContextPrefix" />
\r
374 <parameter name="isEscaped" value="false" />
\r
377 <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[$i].resource-resolution-data.status`' value='DELETED' />
\r
379 <for index='n' start='0' end='`$jsonContextPrefix.elements_length`' >
\r
380 <for index='l' 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
381 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
\r
382 <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[$l].value`" />
\r
383 <parameter name="target" value="$"/>
\r
384 <outcome value='true'>
\r
386 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
\r
387 <parameter name='ctx_memory_result_key' value='resource-resolution-split' />
\r
388 <parameter name='original_string' 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[$l].value`' />
\r
389 <parameter name='regex' value='\$\{' />
\r
391 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
\r
392 <parameter name='ctx_memory_result_key' value='s2' />
\r
393 <parameter name='original_string' value='`$resource-resolution-split[1]`' />
\r
394 <parameter name='regex' value='\}' />
\r
396 <switch test='`$s2[0] == $jsonContextPrefix.elements[$n].resource-name`'>
\r
397 <outcome value='true'>
\r
399 <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[$l].value`' value="`$jsonContextPrefix.elements[$n].resource-value`" />
\r
414 <switch test="`$ss.capability-action == 'assign'`">
\r
415 <outcome value='true'>
\r
416 <block atomic='true'>
\r
418 <parameter name='tmp.naming-data-payload' value='{"elements":[' />
\r
419 <parameter name='tmp.gen-name_length' value='0' />
\r
421 <for 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-parameters.param_length`' >
\r
422 <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[$i].resource-resolution-data.capability-name == $ss.capability-name`'>
\r
423 <outcome value='true'>
\r
424 <block atomic='true'>
\r
426 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + '{'`" />
\r
428 <for 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-parameters.param[$i].resource-resolution-data.resource-key_length`' >
\r
430 <parameter name="tmp.naming-data-payload" value="`$tmp.naming-data-payload + '"' + $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[$i].resource-resolution-data.resource-key[$j].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[$i].resource-resolution-data.resource-key[$j].value + '",'`"/>
\r
431 <parameter name="`tmp.gen-name[$tmp.gen-name_length].element[$j].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[$i].resource-resolution-data.resource-key[$j].name`"/>
\r
432 <parameter name="`tmp.gen-name[$tmp.gen-name_length].element[$j].value`" 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[$i].resource-resolution-data.resource-key[$j].value`"/>
\r
433 <parameter name="`tmp.gen-name[$tmp.gen-name_length].element_length`" value='`$j + 1`' />
\r
437 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + '},'`" />
\r
438 <parameter name='tmp.gen-name_length' value='`$tmp.gen-name_length + 1`' />
\r
444 <switch test="`$tmp.naming-data-payload == ''`">
\r
445 <outcome value='false'>
\r
446 <block atomic='true'>
\r
448 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + ']}'`" />
\r
450 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace'>
\r
451 <parameter name='outputPath' value='tmp.naming-data-payload' />
\r
452 <parameter name='source' value='`$tmp.naming-data-payload`' />
\r
453 <parameter name='target' value=',}' />
\r
454 <parameter name='replacement' value='}' />
\r
456 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace'>
\r
457 <parameter name='outputPath' value='tmp.naming-data-payload' />
\r
458 <parameter name='source' value='`$tmp.naming-data-payload`' />
\r
459 <parameter name='target' value=',]' />
\r
460 <parameter name='replacement' value=']' />
\r
462 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
\r
463 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.naming.gen-name.templatefile`" />
\r
464 <parameter name='restapiUrl' value='`$prop.naming.gen-name.url + $prop.restapi.naming.gen-name.service`' />
\r
465 <parameter name='restapiUser' value='`$prop.naming.gen-name.user`' />
\r
466 <parameter name='restapiPassword' value='`$prop.naming.gen-name.pwd`' />
\r
467 <parameter name='format' value='json' />
\r
468 <parameter name='httpMethod' value='POST' />
\r
469 <parameter name="responsePrefix" value="nameGenResponse" />
\r
470 <outcome value='failure'>
\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[$i].resource-resolution-data.status`' value='FAILED' />
\r
475 <return status='failure'>
\r
476 <parameter name='ack-final' value='Y'/>
\r
477 <parameter name="error-code" value="500" />
\r
478 <parameter name="error-message" value="Error from NameGenerationNode Assign" />
\r
482 <outcome value='not-found'>
\r
485 <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[$i].resource-resolution-data.status`' value='FAILED' />
\r
487 <return status='failure'>
\r
488 <parameter name='ack-final' value='Y'/>
\r
489 <parameter name="error-code" value="500" />
\r
490 <parameter name="error-message" value="Error from NameGenerationNode Assign" />
\r
495 <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="jsonStringToCtx">
\r
496 <parameter name="source" value="nameGenResponse.httpResponse" />
\r
497 <parameter name="outputPath" value="jsonContextPrefix" />
\r
498 <parameter name="isEscaped" value="false" />
\r
501 <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[$i].resource-resolution-data.status`' value='SUCCESS' />
\r
503 <for index='cn' 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
504 <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[$cn].name == 'vnfc-name'`">
\r
505 <outcome value='true'>
\r
506 <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-parameters.param[$cn].resource-resolution-data.resource-key_length`' >
\r
508 <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[$cn].resource-resolution-data.resource-key[$j].name == 'vm-type'`">
\r
509 <outcome value='true'>
\r
511 <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-assignments.vms.vm[0].vm-type`' 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[$cn].resource-resolution-data.resource-key[$j].value`' />
\r
515 <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[$cn].resource-resolution-data.resource-key[$j].name == 'model-invariant-uuid'`">
\r
516 <outcome value='true'>
\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-assignments.vms.vm[0].onap-model-information.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[$cn].resource-resolution-data.resource-key[$j].value`' />
\r
522 <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[$cn].resource-resolution-data.resource-key[$j].name == 'model-customization-uuid'`">
\r
523 <outcome value='true'>
\r
525 <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-assignments.vms.vm[0].onap-model-information.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[$cn].resource-resolution-data.resource-key[$j].value`' />
\r
529 <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[$cn].resource-resolution-data.resource-key[$j].name == 'model-uuid'`">
\r
530 <outcome value='true'>
\r
532 <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-assignments.vms.vm[0].onap-model-information.model-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[$cn].resource-resolution-data.resource-key[$j].value`' />
\r
536 <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[$cn].resource-resolution-data.resource-key[$j].name == 'model-version'`">
\r
537 <outcome value='true'>
\r
539 <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-assignments.vms.vm[0].onap-model-information.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[$cn].resource-resolution-data.resource-key[j].value`' />
\r
543 <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[$cn].resource-resolution-data.resource-key[$j].name == 'model-name'`">
\r
544 <outcome value='true'>
\r
546 <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-assignments.vms.vm[0].onap-model-information.model-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[$cn].resource-resolution-data.resource-key[$j].value`' />
\r
550 <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[$cn].resource-resolution-data.resource-key[$j].name == 'vnfc-name'`">
\r
551 <outcome value='true'>
\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-assignments.vms.vm[0].vm-names.vnfc-names[0].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[$cn].resource-resolution-data.resource-key[$j].value`' />
\r
562 <for index='n' start='0' end='`$jsonContextPrefix.elements_length`' >
\r
563 <for index='l' 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
564 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
\r
565 <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[$l].value`" />
\r
566 <parameter name="target" value="$"/>
\r
567 <outcome value='true'>
\r
569 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
\r
570 <parameter name='ctx_memory_result_key' value='resource-resolution-split' />
\r
571 <parameter name='original_string' 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[$l].value`' />
\r
572 <parameter name='regex' value='\$\{' />
\r
574 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
\r
575 <parameter name='ctx_memory_result_key' value='s2' />
\r
576 <parameter name='original_string' value='`$resource-resolution-split[1]`' />
\r
577 <parameter name='regex' value='\}' />
\r
579 <switch test='`$s2[0] == $jsonContextPrefix.elements[$n].resource-name`'>
\r
580 <outcome value='true'>
\r
582 <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[$l].value`' value="`$jsonContextPrefix.elements[$n].resource-value`" />
\r
591 <for index='l' 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
592 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
\r
593 <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[$l].value`" />
\r
594 <parameter name="target" value="$"/>
\r
595 <outcome value='false'>
\r
598 <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[$l].resource-resolution-data.capability-name`' value='INPUT' />
\r
601 <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[$l].resource-resolution-data.status`' value='SUCCESS' />
\r