2 xmlns='http://www.onap.org/sdnc/svclogic'
\r
3 xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>
\r
4 <method rpc='network-topology-operation-assign-vlantagging-instancegroup' mode='sync'>
\r
5 <block atomic="true">
\r
6 <switch test="`$tmp.nidx`">
\r
8 <switch test='`$service-data.networks.network_length`'>
\r
11 <parameter name='nidx' value='0' />
\r
12 <parameter name='nidx_len' value='1'/>
\r
15 <outcome value='Other'>
\r
17 <parameter name='nidx' value='`$service-data.networks.network_length`' />
\r
18 <parameter name='nidx_len' value='`$service-data.networks.network_length + 1`' />
\r
23 <outcome value='Other'>
\r
25 <parameter name='nidx' value='`$tmp.nidx`' />
\r
26 <parameter name='nidx_len' value='`$service-data.networks.network_length`' />
\r
30 <switch test="`$tmp.ngidx`">
\r
32 <switch test='`$service-data.network-instance-groups.network-instance-group_len`'>
\r
35 <parameter name='ngidx' value='0' />
\r
36 <parameter name='ngidx_len' value='1'/>
\r
37 <parameter name="ngnidx" value='0' />
\r
38 <parameter name="nig.preexists" value="false"/>
\r
39 <parameter name="nig.first-network" value="true"/>
\r
40 <parameter name="nig.networks.network_len" value="1" />
\r
43 <outcome value='Other'>
\r
45 <parameter name='ngidx' value='`$service-data.network-instance-groups.network-instance-group_length`' />
\r
46 <parameter name='ngidx_len' value='`$service-data.network-instance-groups.network-instance-group_length + 1`' />
\r
47 <parameter name="nig.preexists" value="false"/>
\r
48 <parameter name="ngnidx" value='0' />
\r
49 <parameter name="nig.first-network" value="true"/>
\r
50 <parameter name="nig.networks.network_len" value="1" />
\r
55 <outcome value='Other'>
\r
56 <block atomic="true">
\r
58 <parameter name='ngidx' value='`$tmp.ngidx`' />
\r
59 <parameter name='ngidx_len' value='`$service-data.network-instance-groups.network-instance-group_length`' />
\r
60 <parameter name="nig.preexists" value="false"/>
\r
62 <switch test='`$ctx.network-instance-group-data.networks.network_len`'>
\r
64 <block atomic='true'>
\r
66 <parameter name="nig.first-network" value="true" />
\r
67 <parameter name="ngnidx" value="0" />
\r
68 <parameter name="nig.networks.network_len" value="1" />
\r
73 <block atomic='true'>
\r
75 <parameter name="nig.first-network" value="true" />
\r
76 <parameter name="ngnidx" value="0" />
\r
77 <parameter name="nig.networks.network_len" value="1" />
\r
81 <outcome value='Other'>
\r
82 <block atomic='true'>
\r
84 <parameter name="nig." value="`$ctx.network-instance-group-data.`" />
\r
87 <parameter name="nig.first-network" value="false" />
\r
88 <parameter name="ngnidx" value="`$ctx.network-instance-group-data.networks.network_length`" />
\r
89 <parameter name="nig.networks.network_len" value="`$ctx.network-instance-group-data.networks.network_length + 1`" />
\r
90 <parameter name="nig." value="`$ctx.network-instance-group-data.`" />
\r
99 <parameter name="tmp.error-message" value=""/>
\r
100 <parameter name="tmp.l3-network.network-instance-group-id" value="`$network-topology-operation-input.network-request-input.network-instance-group-id`" />
\r
101 <parameter name='tmp.l3-network.network-type' value="`$network-model.network-type`" />
\r
102 <parameter name='tmp.l3-network.network-role' value="`$network-model.network-role`" />
\r
103 <parameter name='tmp.l3-network.network-technology' value="`$network-model.network-technology`" />
\r
106 <parameter name='service-data.networks.network[$nidx].network-data.sdnc-request-header.' value='`$network-topology-operation-input.sdnc-request-header.`' />
\r
107 <parameter name='service-data.networks.network[$nidx].network-data.request-information.' value='`$network-topology-operation-input.request-information.`' />
\r
108 <parameter name='service-data.networks.network[$nidx].network-data.service-information.' value='`$network-topology-operation-input.service-information.`' />
\r
109 <parameter name='service-data.networks.network[$nidx].network-data.network-information.' value='`$network-topology-operation-input.network-information.`' />
\r
110 <parameter name='service-data.networks.network[$nidx].network-data.network-request-input.' value='`$network-topology-operation-input.network-request-input.`' />
\r
111 <parameter name='service-data.networks.network[$nidx].network-id' value='`$tmp.l3-network.network-id`' />
\r
114 <parameter name='tmp.l3-network.model-invariant-id' value="`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`" />
\r
115 <parameter name='tmp.l3-network.model-version-id' value="`$network-topology-operation-input.network-information.onap-model-information.model-version`" />
\r
116 <parameter name='tmp.l3-network.model-customization-id' value="`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`" />
\r
117 <parameter name='s-onap-model-information.model-invariant-uuid' value='`$service-model.invariant-uuid`' />
\r
118 <parameter name='s-onap-model-information.model-version' value='`$service-model.version`' />
\r
119 <parameter name='s-onap-model-information.model-uuid' value='`$service-model.service-uuid`' />
\r
120 <parameter name='s-onap-model-information.model-name' value='`$service-model.name`' />
\r
121 <parameter name='n-onap-model-information.model-invariant-uuid' value='`$network-model.invariant-uuid`' />
\r
122 <parameter name='n-onap-model-information.model-version' value='`$network-model.version`' />
\r
123 <parameter name='n-onap-model-information.model-uuid' value='`$network-model.uuid`' />
\r
124 <parameter name='n-onap-model-information.model-name' value='`$network-model.name`' />
\r
127 <parameter name='service-data.networks.network[$nidx]..network-data.service-information.onap-model-information.' value="`$s-onap-model-information.`" />
\r
128 <parameter name='service-data.networks.network[$nidx]..network-data.network-information.onap-model-information.' value="`$n-onap-model-information.`" />
\r
131 <parameter name='tmp.l3-network.network-type' value="`$network-model.network-type`" />
\r
132 <parameter name='tmp.l3-network.network-role' value="`$network-model.network-role`" />
\r
133 <parameter name='tmp.l3-network.network-technology' value="`$network-model.network-technology`" />
\r
134 <parameter name='tmp.l3-network.is-bound-to-vpn' value="`$network-model.is-bound-to-vpn`" />
\r
135 <parameter name='tmp.l3-network.orchestration-status' value="PendingCreate" />
\r
136 <parameter name='tmp.l3-network.model-invariant-id' value="`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`" />
\r
137 <parameter name='tmp.l3-network.model-version-id' value="`$network-topology-operation-input.network-information.onap-model-information.model-version`" />
\r
138 <parameter name='tmp.l3-network.model-customization-id' value="`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`" />
\r
139 <parameter name='tmp.l3-network.is-provider-network' value="`$network-model.is-provider-network`" />
\r
140 <parameter name='tmp.l3-network.is-shared-network' value="`$network-model.is-shared-network`" />
\r
141 <parameter name='tmp.l3-network.is-external-network' value="`$network-model.is-external-network`" />
\r
142 <parameter name='tmp.l3-network.eipam-v6-address-plan' value="`$network-model.eipam-v6-address-plan`" />
\r
143 <parameter name='tmp.l3-network.eipam-v4-address-plan' value="`$network-model.eipam-v4-address-plan`" />
\r
144 <parameter name='tmp.l3-network.service-id' value="`$service-data.service-information.service-id`" />
\r
145 <parameter name='tmp.l3-network.self-link' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/'
\r
146 + $network-topology-operation-input.service-information.service-instance-id
\r
147 + '/service-data/networks/network/'
\r
148 + $tmp.l3-network.network-id
\r
149 + '/network-data/network-topology/'` " />
\r
151 <switch test='`$network-model.is-provider-network`'>
\r
152 <outcome value='Y'>
\r
154 <parameter name='tmp.l3-network.physical-network-name' value="`$network-model.physical-network-name`" />
\r
155 <parameter name='tmp.l3-network.is-provider-network-boolean' value='true' />
\r
158 <outcome value='Other'>
\r
160 <parameter name='tmp.l3-network.physical-network-name' value="" />
\r
161 <parameter name='tmp.l3-network.is-provider-network-boolean' value='false' />
\r
165 <switch test='`$network-model.is-shared-network`'>
\r
166 <outcome value='Y'>
\r
168 <parameter name='tmp.l3-network.is-shared-network-boolean' value='true' />
\r
171 <outcome value='Other'>
\r
173 <parameter name='tmp.l3-network.is-shared-network-boolean' value='false' />
\r
177 <switch test='`$network-model.is-external-network`'>
\r
178 <outcome value='Y'>
\r
180 <parameter name='tmp.l3-network.is-external-network-boolean' value='true' />
\r
183 <outcome value='Other'>
\r
185 <parameter name='tmp.l3-network.is-external-network-boolean' value='false' />
\r
189 <switch test='`$network-model.is-bound-to-vpn`'>
\r
190 <outcome value='Y'>
\r
192 <parameter name='tmp.l3-network.is-bound-to-vpn-boolean' value='true' />
\r
195 <outcome value='Other'>
\r
197 <parameter name='tmp.l3-network.is-bound-to-vpn-boolean' value='false' />
\r
201 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
202 resource="l3-network"
\r
203 key="l3-network.network-id = $tmp.l3-network.network-id"
\r
204 local-only="false"
\r
205 pfx="aai.l3-network">
\r
206 <outcome value='failure'>
\r
207 <return status='failure'>
\r
208 <parameter name="error-code" value="500" />
\r
209 <parameter name="error-message" value="'Error searching for l3-network with network-id =' + $tmp.l3-network.network-id + 'from AnAI. Network should be created by MSO'" />
\r
212 <outcome value='not-found'></outcome>
\r
215 <parameter name='aaiapi.input.network-instance-group-id' value="`$tmp.l3-network.network-instance-group-id`" />
\r
217 <call module='GENERIC-RESOURCE-API' rpc='aai-get-network-instance-group' mode='sync' ></call>
\r
219 <parameter name="get-complex-resource-service-model-input.customization-uuid" value="`$aaiapi.output.collection-customization-uuid`"/>
\r
221 <call module='GENERIC-RESOURCE-API' rpc='get-complex-resource-service-model' mode='sync' ></call>
\r
223 <parameter name="nig.network-instance-group-id" value="`$tmp.l3-network.network-instance-group-id`"/>
\r
224 <parameter name="nig.network-instance-group-function" value="`$aaiapi.output.collection-function`"/>
\r
225 <parameter name="nig.service-instance-id" value="`$network-topology-operation-input.service-information.service-instance-id`"/>
\r
228 <parameter name='nig.networks.network[$ngnidx].network-id' value="`$tmp.l3-network.network-id`" />
\r
231 <parameter name="get-data-from-policy-input.policy-instance-name" value="`$get-complex-resource-service-model-output.subnet-assignment-policy`" />
\r
233 <call module='GENERIC-RESOURCE-API' rpc='get-data-from-policy' mode='sync' ></call>
\r
235 <parameter name="nig.subnet-assignment-policy.subnet-use" value="`$get-data-from-policy-output.ip-assignment`" />
\r
238 <parameter name='naming-policy-generate-name-input.policy-instance-name' value='`$get-complex-resource-service-model-output.network-naming-policy`' />
\r
239 <parameter name='naming-policy-generate-name-input.context-id' value='`$tmp.l3-network.network-id`' />
\r
240 <parameter name='naming-policy-generate-name-input.naming-type' value='NETWORK' />
\r
241 <parameter name='naming-policy-generate-name-input.action' value='ASSIGN' />
\r
242 <parameter name='naming-policy-generate-name-input.query-parameter' value='`$network-model.customization-uuid`' />
\r
244 <call module='GENERIC-RESOURCE-API' rpc='naming-policy-generate-name' mode='sync' ></call>
\r
246 <parameter name='tmp.l3-network.network-name' value='`$naming-policy-generate-name-output.network-name`' />
\r
249 <parameter name='network-topology.network-topology-identifier-structure.network-id' value="`$tmp.l3-network.network-id`" />
\r
250 <parameter name='network-topology.network-topology-identifier-structure.network-name' value="`$tmp.l3-network.network-name`" />
\r
251 <parameter name='network-topology.network-topology-identifier-structure.network-instance-group-id' value="`$tmp.l3-network.network-instance-group-id`" />
\r
252 <parameter name='network-topology.network-topology-identifier-structure.network-type' value="`$tmp.l3-network.network-type`" />
\r
253 <parameter name='network-topology.network-topology-identifier-structure.network-role' value="`$tmp.l3-network.network-role`" />
\r
254 <parameter name='network-topology.network-topology-identifier-structure.network-technology' value="`$tmp.l3-network.network-technology`" />
\r
255 <parameter name='network-topology.region-identifier.tenant' value="`$network-topology-operation-input.network-request-input.tenant`" />
\r
256 <parameter name='network-topology.region-identifier.aic-cloud-region' value="`$network-topology-operation-input.network-request-input.aic-cloud-region`" />
\r
257 <parameter name='network-topology.region-identifier.aic-clli' value="`$network-topology-operation-input.network-request-input.aic-clli`" />
\r
258 <parameter name='network-topology.onap-model-information.' value="`$network-topology-operation-input.network-information.onap-model-information.`" />
\r
259 <parameter name='network-topology.network-parameters.' value="`$network-topology-operation-input.network-request-input.network-input-parameters.`" />
\r
260 <parameter name='nig.network.network-id' value="`$tmp.l3-network.network-id`" />
\r
263 <parameter name="aaiapi.input.cloud-owner" value="`$prop.cloud-region.cloud-owner`" />
\r
264 <parameter name="aaiapi.input.cloud-region-id" value="`$network-topology-operation-input.network-request-input.aic-cloud-region`" />
\r
266 <call module='GENERIC-RESOURCE-API' rpc='aai-get-aic-zone' mode='sync' ></call>
\r
268 <parameter name='network-topology.region-identifier.aic-clli' value="`$aaiapi.output.aic-clli`" />
\r
271 <parameter name="nig.cloud-zone" value="`$aaiapi.output.cloud-zone`" />
\r
272 <parameter name="rt.aic-zone" value="`$aaiapi.output.cloud-zone`" />
\r
273 <parameter name="rt.resource" value="NetworkID" />
\r
274 <parameter name="rt.resource-value" value="`$tmp.l3-network.network-id`" />
\r
275 <parameter name="rt.network-name" value="`$tmp.l3-network.network-name`" />
\r
276 <parameter name="rt.service-instance-id" value="`$network-topology-operation-input.service-information.service-instance-id`" />
\r
277 <parameter name="rt.network-instance-group-id" value="`$tmp.l3-network.network-instance-group-id`" />
\r
279 <call module='GENERIC-RESOURCE-API' rpc='create-route-target-and-vpn-binding' mode='sync' ></call>
\r
281 <parameter name='nig.vpn-bindings.id' value="`$vpn-binding.vpn-binding-id`" />
\r
282 <parameter name='nig.vpn-bindings.global-route-target' value="`$vpn-binding.global-route-target`" />
\r
283 <parameter name='nig.vpn-bindings.aic-zone' value="`$aaiapi.output.cloud-zone`" />
\r
284 <parameter name='nig.vpn-bindings.route-target-role' value="`$vpn-binding.route-target-role`" />
\r
286 <switch test='`$nig.subnet-assignment-policy.subnet-use`'>
\r
288 <block atomic="true">
\r
290 <parameter name="error-code" value="500"/>
\r
291 <parameter name="tmp.error-message" value="Subnet use not set"/>
\r
293 <switch test='`$tmp.nig-preexists`'>
\r
294 <outcome value='true'>
\r
295 <block atomic='true'></block>
\r
297 <outcome value='false'>
\r
298 <block atomic='true'>
\r
299 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
\r
300 <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.nig-url`' />
\r
301 <parameter name='restapiUser' value='`$prop.controller.user`' />
\r
302 <parameter name='restapiPassword' value='`$prop.controller.pwd`' />
\r
303 <parameter name='format' value='json' />
\r
304 <parameter name='httpMethod' value='DELETE' />
\r
305 <parameter name="responsePrefix" value="mdsal-nig" />
\r
306 <outcome value='success'>
\r
307 <block atomic="true"></block>
\r
309 <outcome value='Other'>
\r
310 <block atomic="true"></block>
\r
318 <outcome value='unique'>
\r
319 <block atomic="true">
\r
321 <parameter name="tmp.skip-first-level" value="Y"/>
\r
322 <parameter name="tmp.allocate-subnet-flag" value="Y"/>
\r
323 <parameter name="generate-FQPN-input.aic-cloud-region" value="`$aai.cloud-region.cloud-region-id`" />
\r
324 <parameter name="generate-FQPN-input.network-name" value="`$network-topology.network-topology-identifier-structure.network-name`" />
\r
325 <parameter name="generate-FQPN-input.network-role" value="`$network-topology.network-topology-identifier-structure.network-role`" />
\r
326 <parameter name="generate-FQPN-input.network-collection" value="`$aaiapi.output.collection-name`" />
\r
327 <parameter name="generate-FQPN-input.network-id" value="`$network-topology.network-topology-identifier-structure.network-id`" />
\r
328 <parameter name="tmp.network-id" value="`network-topology.network-topology-identifier-structure.network-id`" />
\r
329 <parameter name="tmp.network-instance-group-id" value="`$network-topology.network-topology-identifier-structure.network-instance-group-id`" />
\r
330 <!-- the following are not set by calling dg
\r
331 generate-FQPN-input.subnet-role
\r
332 generate-FQPN-input.zone
\r
333 generate-FQPN-input.equipment
\r
335 <!-- network model is already in contect memory -->
\r
336 <!-- aai.cloud-region.cloud-region-id is already in contect memory -->
\r
338 <call module='GENERIC-RESOURCE-API' rpc='process-generic-eipam-pools' mode='sync' >
\r
339 <outcome value='failure'>
\r
340 <return status="failure">
\r
341 <parameter name="ack-final" value="Y" />
\r
342 <parameter name="error-code" value="500"/>
\r
343 <parameter name="error-message" value="`'Error from process-generic-eipam-pools, ' + $error-message`" />
\r
347 <switch test="`$network-model.eipam-v4-address-plan != ''`">
\r
348 <outcome value='true'>
\r
349 <block atomic='true'>
\r
351 <parameter name="network-topology.network-identifier-structure.eipam-v4-address-plan" value="`$network-model.eipam-v4-address-plan`" />
\r
353 <for silentFailure='true' index='eidx' start='0' end='`$eipam-ip-block.createPoolResponse.CreatePoolPlans_length`' >
\r
354 <switch test="`$eipam-ip-block.createPoolResponse.CreatePoolPlans[$eidx].CreatePoolPlan.PlanName == $network-model.eipam-v4-address-plan`">
\r
355 <outcome value='true'>
\r
356 <block atomic='true'>
\r
358 <parameter name="v4.ip-prefix" value="`$eipam-ip-block.createPoolResponse.CreatePoolPlans[$eidx].CreatePoolPlan.IPDataBlock.IPAddress`"/>
\r
359 <parameter name="v4.mask" value="`$eipam-ip-block.createPoolResponse.CreatePoolPlans[$eidx].CreatePoolPlan.IPDataBlock.Mask`"/>
\r
360 <parameter name="v4.entity-id" value="`$eipam-ip-block.createPoolResponse.CreatePoolPlans[$eidx].CreatePoolPlan.IPDataBlock.IpamPoolAllocId`"/>
\r
369 <switch test="`$network-model.eipam-v6-address-plan != ''`">
\r
370 <outcome value='true'>
\r
371 <block atomic='true'>
\r
373 <parameter name="network-topology.network-identifier-structure.eipam-v6-address-plan" value="`$network-model.eipam-v4-address-plan`" />
\r
375 <for silentFailure='true' index='eidx' start='0' end='`$eipam-ip-block.createPoolResponse.CreatePoolPlans_length`' >
\r
376 <switch test="`$eipam-ip-block.createPoolResponse.CreatePoolPlans[$eidx].CreatePoolPlan.PlanName == $network-model.eipam-v6-address-plan`">
\r
377 <outcome value='true'>
\r
378 <block atomic='true'>
\r
380 <parameter name="v6.ip-prefix" value="`$eipam-ip-block.createPoolResponse.CreatePoolPlans[$eidx].CreatePoolPlan.IPDataBlock.IPAddress`"/>
\r
381 <parameter name="v6.mask" value="`$eipam-ip-block.createPoolResponse.CreatePoolPlans[$eidx].CreatePoolPlan.IPDataBlock.Mask`"/>
\r
382 <parameter name="v6.entity-id" value="`$eipam-ip-block.createPoolResponse.CreatePoolPlans[$eidx].CreatePoolPlan.IPDataBlock.IpamPoolAllocId`"/>
\r
391 <!--tmp.level should be set to 1-->
\r
392 <call module='GENERIC-RESOURCE-API' rpc='create-l3-subnet' mode='sync' ></call>
\r
393 <switch test='`$tmp.l3-network.service-id`'>
\r
395 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
396 resource="l3-network"
\r
397 key="l3-network.network-id = $tmp.l3-network.network-id" >
\r
398 <!-- Create l3-network object -->
\r
399 <parameter name="network-id" value="`$tmp.l3-network.network-id`" />
\r
400 <parameter name="network-name" value="`$tmp.l3-network.network-name`" />
\r
401 <parameter name="network-type" value="`$network-model.network-type`" />
\r
402 <parameter name="network-role" value="`$network-model.network-role`" />
\r
403 <parameter name="network-technology" value="`$network-model.network-technology`" />
\r
404 <parameter name="is-bound-to-vpn" value="`$tmp.l3-network.is-bound-to-vpn-boolean`" />
\r
405 <parameter name="tenant-id" value="`$network-topology-operation-input.network-request-information.tenant`" />
\r
406 <parameter name="model-invariant-id" value="`$network-model.invariant_uuid`" />
\r
407 <parameter name="model-version" value="`$network-model.version`" />
\r
408 <parameter name="model-customization-id" value="`$network-model.customization-id`" />
\r
409 <parameter name="physical-network-name" value="`$network-model.physical-network-name`" />
\r
410 <parameter name="is-provider-network" value="`$tmp.l3-network.is-provider-network-boolean`" />
\r
411 <parameter name="is-shared-network" value="`$tmp.l3-network.is-shared-network-boolean`" />
\r
412 <parameter name="is-external-network" value="`$tmp.l3-network.is-external-network-boolean`" />
\r
413 <parameter name="selflink" value="`$tmp.l3-network.self-link`" />
\r
414 <parameter name="operational-status" value="out-of-service-path" />
\r
415 <outcome value='failure'>
\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="`'Failed to save l3-network in AAI for network-id = ' + $tmp.l3-network.network-id`" />
\r
422 <outcome value='not-found'>
\r
423 <return status='failure'>
\r
424 <parameter name='ack-final' value='Y'/>
\r
425 <parameter name="error-code" value="500" />
\r
426 <parameter name="error-message" value="`'Failed to save l3-network in AAI for network-id = ' + $tmp.l3-network.network-id`" />
\r
431 <outcome value='Other'>
\r
432 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
433 resource="l3-network"
\r
434 key="l3-network.network-id = $tmp.l3-network.network-id" >
\r
435 <!-- Create l3-network object -->
\r
436 <parameter name="network-id" value="`$tmp.l3-network.network-id`" />
\r
437 <parameter name="network-name" value="`$tmp.l3-network.network-name`" />
\r
438 <parameter name="network-type" value="`$network-model.network-type`" />
\r
439 <parameter name="network-role" value="`$network-model.network-role`" />
\r
440 <parameter name="network-technology" value="`$network-model.network-technology`" />
\r
441 <parameter name="is-bound-to-vpn" value="`$tmp.l3-network.is-bound-to-vpn-boolean`" />
\r
442 <parameter name="tenant-id" value="`$network-topology-operation-input.network-request-information.tenant`" />
\r
443 <parameter name="model-invariant-id" value="`$network-model.invariant_uuid`" />
\r
444 <parameter name="model-version" value="`$network-model.version`" />
\r
445 <parameter name="model-customization-id" value="`$network-model.customization-id`" />
\r
446 <parameter name="physical-network-name" value="`$network-model.physical-network-name`" />
\r
447 <parameter name="is-provider-network" value="`$tmp.l3-network.is-provider-network-boolean`" />
\r
448 <parameter name="is-shared-network" value="`$tmp.l3-network.is-shared-network-boolean`" />
\r
449 <parameter name="is-external-network" value="`$tmp.l3-network.is-external-network-boolean`" />
\r
450 <parameter name="selflink" value="`$tmp.l3-network.self-link`" />
\r
451 <parameter name="service-id" value="`$tmp.l3-network.service-id`" />
\r
452 <parameter name="operational-status" value="out-of-service-path" />
\r
453 <outcome value='failure'>
\r
454 <return status='failure'>
\r
455 <parameter name='ack-final' value='Y'/>
\r
456 <parameter name="error-code" value="500" />
\r
457 <parameter name="error-message" value="`'Failed to save l3-network in AAI for network-id = ' + $tmp.l3-network.network-id`" />
\r
460 <outcome value='not-found'>
\r
461 <return status='failure'>
\r
462 <parameter name='ack-final' value='Y'/>
\r
463 <parameter name="error-code" value="500" />
\r
464 <parameter name="error-message" value="`'Failed to save l3-network in AAI for network-id = ' + $tmp.l3-network.network-id`" />
\r
471 <parameter name="msidx" value="`$nig.subnets_length`" />
\r
473 <for index='sidx' start='0' end='`$tmp.l3-network.subnet_length`' >
\r
474 <block atomic="true">
\r
476 <parameter name="tmp.subnet-id" value="`$tmp.l3-network.subnet[$sidx].subnet-id`"/>
\r
478 <switch test='`$tmp.l3-network.subnet[$sidx].dhcp-enabled`'>
\r
479 <outcome value='true'>
\r
480 <block atomic="true">
\r
481 <switch test='`$tmp.l3-network.subnet[$sidx].gateway-address`'>
\r
483 <block atomic='true'>
\r
484 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
486 key="l3-network.network-id = $tmp.l3-network.network-id
\r
487 AND subnet.subnet-id = $tmp.subnet-id" >
\r
488 <!-- Create l3-network object -->
\r
489 <parameter name="network-id" value="`$tmp.l3-network.network-id`" />
\r
490 <parameter name="subnet-id" value="`$tmp.l3-network.subnet[$sidx].subnet-id`" />
\r
491 <parameter name="subnet-name" value="`$tmp.l3-network.subnet[$sidx].subnet-name`" />
\r
492 <parameter name="network-start-address" value="`$tmp.l3-network.subnet[$sidx].network-start-address`" />
\r
493 <parameter name="cidr-mask" value="`$tmp.l3-network.subnet[$sidx].cidr-mask`" />
\r
494 <parameter name="ip-version" value="`$tmp.l3-network.subnet[$sidx].ip-version`" />
\r
495 <parameter name="dhcp-start" value="`$tmp.l3-network.subnet[$sidx].dhcp-start`" />
\r
496 <parameter name="dhcp-end" value="`$tmp.l3-network.subnet[$sidx].dhcp-end`" />
\r
497 <parameter name="dhcp-enabled" value="`$tmp.l3-network.subnet[$sidx].dhcp-enabled`" />
\r
498 <parameter name="orchestration-status" value="PendingCreate" />
\r
499 <outcome value='failure'>
\r
500 <block atomic='true'>
\r
502 <parameter name="error-code" value="500"/>
\r
503 <parameter name="tmp.error-message" value="`'An error occurred while saving subnet relationship for l3-network in AnAI where network-id = ' + $tmp.l3-network.network-id`"/>
\r
507 <outcome value='not-found'>
\r
508 <block atomic='true'>
\r
510 <parameter name="error-code" value="500"/>
\r
511 <parameter name="tmp.error-message" value="`'An error occurred while saving subnet relationship for l3-network in AnAI where network-id = ' + $tmp.l3-network.network-id`"/>
\r
518 <outcome value='Other'>
\r
519 <block atomic='true'>
\r
520 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
522 key="l3-network.network-id = $tmp.l3-network.network-id
\r
523 AND subnet.subnet-id = $tmp.subnet-id" >
\r
524 <!-- Create l3-network object -->
\r
525 <parameter name="network-id" value="`$tmp.l3-network.network-id`" />
\r
526 <parameter name="subnet-id" value="`$tmp.l3-network.subnet[$sidx].subnet-id`" />
\r
527 <parameter name="subnet-name" value="`$tmp.l3-network.subnet[$sidx].subnet-name`" />
\r
528 <parameter name="gateway-address" value="`$tmp.l3-network.subnet[$sidx].gateway-address`" />
\r
529 <parameter name="network-start-address" value="`$tmp.l3-network.subnet[$sidx].network-start-address`" />
\r
530 <parameter name="cidr-mask" value="`$tmp.l3-network.subnet[$sidx].cidr-mask`" />
\r
531 <parameter name="ip-version" value="`$tmp.l3-network.subnet[$sidx].ip-version`" />
\r
532 <parameter name="dhcp-start" value="`$tmp.l3-network.subnet[$sidx].dhcp-start`" />
\r
533 <parameter name="dhcp-end" value="`$tmp.l3-network.subnet[$sidx].dhcp-end`" />
\r
534 <parameter name="dhcp-enabled" value="`$tmp.l3-network.subnet[$sidx].dhcp-enabled`" />
\r
535 <parameter name="orchestration-status" value="PendingCreate" />
\r
536 <outcome value='failure'>
\r
537 <block atomic='true'>
\r
539 <parameter name="error-code" value="500"/>
\r
540 <parameter name="tmp.error-message" value="`'An error occurred while saving subnet relationship for l3-network in AnAI where network-id = ' + $tmp.l3-network.network-id`"/>
\r
544 <outcome value='not-found'>
\r
545 <block atomic='true'>
\r
547 <parameter name="error-code" value="500"/>
\r
548 <parameter name="tmp.error-message" value="`'An error occurred while saving subnet relationship for l3-network in AnAI where network-id = ' + $tmp.l3-network.network-id`"/>
\r
558 <outcome value='false'>
\r
559 <block atomic="true">
\r
560 <switch test='`$tmp.l3-network.subnet[$sidx].gateway-address`'>
\r
562 <block atomic='true'>
\r
563 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
565 key="l3-network.network-id = $tmp.l3-network.network-id
\r
566 AND subnet.subnet-id = $tmp.subnet-id" >
\r
567 <!-- Create l3-network object -->
\r
568 <parameter name="network-id" value="`$tmp.l3-network.network-id`" />
\r
569 <parameter name="subnet-id" value="`$tmp.l3-network.subnet[$sidx].subnet-id`" />
\r
570 <parameter name="subnet-name" value="`$tmp.l3-network.subnet[$sidx].subnet-name`" />
\r
571 <parameter name="network-start-address" value="`$tmp.l3-network.subnet[$sidx].network-start-address`" />
\r
572 <parameter name="cidr-mask" value="`$tmp.l3-network.subnet[$sidx].cidr-mask`" />
\r
573 <parameter name="ip-version" value="`$tmp.l3-network.subnet[$sidx].ip-version`" />
\r
574 <parameter name="dhcp-enabled" value="`$tmp.l3-network.subnet[$sidx].dhcp-enabled`" />
\r
575 <parameter name="orchestration-status" value="PendingCreate" />
\r
576 <outcome value='failure'>
\r
577 <block atomic='true'>
\r
579 <parameter name="error-code" value="500"/>
\r
580 <parameter name="tmp.error-message" value="`'An error occurred while saving subnet relationship for l3-network in AnAI where network-id = ' + $tmp.l3-network.network-id`"/>
\r
584 <outcome value='not-found'>
\r
585 <block atomic='true'>
\r
587 <parameter name="error-code" value="500"/>
\r
588 <parameter name="tmp.error-message" value="`'An error occurred while saving subnet relationship for l3-network in AnAI where network-id = ' + $tmp.l3-network.network-id`"/>
\r
595 <outcome value='Other'>
\r
596 <block atomic='true'>
\r
597 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
599 key="l3-network.network-id = $tmp.l3-network.network-id
\r
600 AND subnet.subnet-id = $tmp.subnet-id" >
\r
601 <!-- Create l3-network object -->
\r
602 <parameter name="network-id" value="`$tmp.l3-network.network-id`" />
\r
603 <parameter name="subnet-id" value="`$tmp.l3-network.subnet[$sidx].subnet-id`" />
\r
604 <parameter name="subnet-name" value="`$tmp.l3-network.subnet[$sidx].subnet-name`" />
\r
605 <parameter name="gateway-address" value="`$tmp.l3-network.subnet[$sidx].gateway-address`" />
\r
606 <parameter name="network-start-address" value="`$tmp.l3-network.subnet[$sidx].network-start-address`" />
\r
607 <parameter name="cidr-mask" value="`$tmp.l3-network.subnet[$sidx].cidr-mask`" />
\r
608 <parameter name="ip-version" value="`$tmp.l3-network.subnet[$sidx].ip-version`" />
\r
609 <parameter name="dhcp-enabled" value="`$tmp.l3-network.subnet[$sidx].dhcp-enabled`" />
\r
610 <parameter name="orchestration-status" value="PendingCreate" />
\r
611 <outcome value='failure'>
\r
612 <block atomic='true'>
\r
614 <parameter name="error-code" value="500"/>
\r
615 <parameter name="tmp.error-message" value="`'An error occurred while saving subnet relationship for l3-network in AnAI where network-id = ' + $tmp.l3-network.network-id`"/>
\r
619 <outcome value='not-found'>
\r
620 <block atomic='true'>
\r
622 <parameter name="error-code" value="500"/>
\r
623 <parameter name="tmp.error-message" value="`'An error occurred while saving subnet relationship for l3-network in AnAI where network-id = ' + $tmp.l3-network.network-id`"/>
\r
635 <parameter name="nig.subnets[$msidx].start-address" value="`$tmp.l3-network.subnet[$sidx].network-start-address`" />
\r
636 <parameter name="nig.subnets[$msidx].subnet-id" value="`$tmp.l3-network.subnet[$sidx].subnet-id`" />
\r
637 <parameter name="nig.subnets[$msidx].subnet-name" value="`$tmp.l3-network.subnet[$sidx].subnet-name`" />
\r
638 <parameter name="nig.subnets[$msidx].gateway-address" value="`$tmp.l3-network.subnet[$sidx].gateway-address`" />
\r
639 <parameter name="nig.subnets[$msidx].cidr-mask" value="`$tmp.l3-network.subnet[$sidx].cidr-mask`" />
\r
640 <parameter name="nig.subnets[$msidx].ip-version" value="`$tmp.l3-network.subnet[$sidx].ip-version`" />
\r
641 <parameter name="nig.subnets[$msidx].dhcp-start-address" value="`$tmp.l3-network.subnet[$sidx].dhcp-start`" />
\r
642 <parameter name="nig.subnets[$msidx].dhcp-end-address" value="`$tmp.l3-network.subnet[$sidx].dhcp-end`" />
\r
643 <parameter name="nig.subnets[$msidx].dhcp-enabled" value="`$tmp.l3-network.subnet[$sidx].dhcp-enabled`" />
\r
644 <parameter name="orchestration-status" value="PendingCreate" />
\r
647 <parameter name="msidx" value="`$msidx + 1`" />
\r
648 <parameter name="nig.subnets_length" value="`$nig.subnets_length + 1`" />
\r
654 <outcome value='shared'>
\r
655 <block atomic="true">
\r
656 <switch test='`$tmp.first-network`'>
\r
657 <outcome value='true'>
\r
658 <block atomic="true">
\r
660 <parameter name="tmp.skip-first-level" value="Y"/>
\r
661 <parameter name="tmp.allocate-subnet-flag" value="Y"/>
\r
662 <parameter name="generate-FQPN-input.aic-cloud-region" value="`$aai.cloud-region.cloud-region-id`" />
\r
663 <parameter name="generate-FQPN-input.network-name" value="`$network-topology.network-topology-identifier-structure.network-name`" />
\r
664 <parameter name="generate-FQPN-input.network-role" value="`$network-topology.network-topology-identifier-structure.network-role`" />
\r
665 <parameter name="generate-FQPN-input.network-collection" value="`$aaiapi.output.collection-name`" />
\r
666 <parameter name="generate-FQPN-input.network-id" value="`$network-topology.network-topology-identifier-structure.network-id`" />
\r
667 <parameter name="tmp.network-id" value="`network-topology.network-topology-identifier-structure.network-id`" />
\r
668 <parameter name="tmp.network-instance-group-id" value="`$network-topology.network-topology-identifier-structure.network-instance-group-id`" />
\r
669 <!-- the following are not set by calling dg
\r
670 generate-FQPN-input.subnet-role
\r
671 generate-FQPN-input.zone
\r
672 generate-FQPN-input.equipment
\r
674 <!-- network model is already in contect memory -->
\r
675 <!-- aai.cloud-region.cloud-region-id is already in contect memory -->
\r
677 <call module='GENERIC-RESOURCE-API' rpc='process-generic-eipam-pools' mode='sync' >
\r
678 <outcome value='failure'>
\r
679 <return status="failure">
\r
680 <parameter name="ack-final" value="Y" />
\r
681 <parameter name="error-code" value="500"/>
\r
682 <parameter name="error-message" value="`'Error from process-generic-eipam-pools, ' + $error-message`" />
\r
686 <switch test="`$network-model.eipam-v4-address-plan != ''`">
\r
687 <outcome value='true'>
\r
688 <block atomic='true'>
\r
690 <parameter name="network-topology.network-identifier-structure.eipam-v4-address-plan" value="`$network-model.eipam-v4-address-plan`" />
\r
692 <for silentFailure='true' index='eidx' start='0' end='`$eipam-ip-block.createPoolResponse.CreatePoolPlans_length`' >
\r
693 <switch test="`$eipam-ip-block.createPoolResponse.CreatePoolPlans[$eidx].CreatePoolPlan.PlanName == $network-model.eipam-v4-address-plan`">
\r
694 <outcome value='true'>
\r
695 <block atomic='true'>
\r
697 <parameter name="v4.ip-prefix" value="`$eipam-ip-block.createPoolResponse.CreatePoolPlans[$eidx].CreatePoolPlan.IPDataBlock.IPAddress`"/>
\r
698 <parameter name="v4.mask" value="`$eipam-ip-block.createPoolResponse.CreatePoolPlans[$eidx].CreatePoolPlan.IPDataBlock.Mask`"/>
\r
699 <parameter name="v4.entity-id" value="`$eipam-ip-block.createPoolResponse.CreatePoolPlans[$eidx].CreatePoolPlan.IPDataBlock.IpamPoolAllocId`"/>
\r
708 <switch test="`$network-model.eipam-v6-address-plan != ''`">
\r
709 <outcome value='true'>
\r
710 <block atomic='true'>
\r
712 <parameter name="network-topology.network-identifier-structure.eipam-v6-address-plan" value="`$network-model.eipam-v4-address-plan`" />
\r
714 <for silentFailure='true' index='eidx' start='0' end='`$eipam-ip-block.createPoolResponse.CreatePoolPlans_length`' >
\r
715 <switch test="`$eipam-ip-block.createPoolResponse.CreatePoolPlans[$eidx].CreatePoolPlan.PlanName == $network-model.eipam-v6-address-plan`">
\r
716 <outcome value='true'>
\r
717 <block atomic='true'>
\r
719 <parameter name="v6.ip-prefix" value="`$eipam-ip-block.createPoolResponse.CreatePoolPlans[$eidx].CreatePoolPlan.IPDataBlock.IPAddress`"/>
\r
720 <parameter name="v6.mask" value="`$eipam-ip-block.createPoolResponse.CreatePoolPlans[$eidx].CreatePoolPlan.IPDataBlock.Mask`"/>
\r
721 <parameter name="v6.entity-id" value="`$eipam-ip-block.createPoolResponse.CreatePoolPlans[$eidx].CreatePoolPlan.IPDataBlock.IpamPoolAllocId`"/>
\r
730 <!--tmp.level should be set to 1-->
\r
731 <call module='GENERIC-RESOURCE-API' rpc='create-l3-subnet' mode='sync' ></call>
\r
732 <switch test='`$tmp.l3-network.service-id`'>
\r
734 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
735 resource="l3-network"
\r
736 key="l3-network.network-id = $tmp.l3-network.network-id" >
\r
737 <!-- Create l3-network object -->
\r
738 <parameter name="network-id" value="`$tmp.l3-network.network-id`" />
\r
739 <parameter name="network-name" value="`$tmp.l3-network.network-name`" />
\r
740 <parameter name="network-type" value="`$network-model.network-type`" />
\r
741 <parameter name="network-role" value="`$network-model.network-role`" />
\r
742 <parameter name="network-technology" value="`$network-model.network-technology`" />
\r
743 <parameter name="is-bound-to-vpn" value="`$tmp.l3-network.is-bound-to-vpn-boolean`" />
\r
744 <parameter name="tenant-id" value="`$network-topology-operation-input.network-request-information.tenant`" />
\r
745 <parameter name="model-invariant-id" value="`$network-model.invariant_uuid`" />
\r
746 <parameter name="model-version" value="`$network-model.version`" />
\r
747 <parameter name="model-customization-id" value="`$network-model.customization-id`" />
\r
748 <parameter name="physical-network-name" value="`$network-model.physical-network-name`" />
\r
749 <parameter name="is-provider-network" value="`$tmp.l3-network.is-provider-network-boolean`" />
\r
750 <parameter name="is-shared-network" value="`$tmp.l3-network.is-shared-network-boolean`" />
\r
751 <parameter name="is-external-network" value="`$tmp.l3-network.is-external-network-boolean`" />
\r
752 <parameter name="selflink" value="`$tmp.l3-network.self-link`" />
\r
753 <parameter name="operational-status" value="out-of-service-path" />
\r
754 <outcome value='failure'>
\r
755 <return status='failure'>
\r
756 <parameter name='ack-final' value='Y'/>
\r
757 <parameter name="error-code" value="500" />
\r
758 <parameter name="error-message" value="`'Failed to save l3-network in AAI for network-id = ' + $tmp.l3-network.network-id`" />
\r
761 <outcome value='not-found'>
\r
762 <return status='failure'>
\r
763 <parameter name='ack-final' value='Y'/>
\r
764 <parameter name="error-code" value="500" />
\r
765 <parameter name="error-message" value="`'Failed to save l3-network in AAI for network-id = ' + $tmp.l3-network.network-id`" />
\r
770 <outcome value='Other'>
\r
771 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
772 resource="l3-network"
\r
773 key="l3-network.network-id = $tmp.l3-network.network-id" >
\r
774 <!-- Create l3-network object -->
\r
775 <parameter name="network-id" value="`$tmp.l3-network.network-id`" />
\r
776 <parameter name="network-name" value="`$tmp.l3-network.network-name`" />
\r
777 <parameter name="network-type" value="`$network-model.network-type`" />
\r
778 <parameter name="network-role" value="`$network-model.network-role`" />
\r
779 <parameter name="network-technology" value="`$network-model.network-technology`" />
\r
780 <parameter name="is-bound-to-vpn" value="`$tmp.l3-network.is-bound-to-vpn-boolean`" />
\r
781 <parameter name="tenant-id" value="`$network-topology-operation-input.network-request-information.tenant`" />
\r
782 <parameter name="model-invariant-id" value="`$network-model.invariant_uuid`" />
\r
783 <parameter name="model-version" value="`$network-model.version`" />
\r
784 <parameter name="model-customization-id" value="`$network-model.customization-id`" />
\r
785 <parameter name="physical-network-name" value="`$network-model.physical-network-name`" />
\r
786 <parameter name="is-provider-network" value="`$tmp.l3-network.is-provider-network-boolean`" />
\r
787 <parameter name="is-shared-network" value="`$tmp.l3-network.is-shared-network-boolean`" />
\r
788 <parameter name="is-external-network" value="`$tmp.l3-network.is-external-network-boolean`" />
\r
789 <parameter name="selflink" value="`$tmp.l3-network.self-link`" />
\r
790 <parameter name="service-id" value="`$tmp.l3-network.service-id`" />
\r
791 <parameter name="operational-status" value="out-of-service-path" />
\r
792 <outcome value='failure'>
\r
793 <return status='failure'>
\r
794 <parameter name='ack-final' value='Y'/>
\r
795 <parameter name="error-code" value="500" />
\r
796 <parameter name="error-message" value="`'Failed to save l3-network in AAI for network-id = ' + $tmp.l3-network.network-id`" />
\r
799 <outcome value='not-found'>
\r
800 <return status='failure'>
\r
801 <parameter name='ack-final' value='Y'/>
\r
802 <parameter name="error-code" value="500" />
\r
803 <parameter name="error-message" value="`'Failed to save l3-network in AAI for network-id = ' + $tmp.l3-network.network-id`" />
\r
810 <parameter name="msidx" value="`$nig.subnets_length`" />
\r
812 <for index='sidx' start='0' end='`$tmp.l3-network.subnet_length`' >
\r
813 <block atomic="true">
\r
815 <parameter name="tmp.subnet-id" value="`$tmp.l3-network.subnet[$sidx].subnet-id`"/>
\r
817 <switch test='`$tmp.l3-network.subnet[$sidx].dhcp-enabled`'>
\r
818 <outcome value='true'>
\r
819 <block atomic="true">
\r
820 <switch test='`$tmp.l3-network.subnet[$sidx].gateway-address`'>
\r
822 <block atomic='true'>
\r
823 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
825 key="l3-network.network-id = $tmp.l3-network.network-id
\r
826 AND subnet.subnet-id = $tmp.subnet-id" >
\r
827 <!-- Create l3-network object -->
\r
828 <parameter name="network-id" value="`$tmp.l3-network.network-id`" />
\r
829 <parameter name="subnet-id" value="`$tmp.l3-network.subnet[$sidx].subnet-id`" />
\r
830 <parameter name="subnet-name" value="`$tmp.l3-network.subnet[$sidx].subnet-name`" />
\r
831 <parameter name="network-start-address" value="`$tmp.l3-network.subnet[$sidx].network-start-address`" />
\r
832 <parameter name="cidr-mask" value="`$tmp.l3-network.subnet[$sidx].cidr-mask`" />
\r
833 <parameter name="ip-version" value="`$tmp.l3-network.subnet[$sidx].ip-version`" />
\r
834 <parameter name="dhcp-start" value="`$tmp.l3-network.subnet[$sidx].dhcp-start`" />
\r
835 <parameter name="dhcp-end" value="`$tmp.l3-network.subnet[$sidx].dhcp-end`" />
\r
836 <parameter name="dhcp-enabled" value="`$tmp.l3-network.subnet[$sidx].dhcp-enabled`" />
\r
837 <parameter name="orchestration-status" value="PendingCreate" />
\r
838 <outcome value='failure'>
\r
839 <block atomic='true'>
\r
841 <parameter name="error-code" value="500"/>
\r
842 <parameter name="tmp.error-message" value="`'An error occurred while saving subnet relationship for l3-network in AnAI where network-id = ' + $tmp.l3-network.network-id`"/>
\r
846 <outcome value='not-found'>
\r
847 <block atomic='true'>
\r
849 <parameter name="error-code" value="500"/>
\r
850 <parameter name="tmp.error-message" value="`'An error occurred while saving subnet relationship for l3-network in AnAI where network-id = ' + $tmp.l3-network.network-id`"/>
\r
857 <outcome value='Other'>
\r
858 <block atomic='true'>
\r
859 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
861 key="l3-network.network-id = $tmp.l3-network.network-id
\r
862 AND subnet.subnet-id = $tmp.subnet-id" >
\r
863 <!-- Create l3-network object -->
\r
864 <parameter name="network-id" value="`$tmp.l3-network.network-id`" />
\r
865 <parameter name="subnet-id" value="`$tmp.l3-network.subnet[$sidx].subnet-id`" />
\r
866 <parameter name="subnet-name" value="`$tmp.l3-network.subnet[$sidx].subnet-name`" />
\r
867 <parameter name="gateway-address" value="`$tmp.l3-network.subnet[$sidx].gateway-address`" />
\r
868 <parameter name="network-start-address" value="`$tmp.l3-network.subnet[$sidx].network-start-address`" />
\r
869 <parameter name="cidr-mask" value="`$tmp.l3-network.subnet[$sidx].cidr-mask`" />
\r
870 <parameter name="ip-version" value="`$tmp.l3-network.subnet[$sidx].ip-version`" />
\r
871 <parameter name="dhcp-start" value="`$tmp.l3-network.subnet[$sidx].dhcp-start`" />
\r
872 <parameter name="dhcp-end" value="`$tmp.l3-network.subnet[$sidx].dhcp-end`" />
\r
873 <parameter name="dhcp-enabled" value="`$tmp.l3-network.subnet[$sidx].dhcp-enabled`" />
\r
874 <parameter name="orchestration-status" value="PendingCreate" />
\r
875 <outcome value='failure'>
\r
876 <block atomic='true'>
\r
878 <parameter name="error-code" value="500"/>
\r
879 <parameter name="tmp.error-message" value="`'An error occurred while saving subnet relationship for l3-network in AnAI where network-id = ' + $tmp.l3-network.network-id`"/>
\r
883 <outcome value='not-found'>
\r
884 <block atomic='true'>
\r
886 <parameter name="error-code" value="500"/>
\r
887 <parameter name="tmp.error-message" value="`'An error occurred while saving subnet relationship for l3-network in AnAI where network-id = ' + $tmp.l3-network.network-id`"/>
\r
897 <outcome value='false'>
\r
898 <block atomic="true">
\r
899 <switch test='`$tmp.l3-network.subnet[$sidx].gateway-address`'>
\r
901 <block atomic='true'>
\r
902 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
904 key="l3-network.network-id = $tmp.l3-network.network-id
\r
905 AND subnet.subnet-id = $tmp.subnet-id" >
\r
906 <!-- Create l3-network object -->
\r
907 <parameter name="network-id" value="`$tmp.l3-network.network-id`" />
\r
908 <parameter name="subnet-id" value="`$tmp.l3-network.subnet[$sidx].subnet-id`" />
\r
909 <parameter name="subnet-name" value="`$tmp.l3-network.subnet[$sidx].subnet-name`" />
\r
910 <parameter name="network-start-address" value="`$tmp.l3-network.subnet[$sidx].network-start-address`" />
\r
911 <parameter name="cidr-mask" value="`$tmp.l3-network.subnet[$sidx].cidr-mask`" />
\r
912 <parameter name="ip-version" value="`$tmp.l3-network.subnet[$sidx].ip-version`" />
\r
913 <parameter name="dhcp-enabled" value="`$tmp.l3-network.subnet[$sidx].dhcp-enabled`" />
\r
914 <parameter name="orchestration-status" value="PendingCreate" />
\r
915 <outcome value='failure'>
\r
916 <block atomic='true'>
\r
918 <parameter name="error-code" value="500"/>
\r
919 <parameter name="tmp.error-message" value="`'An error occurred while saving subnet relationship for l3-network in AnAI where network-id = ' + $tmp.l3-network.network-id`"/>
\r
923 <outcome value='not-found'>
\r
924 <block atomic='true'>
\r
926 <parameter name="error-code" value="500"/>
\r
927 <parameter name="tmp.error-message" value="`'An error occurred while saving subnet relationship for l3-network in AnAI where network-id = ' + $tmp.l3-network.network-id`"/>
\r
934 <outcome value='Other'>
\r
935 <block atomic='true'>
\r
936 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
938 key="l3-network.network-id = $tmp.l3-network.network-id
\r
939 AND subnet.subnet-id = $tmp.subnet-id" >
\r
940 <!-- Create l3-network object -->
\r
941 <parameter name="network-id" value="`$tmp.l3-network.network-id`" />
\r
942 <parameter name="subnet-id" value="`$tmp.l3-network.subnet[$sidx].subnet-id`" />
\r
943 <parameter name="subnet-name" value="`$tmp.l3-network.subnet[$sidx].subnet-name`" />
\r
944 <parameter name="gateway-address" value="`$tmp.l3-network.subnet[$sidx].gateway-address`" />
\r
945 <parameter name="network-start-address" value="`$tmp.l3-network.subnet[$sidx].network-start-address`" />
\r
946 <parameter name="cidr-mask" value="`$tmp.l3-network.subnet[$sidx].cidr-mask`" />
\r
947 <parameter name="ip-version" value="`$tmp.l3-network.subnet[$sidx].ip-version`" />
\r
948 <parameter name="dhcp-enabled" value="`$tmp.l3-network.subnet[$sidx].dhcp-enabled`" />
\r
949 <parameter name="orchestration-status" value="PendingCreate" />
\r
950 <outcome value='failure'>
\r
951 <block atomic='true'>
\r
953 <parameter name="error-code" value="500"/>
\r
954 <parameter name="tmp.error-message" value="`'An error occurred while saving subnet relationship for l3-network in AnAI where network-id = ' + $tmp.l3-network.network-id`"/>
\r
958 <outcome value='not-found'>
\r
959 <block atomic='true'>
\r
961 <parameter name="error-code" value="500"/>
\r
962 <parameter name="tmp.error-message" value="`'An error occurred while saving subnet relationship for l3-network in AnAI where network-id = ' + $tmp.l3-network.network-id`"/>
\r
974 <parameter name="nig.subnets[$msidx].start-address" value="`$tmp.l3-network.subnet[$sidx].network-start-address`" />
\r
975 <parameter name="nig.subnets[$msidx].subnet-id" value="`$tmp.l3-network.subnet[$sidx].subnet-id`" />
\r
976 <parameter name="nig.subnets[$msidx].subnet-name" value="`$tmp.l3-network.subnet[$sidx].subnet-name`" />
\r
977 <parameter name="nig.subnets[$msidx].gateway-address" value="`$tmp.l3-network.subnet[$sidx].gateway-address`" />
\r
978 <parameter name="nig.subnets[$msidx].cidr-mask" value="`$tmp.l3-network.subnet[$sidx].cidr-mask`" />
\r
979 <parameter name="nig.subnets[$msidx].ip-version" value="`$tmp.l3-network.subnet[$sidx].ip-version`" />
\r
980 <parameter name="nig.subnets[$msidx].dhcp-start-address" value="`$tmp.l3-network.subnet[$sidx].dhcp-start`" />
\r
981 <parameter name="nig.subnets[$msidx].dhcp-end-address" value="`$tmp.l3-network.subnet[$sidx].dhcp-end`" />
\r
982 <parameter name="nig.subnets[$msidx].dhcp-enabled" value="`$tmp.l3-network.subnet[$sidx].dhcp-enabled`" />
\r
983 <parameter name="orchestration-status" value="PendingCreate" />
\r
986 <parameter name="msidx" value="`$msidx + 1`" />
\r
987 <parameter name="nig.subnets_length" value="`$nig.subnets_length + 1`" />
\r
993 <outcome value='false'>
\r
994 <block atomic='true'>
\r
995 <switch test='`$ngnidx`'>
\r
997 <for index='sidx' start='0' end='`$tmp.l3-network.subnet_length`' >
\r
998 <block atomic="true">
\r
1000 <parameter name="tmp.subnet-id" value="`$tmp.l3-network.subnet[$sidx].subnet-id`"/>
\r
1002 <switch test='`$tmp.l3-network.subnet[$sidx].dhcp-enabled`'></switch>
\r
1006 <outcome value='Other'></outcome>
\r
1014 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
1015 resource="l3-network:relationship-list"
\r
1016 key="l3-network.network-id = $tmp.l3-network.network-id"
\r
1018 local-only="false">
\r
1019 <parameter name="relationship-list.relationship[0].related-to" value="instance-group" />
\r
1020 <parameter name="relationship-list.relationship[0].related-link" value="`'/aai/v$/network/instance-groups/instance-group/'+ $tmp.network-instance-group-id`" />
\r
1021 <outcome value='failure'>
\r
1022 <block atomic='true'>
\r
1024 <parameter name="error-code" value="500"/>
\r
1025 <parameter name="tmp.error-message" value="`'An error occurred while saving instance-group relationship for l3-network in AnAI where instance-group-id = ' + $tmp.network-instance-group-id`"/>
\r
1029 <outcome value='not-found'>
\r
1030 <block atomic='true'>
\r
1032 <parameter name="error-code" value="500"/>
\r
1033 <parameter name="tmp.error-message" value="`'An error occurred while saving instance-group relationship for l3-network in AnAI where instance-group-id = ' + $tmp.network-instance-group-id`"/>
\r
1038 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
1039 resource="l3-network:relationship-list"
\r
1040 key="l3-network.network-id = $tmp.l3-network.network-id" >
\r
1041 <parameter name="relationship-list.relationship[0].related-to" value="service-instance" />
\r
1042 <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="customer.global-customer-id" />
\r
1043 <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$service-data.service-information.global-customer-id`" />
\r
1044 <parameter name="relationship-list.relationship[0].relationship-data[1].relationship-key" value="service-subscription.service-type" />
\r
1045 <parameter name="relationship-list.relationship[0].relationship-data[1].relationship-value" value="`$service-data.service-information.subscription-service-type`" />
\r
1046 <parameter name="relationship-list.relationship[0].relationship-data[2].relationship-key" value="service-instance.service-instance-id" />
\r
1047 <parameter name="relationship-list.relationship[0].relationship-data[2].relationship-value" value="`$service-data.service-information.service-instance-id`" />
\r
1048 <outcome value='failure'>
\r
1049 <block atomic='true'>
\r
1051 <parameter name="error-code" value="500"/>
\r
1052 <parameter name="tmp.error-message" value="`'An error occurred while saving service-instance relationship for l3-network in AnAI where service-instance-id = ' + $network-topology-operation-input.service-information.service-instance-id`"/>
\r
1056 <outcome value='not-found'>
\r
1057 <block atomic='true'>
\r
1059 <parameter name="error-code" value="500"/>
\r
1060 <parameter name="tmp.error-message" value="`'An error occurred while saving service-instance relationship for l3-network in AnAI where service-instance-id = ' + $network-topology-operation-input.service-information.service-instance-id`"/>
\r
1066 <parameter name='network-topology.network-topology-identifier-structure.' value='`$tmp.l3-network.`' />
\r
1067 <parameter name='network-topology.tenant' value='`$network-topology-operation-input.network-request-input.tenant`' />
\r
1068 <parameter name='network-topology.onap-model-information.' value='`$network-topology-operation-input.network-information.onap-model-information.`' />
\r
1069 <parameter name='network-topology.network-parameters.' value='`$network-topology-operation-input.network-request-input.network-parameters.`' />
\r
1070 <parameter name='network-topology.aic-cloud-region' value='`$network-topology-operation-input.network-request-input.aic-cloud-region`' />
\r
1073 <parameter name="service-data.network-instance-groups.network-instance-group[$ngidx]." value='`$nig.`' />
\r
1076 <parameter name="service-data.networks.network[$nidx].network-id" value='`$tmp.l3-network.network-id`' />
\r
1077 <parameter name="service-data.networks.network[$nidx].network-data.network-topology." value='$network-topology.' />
\r
1078 <parameter name="service-data.networks.network_length" value='`$nidx_len`' />
\r
1081 <parameter name='networkId' value='`$tmp.l3-network.network-id`' />
\r
1084 <parameter name='network-object-path'
\r
1085 value="`$tmp.l3-network.self-link`"/>
\r
1088 <parameter name='service-data.networks.network[$nidx].network-data.network-level-oper-status.order-status' value='PendingCreate' />
\r
1089 <parameter name='service-data.networks.network[$nidx].network-data.network-level-oper-status.last-rpc-action' value='`$network-topology-operation-input.sdnc-request-header.svc-action`' />
\r
1090 <parameter name='service-data.networks.network[$nidx].network-data.network-level-oper-status.last-action' value='`$network-topology-operation-input.request-information.request-action`' />
\r
1092 <return status='success'>
\r
1093 <parameter name='' value='' />
\r