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-mS-vlan-tag-assign' mode='sync'>
\r
5 <block atomic="true">
\r
6 <switch test='`$ss.capability-name`'>
\r
8 <return status="failure">
\r
9 <parameter name="ack-final" value="Y" />
\r
10 <parameter name="error-code" value="500"/>
\r
11 <parameter name="error-message" value="ss.capability-name is null" />
\r
15 <switch test='`$ss.capability-action`'>
\r
17 <return status="failure">
\r
18 <parameter name="ack-final" value="Y" />
\r
19 <parameter name="error-code" value="500"/>
\r
20 <parameter name="error-message" value="ss.capability-action is null" />
\r
23 <outcome value='assign'>
\r
24 <block atomic="true">
\r
25 <call module='GENERIC-RESOURCE-API' rpc='self-serve-capability-param-resolution' mode='sync' >
\r
26 <outcome value='failure'>
\r
27 <return status="failure">
\r
28 <parameter name="ack-final" value="Y" />
\r
29 <parameter name="error-code" value="500"/>
\r
30 <parameter name="error-message" value="`'Not all assignments are resolved' + $error-message`" />
\r
35 <parameter name='qidx' value='0' />
\r
36 <parameter name='ss.vt.' value='' />
\r
38 <for silentFailure='true' index="pidx" 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
40 <parameter name='tmp.ss.param.capability-name'
\r
41 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[$pidx].resource-resolution-data.capability-name`' />
\r
43 <switch test='`$tmp.ss.param.capability-name == $ss.capability-name`'>
\r
44 <outcome value='true'>
\r
47 <parameter name='ss.vt.param[$qidx].index' value='`$pidx`' />
\r
49 <for silentFailure='true' index="kidx" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$pidx].resource-resolution-data.resource-key_length`">
\r
50 <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$pidx].resource-resolution-data.resource-key[$kidx].name`'>
\r
51 <outcome value='policy-instance-name'>
\r
53 <parameter name='vt.request[$qidx].policy-instance-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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
\r
56 <outcome value='resource-name'>
\r
58 <parameter name='vt.request[$qidx].resource-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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
\r
61 <outcome value='scope-id'>
\r
63 <parameter name='vt.request[$qidx].scope-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
\r
66 <outcome value='vlan-tag-key'>
\r
68 <parameter name='vt.request[$qidx].vlan-tag-key' 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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
\r
71 <outcome value='vlan-type'>
\r
73 <parameter name='vt.request[$qidx].vlan-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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
\r
76 <outcome value='resource-value'>
\r
77 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
\r
78 <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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
\r
79 <parameter name='target' value='$' />
\r
80 <outcome value='false'>
\r
82 <parameter name='vt.request[$qidx].resource-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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
\r
85 <outcome value='true'>
\r
87 <parameter name='vt.request[$qidx].resource-value' value='' />
\r
95 <parameter name='qidx' value='`$qidx + 1`' />
\r
98 <parameter name='vt.request_length' value='`$qidx`' />
\r
101 <parameter name='ss.vt.param_length' value='`$qidx`' />
\r
107 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
\r
108 <parameter name="source" value="`$prop.restapi.ss-mS-vlan-tag-assign`"/>
\r
109 <parameter name="outputPath" value="tmp.ss-vlan-tag-url"/>
\r
110 <parameter name="target" value="{action}"/>
\r
111 <parameter name="replacement" value="`$ss.capability-action`"/>
\r
113 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
\r
114 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.ss.mS.vlan.tag.assign.templatefile`" />
\r
115 <parameter name='restapiUrl' value='`$prop.vt.mS.url + $tmp.ss-vlan-tag-url`' />
\r
116 <parameter name='restapiUser' value='`$prop.vt.mS.user`' />
\r
117 <parameter name='restapiPassword' value='`$prop.vt.mS.pwd`' />
\r
118 <parameter name='format' value='json' />
\r
119 <parameter name='httpMethod' value='POST' />
\r
120 <parameter name="responsePrefix" value="vtResp" />
\r
121 <outcome value='failure'>
\r
122 <block atomic="true">
\r
123 <for index="i" start="0" end="`$ss.vt.param_length`">
\r
125 <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />
\r
128 <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[$vt-index].resource-resolution-data.status'
\r
132 <return status='failure'>
\r
133 <parameter name='error-code' value='500' />
\r
134 <parameter name='error-message' value="Failed to get vlan-tag assisgnment from mS" />
\r
138 <outcome value='not-found'>
\r
139 <block atomic="true">
\r
140 <for index="i" start="0" end="`$ss.vt.param_length`">
\r
142 <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />
\r
145 <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[$vt-index].resource-resolution-data.status'
\r
149 <return status='failure'>
\r
150 <parameter name='error-code' value='500' />
\r
151 <parameter name='error-message' value="Failed to get vlan-tag assisgnment from mS" />
\r
155 <outcome value='success'>
\r
156 <switch test='`$vtResp.error-code`'>
\r
157 <outcome value='500'>
\r
158 <block atomic='true'>
\r
159 <for index="i" start="0" end="`$ss.vt.param_length`">
\r
161 <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />
\r
164 <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[$vt-index].resource-resolution-data.status'
\r
168 <return status='failure'>
\r
169 <parameter name='error-code' value='500'/>
\r
170 <parameter name='error-message' value="`'Encountered error from mS-vlan-tag-assign with error-code = ' + $vtResp.error-code + ' and error-message = ' + $vtResp.error-message`" />
\r
174 <outcome value='200'>
\r
175 <block atomic='true'>
\r
176 <for silentFailure='true' index="pidx" 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
177 <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[$pidx].name`'>
\r
178 <outcome value='nfc-function'>
\r
180 <parameter name='ss.param.nfc-function' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$pidx].value`' />
\r
181 <parameter name='ss.param.nfc-function-index' value='`$pidx`' />
\r
184 <outcome value='nfc-naming-code'>
\r
186 <parameter name='ss.param.nfc-naming-code' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$pidx].value`' />
\r
187 <parameter name='ss.param.nfc-naming-code-index' value='`$pidx`' />
\r
190 <outcome value='vnfc-model-customization-uuid'>
\r
192 <parameter name='ss.param.vnfc-model-customization-uuid' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$pidx].value`' />
\r
193 <parameter name='ss.param.vnfc-model-customization-uuid-index' value='`$pidx`' />
\r
196 <outcome value='vnfc-model-invariant-uuid'>
\r
198 <parameter name='ss.param.vnfc-model-invariant-uuid' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$pidx].value`' />
\r
199 <parameter name='ss.param.vnfc-model-invariant-uuid-index' value='`$pidx`' />
\r
202 <outcome value='vnfc-model-version'>
\r
204 <parameter name='ss.param.vnfc-model-version' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$pidx].value`' />
\r
205 <parameter name='ss.param.vnfc-model-version-index' value='`$pidx`' />
\r
208 <outcome value='vm-type'>
\r
210 <parameter name='ss.param.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[$pidx].value`' />
\r
211 <parameter name='ss.param.vm-type-index' value='`$pidx`' />
\r
214 <outcome value='vnfc-name'>
\r
215 <block atomic='true'>
\r
217 <parameter name='ss.param.vnfc-name-unresolved-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[$pidx].value`' />
\r
219 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
\r
220 <parameter name="source" value="`$ss.param.vnfc-name-unresolved-value`" />
\r
221 <parameter name="target" value="${"/>
\r
222 <parameter name="replacement" value=""/>
\r
223 <parameter name="outputPath" value="ss.param.vnfc-name-unresolved-value"/>
\r
225 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
\r
226 <parameter name="source" value="`$ss.param.vnfc-name-unresolved-value`" />
\r
227 <parameter name="target" value="}"/>
\r
228 <parameter name="replacement" value=""/>
\r
229 <parameter name="outputPath" value="ss.param.vnfc-name-unresolved-value"/>
\r
231 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
232 <parameter name="logger" value="message-log"/>
\r
233 <parameter name="field1" value="__TIMESTAMP__"/>
\r
234 <parameter name="field2" value="`'ss.param.vnfc-name-unresolved-value = ' + $ss.param.vnfc-name-unresolved-value`"/>
\r
237 <for silentFailure='true' index="x" 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
238 <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[$x].name == $ss.param.vnfc-name-unresolved-value`'>
\r
239 <outcome value='true'>
\r
240 <block atomic='true'>
\r
242 <parameter name='ss.param.vnfc-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$x].value`' />
\r
243 <parameter name='ss.param.vnfc-name-index' value='`$x`' />
\r
245 <return status='failure'></return>
\r
250 <return status='success'></return>
\r
252 <switch test='`$ss.param.vnfc-name`'>
\r
254 <block atomic='true'>
\r
255 <block atomic="true">
\r
256 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
257 <parameter name="logger" value="message-log"/>
\r
258 <parameter name="field1" value="ROLLBACK: self-serve-mS-vlan-tag-assign"/>
\r
260 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
\r
261 <parameter name="source" value="`$prop.restapi.ss-mS-vlan-tag-assign`"/>
\r
262 <parameter name="outputPath" value="tmp.ss-vlan-tag-url"/>
\r
263 <parameter name="target" value="{action}"/>
\r
264 <parameter name="replacement" value="unassign"/>
\r
266 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
\r
267 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.ss.mS.vlan.tag.unassign.templatefile`" />
\r
268 <parameter name='restapiUrl' value='`$prop.vt.mS.url + $tmp.ss-vlan-tag-url`' />
\r
269 <parameter name='restapiUser' value='`$prop.vt.mS.user`' />
\r
270 <parameter name='restapiPassword' value='`$prop.vt.mS.pwd`' />
\r
271 <parameter name='format' value='json' />
\r
272 <parameter name='httpMethod' value='POST' />
\r
273 <parameter name="responsePrefix" value="vtResp" />
\r
274 <outcome value='failure'>
\r
276 <parameter name="error-message"
\r
277 value="Failed to rollback vlan-tag from mS. vlan-tag MUST BE ROLLBACK MANUALLY!!!" />
\r
280 <outcome value='not-found'>
\r
282 <parameter name="error-message"
\r
283 value="Failed to rollback vlan-tag from mS. vlan-tag MUST BE ROLLBACK MANUALLY!!!" />
\r
286 <outcome value='success'>
\r
287 <switch test='`$vtResp.error-code`'>
\r
288 <outcome value='500'>
\r
290 <parameter name="error-message"
\r
291 value="`'Received error from mS with error-code = ' + $vtResp.error-code + ' and error-message = ' + $vtResp.error-message + '; vlan-tag MUST BE ROLLBACK MANUALLY!!!'`" />
\r
294 <outcome value='200'>
\r
296 <for silentFailure='true' index="oidx" start="0" end="`$vtResp.output_length`">
\r
297 <for silentFailure='true' index="i" start="0" end="`$ss.vt.param_length`">
\r
299 <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />
\r
302 <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[$vt-index].resource-resolution-data.status'
\r
308 <parameter name="error-message"
\r
309 value="vlan tags were rolled back from mS successfully." />
\r
317 <return status='failure'>
\r
318 <parameter name='error-code' value='500' />
\r
319 <parameter name='error-message' value="`'Unable to resolve vnfc-name; ' + $error-message`" />
\r
329 <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 = '`$ss.param.vm-type`' />
\r
330 <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 = '`$ss.param.vnfc-model-invariant-uuid`' />
\r
331 <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 = '`$ss.param.vnfc-model-customization-uuid`' />
\r
332 <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 = '`$ss.param.vnfc-model-version`' />
\r
333 <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 = '`$ss.param.vnfc-name`' />
\r
336 <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_length' value = '1' />
\r
337 <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_length' value = '1' />
\r
339 <for silentFailure='true' index="oidx" start="0" end="`$vtResp.output_length`">
\r
340 <for silentFailure='true' index="vtidx" start="0" end="`$ss.vt.param_length`">
\r
342 <parameter name='vt-index' value='`$ss.vt.param[$vtidx].index`' />
\r
344 <switch test='`$vtResp.output[$oidx].resource-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[$vt-index].name`'>
\r
345 <outcome value='true'>
\r
346 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
\r
347 <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[$vt-index].value`' />
\r
348 <parameter name='target' value='$' />
\r
349 <outcome value='true'>
\r
350 <block atomic='true'>
\r
352 <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[$vt-index].value'
\r
353 value='`$vtResp.output[$oidx].resource-value`' />
\r
356 <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[$vt-index].resource-resolution-data.status'
\r
359 <for silentFailure='true' index="kidx" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$vt-index].resource-resolution-data.resource-key_length`">
\r
360 <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[$vt-index].resource-resolution-data.resource-key[$kidx].name`'>
\r
361 <outcome value='vnfc-network-role'>
\r
362 <block atomic='true'>
\r
364 <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-networks.vnfc-network-data[$vtidx].vnfc-network-role'
\r
365 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[$vt-index].resource-resolution-data.resource-key[$kidx].value`' />
\r
367 <call module="GENERIC-RESOURCE-API" rpc="generate-cp-instance-id" mode="sync" >
\r
368 <outcome value='failure'>
\r
369 <block atomic='true'>
\r
370 <block atomic="true">
\r
371 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
372 <parameter name="logger" value="message-log"/>
\r
373 <parameter name="field1" value="ROLLBACK: self-serve-mS-vlan-tag-assign"/>
\r
375 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
\r
376 <parameter name="source" value="`$prop.restapi.ss-mS-vlan-tag-assign`"/>
\r
377 <parameter name="outputPath" value="tmp.ss-vlan-tag-url"/>
\r
378 <parameter name="target" value="{action}"/>
\r
379 <parameter name="replacement" value="unassign"/>
\r
381 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
\r
382 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.ss.mS.vlan.tag.unassign.templatefile`" />
\r
383 <parameter name='restapiUrl' value='`$prop.vt.mS.url + $tmp.ss-vlan-tag-url`' />
\r
384 <parameter name='restapiUser' value='`$prop.vt.mS.user`' />
\r
385 <parameter name='restapiPassword' value='`$prop.vt.mS.pwd`' />
\r
386 <parameter name='format' value='json' />
\r
387 <parameter name='httpMethod' value='POST' />
\r
388 <parameter name="responsePrefix" value="vtResp" />
\r
389 <outcome value='failure'>
\r
391 <parameter name="error-message"
\r
392 value="Failed to rollback vlan-tag from mS. vlan-tag MUST BE ROLLBACK MANUALLY!!!" />
\r
395 <outcome value='not-found'>
\r
397 <parameter name="error-message"
\r
398 value="Failed to rollback vlan-tag from mS. vlan-tag MUST BE ROLLBACK MANUALLY!!!" />
\r
401 <outcome value='success'>
\r
402 <switch test='`$vtResp.error-code`'>
\r
403 <outcome value='500'>
\r
405 <parameter name="error-message"
\r
406 value="`'Received error from mS with error-code = ' + $vtResp.error-code + ' and error-message = ' + $vtResp.error-message + '; vlan-tag MUST BE ROLLBACK MANUALLY!!!'`" />
\r
409 <outcome value='200'>
\r
411 <for silentFailure='true' index="oidx" start="0" end="`$vtResp.output_length`">
\r
412 <for silentFailure='true' index="i" start="0" end="`$ss.vt.param_length`">
\r
414 <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />
\r
417 <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[$vt-index].resource-resolution-data.status'
\r
423 <parameter name="error-message"
\r
424 value="vlan tags were rolled back from mS successfully." />
\r
432 <return status='failure'>
\r
433 <parameter name='error-code' value='500'/>
\r
434 <parameter name='error-message' value="`'Error in generating cp-instance-id in SDNC; ' + $error-message.generate-cp-instance-id + $error-message`" />
\r
439 <for silentFailure='true' index="sidx" start="0" end="`$vtResp.output[$oidx].stored-elements_length`">
\r
441 <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-networks.vnfc-network-data[$vtidx].connection-point.connection-point-id'
\r
442 value='`$tmp.return.generate-cp-instance-id.id`' />
\r
443 <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-networks.vnfc-network-data[$vtidx].connection-point.vlan-data[$sidx].vlan-uuid'
\r
444 value='`$vtResp.output[$oidx].stored-elements[$sidx].vlan-uuid`' />
\r
445 <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-networks.vnfc-network-data[$vtidx].connection-point.vlan-data[$sidx].vlan-tag-id'
\r
446 value='`$vtResp.output[$oidx].stored-elements[$sidx].vlantag-value`' />
\r
447 <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-networks.vnfc-network-data[$vtidx].connection-point.vlan-data[$sidx].vlan-tag-description'
\r
448 value='`$vtResp.output[$oidx].stored-elements[$sidx].vlantag-name`' />
\r
449 <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-networks.vnfc-network-data[$vtidx].connection-point.vlan-data[$sidx].vlan-role'
\r
450 value='`$vtResp.output[$oidx].stored-elements[$sidx].element-vlan-role`' />
\r
459 <outcome value='false'>
\r
460 <block atomic='true'>
\r
461 <block atomic='true'>
\r
463 <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[$vt-index].value'
\r
464 value='`$vtResp.output[$oidx].resource-value`' />
\r
467 <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[$vt-index].resource-resolution-data.status'
\r
470 <for silentFailure='true' index="kidx" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$vt-index].resource-resolution-data.resource-key_length`">
\r
471 <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[$vt-index].resource-resolution-data.resource-key[$kidx].name`'>
\r
472 <outcome value='vnfc-network-role'>
\r
473 <block atomic='true'>
\r
475 <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-networks.vnfc-network-data[$vtidx].vnfc-network-role'
\r
476 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[$vt-index].resource-resolution-data.resource-key[$kidx].value`' />
\r
478 <call module="GENERIC-RESOURCE-API" rpc="generate-cp-instance-id" mode="sync" >
\r
479 <outcome value='failure'>
\r
480 <block atomic='true'>
\r
481 <block atomic="true">
\r
482 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
483 <parameter name="logger" value="message-log"/>
\r
484 <parameter name="field1" value="ROLLBACK: self-serve-mS-vlan-tag-assign"/>
\r
486 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
\r
487 <parameter name="source" value="`$prop.restapi.ss-mS-vlan-tag-assign`"/>
\r
488 <parameter name="outputPath" value="tmp.ss-vlan-tag-url"/>
\r
489 <parameter name="target" value="{action}"/>
\r
490 <parameter name="replacement" value="unassign"/>
\r
492 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
\r
493 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.ss.mS.vlan.tag.unassign.templatefile`" />
\r
494 <parameter name='restapiUrl' value='`$prop.vt.mS.url + $tmp.ss-vlan-tag-url`' />
\r
495 <parameter name='restapiUser' value='`$prop.vt.mS.user`' />
\r
496 <parameter name='restapiPassword' value='`$prop.vt.mS.pwd`' />
\r
497 <parameter name='format' value='json' />
\r
498 <parameter name='httpMethod' value='POST' />
\r
499 <parameter name="responsePrefix" value="vtResp" />
\r
500 <outcome value='failure'>
\r
502 <parameter name="error-message"
\r
503 value="Failed to rollback vlan-tag from mS. vlan-tag MUST BE ROLLBACK MANUALLY!!!" />
\r
506 <outcome value='not-found'>
\r
508 <parameter name="error-message"
\r
509 value="Failed to rollback vlan-tag from mS. vlan-tag MUST BE ROLLBACK MANUALLY!!!" />
\r
512 <outcome value='success'>
\r
513 <switch test='`$vtResp.error-code`'>
\r
514 <outcome value='500'>
\r
516 <parameter name="error-message"
\r
517 value="`'Received error from mS with error-code = ' + $vtResp.error-code + ' and error-message = ' + $vtResp.error-message + '; vlan-tag MUST BE ROLLBACK MANUALLY!!!'`" />
\r
520 <outcome value='200'>
\r
522 <for silentFailure='true' index="oidx" start="0" end="`$vtResp.output_length`">
\r
523 <for silentFailure='true' index="i" start="0" end="`$ss.vt.param_length`">
\r
525 <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />
\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-parameters.param[$vt-index].resource-resolution-data.status'
\r
534 <parameter name="error-message"
\r
535 value="vlan tags were rolled back from mS successfully." />
\r
543 <return status='failure'>
\r
544 <parameter name='error-code' value='500'/>
\r
545 <parameter name='error-message' value="`'Error in generating cp-instance-id in SDNC; ' + $error-message.generate-cp-instance-id + $error-message`" />
\r
550 <for silentFailure='true' index="sidx" start="0" end="`$vtResp.output[$oidx].stored-elements_length`">
\r
552 <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-networks.vnfc-network-data[$vtidx].connection-point.connection-point-id'
\r
553 value='`$tmp.return.generate-cp-instance-id.id`' />
\r
554 <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-networks.vnfc-network-data[$vtidx].connection-point.vlan-data[$sidx].vlan-uuid'
\r
555 value='`$vtResp.output[$oidx].stored-elements[$sidx].vlan-uuid`' />
\r
556 <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-networks.vnfc-network-data[$vtidx].connection-point.vlan-data[$sidx].vlan-tag-id'
\r
557 value='`$vtResp.output[$oidx].stored-elements[$sidx].vlantag-value`' />
\r
558 <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-networks.vnfc-network-data[$vtidx].connection-point.vlan-data[$sidx].vlan-tag-description'
\r
559 value='`$vtResp.output[$oidx].stored-elements[$sidx].vlantag-name`' />
\r
560 <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-networks.vnfc-network-data[$vtidx].connection-point.vlan-data[$sidx].vlan-role'
\r
561 value='`$vtResp.output[$oidx].stored-elements[$sidx].element-vlan-role`' />
\r
570 <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[$vt-index].resource-resolution-data.capability-name'
\r
581 <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-networks.vnfc-network-data_length'
\r
582 value='`$ss.vt.param_length`' />
\r
585 <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-networks.vnfc-network-data[$vtidx].connection-point.vlan-data_length'
\r
586 value='`$vtResp.output[$oidx].stored-elements_length`' />
\r
595 <outcome value='unassign'>
\r
596 <block atomic="true">
\r
598 <parameter name='qidx' value='0' />
\r
599 <parameter name='ss.vt.' value='' />
\r
601 <for silentFailure='true' index="pidx" 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
603 <parameter name='tmp.ss.param.capability-name'
\r
604 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[$pidx].resource-resolution-data.capability-name`' />
\r
606 <switch test='`$tmp.ss.param.capability-name == $ss.capability-name`'>
\r
607 <outcome value='true'>
\r
610 <parameter name='ss.vt.param[$qidx].index' value='`$pidx`' />
\r
612 <for silentFailure='true' index="kidx" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$pidx].resource-resolution-data.resource-key_length`">
\r
613 <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[$pidx].resource-resolution-data.resource-key[$kidx].name`'>
\r
614 <outcome value='policy-instance-name'>
\r
616 <parameter name='vt.request[$qidx].policy-instance-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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
\r
619 <outcome value='vlan-type'>
\r
621 <parameter name='vt.request[$qidx].vlan-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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
\r
624 <outcome value='vlan-tag-key'>
\r
626 <parameter name='vt.request[$qidx].vlan-tag-key' 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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
\r
632 <parameter name='qidx' value='`$qidx + 1`' />
\r
635 <parameter name='vt.request_length' value='`$qidx`' />
\r
638 <parameter name='ss.vt.param_length' value='`$qidx`' />
\r
644 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
\r
645 <parameter name="source" value="`$prop.restapi.ss-mS-vlan-tag-assign`"/>
\r
646 <parameter name="outputPath" value="tmp.ss-vlan-tag-url"/>
\r
647 <parameter name="target" value="{action}"/>
\r
648 <parameter name="replacement" value="`$ss.capability-action`"/>
\r
650 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
\r
651 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.ss.mS.vlan.tag.unassign.templatefile`" />
\r
652 <parameter name='restapiUrl' value='`$prop.vt.mS.url + $tmp.ss-vlan-tag-url`' />
\r
653 <parameter name='restapiUser' value='`$prop.vt.mS.user`' />
\r
654 <parameter name='restapiPassword' value='`$prop.vt.mS.pwd`' />
\r
655 <parameter name='format' value='json' />
\r
656 <parameter name='httpMethod' value='POST' />
\r
657 <parameter name="responsePrefix" value="vtResp" />
\r
658 <outcome value='failure'>
\r
659 <block atomic="true">
\r
660 <for index="i" start="0" end="`$ss.vt.param_length`">
\r
662 <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />
\r
665 <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[$vt-index].resource-resolution-data.status'
\r
669 <return status='failure'>
\r
670 <parameter name='error-code' value='500' />
\r
671 <parameter name='error-message' value="Failed to unassign vlan-tag from mS" />
\r
675 <outcome value='not-found'>
\r
676 <block atomic="true">
\r
677 <for index="i" start="0" end="`$ss.vt.param_length`">
\r
679 <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />
\r
682 <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[$vt-index].resource-resolution-data.status'
\r
686 <return status='failure'>
\r
687 <parameter name='error-code' value='500' />
\r
688 <parameter name='error-message' value="Failed to unassign vlan-tag from mS" />
\r
692 <outcome value='success'>
\r
693 <switch test='`$vtResp.error-code`'>
\r
694 <outcome value='500'>
\r
695 <block atomic="true">
\r
696 <for index="i" start="0" end="`$ss.vt.param_length`">
\r
698 <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />
\r
701 <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[$vt-index].resource-resolution-data.status'
\r
705 <return status='failure'>
\r
706 <parameter name='error-code' value='500'/>
\r
707 <parameter name='error-message' value="`'Encountered error while unassigning mS-vlan-tag with error-code = ' + $vtResp.error-code + ' and error-message = ' + $vtResp.error-message`" />
\r
711 <outcome value='200'>
\r
712 <for silentFailure='true' index="oidx" start="0" end="`$vtResp.output_length`">
\r
713 <for silentFailure='true' index="i" start="0" end="`$ss.vt.param_length`">
\r
715 <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />
\r
718 <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[$vt-index].resource-resolution-data.status'
\r
731 <parameter name='pathname'
\r
732 value="`'/var/tmp/ss-mS-vlan-tag-' + $ss.capability-action + '-' +
\r
733 $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-information.vf-module-id + '.log'`" />
\r
735 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
\r
736 <parameter name='filename' value='`$pathname`' />
\r
738 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
739 <parameter name="logger" value="message-log"/>
\r
740 <parameter name="field1" value="DONE: mS-vlan-tag-assign"/>
\r