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
111 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.status`' value='DELETED' />
\r
113 <for index='n' start='0' end='`$jsonContextPrefix.elements_length`' >
\r
114 <for index='l' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`' >
\r
115 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
\r
116 <parameter name="source" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].value`" />
\r
117 <parameter name="target" value="$"/>
\r
118 <outcome value='true'>
\r
120 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
\r
121 <parameter name='ctx_memory_result_key' value='resource-resolution-split' />
\r
122 <parameter name='original_string' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].value`' />
\r
123 <parameter name='regex' value='\$\{' />
\r
125 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
\r
126 <parameter name='ctx_memory_result_key' value='s2' />
\r
127 <parameter name='original_string' value='`$resource-resolution-split[1]`' />
\r
128 <parameter name='regex' value='\}' />
\r
130 <switch test='`$s2[0] == $jsonContextPrefix.elements[$n].resource-name`'>
\r
131 <outcome value='true'>
\r
133 <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
148 <switch test="`$ss.capability-action == 'assign'`">
\r
149 <outcome value='true'>
\r
150 <block atomic='true'>
\r
152 <parameter name='tmp.naming-data-payload' value='{"elements":[' />
\r
153 <parameter name='tmp.gen-name_length' value='0' />
\r
155 <for index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`' >
\r
156 <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
157 <outcome value='true'>
\r
158 <block atomic='true'>
\r
160 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + '{'`" />
\r
162 <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
164 <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
165 <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
166 <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
167 <parameter name="`tmp.gen-name[$tmp.gen-name_length].element_length`" value='`$j + 1`' />
\r
171 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + '},'`" />
\r
172 <parameter name='tmp.gen-name_length' value='`$tmp.gen-name_length + 1`' />
\r
178 <switch test="`$tmp.naming-data-payload == ''`">
\r
179 <outcome value='false'>
\r
180 <block atomic='true'>
\r
182 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + ']}'`" />
\r
184 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace'>
\r
185 <parameter name='outputPath' value='tmp.naming-data-payload' />
\r
186 <parameter name='source' value='`$tmp.naming-data-payload`' />
\r
187 <parameter name='target' value=',}' />
\r
188 <parameter name='replacement' value='}' />
\r
190 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace'>
\r
191 <parameter name='outputPath' value='tmp.naming-data-payload' />
\r
192 <parameter name='source' value='`$tmp.naming-data-payload`' />
\r
193 <parameter name='target' value=',]' />
\r
194 <parameter name='replacement' value=']' />
\r
196 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
\r
197 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.naming.gen-name.templatefile`" />
\r
198 <parameter name='restapiUrl' value='`$prop.naming.gen-name.url + $prop.restapi.naming.gen-name.service`' />
\r
199 <parameter name='restapiUser' value='`$prop.naming.gen-name.user`' />
\r
200 <parameter name='restapiPassword' value='`$prop.naming.gen-name.pwd`' />
\r
201 <parameter name='format' value='json' />
\r
202 <parameter name='httpMethod' value='POST' />
\r
203 <parameter name="responsePrefix" value="nameGenResponse" />
\r
204 <outcome value='failure'>
\r
207 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.status`' value='FAILED' />
\r
209 <return status='failure'>
\r
210 <parameter name='ack-final' value='Y'/>
\r
211 <parameter name="error-code" value="500" />
\r
212 <parameter name="error-message" value="Error from NameGenerationNode Assign" />
\r
216 <outcome value='not-found'>
\r
219 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.status`' value='FAILED' />
\r
221 <return status='failure'>
\r
222 <parameter name='ack-final' value='Y'/>
\r
223 <parameter name="error-code" value="500" />
\r
224 <parameter name="error-message" value="Error from NameGenerationNode Assign" />
\r
229 <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="jsonStringToCtx">
\r
230 <parameter name="source" value="nameGenResponse.httpResponse" />
\r
231 <parameter name="outputPath" value="jsonContextPrefix" />
\r
232 <parameter name="isEscaped" value="false" />
\r
235 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.status`' value='SUCCESS' />
\r
237 <for index='n' start='0' end='`$jsonContextPrefix.elements_length`' >
\r
238 <for index='l' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`' >
\r
239 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
\r
240 <parameter name="source" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].value`" />
\r
241 <parameter name="target" value="$"/>
\r
242 <outcome value='true'>
\r
244 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
\r
245 <parameter name='ctx_memory_result_key' value='resource-resolution-split' />
\r
246 <parameter name='original_string' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].value`' />
\r
247 <parameter name='regex' value='\$\{' />
\r
249 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
\r
250 <parameter name='ctx_memory_result_key' value='s2' />
\r
251 <parameter name='original_string' value='`$resource-resolution-split[1]`' />
\r
252 <parameter name='regex' value='\}' />
\r
254 <switch test='`$s2[0] == $jsonContextPrefix.elements[$n].resource-name`'>
\r
255 <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
266 <for index='l' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`' >
\r
267 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
\r
268 <parameter name="source" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].value`" />
\r
269 <parameter name="target" value="$"/>
\r
270 <outcome value='false'>
\r
273 <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
276 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$l].resource-resolution-data.status`' value='SUCCESS' />
\r
291 <switch test="`$ss.capability-type == 'vf-module'`">
\r
292 <outcome value='true'>
\r
294 <switch test="`$ss.capability-action == 'unassign'`">
\r
295 <outcome value='true'>
\r
296 <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
297 <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
298 <outcome value='true'>
\r
299 <block atomic='true'>
\r
301 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + '{'`" />
\r
302 <parameter name='tmp.gen-name_length' value='1' />
\r
304 <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
305 <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
306 <outcome value='true'>
\r
308 <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
309 <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
310 <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
311 <parameter name="`tmp.gen-name[0].element_length`" value='`$j + 1`' />
\r
317 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + '},'`" />
\r
320 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + ']}'`" />
\r
322 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace'>
\r
323 <parameter name='outputPath' value='tmp.naming-data-payload' />
\r
324 <parameter name='source' value='`$tmp.naming-data-payload`' />
\r
325 <parameter name='target' value=',}' />
\r
326 <parameter name='replacement' value='}' />
\r
328 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace'>
\r
329 <parameter name='outputPath' value='tmp.naming-data-payload' />
\r
330 <parameter name='source' value='`$tmp.naming-data-payload`' />
\r
331 <parameter name='target' value=',]' />
\r
332 <parameter name='replacement' value=']' />
\r
334 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
\r
335 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.naming.gen-name.templatefile`" />
\r
336 <parameter name='restapiUrl' value='`$prop.naming.gen-name.url + $prop.restapi.naming.gen-name.service`' />
\r
337 <parameter name='restapiUser' value='`$prop.naming.gen-name.user`' />
\r
338 <parameter name='restapiPassword' value='`$prop.naming.gen-name.pwd`' />
\r
339 <parameter name='format' value='json' />
\r
340 <parameter name='httpMethod' value='DELETE' />
\r
341 <parameter name="responsePrefix" value="nameGenResponse" />
\r
342 <outcome value='failure'>
\r
345 <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
347 <return status='failure'>
\r
348 <parameter name='ack-final' value='Y'/>
\r
349 <parameter name="error-code" value="500" />
\r
350 <parameter name="error-message" value="Error from NameGenerationNode Unassign" />
\r
354 <outcome value='not-found'>
\r
357 <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
359 <return status='failure'>
\r
360 <parameter name='ack-final' value='Y'/>
\r
361 <parameter name="error-code" value="500" />
\r
362 <parameter name="error-message" value="Error from NameGenerationNode Unassign" />
\r
367 <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="jsonStringToCtx">
\r
368 <parameter name="source" value="nameGenResponse.httpResponse" />
\r
369 <parameter name="outputPath" value="jsonContextPrefix" />
\r
370 <parameter name="isEscaped" value="false" />
\r
373 <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
375 <for index='n' start='0' end='`$jsonContextPrefix.elements_length`' >
\r
376 <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
377 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
\r
378 <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
379 <parameter name="target" value="$"/>
\r
380 <outcome value='true'>
\r
382 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
\r
383 <parameter name='ctx_memory_result_key' value='resource-resolution-split' />
\r
384 <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
385 <parameter name='regex' value='\$\{' />
\r
387 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
\r
388 <parameter name='ctx_memory_result_key' value='s2' />
\r
389 <parameter name='original_string' value='`$resource-resolution-split[1]`' />
\r
390 <parameter name='regex' value='\}' />
\r
392 <switch test='`$s2[0] == $jsonContextPrefix.elements[$n].resource-name`'>
\r
393 <outcome value='true'>
\r
395 <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
410 <switch test="`$ss.capability-action == 'assign'`">
\r
411 <outcome value='true'>
\r
412 <block atomic='true'>
\r
414 <parameter name='tmp.naming-data-payload' value='{"elements":[' />
\r
415 <parameter name='tmp.gen-name_length' value='0' />
\r
417 <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
418 <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
419 <outcome value='true'>
\r
420 <block atomic='true'>
\r
422 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + '{'`" />
\r
424 <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
426 <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
427 <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
428 <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
429 <parameter name="`tmp.gen-name[$tmp.gen-name_length].element_length`" value='`$j + 1`' />
\r
433 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + '},'`" />
\r
434 <parameter name='tmp.gen-name_length' value='`$tmp.gen-name_length + 1`' />
\r
440 <switch test="`$tmp.naming-data-payload == ''`">
\r
441 <outcome value='false'>
\r
442 <block atomic='true'>
\r
444 <parameter name='tmp.naming-data-payload' value="`$tmp.naming-data-payload + ']}'`" />
\r
446 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace'>
\r
447 <parameter name='outputPath' value='tmp.naming-data-payload' />
\r
448 <parameter name='source' value='`$tmp.naming-data-payload`' />
\r
449 <parameter name='target' value=',}' />
\r
450 <parameter name='replacement' value='}' />
\r
452 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace'>
\r
453 <parameter name='outputPath' value='tmp.naming-data-payload' />
\r
454 <parameter name='source' value='`$tmp.naming-data-payload`' />
\r
455 <parameter name='target' value=',]' />
\r
456 <parameter name='replacement' value=']' />
\r
458 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
\r
459 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.naming.gen-name.templatefile`" />
\r
460 <parameter name='restapiUrl' value='`$prop.naming.gen-name.url + $prop.restapi.naming.gen-name.service`' />
\r
461 <parameter name='restapiUser' value='`$prop.naming.gen-name.user`' />
\r
462 <parameter name='restapiPassword' value='`$prop.naming.gen-name.pwd`' />
\r
463 <parameter name='format' value='json' />
\r
464 <parameter name='httpMethod' value='POST' />
\r
465 <parameter name="responsePrefix" value="nameGenResponse" />
\r
466 <outcome value='failure'>
\r
469 <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
471 <return status='failure'>
\r
472 <parameter name='ack-final' value='Y'/>
\r
473 <parameter name="error-code" value="500" />
\r
474 <parameter name="error-message" value="Error from NameGenerationNode Assign" />
\r
478 <outcome value='not-found'>
\r
481 <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
483 <return status='failure'>
\r
484 <parameter name='ack-final' value='Y'/>
\r
485 <parameter name="error-code" value="500" />
\r
486 <parameter name="error-message" value="Error from NameGenerationNode Assign" />
\r
491 <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="jsonStringToCtx">
\r
492 <parameter name="source" value="nameGenResponse.httpResponse" />
\r
493 <parameter name="outputPath" value="jsonContextPrefix" />
\r
494 <parameter name="isEscaped" value="false" />
\r
497 <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
499 <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
500 <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
501 <outcome value='true'>
\r
502 <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[$cn].resource-resolution-data.resource-key_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].resource-resolution-data.resource-key[$j].name == 'vm-type'`">
\r
505 <outcome value='true'>
\r
507 <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
511 <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
512 <outcome value='true'>
\r
514 <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
518 <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
519 <outcome value='true'>
\r
521 <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
525 <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
526 <outcome value='true'>
\r
528 <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
532 <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
533 <outcome value='true'>
\r
535 <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
539 <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
540 <outcome value='true'>
\r
542 <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
546 <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
547 <outcome value='true'>
\r
549 <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
558 <for index='n' start='0' end='`$jsonContextPrefix.elements_length`' >
\r
559 <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
560 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
\r
561 <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
562 <parameter name="target" value="$"/>
\r
563 <outcome value='true'>
\r
565 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
\r
566 <parameter name='ctx_memory_result_key' value='resource-resolution-split' />
\r
567 <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
568 <parameter name='regex' value='\$\{' />
\r
570 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
\r
571 <parameter name='ctx_memory_result_key' value='s2' />
\r
572 <parameter name='original_string' value='`$resource-resolution-split[1]`' />
\r
573 <parameter name='regex' value='\}' />
\r
575 <switch test='`$s2[0] == $jsonContextPrefix.elements[$n].resource-name`'>
\r
576 <outcome value='true'>
\r
578 <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
587 <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
588 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
\r
589 <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
590 <parameter name="target" value="$"/>
\r
591 <outcome value='false'>
\r
594 <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
597 <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