Chore: Add gerrit maven verify GHA workflow
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_self-serve-mS-vlan-tag-assign.xml
1 <service-logic\r
2     xmlns='http://www.onap.org/sdnc/svclogic'\r
3     xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>\r
4     <method rpc='self-serve-mS-vlan-tag-assign' mode='sync'>\r
5         <block atomic="true">\r
6             <switch test='`$ss.capability-name`'>\r
7                 <outcome value=''>\r
8                     <return status="failure">\r
9                         <parameter name="ack-final" value="Y" />\r
10                         <parameter name="error-code" value="500"/>\r
11                         <parameter name="error-message" value="ss.capability-name is null" />\r
12                     </return>\r
13                 </outcome>\r
14             </switch>\r
15             <switch test='`$ss.capability-action`'>\r
16                 <outcome value=''>\r
17                     <return status="failure">\r
18                         <parameter name="ack-final" value="Y" />\r
19                         <parameter name="error-code" value="500"/>\r
20                         <parameter name="error-message" value="ss.capability-action is null" />\r
21                     </return>\r
22                 </outcome>\r
23                 <outcome value='assign'>\r
24                     <block atomic="true">\r
25                         <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
31                                 </return>\r
32                             </outcome>\r
33                         </call>\r
34                         <set>\r
35                             <parameter name='qidx' value='0' />\r
36                             <parameter name='ss.vt.' value='' />\r
37                         </set>\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
39                             <set>\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
42                             </set>\r
43                             <switch test='`$tmp.ss.param.capability-name == $ss.capability-name`'>\r
44                                 <outcome value='true'>\r
45                                     <block>\r
46                                         <set>\r
47                                             <parameter name='ss.vt.param[$qidx].index' value='`$pidx`' />\r
48                                         </set>\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
52                                                     <set>\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
54                                                     </set>\r
55                                                 </outcome>\r
56                                                 <outcome value='resource-name'>\r
57                                                     <set>\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
59                                                     </set>\r
60                                                 </outcome>\r
61                                                 <outcome value='scope-id'>\r
62                                                     <set>\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
64                                                     </set>\r
65                                                 </outcome>\r
66                                                 <outcome value='vlan-tag-key'>\r
67                                                     <set>\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
69                                                     </set>\r
70                                                 </outcome>\r
71                                                 <outcome value='vlan-type'>\r
72                                                     <set>\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
74                                                     </set>\r
75                                                 </outcome>\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
81                                                             <set>\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
83                                                             </set>\r
84                                                         </outcome>\r
85                                                         <outcome value='true'>\r
86                                                             <set>\r
87                                                                 <parameter name='vt.request[$qidx].resource-value' value='' />\r
88                                                             </set>\r
89                                                         </outcome>\r
90                                                     </execute>\r
91                                                 </outcome>\r
92                                             </switch>\r
93                                         </for>\r
94                                         <set>\r
95                                             <parameter name='qidx' value='`$qidx + 1`' />\r
96                                         </set>\r
97                                         <set>\r
98                                             <parameter name='vt.request_length' value='`$qidx`' />\r
99                                         </set>\r
100                                         <set>\r
101                                             <parameter name='ss.vt.param_length' value='`$qidx`' />\r
102                                         </set>\r
103                                     </block>\r
104                                 </outcome>\r
105                             </switch>\r
106                         </for>\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
112                         </execute>\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
124                                         <set>\r
125                                             <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />\r
126                                         </set>\r
127                                         <set>\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
129         value='FAILED' />\r
130                                         </set>\r
131                                     </for>\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
135                                     </return>\r
136                                 </block>\r
137                             </outcome>\r
138                             <outcome value='not-found'>\r
139                                 <block atomic="true">\r
140                                     <for index="i" start="0" end="`$ss.vt.param_length`">\r
141                                         <set>\r
142                                             <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />\r
143                                         </set>\r
144                                         <set>\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
146         value='FAILED' />\r
147                                         </set>\r
148                                     </for>\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
152                                     </return>\r
153                                 </block>\r
154                             </outcome>\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
160                                                 <set>\r
161                                                     <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />\r
162                                                 </set>\r
163                                                 <set>\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
165         value='FAILED' />\r
166                                                 </set>\r
167                                             </for>\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
171                                             </return>\r
172                                         </block>\r
173                                     </outcome>\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
179                                                         <set>\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
182                                                         </set>\r
183                                                     </outcome>\r
184                                                     <outcome value='nfc-naming-code'>\r
185                                                         <set>\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
188                                                         </set>\r
189                                                     </outcome>\r
190                                                     <outcome value='vnfc-model-customization-uuid'>\r
191                                                         <set>\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
194                                                         </set>\r
195                                                     </outcome>\r
196                                                     <outcome value='vnfc-model-invariant-uuid'>\r
197                                                         <set>\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
200                                                         </set>\r
201                                                     </outcome>\r
202                                                     <outcome value='vnfc-model-version'>\r
203                                                         <set>\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
206                                                         </set>\r
207                                                     </outcome>\r
208                                                     <outcome value='vm-type'>\r
209                                                         <set>\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
212                                                         </set>\r
213                                                     </outcome>\r
214                                                     <outcome value='vnfc-name'>\r
215                                                         <block atomic='true'>\r
216                                                             <set>\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
218                                                             </set>\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
224                                                             </execute>\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
230                                                             </execute>\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
235                                                             </record>\r
236                                                             <block>\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
241                                                                                 <set>\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
244                                                                                 </set>\r
245                                                                                 <return status='failure'></return>\r
246                                                                             </block>\r
247                                                                         </outcome>\r
248                                                                     </switch>\r
249                                                                 </for>\r
250                                                                 <return status='success'></return>\r
251                                                             </block>\r
252                                                             <switch test='`$ss.param.vnfc-name`'>\r
253                                                                 <outcome value=''>\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
259                                                                             </record>\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
265                                                                             </execute>\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
275                                                                                     <set>\r
276                                                                                         <parameter name="error-message" \r
277         value="Failed to rollback vlan-tag from mS. vlan-tag MUST BE ROLLBACK MANUALLY!!!" />\r
278                                                                                     </set>\r
279                                                                                 </outcome>\r
280                                                                                 <outcome value='not-found'>\r
281                                                                                     <set>\r
282                                                                                         <parameter name="error-message" \r
283         value="Failed to rollback vlan-tag from mS. vlan-tag MUST BE ROLLBACK MANUALLY!!!" />\r
284                                                                                     </set>\r
285                                                                                 </outcome>\r
286                                                                                 <outcome value='success'>\r
287                                                                                     <switch test='`$vtResp.error-code`'>\r
288                                                                                         <outcome value='500'>\r
289                                                                                             <set>\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
292                                                                                             </set>\r
293                                                                                         </outcome>\r
294                                                                                         <outcome value='200'>\r
295                                                                                             <block>\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
298                                                                                                         <set>\r
299                                                                                                             <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />\r
300                                                                                                         </set>\r
301                                                                                                         <set>\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
303         value='PENDING' />\r
304                                                                                                         </set>\r
305                                                                                                     </for>\r
306                                                                                                 </for>\r
307                                                                                                 <set>\r
308                                                                                                     <parameter name="error-message" \r
309         value="vlan tags were rolled back from mS successfully." />\r
310                                                                                                 </set>\r
311                                                                                             </block>\r
312                                                                                         </outcome>\r
313                                                                                     </switch>\r
314                                                                                 </outcome>\r
315                                                                             </execute>\r
316                                                                         </block>\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
320                                                                         </return>\r
321                                                                     </block>\r
322                                                                 </outcome>\r
323                                                             </switch>\r
324                                                         </block>\r
325                                                     </outcome>\r
326                                                 </switch>\r
327                                             </for>\r
328                                             <set>\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
334                                             </set>\r
335                                             <set>\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
338                                             </set>\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
341                                                     <set>\r
342                                                         <parameter name='vt-index' value='`$ss.vt.param[$vtidx].index`' />\r
343                                                     </set>\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
351                                                                         <set>\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
354                                                                         </set>\r
355                                                                         <set>\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
357         value='SUCCESS' />\r
358                                                                         </set>\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
363                                                                                         <set>\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
366                                                                                         </set>\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
374                                                                                                         </record>\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
380                                                                                                         </execute>\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
390                                                                                                                 <set>\r
391                                                                                                                     <parameter name="error-message" \r
392         value="Failed to rollback vlan-tag from mS. vlan-tag MUST BE ROLLBACK MANUALLY!!!" />\r
393                                                                                                                 </set>\r
394                                                                                                             </outcome>\r
395                                                                                                             <outcome value='not-found'>\r
396                                                                                                                 <set>\r
397                                                                                                                     <parameter name="error-message" \r
398         value="Failed to rollback vlan-tag from mS. vlan-tag MUST BE ROLLBACK MANUALLY!!!" />\r
399                                                                                                                 </set>\r
400                                                                                                             </outcome>\r
401                                                                                                             <outcome value='success'>\r
402                                                                                                                 <switch test='`$vtResp.error-code`'>\r
403                                                                                                                     <outcome value='500'>\r
404                                                                                                                         <set>\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
407                                                                                                                         </set>\r
408                                                                                                                     </outcome>\r
409                                                                                                                     <outcome value='200'>\r
410                                                                                                                         <block>\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
413                                                                                                                                     <set>\r
414                                                                                                                                         <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />\r
415                                                                                                                                     </set>\r
416                                                                                                                                     <set>\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
418         value='PENDING' />\r
419                                                                                                                                     </set>\r
420                                                                                                                                 </for>\r
421                                                                                                                             </for>\r
422                                                                                                                             <set>\r
423                                                                                                                                 <parameter name="error-message" \r
424         value="vlan tags were rolled back from mS successfully." />\r
425                                                                                                                             </set>\r
426                                                                                                                         </block>\r
427                                                                                                                     </outcome>\r
428                                                                                                                 </switch>\r
429                                                                                                             </outcome>\r
430                                                                                                         </execute>\r
431                                                                                                     </block>\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
435                                                                                                     </return>\r
436                                                                                                 </block>\r
437                                                                                             </outcome>\r
438                                                                                         </call>\r
439                                                                                         <for silentFailure='true' index="sidx" start="0" end="`$vtResp.output[$oidx].stored-elements_length`">\r
440                                                                                             <set>\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
451                                                                                             </set>\r
452                                                                                         </for>\r
453                                                                                     </block>\r
454                                                                                 </outcome>\r
455                                                                             </switch>\r
456                                                                         </for>\r
457                                                                     </block>\r
458                                                                 </outcome>\r
459                                                                 <outcome value='false'>\r
460                                                                     <block atomic='true'>\r
461                                                                         <block atomic='true'>\r
462                                                                             <set>\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
465                                                                             </set>\r
466                                                                             <set>\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
468         value='SUCCESS' />\r
469                                                                             </set>\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
474                                                                                             <set>\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
477                                                                                             </set>\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
485                                                                                                             </record>\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
491                                                                                                             </execute>\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
501                                                                                                                     <set>\r
502                                                                                                                         <parameter name="error-message" \r
503         value="Failed to rollback vlan-tag from mS. vlan-tag MUST BE ROLLBACK MANUALLY!!!" />\r
504                                                                                                                     </set>\r
505                                                                                                                 </outcome>\r
506                                                                                                                 <outcome value='not-found'>\r
507                                                                                                                     <set>\r
508                                                                                                                         <parameter name="error-message" \r
509         value="Failed to rollback vlan-tag from mS. vlan-tag MUST BE ROLLBACK MANUALLY!!!" />\r
510                                                                                                                     </set>\r
511                                                                                                                 </outcome>\r
512                                                                                                                 <outcome value='success'>\r
513                                                                                                                     <switch test='`$vtResp.error-code`'>\r
514                                                                                                                         <outcome value='500'>\r
515                                                                                                                             <set>\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
518                                                                                                                             </set>\r
519                                                                                                                         </outcome>\r
520                                                                                                                         <outcome value='200'>\r
521                                                                                                                             <block>\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
524                                                                                                                                         <set>\r
525                                                                                                                                             <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />\r
526                                                                                                                                         </set>\r
527                                                                                                                                         <set>\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
529         value='PENDING' />\r
530                                                                                                                                         </set>\r
531                                                                                                                                     </for>\r
532                                                                                                                                 </for>\r
533                                                                                                                                 <set>\r
534                                                                                                                                     <parameter name="error-message" \r
535         value="vlan tags were rolled back from mS successfully." />\r
536                                                                                                                                 </set>\r
537                                                                                                                             </block>\r
538                                                                                                                         </outcome>\r
539                                                                                                                     </switch>\r
540                                                                                                                 </outcome>\r
541                                                                                                             </execute>\r
542                                                                                                         </block>\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
546                                                                                                         </return>\r
547                                                                                                     </block>\r
548                                                                                                 </outcome>\r
549                                                                                             </call>\r
550                                                                                             <for silentFailure='true' index="sidx" start="0" end="`$vtResp.output[$oidx].stored-elements_length`">\r
551                                                                                                 <set>\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
562                                                                                                 </set>\r
563                                                                                             </for>\r
564                                                                                         </block>\r
565                                                                                     </outcome>\r
566                                                                                 </switch>\r
567                                                                             </for>\r
568                                                                         </block>\r
569                                                                         <set>\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
571         value='INPUT' />\r
572                                                                         </set>\r
573                                                                     </block>\r
574                                                                 </outcome>\r
575                                                             </execute>\r
576                                                         </outcome>\r
577                                                     </switch>\r
578                                                 </for>\r
579                                             </for>\r
580                                             <set>\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
583                                             </set>\r
584                                             <set>\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
587                                             </set>\r
588                                         </block>\r
589                                     </outcome>\r
590                                 </switch>\r
591                             </outcome>\r
592                         </execute>\r
593                     </block>\r
594                 </outcome>\r
595                 <outcome value='unassign'>\r
596                     <block atomic="true">\r
597                         <set>\r
598                             <parameter name='qidx' value='0' />\r
599                             <parameter name='ss.vt.' value='' />\r
600                         </set>\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
602                             <set>\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
605                             </set>\r
606                             <switch test='`$tmp.ss.param.capability-name == $ss.capability-name`'>\r
607                                 <outcome value='true'>\r
608                                     <block>\r
609                                         <set>\r
610                                             <parameter name='ss.vt.param[$qidx].index' value='`$pidx`' />\r
611                                         </set>\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
615                                                     <set>\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
617                                                     </set>\r
618                                                 </outcome>\r
619                                                 <outcome value='vlan-type'>\r
620                                                     <set>\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
622                                                     </set>\r
623                                                 </outcome>\r
624                                                 <outcome value='vlan-tag-key'>\r
625                                                     <set>\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
627                                                     </set>\r
628                                                 </outcome>\r
629                                             </switch>\r
630                                         </for>\r
631                                         <set>\r
632                                             <parameter name='qidx' value='`$qidx + 1`' />\r
633                                         </set>\r
634                                         <set>\r
635                                             <parameter name='vt.request_length' value='`$qidx`' />\r
636                                         </set>\r
637                                         <set>\r
638                                             <parameter name='ss.vt.param_length' value='`$qidx`' />\r
639                                         </set>\r
640                                     </block>\r
641                                 </outcome>\r
642                             </switch>\r
643                         </for>\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
649                         </execute>\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
661                                         <set>\r
662                                             <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />\r
663                                         </set>\r
664                                         <set>\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
666         value='FAILED' />\r
667                                         </set>\r
668                                     </for>\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
672                                     </return>\r
673                                 </block>\r
674                             </outcome>\r
675                             <outcome value='not-found'>\r
676                                 <block atomic="true">\r
677                                     <for index="i" start="0" end="`$ss.vt.param_length`">\r
678                                         <set>\r
679                                             <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />\r
680                                         </set>\r
681                                         <set>\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
683         value='FAILED' />\r
684                                         </set>\r
685                                     </for>\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
689                                     </return>\r
690                                 </block>\r
691                             </outcome>\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
697                                                 <set>\r
698                                                     <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />\r
699                                                 </set>\r
700                                                 <set>\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
702         value='FAILED' />\r
703                                                 </set>\r
704                                             </for>\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
708                                             </return>\r
709                                         </block>\r
710                                     </outcome>\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
714                                                 <set>\r
715                                                     <parameter name='vt-index' value='`$ss.vt.param[$i].index`' />\r
716                                                 </set>\r
717                                                 <set>\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
719         value='DELETED' />\r
720                                                 </set>\r
721                                             </for>\r
722                                         </for>\r
723                                     </outcome>\r
724                                 </switch>\r
725                             </outcome>\r
726                         </execute>\r
727                     </block>\r
728                 </outcome>\r
729             </switch>\r
730             <set>\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
734             </set>\r
735             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\r
736                 <parameter name='filename' value='`$pathname`' />\r
737             </execute>\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
741             </record>\r
742         </block>\r
743     </method>\r
744 </service-logic>