Chore: Add gerrit maven verify GHA workflow
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_self-serve-capability-param-resolution.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-capability-param-resolution' mode='sync'>\r
5         <block atomic='true'>\r
6             <switch test="`$ss.capability-type`">\r
7                 <outcome value='vnf'>\r
8                     <switch test="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length == ''`">\r
9                         <outcome value='false'>\r
10                             <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`' >\r
11                                 <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.capability-name == $ss.capability-name`'>\r
12                                     <outcome value='true'>\r
13                                         <switch test="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key_length == ''`">\r
14                                             <outcome value='false'>\r
15                                                 <for silentFailure='true' index='j' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key_length`' >\r
16                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains'  emitsOutcome='true' >\r
17                                                         <parameter name="source" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].value`" />\r
18                                                         <parameter name="target" value="$"/>\r
19                                                         <outcome value='true'>\r
20                                                             <block atomic='true'>\r
21                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
22                                                                     <parameter name="logger" value="message-log"/>\r
23                                                                     <parameter name="field1" value="`'SS: param[].value with leading $: ' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].value`"/>\r
24                                                                 </record>\r
25                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>\r
26                                                                     <parameter name='ctx_memory_result_key' value='resource-resolution-split' />\r
27                                                                     <parameter name='original_string' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].value`' />\r
28                                                                     <parameter name='regex' value='\$\{' />\r
29                                                                 </execute>\r
30                                                                 <set>\r
31                                                                     <parameter name="tmp.s1" value='`$resource-resolution-split[0]`'/>\r
32                                                                     <parameter name="tmp.s2.s2" value=''/>\r
33                                                                     <parameter name="tmp.resolved.var.value" value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].value`'/>\r
34                                                                 </set>\r
35                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>\r
36                                                                     <parameter name='ctx_memory_result_key' value='s2' />\r
37                                                                     <parameter name='original_string' value='`$resource-resolution-split[1]`' />\r
38                                                                     <parameter name='regex' value='\}' />\r
39                                                                 </execute>\r
40                                                                 <switch test='`$s2_length`'>\r
41                                                                     <outcome value='1'>\r
42                                                                         <set>\r
43                                                                             <parameter name="tmp.s2.s1" value='`$s2[0]`'/>\r
44                                                                         </set>\r
45                                                                     </outcome>\r
46                                                                     <outcome value='2'>\r
47                                                                         <block>\r
48                                                                             <set>\r
49                                                                                 <parameter name="tmp.s2.s1" value='`$s2[0]`'/>\r
50                                                                             </set>\r
51                                                                             <set>\r
52                                                                                 <parameter name="tmp.s2.s2" value='`$s2[1]`'/>\r
53                                                                             </set>\r
54                                                                         </block>\r
55                                                                     </outcome>\r
56                                                                 </switch>\r
57                                                                 <for silentFailure='true' index='cn' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`' >\r
58                                                                     <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$cn].name == $tmp.s2.s1`'>\r
59                                                                         <outcome value='true'>\r
60                                                                             <set>\r
61                                                                                 <parameter name='tmp.resolved.var.value' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$cn].value`'/>\r
62                                                                             </set>\r
63                                                                         </outcome>\r
64                                                                     </switch>\r
65                                                                 </for>\r
66                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat'>\r
67                                                                     <parameter name='source' value='`$tmp.s1`' />\r
68                                                                     <parameter name='target' value='`$tmp.resolved.var.value`' />\r
69                                                                     <parameter name='outputPath' value='tmp.result' />\r
70                                                                 </execute>\r
71                                                                 <switch test="`$tmp.s2.s2 == ''`">\r
72                                                                     <outcome value='true'></outcome>\r
73                                                                     <outcome value='false'>\r
74                                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat'>\r
75                                                                             <parameter name='source' value='`$tmp.result`' />\r
76                                                                             <parameter name='target' value='`$tmp.s2.s2`' />\r
77                                                                             <parameter name='outputPath' value='tmp.result' />\r
78                                                                         </execute>\r
79                                                                     </outcome>\r
80                                                                 </switch>\r
81                                                                 <set>\r
82                                                                     <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].value`' value='`$tmp.result`'/>\r
83                                                                 </set>\r
84                                                             </block>\r
85                                                         </outcome>\r
86                                                     </execute>\r
87                                                 </for>\r
88                                             </outcome>\r
89                                         </switch>\r
90                                     </outcome>\r
91                                 </switch>\r
92                             </for>\r
93                         </outcome>\r
94                     </switch>\r
95                 </outcome>\r
96                 <outcome value='vf-module'>\r
97                     <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_length == ''`">\r
98                         <outcome value='false'>\r
99                             <for silentFailure='true' index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param_length`' >\r
100                                 <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$i].resource-resolution-data.capability-name == $ss.capability-name`'>\r
101                                     <outcome value='true'>\r
102                                         <switch test="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$i].resource-resolution-data.resource-key_length == ''`">\r
103                                             <outcome value='false'>\r
104                                                 <for silentFailure='true' index='j' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$i].resource-resolution-data.resource-key_length`' >\r
105                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains'  emitsOutcome='true' >\r
106                                                         <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[$i].resource-resolution-data.resource-key[$j].value`" />\r
107                                                         <parameter name="target" value="$"/>\r
108                                                         <outcome value='true'>\r
109                                                             <block atomic='true'>\r
110                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
111                                                                     <parameter name="logger" value="message-log"/>\r
112                                                                     <parameter name="field1" value="`'SS: param[].value with leading $: ' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$i].resource-resolution-data.resource-key[$j].value`"/>\r
113                                                                 </record>\r
114                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>\r
115                                                                     <parameter name='ctx_memory_result_key' value='resource-resolution-split' />\r
116                                                                     <parameter name='original_string' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$i].resource-resolution-data.resource-key[$j].value`' />\r
117                                                                     <parameter name='regex' value='\$\{' />\r
118                                                                 </execute>\r
119                                                                 <set>\r
120                                                                     <parameter name="tmp.s1" value='`$resource-resolution-split[0]`'/>\r
121                                                                     <parameter name="tmp.s2.s2" value=''/>\r
122                                                                     <parameter name="tmp.resolved.var.value" value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$i].resource-resolution-data.resource-key[$j].value`'/>\r
123                                                                 </set>\r
124                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>\r
125                                                                     <parameter name='ctx_memory_result_key' value='s2' />\r
126                                                                     <parameter name='original_string' value='`$resource-resolution-split[1]`' />\r
127                                                                     <parameter name='regex' value='\}' />\r
128                                                                 </execute>\r
129                                                                 <switch test='`$s2_length`'>\r
130                                                                     <outcome value='1'>\r
131                                                                         <set>\r
132                                                                             <parameter name="tmp.s2.s1" value='`$s2[0]`'/>\r
133                                                                         </set>\r
134                                                                     </outcome>\r
135                                                                     <outcome value='2'>\r
136                                                                         <block>\r
137                                                                             <set>\r
138                                                                                 <parameter name="tmp.s2.s1" value='`$s2[0]`'/>\r
139                                                                             </set>\r
140                                                                             <set>\r
141                                                                                 <parameter name="tmp.s2.s2" value='`$s2[1]`'/>\r
142                                                                             </set>\r
143                                                                         </block>\r
144                                                                     </outcome>\r
145                                                                 </switch>\r
146                                                                 <for silentFailure='true' index='cn' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param_length`' >\r
147                                                                     <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$cn].name == $tmp.s2.s1`'>\r
148                                                                         <outcome value='true'>\r
149                                                                             <set>\r
150                                                                                 <parameter name='tmp.resolved.var.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[$cn].value`'/>\r
151                                                                             </set>\r
152                                                                         </outcome>\r
153                                                                     </switch>\r
154                                                                 </for>\r
155                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat'>\r
156                                                                     <parameter name='source' value='`$tmp.s1`' />\r
157                                                                     <parameter name='target' value='`$tmp.resolved.var.value`' />\r
158                                                                     <parameter name='outputPath' value='tmp.result' />\r
159                                                                 </execute>\r
160                                                                 <switch test="`$tmp.s2.s2 == ''`">\r
161                                                                     <outcome value='true'></outcome>\r
162                                                                     <outcome value='false'>\r
163                                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat'>\r
164                                                                             <parameter name='source' value='`$tmp.result`' />\r
165                                                                             <parameter name='target' value='`$tmp.s2.s2`' />\r
166                                                                             <parameter name='outputPath' value='tmp.result' />\r
167                                                                         </execute>\r
168                                                                     </outcome>\r
169                                                                 </switch>\r
170                                                                 <set>\r
171                                                                     <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$i].resource-resolution-data.resource-key[$j].value`' value='`$tmp.result`'/>\r
172                                                                 </set>\r
173                                                             </block>\r
174                                                         </outcome>\r
175                                                     </execute>\r
176                                                 </for>\r
177                                             </outcome>\r
178                                         </switch>\r
179                                     </outcome>\r
180                                 </switch>\r
181                             </for>\r
182                         </outcome>\r
183                     </switch>\r
184                 </outcome>\r
185                 <outcome value='pnf'>\r
186                     <switch test="`$service-data.pnfs.pnf[$pnf-index].pnf-data.pnf-topology.pnf-parameters-data.param_length == ''`">\r
187                         <outcome value='false'>\r
188                             <for silentFailure='true' index='i' start='0' end='`$service-data.pnfs.pnf[$pnf-index].pnf-data.pnf-topology.pnf-parameters-data.param_length`' >\r
189                                 <switch test='`$service-data.pnfs.pnf[$pnf-index].pnf-data.pnf-topology.pnf-parameters-data.param[$i].resource-resolution-data.capability-name == $ss.capability-name`'>\r
190                                     <outcome value='true'>\r
191                                         <switch test="`$service-data.pnfs.pnf[$pnf-index].pnf-data.pnf-topology.pnf-parameters-data.param[$i].resource-resolution-data.resource-key_length == ''`">\r
192                                             <outcome value='false'>\r
193                                                 <for silentFailure='true' index='j' start='0' end='`$service-data.pnfs.pnf[$pnf-index].pnf-data.pnf-topology.pnf-parameters-data.param[$i].resource-resolution-data.resource-key_length`' >\r
194                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains'  emitsOutcome='true' >\r
195                                                         <parameter name="source" value="`$service-data.pnfs.pnf[$pnf-index].pnf-data.pnf-topology.pnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].value`" />\r
196                                                         <parameter name="target" value="$"/>\r
197                                                         <outcome value='true'>\r
198                                                             <block atomic='true'>\r
199                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
200                                                                     <parameter name="logger" value="message-log"/>\r
201                                                                     <parameter name="field1" value="`'SS: param[].value with leading $: ' + $service-data.pnfs.pnf[$pnf-index].pnf-data.pnf-topology.pnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].value`"/>\r
202                                                                 </record>\r
203                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>\r
204                                                                     <parameter name='ctx_memory_result_key' value='resource-resolution-split' />\r
205                                                                     <parameter name='original_string' value='`$service-data.pnfs.pnf[$pnf-index].pnf-data.pnf-topology.pnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].value`' />\r
206                                                                     <parameter name='regex' value='\$\{' />\r
207                                                                 </execute>\r
208                                                                 <set>\r
209                                                                     <parameter name="tmp.s1" value='`$resource-resolution-split[0]`'/>\r
210                                                                     <parameter name="tmp.s2.s2" value=''/>\r
211                                                                     <parameter name="tmp.resolved.var.value" value='`$service-data.pnfs.pnf[$pnf-index].pnf-data.pnf-topology.pnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].value`'/>\r
212                                                                 </set>\r
213                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>\r
214                                                                     <parameter name='ctx_memory_result_key' value='s2' />\r
215                                                                     <parameter name='original_string' value='`$resource-resolution-split[1]`' />\r
216                                                                     <parameter name='regex' value='\}' />\r
217                                                                 </execute>\r
218                                                                 <switch test='`$s2_length`'>\r
219                                                                     <outcome value='1'>\r
220                                                                         <set>\r
221                                                                             <parameter name="tmp.s2.s1" value='`$s2[0]`'/>\r
222                                                                         </set>\r
223                                                                     </outcome>\r
224                                                                     <outcome value='2'>\r
225                                                                         <block>\r
226                                                                             <set>\r
227                                                                                 <parameter name="tmp.s2.s1" value='`$s2[0]`'/>\r
228                                                                             </set>\r
229                                                                             <set>\r
230                                                                                 <parameter name="tmp.s2.s2" value='`$s2[1]`'/>\r
231                                                                             </set>\r
232                                                                         </block>\r
233                                                                     </outcome>\r
234                                                                 </switch>\r
235                                                                 <for silentFailure='true' index='cn' start='0' end='`$service-data.pnfs.pnf[$pnf-index].pnf-data.pnf-topology.pnf-parameters-data.param_length`' >\r
236                                                                     <switch test='`$service-data.pnfs.pnf[$pnf-index].pnf-data.pnf-topology.pnf-parameters-data.param[$cn].name == $tmp.s2.s1`'>\r
237                                                                         <outcome value='true'>\r
238                                                                             <set>\r
239                                                                                 <parameter name='tmp.resolved.var.value' value='`$service-data.pnfs.pnf[$pnf-index].pnf-data.pnf-topology.pnf-parameters-data.param[$cn].value`'/>\r
240                                                                             </set>\r
241                                                                         </outcome>\r
242                                                                     </switch>\r
243                                                                 </for>\r
244                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat'>\r
245                                                                     <parameter name='source' value='`$tmp.s1`' />\r
246                                                                     <parameter name='target' value='`$tmp.resolved.var.value`' />\r
247                                                                     <parameter name='outputPath' value='tmp.result' />\r
248                                                                 </execute>\r
249                                                                 <switch test="`$tmp.s2.s2 == ''`">\r
250                                                                     <outcome value='true'></outcome>\r
251                                                                     <outcome value='false'>\r
252                                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat'>\r
253                                                                             <parameter name='source' value='`$tmp.result`' />\r
254                                                                             <parameter name='target' value='`$tmp.s2.s2`' />\r
255                                                                             <parameter name='outputPath' value='tmp.result' />\r
256                                                                         </execute>\r
257                                                                     </outcome>\r
258                                                                 </switch>\r
259                                                                 <set>\r
260                                                                     <parameter name='`service-data.pnfs.pnf[$pnf-index].pnf-data.pnf-topology.pnf-parameters-data.param[$i].resource-resolution-data.resource-key[$j].value`' value='`$tmp.result`'/>\r
261                                                                 </set>\r
262                                                             </block>\r
263                                                         </outcome>\r
264                                                     </execute>\r
265                                                 </for>\r
266                                             </outcome>\r
267                                         </switch>\r
268                                     </outcome>\r
269                                 </switch>\r
270                             </for>\r
271                         </outcome>\r
272                     </switch>\r
273                 </outcome>\r
274             </switch>\r
275             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
276                 <parameter name="logger" value="message-log"/>\r
277                 <parameter name="field1" value="DONE: self-serve-capability-param-resolution"/>\r
278             </record>\r
279         </block>\r
280     </method>\r
281 </service-logic>