Fix underlay DG testing issue
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_validate-network-input-parameters.xml
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 <service-logic xmlns="http://www.onap.org/sdnc/svclogic" 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
3     <method rpc="validate-network-input-parameters" mode="sync">\r
4         <block atomic="true">\r
5             <switch test="`$network-topology-operation-input.sdnc-request-header.svc-action`">\r
6                 <outcome value="">\r
7                     <return status="failure">\r
8                         <parameter name="ack-final" value="Y" />\r
9                         <parameter name="error-code" value="500" />\r
10                         <parameter name="error-message" value="sdnc-request-header.svc-request-id is a required input" />\r
11                     </return>\r
12                 </outcome>\r
13             </switch>\r
14             <switch test="`$network-topology-operation-input.sdnc-request-header.svc-action`">\r
15                 <outcome value="create">\r
16                     <block atomic="true">\r
17                         <switch test="`$network-topology-operation-input.request-information.request-action`">\r
18                             <outcome value="CreateNetworkInstance">\r
19                                 <block atomic="true">\r
20                                     <for index="i" start="0" end="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`">\r
21                                         <block>\r
22                                             <set>\r
23                                                 <parameter name="tmp.name" value="" />\r
24                                                 <parameter name="tmp.value" value="" />\r
25                                             </set>\r
26                                             <set>\r
27                                                 <parameter name="tmp.name" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$i].name`" />\r
28                                                 <parameter name="tmp.value" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$i].value`" />\r
29                                             </set>\r
30                                             <switch test="`$tmp.name`">\r
31                                                 <outcome value="name">\r
32                                                     <switch test="`$tmp.value`">\r
33                                                         <outcome value="">\r
34                                                             <return status="failure">\r
35                                                                 <parameter name="ack-final" value="Y" />\r
36                                                                 <parameter name="error-code" value="500" />\r
37                                                                 <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
38                                                             </return>\r
39                                                         </outcome>\r
40                                                     </switch>\r
41                                                 </outcome>\r
42                                                 <outcome value="service-type">\r
43                                                     <switch test="`$tmp.value`">\r
44                                                         <outcome value="">\r
45                                                             <return status="failure">\r
46                                                                 <parameter name="ack-final" value="Y" />\r
47                                                                 <parameter name="error-code" value="500" />\r
48                                                                 <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
49                                                             </return>\r
50                                                         </outcome>\r
51                                                     </switch>\r
52                                                 </outcome>\r
53                                                 <outcome value="site1-name">\r
54                                                     <switch test="`$tmp.value`">\r
55                                                         <outcome value="">\r
56                                                             <return status="failure">\r
57                                                                 <parameter name="ack-final" value="Y" />\r
58                                                                 <parameter name="error-code" value="500" />\r
59                                                                 <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
60                                                             </return>\r
61                                                         </outcome>\r
62                                                     </switch>\r
63                                                 </outcome>\r
64                                                 <outcome value="site2-name">\r
65                                                     <switch test="`$tmp.value`">\r
66                                                         <outcome value="">\r
67                                                             <return status="failure">\r
68                                                                 <parameter name="ack-final" value="Y" />\r
69                                                                 <parameter name="error-code" value="500" />\r
70                                                                 <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
71                                                             </return>\r
72                                                         </outcome>\r
73                                                     </switch>\r
74                                                 </outcome>\r
75                                                 <outcome value="sna1_name">\r
76                                                     <switch test="`$tmp.value`">\r
77                                                         <outcome value="">\r
78                                                             <return status="failure">\r
79                                                                 <parameter name="ack-final" value="Y" />\r
80                                                                 <parameter name="error-code" value="500" />\r
81                                                                 <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
82                                                             </return>\r
83                                                         </outcome>\r
84                                                     </switch>\r
85                                                 </outcome>\r
86                                                 <outcome value="sna2_name">\r
87                                                     <switch test="`$tmp.value`">\r
88                                                         <outcome value="">\r
89                                                             <return status="failure">\r
90                                                                 <parameter name="ack-final" value="Y" />\r
91                                                                 <parameter name="error-code" value="500" />\r
92                                                                 <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
93                                                             </return>\r
94                                                         </outcome>\r
95                                                     </switch>\r
96                                                 </outcome>\r
97                                                 <outcome value="pe1_id">\r
98                                                     <switch test="`$tmp.value`">\r
99                                                         <outcome value="">\r
100                                                             <return status="failure">\r
101                                                                 <parameter name="ack-final" value="Y" />\r
102                                                                 <parameter name="error-code" value="500" />\r
103                                                                 <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
104                                                             </return>\r
105                                                         </outcome>\r
106                                                     </switch>\r
107                                                 </outcome>\r
108                                                 <outcome value="pe2_id">\r
109                                                     <switch test="`$tmp.value`">\r
110                                                         <outcome value="">\r
111                                                             <return status="failure">\r
112                                                                 <parameter name="ack-final" value="Y" />\r
113                                                                 <parameter name="error-code" value="500" />\r
114                                                                 <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
115                                                             </return>\r
116                                                         </outcome>\r
117                                                     </switch>\r
118                                                 </outcome>\r
119                                                 <outcome value="ac1-id">\r
120                                                     <switch test="`$tmp.value`">\r
121                                                         <outcome value="">\r
122                                                             <return status="failure">\r
123                                                                 <parameter name="ack-final" value="Y" />\r
124                                                                 <parameter name="error-code" value="500" />\r
125                                                                 <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
126                                                             </return>\r
127                                                         </outcome>\r
128                                                     </switch>\r
129                                                 </outcome>\r
130                                                 <outcome value="ac2-id">\r
131                                                     <switch test="`$tmp.value`">\r
132                                                         <outcome value="">\r
133                                                             <return status="failure">\r
134                                                                 <parameter name="ack-final" value="Y" />\r
135                                                                 <parameter name="error-code" value="500" />\r
136                                                                 <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
137                                                             </return>\r
138                                                         </outcome>\r
139                                                     </switch>\r
140                                                 </outcome>\r
141                                                 <outcome value="ac1-ip">\r
142                                                     <switch test="`$tmp.value`">\r
143                                                         <outcome value="">\r
144                                                             <return status="failure">\r
145                                                                 <parameter name="ack-final" value="Y" />\r
146                                                                 <parameter name="error-code" value="500" />\r
147                                                                 <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
148                                                             </return>\r
149                                                         </outcome>\r
150                                                     </switch>\r
151                                                 </outcome>\r
152                                                 <outcome value="ac2-ip">\r
153                                                     <switch test="`$tmp.value`">\r
154                                                         <outcome value="">\r
155                                                             <return status="failure">\r
156                                                                 <parameter name="ack-final" value="Y" />\r
157                                                                 <parameter name="error-code" value="500" />\r
158                                                                 <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
159                                                             </return>\r
160                                                         </outcome>\r
161                                                     </switch>\r
162                                                 </outcome>\r
163                                                 <outcome value="ac1_peer_ip">\r
164                                                     <switch test="`$tmp.value`">\r
165                                                         <outcome value="">\r
166                                                             <return status="failure">\r
167                                                                 <parameter name="ack-final" value="Y" />\r
168                                                                 <parameter name="error-code" value="500" />\r
169                                                                 <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
170                                                             </return>\r
171                                                         </outcome>\r
172                                                     </switch>\r
173                                                 </outcome>\r
174                                                 <outcome value="ac2_peer_ip">\r
175                                                     <switch test="`$tmp.value`">\r
176                                                         <outcome value="">\r
177                                                             <return status="failure">\r
178                                                                 <parameter name="ack-final" value="Y" />\r
179                                                                 <parameter name="error-code" value="500" />\r
180                                                                 <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
181                                                             </return>\r
182                                                         </outcome>\r
183                                                     </switch>\r
184                                                 </outcome>\r
185                                                 <outcome value="ac1_svlan">\r
186                                                     <switch test="`$tmp.value`">\r
187                                                         <outcome value="">\r
188                                                             <return status="failure">\r
189                                                                 <parameter name="ack-final" value="Y" />\r
190                                                                 <parameter name="error-code" value="500" />\r
191                                                                 <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
192                                                             </return>\r
193                                                         </outcome>\r
194                                                     </switch>\r
195                                                 </outcome>\r
196                                                 <outcome value="ac2_svlan">\r
197                                                     <switch test="`$tmp.value`">\r
198                                                         <outcome value="">\r
199                                                             <return status="failure">\r
200                                                                 <parameter name="ack-final" value="Y" />\r
201                                                                 <parameter name="error-code" value="500" />\r
202                                                                 <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
203                                                             </return>\r
204                                                         </outcome>\r
205                                                     </switch>\r
206                                                 </outcome>\r
207                                                 <outcome value="">\r
208                                                     <return status="failure">\r
209                                                         <parameter name="ack-final" value="Y" />\r
210                                                         <parameter name="error-code" value="500" />\r
211                                                         <parameter name="error-message" value="`'network-topology-operation-input.network-request-input.network-input-parameters.param[' + $i + ']' + '.name is a required input'`" />\r
212                                                     </return>\r
213                                                 </outcome>\r
214                                             </switch>\r
215                                         </block>\r
216                                     </for>\r
217                                 </block>\r
218                             </outcome>\r
219                             <outcome value="Other">\r
220                                 <return status="failure">\r
221                                     <parameter name="ack-final" value="Y" />\r
222                                     <parameter name="error-code" value="500" />\r
223                                     <parameter name="error-message" value="request-information.request-action is required to be CreateNetworkInstance for svc-action=create" />\r
224                                 </return>\r
225                             </outcome>\r
226                         </switch>\r
227                     </block>\r
228                 </outcome>\r
229                 <outcome value="activate">\r
230                     <switch test="`$network-topology-operation-input.request-information.request-action`">\r
231                         <outcome value="ActivateDCINetworkInstance">\r
232                             <block atomic="true">\r
233                                 <call module="GENERIC-RESOURCE-API" rpc="validate-overlay-network-input-parameters" mode="sync" />\r
234                             </block>\r
235                         </outcome>\r
236                         <outcome value="Other">\r
237                             <return status="failure">\r
238                                 <parameter name="ack-final" value="Y" />\r
239                                 <parameter name="error-code" value="500" />\r
240                                 <parameter name="error-message" value="request-information.request-action is required to be ActivateNetworkInstance for svc-action=activate" />\r
241                             </return>\r
242                         </outcome>\r
243                     </switch>\r
244                 </outcome>\r
245                 <outcome value="deactivate">\r
246                     <switch test="`$network-topology-operation-input.request-information.request-action`">\r
247                         <outcome value="DeActivateDCINetworkInstance">\r
248                             <block atomic="true">\r
249                                 <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="requiredParameters">\r
250                                     <parameter name="$network-topology-operation-input.network-information.network-id" value="" />\r
251                                 </execute>\r
252                                 <switch test="`$network-topology-operation-input.network-information.network-id`">\r
253                                     <outcome value="">\r
254                                         <return status="failure">\r
255                                             <parameter name="ack-final" value="Y" />\r
256                                             <parameter name="error-code" value="500" />\r
257                                             <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
258                                         </return>\r
259                                     </outcome>\r
260                                 </switch>\r
261                             </block>\r
262                         </outcome>\r
263                         <outcome value="Other">\r
264                             <return status="failure">\r
265                                 <parameter name="ack-final" value="Y" />\r
266                                 <parameter name="error-code" value="500" />\r
267                                 <parameter name="error-message" value="request-information.request-action is required to be DeactivateNetworkInstance for svc-action=deactivate" />\r
268                             </return>\r
269                         </outcome>\r
270                     </switch>\r
271                 </outcome>\r
272                 <outcome value="delete">\r
273                     <block atomic="true">\r
274                         <switch test="`$network-topology-operation-input.request-information.request-action`">\r
275                             <outcome value="DeleteNetworkInstance">\r
276                                 <block atomic="true">\r
277                                     <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="requiredParameters">\r
278                                         <parameter name="network-topology-operation-input.network-information.network-id" value="$network-topology-operation-input.network-information.network-id" />\r
279                                     </execute>\r
280                                     <switch test="`$network-topology-operation-input.network-information.network-id`">\r
281                                         <outcome value="">\r
282                                             <return status="failure">\r
283                                                 <parameter name="ack-final" value="Y" />\r
284                                                 <parameter name="error-code" value="500" />\r
285                                                 <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
286                                             </return>\r
287                                         </outcome>\r
288                                     </switch>\r
289                                 </block>\r
290                             </outcome>\r
291                             <outcome value="Other">\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="request-information.request-action is required to be DeleteNetworkInstance for svc-action=delete" />\r
296                                 </return>\r
297                             </outcome>\r
298                         </switch>\r
299                     </block>\r
300                 </outcome>\r
301                 <outcome value="Other">\r
302                     <return status="failure">\r
303                         <parameter name="ack-final" value="Y" />\r
304                         <parameter name="error-code" value="500" />\r
305                         <parameter name="error-message" value="`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`" />\r
306                     </return>\r
307                 </outcome>\r
308             </switch>\r
309         </block>\r
310     </method>\r
311 </service-logic>\r