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" mode="sync">
\r
4 <block atomic="true">
\r
5 <switch test="`$network-topology-operation-input.sdnc-request-header.svc-action`">
\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-action is a required input" />
\r
14 <switch test="`$network-topology-operation-input.sdnc-request-header.svc-request-id`">
\r
16 <return status="failure">
\r
17 <parameter name="ack-final" value="Y" />
\r
18 <parameter name="error-code" value="500" />
\r
19 <parameter name="error-message" value="sdnc-request-header.svc-request-id is a required input" />
\r
23 <switch test="`$network-topology-operation-input.request-information.request-action`">
\r
25 <return status="failure">
\r
26 <parameter name="ack-final" value="Y" />
\r
27 <parameter name="error-code" value="500" />
\r
28 <parameter name="error-message" value="request-information.request-action is a required input" />
\r
32 <switch test="`$network-topology-operation-input.service-information.service-instance-id`">
\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="service-information.service-instance-id is a required input" />
\r
41 <switch test="`$network-topology-operation-input.sdnc-request-header.svc-action`">
\r
42 <outcome value="assign">
\r
43 <block atomic="true">
\r
44 <switch test="`$network-topology-operation-input.request-information.request-action`">
\r
45 <outcome value="CreateNetworkInstance">
\r
46 <block atomic="true">
\r
47 <switch test="`$network-topology-operation-input.network-information.network-id`">
\r
48 <outcome value="" />
\r
49 <outcome value="Other">
\r
51 <switch test="`$service-data.networks.network_length`">
\r
53 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
54 <parameter name="logger" value="message-log" />
\r
55 <parameter name="field1" value="__TIMESTAMP__" />
\r
56 <parameter name="field2" value="GENERIC-RESOURCE-API.validate-network-input" />
\r
57 <parameter name="field3" value="`$network-topology-operation-input.sdnc-request-header.svc-request-id`" />
\r
58 <parameter name="field4" value="Network id proveded but no network exists that matches" />
\r
59 <parameter name="field5" value="`$network-topology-operation-input.network-information.network-id`" />
\r
62 <outcome value="Other">
\r
63 <block atomic="true">
\r
64 <for index="nidx" start="0" end="`$service-data.networks.network_length`">
\r
65 <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">
\r
66 <outcome value="true">
\r
67 <block atomic="true">
\r
69 <parameter name="tmp.nidx" value="`$nidx`" />
\r
70 <parameter name="ctx.network-data." value="`$service-data.networks.network[$nidx].`" />
\r
76 <switch test="`$tmp.nidx`">
\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-topology-operation-input.network-request-input.network-id not found in service-data" />
\r
91 <switch test="`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`">
\r
93 <return status="failure">
\r
94 <parameter name="ack-final" value="Y" />
\r
95 <parameter name="error-code" value="500" />
\r
96 <parameter name="error-message" value="network-information.onap-model-information.model-invariant-uuid is a required input" />
\r
100 <switch test="`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`">
\r
102 <return status="failure">
\r
103 <parameter name="ack-final" value="Y" />
\r
104 <parameter name="error-code" value="500" />
\r
105 <parameter name="error-message" value="network-information.onap-model-information.model-customization-uuid is a required input" />
\r
109 <switch test="`$network-topology-operation-input.network-information.onap-model-information.model-uuid`">
\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-information.onap-model-information.model-uuid is a required input" />
\r
118 <switch test="`$network-topology-operation-input.network-request-input.tenant`">
\r
120 <return status="failure">
\r
121 <parameter name="ack-final" value="Y" />
\r
122 <parameter name="error-code" value="500" />
\r
123 <parameter name="error-message" value="network-request-input.tenant is a required input" />
\r
127 <switch test="`$network-topology-operation-input.network-request-input.aic-cloud-region`">
\r
129 <return status="failure">
\r
130 <parameter name="ack-final" value="Y" />
\r
131 <parameter name="error-code" value="500" />
\r
132 <parameter name="error-message" value="service-information.network-request-information.aic-cloud-region is a required input" />
\r
136 <switch test="`$network-topology-operation-input.service-information.onap-model-information.model-uuid`">
\r
138 <block atomic="true">
\r
139 <get-resource plugin="org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource" resource="SQL" key="SELECT * from SERVICE_MODEL WHERE service_uuid = $service-data.service-information.onap-model-information.model-uuid" pfx="service-model">
\r
140 <outcome value="not-found">
\r
141 <return status="failure">
\r
142 <parameter name="ack-final" value="Y" />
\r
143 <parameter name="error-code" value="500" />
\r
144 <parameter name="error-message" value="`'No service model found for service UUID ' + $network-topology-operation-input.service-information.onap-model-information.model-uuid`" />
\r
147 <outcome value="failure">
\r
148 <return status="failure">
\r
149 <parameter name="ack-final" value="Y" />
\r
150 <parameter name="error-code" value="500" />
\r
151 <parameter name="error-message" value="`'No service model found for service UUID ' + $network-topology-operation-input.service-information.onap-model-information.model-uuid`" />
\r
155 <get-resource plugin="org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource" resource="SQL" key="SELECT * from NETWORK_MODEL WHERE customization_uuid = $network-topology-operation-input.network-information.onap-model-information.model-customization-uuid and service_uuid = $service-data.service-information.onap-model-information.model-uuid" pfx="network-model">
\r
156 <outcome value="not-found">
\r
157 <return status="failure">
\r
158 <parameter name="ack-final" value="Y" />
\r
159 <parameter name="error-code" value="500" />
\r
160 <parameter name="error-message" value="`'No network model found for customization UUID ' + $network-topology-operation-input.network-information.onap-model-information.model-customization-uuid + ' and model-uuid ' + $network-topology-operation-input.service-information.onap-model-information.model-uuid`" />
\r
163 <outcome value="failure">
\r
164 <return status="failure">
\r
165 <parameter name="ack-final" value="Y" />
\r
166 <parameter name="error-code" value="500" />
\r
167 <parameter name="error-message" value="`'No network model found for customization UUID ' + $network-topology-operation-input.network-information.onap-model-information.model-customization-uuid + ' and model-uuid ' + $network-topology-operation-input.service-information.onap-model-information.model-uuid`" />
\r
173 <outcome value="Other">
\r
174 <block atomic="true">
\r
175 <get-resource plugin="org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource" resource="SQL" key="SELECT * from SERVICE_MODEL WHERE service_uuid = $network-topology-operation-input.service-information.onap-model-information.model-uuid" pfx="service-model">
\r
176 <outcome value="not-found">
\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="`'No service model found for service UUID ' + $network-topology-operation-input.service-information.onap-model-information.model-uuid`" />
\r
183 <outcome value="failure">
\r
184 <return status="failure">
\r
185 <parameter name="ack-final" value="Y" />
\r
186 <parameter name="error-code" value="500" />
\r
187 <parameter name="error-message" value="`'No service model found for service UUID ' + $network-topology-operation-input.service-information.onap-model-information.model-uuid`" />
\r
191 <get-resource plugin="org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource" resource="SQL" key="SELECT * from NETWORK_MODEL WHERE customization_uuid = $network-topology-operation-input.network-information.onap-model-information.model-customization-uuid and service_uuid = $network-topology-operation-input.service-information.onap-model-information.model-uuid" pfx="network-model">
\r
192 <outcome value="not-found">
\r
193 <return status="failure">
\r
194 <parameter name="ack-final" value="Y" />
\r
195 <parameter name="error-code" value="500" />
\r
196 <parameter name="error-message" value="`'No network model found for customization UUID ' + $network-topology-operation-input.network-information.onap-model-information.model-customization-uuid + ' and model-uuid ' + $network-topology-operation-input.service-information.onap-model-information.model-uuid`" />
\r
199 <outcome value="failure">
\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="`'No network model found for customization UUID ' + $network-topology-operation-input.network-information.onap-model-information.model-customization-uuid + ' and model-uuid ' + $network-topology-operation-input.service-information.onap-model-information.model-uuid`" />
\r
212 <outcome value="Other">
\r
213 <return status="failure">
\r
214 <parameter name="ack-final" value="Y" />
\r
215 <parameter name="error-code" value="500" />
\r
216 <parameter name="error-message" value="request-information.request-action is required to be CreateNetworkInstance for svc-action=assign" />
\r
222 <outcome value="activate">
\r
223 <block atomic="true">
\r
224 <switch test="`$network-topology-operation-input.request-information.request-action`">
\r
225 <outcome value="ActivateDCINetworkInstance">
\r
226 <block atomic="true" />
\r
228 <outcome value="CreateNetworkInstance">
\r
229 <block atomic="true">
\r
230 <switch test="`$network-topology-operation-input.network-information.network-id`">
\r
232 <return status="failure">
\r
233 <parameter name="ack-final" value="Y" />
\r
234 <parameter name="error-code" value="500" />
\r
235 <parameter name="error-message" value="service-information.network-information.network-id is a required input" />
\r
239 <switch test="`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`">
\r
241 <return status="failure">
\r
242 <parameter name="ack-final" value="Y" />
\r
243 <parameter name="error-code" value="500" />
\r
244 <parameter name="error-message" value="network-information.onap-model-information.model-invariant-uuid is a required input" />
\r
248 <switch test="`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`">
\r
250 <return status="failure">
\r
251 <parameter name="ack-final" value="Y" />
\r
252 <parameter name="error-code" value="500" />
\r
253 <parameter name="error-message" value="network-information.onap-model-information.model-customization-uuid is a required input" />
\r
257 <switch test="`$network-topology-operation-input.network-information.onap-model-information.model-uuid`">
\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-information.onap-model-information.model-uuid is a required input" />
\r
266 <switch test="`$network-topology-operation-input.network-request-input.tenant`">
\r
268 <return status="failure">
\r
269 <parameter name="ack-final" value="Y" />
\r
270 <parameter name="error-code" value="500" />
\r
271 <parameter name="error-message" value="network-request-input.tenant is a required input" />
\r
275 <switch test="`$network-topology-operation-input.network-request-input.aic-cloud-region`">
\r
277 <return status="failure">
\r
278 <parameter name="ack-final" value="Y" />
\r
279 <parameter name="error-code" value="500" />
\r
280 <parameter name="error-message" value="service-information.network-request-information.aic-cloud-region is a required input" />
\r
284 <switch test="`$network-topology-operation-input.service-information.onap-model-information.model-uuid`">
\r
286 <block atomic="true">
\r
287 <get-resource plugin="org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource" resource="SQL" key="SELECT * from SERVICE_MODEL WHERE service_uuid = $service-data.service-information.onap-model-information.model-uuid" pfx="service-model">
\r
288 <outcome value="not-found">
\r
289 <return status="failure">
\r
290 <parameter name="ack-final" value="Y" />
\r
291 <parameter name="error-code" value="500" />
\r
292 <parameter name="error-message" value="`'No service model found for service UUID ' + $network-topology-operation-input.service-information.onap-model-information.model-uuid`" />
\r
295 <outcome value="failure">
\r
296 <return status="failure">
\r
297 <parameter name="ack-final" value="Y" />
\r
298 <parameter name="error-code" value="500" />
\r
299 <parameter name="error-message" value="`'No service model found for service UUID ' + $network-topology-operation-input.service-information.onap-model-information.model-uuid`" />
\r
303 <get-resource plugin="org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource" resource="SQL" key="SELECT * from NETWORK_MODEL WHERE customization_uuid = $network-topology-operation-input.network-information.onap-model-information.model-customization-uuid and service_uuid = $service-data.service-information.onap-model-information.model-uuid" pfx="network-model">
\r
304 <outcome value="not-found">
\r
305 <return status="failure">
\r
306 <parameter name="ack-final" value="Y" />
\r
307 <parameter name="error-code" value="500" />
\r
308 <parameter name="error-message" value="`'No network model found for customization UUID ' + $network-topology-operation-input.network-information.onap-model-information.model-customization-uuid + ' and model-uuid ' + $network-topology-operation-input.service-information.onap-model-information.model-uuid`" />
\r
311 <outcome value="failure">
\r
312 <return status="failure">
\r
313 <parameter name="ack-final" value="Y" />
\r
314 <parameter name="error-code" value="500" />
\r
315 <parameter name="error-message" value="`'No network model found for customization UUID ' + $network-topology-operation-input.network-information.onap-model-information.model-customization-uuid + ' and model-uuid ' + $network-topology-operation-input.service-information.onap-model-information.model-uuid`" />
\r
321 <outcome value="Other">
\r
322 <block atomic="true">
\r
323 <get-resource plugin="org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource" resource="SQL" key="SELECT * from SERVICE_MODEL WHERE service_uuid = $network-topology-operation-input.service-information.onap-model-information.model-uuid" pfx="service-model">
\r
324 <outcome value="not-found">
\r
325 <return status="failure">
\r
326 <parameter name="ack-final" value="Y" />
\r
327 <parameter name="error-code" value="500" />
\r
328 <parameter name="error-message" value="`'No service model found for service UUID ' + $network-topology-operation-input.service-information.onap-model-information.model-uuid`" />
\r
331 <outcome value="failure">
\r
332 <return status="failure">
\r
333 <parameter name="ack-final" value="Y" />
\r
334 <parameter name="error-code" value="500" />
\r
335 <parameter name="error-message" value="`'No service model found for service UUID ' + $network-topology-operation-input.service-information.onap-model-information.model-uuid`" />
\r
339 <get-resource plugin="org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource" resource="SQL" key="SELECT * from NETWORK_MODEL WHERE customization_uuid = $network-topology-operation-input.network-information.onap-model-information.model-customization-uuid and service_uuid = $network-topology-operation-input.service-information.onap-model-information.model-uuid" pfx="network-model">
\r
340 <outcome value="not-found">
\r
341 <return status="failure">
\r
342 <parameter name="ack-final" value="Y" />
\r
343 <parameter name="error-code" value="500" />
\r
344 <parameter name="error-message" value="`'No network model found for customization UUID ' + $network-topology-operation-input.network-information.onap-model-information.model-customization-uuid + ' and model-uuid ' + $network-topology-operation-input.service-information.onap-model-information.model-uuid`" />
\r
347 <outcome value="failure">
\r
348 <return status="failure">
\r
349 <parameter name="ack-final" value="Y" />
\r
350 <parameter name="error-code" value="500" />
\r
351 <parameter name="error-message" value="`'No network model found for customization UUID ' + $network-topology-operation-input.network-information.onap-model-information.model-customization-uuid + ' and model-uuid ' + $network-topology-operation-input.service-information.onap-model-information.model-uuid`" />
\r
360 <outcome value="Other">
\r
361 <return status="failure">
\r
362 <parameter name="ack-final" value="Y" />
\r
363 <parameter name="error-code" value="500" />
\r
364 <parameter name="error-message" value="request-information.request-action is required to be CreateNetworkInstance for svc-action=activate" />
\r
370 <outcome value="deactivate">
\r
371 <block atomic="true">
\r
372 <switch test="`$network-topology-operation-input.request-information.request-action`">
\r
373 <outcome value="DeActivateDCINetworkInstance">
\r
374 <block atomic="true" />
\r
376 <outcome value="DeleteNetworkInstance">
\r
377 <block atomic="true">
\r
378 <switch test="`$network-topology-operation-input.network-information.network-id`">
\r
380 <return status="failure">
\r
381 <parameter name="ack-final" value="Y" />
\r
382 <parameter name="error-code" value="500" />
\r
383 <parameter name="error-message" value="service-information.network-information.network-id is a required input" />
\r
389 <outcome value="Other">
\r
390 <return status="failure">
\r
391 <parameter name="ack-final" value="Y" />
\r
392 <parameter name="error-code" value="500" />
\r
393 <parameter name="error-message" value="request-information.request-action is required to be DeleteNetworkInstance for svc-action=deactivate" />
\r
399 <outcome value="unassign">
\r
400 <block atomic="true">
\r
401 <switch test="`$network-topology-operation-input.request-information.request-action`">
\r
402 <outcome value="DeleteNetworkInstance">
\r
403 <block atomic="true">
\r
404 <switch test="`$network-topology-operation-input.network-information.network-id`">
\r
406 <return status="failure">
\r
407 <parameter name="ack-final" value="Y" />
\r
408 <parameter name="error-code" value="500" />
\r
409 <parameter name="error-message" value="service-information.network-information.network-id is a required input" />
\r
415 <outcome value="Other">
\r
416 <return status="failure">
\r
417 <parameter name="ack-final" value="Y" />
\r
418 <parameter name="error-code" value="500" />
\r
419 <parameter name="error-message" value="request-information.request-action is required to be DeleteNetworkInstance for svc-action=unassign" />
\r
426 <return status="success">
\r
427 <parameter name="ack-final-indicator" value="Y" />
\r
428 <parameter name="error-code" value="200" />
\r
429 <parameter name="error-message" value="`$error-message`" />
\r