Update DG validate-network-input-parameters
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_validate-network-input-parameters.xml
1 <service-logic\r
2                 xmlns='http://www.openecomp.org/sdnc/svclogic'\r
3                 xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>\r
4         <method rpc='validate-network-input-parameters' mode='sync'>\r
5                 <block atomic="true">\r
6                         <switch test='`$network-topology-operation-input.sdnc-request-header.svc-action`'>\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="sdnc-request-header.svc-request-id is a required input" />\r
12                                         </return>\r
13                                 </outcome>\r
14                         </switch>\r
15                         <switch test='`$service-topology-operation-input.sdnc-request-header.svc-action`'>\r
16                                 <outcome value='assign'>\r
17                                         <block atomic="true">\r
18                                                 <switch test='`$network-topology-operation-input.request-information.request-action`'>\r
19                                                         <outcome value='CreateNetworkInstance'>\r
20                                                                 <block atomic="true">\r
21                                                                         <for index="i" start="0" end="`$network-topology-information.network-request-input.network-input-parameters.param_length`">\r
22                                                                                 <block>\r
23                                                                                         <set>\r
24                                                                                                 <parameter name='tmp.name' value='' />\r
25                                                                                                 <parameter name='tmp.value' value='' />\r
26                                                                                         </set>\r
27                                                                                         <set>\r
28                                                                                                 <parameter name='tmp.name' value="'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].name'"/>\r
29                                                                                                 <parameter name='tmp.value' value="'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].value'"/>\r
30                                                                                         </set>\r
31                                                                                         <switch test="'$tmp.name'">\r
32                                                                                                 <outcome value='name'>\r
33                                                                                                         <switch test="`$tmp.value`">\r
34                                                                                                                 <outcome value=''>\r
35                                                                                                                         <return status='failure'>\r
36                                                                                                                                 <parameter name='ack-final' value='Y'/>\r
37                                                                                                                                 <parameter name="error-code" value="500" />\r
38                                                                                                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
39                                                                                                                         </return>\r
40                                                                                                                 </outcome>\r
41                                                                                                         </switch>\r
42                                                                                                 </outcome>\r
43                                                                                                 <outcome value='service-type'>\r
44                                                                                                         <switch test="`$tmp.value`">\r
45                                                                                                                 <outcome value=''>\r
46                                                                                                                         <return status='failure'>\r
47                                                                                                                                 <parameter name='ack-final' value='Y'/>\r
48                                                                                                                                 <parameter name="error-code" value="500" />\r
49                                                                                                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
50                                                                                                                         </return>\r
51                                                                                                                 </outcome>\r
52                                                                                                         </switch>\r
53                                                                                                 </outcome>\r
54                                                                                                 <outcome value='site1-name'>\r
55                                                                                                         <switch test="`$tmp.value`">\r
56                                                                                                                 <outcome value=''>\r
57                                                                                                                         <return status='failure'>\r
58                                                                                                                                 <parameter name='ack-final' value='Y'/>\r
59                                                                                                                                 <parameter name="error-code" value="500" />\r
60                                                                                                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
61                                                                                                                         </return>\r
62                                                                                                                 </outcome>\r
63                                                                                                         </switch>\r
64                                                                                                 </outcome>\r
65                                                                                                 <outcome value='site2-name'>\r
66                                                                                                         <switch test="`$tmp.value`">\r
67                                                                                                                 <outcome value=''>\r
68                                                                                                                         <return status='failure'>\r
69                                                                                                                                 <parameter name='ack-final' value='Y'/>\r
70                                                                                                                                 <parameter name="error-code" value="500" />\r
71                                                                                                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
72                                                                                                                         </return>\r
73                                                                                                                 </outcome>\r
74                                                                                                         </switch>\r
75                                                                                                 </outcome>\r
76                                                                                                 <outcome value='sna1_name'>\r
77                                                                                                         <switch test="`$tmp.value`">\r
78                                                                                                                 <outcome value=''>\r
79                                                                                                                         <return status='failure'>\r
80                                                                                                                                 <parameter name='ack-final' value='Y'/>\r
81                                                                                                                                 <parameter name="error-code" value="500" />\r
82                                                                                                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
83                                                                                                                         </return>\r
84                                                                                                                 </outcome>\r
85                                                                                                         </switch>\r
86                                                                                                 </outcome>\r
87                                                                                                 <outcome value='sna2_name'>\r
88                                                                                                         <switch test="`$tmp.value`">\r
89                                                                                                                 <outcome value=''>\r
90                                                                                                                         <return status='failure'>\r
91                                                                                                                                 <parameter name='ack-final' value='Y'/>\r
92                                                                                                                                 <parameter name="error-code" value="500" />\r
93                                                                                                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
94                                                                                                                         </return>\r
95                                                                                                                 </outcome>\r
96                                                                                                         </switch>\r
97                                                                                                 </outcome>\r
98                                                                                                 <outcome value='pe1_id'>\r
99                                                                                                         <switch test="`$tmp.value`">\r
100                                                                                                                 <outcome value=''>\r
101                                                                                                                         <return status='failure'>\r
102                                                                                                                                 <parameter name='ack-final' value='Y'/>\r
103                                                                                                                                 <parameter name="error-code" value="500" />\r
104                                                                                                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
105                                                                                                                         </return>\r
106                                                                                                                 </outcome>\r
107                                                                                                         </switch>\r
108                                                                                                 </outcome>\r
109                                                                                                 <outcome value='pe2_id'>\r
110                                                                                                         <switch test="`$tmp.value`">\r
111                                                                                                                 <outcome value=''>\r
112                                                                                                                         <return status='failure'>\r
113                                                                                                                                 <parameter name='ack-final' value='Y'/>\r
114                                                                                                                                 <parameter name="error-code" value="500" />\r
115                                                                                                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
116                                                                                                                         </return>\r
117                                                                                                                 </outcome>\r
118                                                                                                         </switch>\r
119                                                                                                 </outcome>\r
120                                                                                                 <outcome value='ac1-id'>\r
121                                                                                                         <switch test="`$tmp.value`">\r
122                                                                                                                 <outcome value=''>\r
123                                                                                                                         <return status='failure'>\r
124                                                                                                                                 <parameter name='ack-final' value='Y'/>\r
125                                                                                                                                 <parameter name="error-code" value="500" />\r
126                                                                                                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
127                                                                                                                         </return>\r
128                                                                                                                 </outcome>\r
129                                                                                                         </switch>\r
130                                                                                                 </outcome>\r
131                                                                                                 <outcome value='ac2-id'>\r
132                                                                                                         <switch test="`$tmp.value`">\r
133                                                                                                                 <outcome value=''>\r
134                                                                                                                         <return status='failure'>\r
135                                                                                                                                 <parameter name='ack-final' value='Y'/>\r
136                                                                                                                                 <parameter name="error-code" value="500" />\r
137                                                                                                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
138                                                                                                                         </return>\r
139                                                                                                                 </outcome>\r
140                                                                                                         </switch>\r
141                                                                                                 </outcome>\r
142                                                                                                 <outcome value='ac1-ip'>\r
143                                                                                                         <switch test="`$tmp.value`">\r
144                                                                                                                 <outcome value=''>\r
145                                                                                                                         <return status='failure'>\r
146                                                                                                                                 <parameter name='ack-final' value='Y'/>\r
147                                                                                                                                 <parameter name="error-code" value="500" />\r
148                                                                                                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
149                                                                                                                         </return>\r
150                                                                                                                 </outcome>\r
151                                                                                                         </switch>\r
152                                                                                                 </outcome>\r
153                                                                                                 <outcome value='ac2-ip'>\r
154                                                                                                         <switch test="`$tmp.value`">\r
155                                                                                                                 <outcome value=''>\r
156                                                                                                                         <return status='failure'>\r
157                                                                                                                                 <parameter name='ack-final' value='Y'/>\r
158                                                                                                                                 <parameter name="error-code" value="500" />\r
159                                                                                                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
160                                                                                                                         </return>\r
161                                                                                                                 </outcome>\r
162                                                                                                         </switch>\r
163                                                                                                 </outcome>\r
164                                                                                                 <outcome value='ac1_peer_ip'>\r
165                                                                                                         <switch test="`$tmp.value`">\r
166                                                                                                                 <outcome value=''>\r
167                                                                                                                         <return status='failure'>\r
168                                                                                                                                 <parameter name='ack-final' value='Y'/>\r
169                                                                                                                                 <parameter name="error-code" value="500" />\r
170                                                                                                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
171                                                                                                                         </return>\r
172                                                                                                                 </outcome>\r
173                                                                                                         </switch>\r
174                                                                                                 </outcome>\r
175                                                                                                 <outcome value='ac2_peer_ip'>\r
176                                                                                                         <switch test="`$tmp.value`">\r
177                                                                                                                 <outcome value=''>\r
178                                                                                                                         <return status='failure'>\r
179                                                                                                                                 <parameter name='ack-final' value='Y'/>\r
180                                                                                                                                 <parameter name="error-code" value="500" />\r
181                                                                                                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
182                                                                                                                         </return>\r
183                                                                                                                 </outcome>\r
184                                                                                                         </switch>\r
185                                                                                                 </outcome>\r
186                                                                                                 <outcome value='ac1_svlan'>\r
187                                                                                                         <switch test="`$tmp.value`">\r
188                                                                                                                 <outcome value=''>\r
189                                                                                                                         <return status='failure'>\r
190                                                                                                                                 <parameter name='ack-final' value='Y'/>\r
191                                                                                                                                 <parameter name="error-code" value="500" />\r
192                                                                                                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
193                                                                                                                         </return>\r
194                                                                                                                 </outcome>\r
195                                                                                                         </switch>\r
196                                                                                                 </outcome>\r
197                                                                                                 <outcome value='ac2_svlan'>\r
198                                                                                                         <switch test="`$tmp.value`">\r
199                                                                                                                 <outcome value=''>\r
200                                                                                                                         <return status='failure'>\r
201                                                                                                                                 <parameter name='ack-final' value='Y'/>\r
202                                                                                                                                 <parameter name="error-code" value="500" />\r
203                                                                                                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
204                                                                                                                         </return>\r
205                                                                                                                 </outcome>\r
206                                                                                                         </switch>\r
207                                                                                                 </outcome>\r
208                                                                                                 <outcome value=''>\r
209                                                                                                         <return status='failure'>\r
210                                                                                                                 <parameter name='ack-final' value='Y'/>\r
211                                                                                                                 <parameter name="error-code" value="500" />\r
212                                                                                                                 <parameter name="error-message" value="`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`" />\r
213                                                                                                         </return>\r
214                                                                                                 </outcome>\r
215                                                                                         </switch>\r
216                                                                                 </block>\r
217                                                                         </for>\r
218                                                                 </block>\r
219                                                         </outcome>\r
220                                                         <outcome value='Other'>\r
221                                                                 <return status='failure'>\r
222                                                                         <parameter name='ack-final' value='Y'/>\r
223                                                                         <parameter name="error-code" value="500" />\r
224                                                                         <parameter name="error-message" value="request-information.request-action is required to be CreateNetworkInstance for svc-action=assign" />\r
225                                                                 </return>\r
226                                                         </outcome>\r
227                                                 </switch>\r
228                                         </block>\r
229                                 </outcome>\r
230                                 <outcome value='activate'>\r
231                                         <switch test='`$network-topology-operation-input.request-information.request-action`'>\r
232                                                 <outcome value='ActivateNetworkInstance'>\r
233                                                         <block atomic="true">\r
234                                                                 <for index="i" start="0" end="`$network-topology-information.network-request-input.network-input-parameters.param_length`">\r
235                                                                         <block>\r
236                                                                                 <set>\r
237                                                                                         <parameter name='tmp.name' value='' />\r
238                                                                                         <parameter name='tmp.value' value='' />\r
239                                                                                 </set>\r
240                                                                                 <set>\r
241                                                                                         <parameter name='tmp.name' value="'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].name'"/>\r
242                                                                                         <parameter name='tmp.value' value="'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].value'"/>\r
243                                                                                 </set>\r
244                                                                                 <switch test="'$tmp.name'">\r
245                                                                                         <outcome value='name'>\r
246                                                                                                 <switch test="`$tmp.value`">\r
247                                                                                                         <outcome value=''>\r
248                                                                                                                 <return status='failure'>\r
249                                                                                                                         <parameter name='ack-final' value='Y'/>\r
250                                                                                                                         <parameter name="error-code" value="500" />\r
251                                                                                                                         <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
252                                                                                                                 </return>\r
253                                                                                                         </outcome>\r
254                                                                                                 </switch>\r
255                                                                                         </outcome>\r
256                                                                                         <outcome value='description'>\r
257                                                                                                 <switch test="`$tmp.value`">\r
258                                                                                                         <outcome value=''>\r
259                                                                                                                 <return status='failure'>\r
260                                                                                                                         <parameter name='ack-final' value='Y'/>\r
261                                                                                                                         <parameter name="error-code" value="500" />\r
262                                                                                                                         <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
263                                                                                                                 </return>\r
264                                                                                                         </outcome>\r
265                                                                                                 </switch>\r
266                                                                                         </outcome>\r
267                                                                                         <outcome value='router_id'>\r
268                                                                                                 <switch test="`$tmp.value`">\r
269                                                                                                         <outcome value=''>\r
270                                                                                                                 <return status='failure'>\r
271                                                                                                                         <parameter name='ack-final' value='Y'/>\r
272                                                                                                                         <parameter name="error-code" value="500" />\r
273                                                                                                                         <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
274                                                                                                                 </return>\r
275                                                                                                         </outcome>\r
276                                                                                                 </switch>\r
277                                                                                         </outcome>\r
278                                                                                         <outcome value='local_networks'>\r
279                                                                                                 <switch test="`$tmp.value`">\r
280                                                                                                         <outcome value=''>\r
281                                                                                                                 <return status='failure'>\r
282                                                                                                                         <parameter name='ack-final' value='Y'/>\r
283                                                                                                                         <parameter name="error-code" value="500" />\r
284                                                                                                                         <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
285                                                                                                                 </return>\r
286                                                                                                         </outcome>\r
287                                                                                                 </switch>\r
288                                                                                         </outcome>\r
289                                                                                         <outcome value='evpn_irts'>\r
290                                                                                                 <switch test="`$tmp.value`">\r
291                                                                                                         <outcome value=''>\r
292                                                                                                                 <return status='failure'>\r
293                                                                                                                         <parameter name='ack-final' value='Y'/>\r
294                                                                                                                         <parameter name="error-code" value="500" />\r
295                                                                                                                         <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
296                                                                                                                 </return>\r
297                                                                                                         </outcome>\r
298                                                                                                 </switch>\r
299                                                                                         </outcome>\r
300                                                                                         <outcome value='evpn_erts'>\r
301                                                                                                 <switch test="`$tmp.value`">\r
302                                                                                                         <outcome value=''>\r
303                                                                                                                 <return status='failure'>\r
304                                                                                                                         <parameter name='ack-final' value='Y'/>\r
305                                                                                                                         <parameter name="error-code" value="500" />\r
306                                                                                                                         <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
307                                                                                                                 </return>\r
308                                                                                                         </outcome>\r
309                                                                                                 </switch>\r
310                                                                                         </outcome>\r
311                                                                                         <outcome value='l3_vni'>\r
312                                                                                                 <switch test="`$tmp.value`">\r
313                                                                                                         <outcome value=''>\r
314                                                                                                                 <return status='failure'>\r
315                                                                                                                         <parameter name='ack-final' value='Y'/>\r
316                                                                                                                         <parameter name="error-code" value="500" />\r
317                                                                                                                         <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
318                                                                                                                 </return>\r
319                                                                                                         </outcome>\r
320                                                                                                 </switch>\r
321                                                                                         </outcome>\r
322                                                                                 </switch>\r
323                                                                         </block>\r
324                                                                 </for>\r
325                                                         </block>\r
326                                                 </outcome>\r
327                                                 <outcome value='Other'>\r
328                                                         <return status='failure'>\r
329                                                                 <parameter name='ack-final' value='Y'/>\r
330                                                                 <parameter name="error-code" value="500" />\r
331                                                                 <parameter name="error-message" value="request-information.request-action is required to be ActivateNetworkInstance for svc-action=activate" />\r
332                                                         </return>\r
333                                                 </outcome>\r
334                                         </switch>\r
335                                 </outcome>\r
336                                 <outcome value='deactivate'>\r
337                                         <block atomic="true">\r
338                                                 <outcome value='DeactivateNetworkInstance'>\r
339                                                         <block atomic="true">\r
340                                                                 <for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\r
341                                                                         <block>\r
342                                                                                 <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].id == 'id'`">\r
343                                                                                         <outcome value='true'>\r
344                                                                                                 <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`">\r
345                                                                                                         <outcome value=''>\r
346                                                                                                                 <return status='failure'>\r
347                                                                                                                         <parameter name='ack-final' value='Y'/>\r
348                                                                                                                         <parameter name="error-code" value="500" />\r
349                                                                                                                         <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
350                                                                                                                 </return>\r
351                                                                                                         </outcome>\r
352                                                                                                 </switch>\r
353                                                                                         </outcome>\r
354                                                                                 </switch>\r
355                                                                         </block>\r
356                                                                 </for>\r
357                                                         </block>\r
358                                                 </outcome>\r
359                                                 <outcome value='Other'>\r
360                                                         <return status='failure'>\r
361                                                                 <parameter name='ack-final' value='Y'/>\r
362                                                                 <parameter name="error-code" value="500" />\r
363                                                                 <parameter name="error-message" value="request-information.request-action is required to be CreateNetworkInstance for svc-action=assign" />\r
364                                                         </return>\r
365                                                 </outcome>\r
366                                         </block>\r
367                                 </outcome>\r
368                                 <outcome value='Other'>\r
369                                         <return status='failure'>\r
370                                                 <parameter name='ack-final' value='Y'/>\r
371                                                 <parameter name="error-code" value="500" />\r
372                                                 <parameter name="error-message" value="`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`" />\r
373                                         </return>\r
374                                 </outcome>\r
375                                 <outcome value='delete'>\r
376                                         <block atomic="true">\r
377                                                 <outcome value='DeleteNetworkInstance'>\r
378                                                         <block atomic="true">\r
379                                                                 <for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\r
380                                                                         <block>\r
381                                                                                 <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`">\r
382                                                                                         <outcome value='true'>\r
383                                                                                                 <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`">\r
384                                                                                                         <outcome value=''>\r
385                                                                                                                 <return status='failure'>\r
386                                                                                                                         <parameter name='ack-final' value='Y'/>\r
387                                                                                                                         <parameter name="error-code" value="500" />\r
388                                                                                                                         <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
389                                                                                                                 </return>\r
390                                                                                                         </outcome>\r
391                                                                                                 </switch>\r
392                                                                                         </outcome>\r
393                                                                                 </switch>\r
394                                                                         </block>\r
395                                                                 </for>\r
396                                                         </block>\r
397                                                 </outcome>\r
398                                                 <outcome value='Other'>\r
399                                                         <return status='failure'>\r
400                                                                 <parameter name='ack-final' value='Y'/>\r
401                                                                 <parameter name="error-code" value="500" />\r
402                                                                 <parameter name="error-message" value="request-information.request-action is required to be CreateNetworkInstance for svc-action=assign" />\r
403                                                         </return>\r
404                                                 </outcome>\r
405                                         </block>\r
406                                 </outcome>\r
407                         </switch>\r
408                 </block>\r
409         </method>\r
410 </service-logic>