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='eipam-create-generic-pool' mode='sync'>
\r
5 <block atomic='true'>
\r
7 <parameter name="tmp.eipam-error" value="false" />
\r
8 <parameter name="tmp.create-v4-pool-flag" value="N" />
\r
9 <parameter name="tmp.create-v6-pool-flag" value="N" />
\r
10 <parameter name='eipam-ip-block.plans_length' value='0' />
\r
11 <parameter name="eipam-pool.v4.pre-existing" value="N"/>
\r
12 <parameter name="eipam-pool.v6.pre-existing" value="N"/>
\r
13 <parameter name="level" value="`$eipam-ip-block.level - 1`" />
\r
15 <switch test="`$tmp.allocate-subnet-flag`">
\r
17 <block atomic='true'>
\r
18 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
20 <parameter name="tmp.allocate-subnet-flag" value="Y"/>
\r
24 <outcome value='Y'></outcome>
\r
25 <outcome value='N'></outcome>
\r
27 <switch test="`$network-model.use-ipv4`">
\r
29 <block atomic='true'>
\r
31 plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'
\r
33 key="SELECT * FROM EIPAM_IP_POOLS where plan_name = $network-model.eipam-v4-address-plan and level = $eipam-ip-block.level and key_value = $v4FQPN-output.pools[$level].key-value ;"
\r
34 pfx='tmp.eipam-pool-row'>
\r
35 <outcome value='failure'>
\r
36 <return status="failure">
\r
37 <parameter name="tmp.eipam-error" value="true" />
\r
38 <parameter name="error-code" value="500"/>
\r
39 <parameter name="error-message" value="Query to DB table EIPAM_IP_POOLS failed." />
\r
42 <outcome value='success'>
\r
43 <block atomic='true'>
\r
44 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
45 <parameter name="logger" value="message-log"/>
\r
46 <parameter name="field1" value="__TIMESTAMP__"/>
\r
47 <parameter name="field2" value="network-topology-operation"/>
\r
48 <parameter name="field3" value="eipam-create-generic-pool"/>
\r
49 <parameter name="field4" value="`$network-model.eipam-v4-address-plan`"/>
\r
50 <parameter name="field5" value="`$v4FQPN-output.pools[$eipam-ip-block.level - 1].key-value`"/>
\r
51 <parameter name="field6" value="Level already exists, SKIP."/>
\r
52 <parameter name="field7" value="`$eipam-ip-block.level`"/>
\r
53 <parameter name="field8" value="`$tmp.eipam-pool-row.pool-id`"/>
\r
56 <parameter name="eipam-pool.v4.pre-existing" value="Y"/>
\r
60 <outcome value="not-found">
\r
61 <switch test="`$l-idx`">
\r
63 <block atomic='true'>
\r
64 <switch test="`$tmp.qip-pool`">
\r
65 <outcome value=""></outcome>
\r
66 <outcome value='Other'>
\r
67 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
69 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].parent-pool" value="`$tmp.qip-pool`"/>
\r
70 <parameter name="tmp.v4-qip-pool" value="`$tmp.qip-pool`" />
\r
74 <switch test="`$tmp.skip-first-level`">
\r
75 <outcome value='Y'></outcome>
\r
77 <block atomic='true'>
\r
78 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
80 <parameter name="network-topology-identifier-structure.eipam-v4-address-plan" value="`$network-model.eipam-v4-address-plan`"/>
\r
81 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name" value="`$network-model.eipam-v4-address-plan`"/>
\r
82 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests_length" value="1"/>
\r
83 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].allocate-subnet-flag" value="`$tmp.allocate-subnet-flag`"/>
\r
84 <!-- Number of Pool Levels -->
\r
85 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools_length" value="`$eipam-ip-block.level`"/>
\r
87 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
89 <parameter name="tmp.create-v4-pool-flag" value="Y" />
\r
91 <for index="l4-idx" start="0" end="`$eipam-ip-block.level`">
\r
92 <block atomic='true'>
\r
93 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
95 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l4-idx].key-name" value="`$v4FQPN-output.pools[$l4-idx].key-name`"/>
\r
96 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l4-idx].key-value" value="`$v4FQPN-output.pools[$l4-idx].key-value`"/>
\r
98 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
99 <parameter name="logger" value="message-log"/>
\r
100 <parameter name="field1" value="__TIMESTAMP__"/>
\r
101 <parameter name="field2" value="network-topology-operation"/>
\r
102 <parameter name="field3" value="eipam-create-generic-pool"/>
\r
103 <parameter name="field4" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name`"/>
\r
104 <parameter name="field5" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l4-idx].key-name`"/>
\r
105 <parameter name="field6" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l4-idx].key-value`"/>
\r
110 <parameter name="eipam-ip-block.plans_length" value="`$eipam-ip-block.plans_length + 1`" />
\r
114 <outcome value='N'>
\r
115 <block atomic='true'>
\r
116 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
118 <parameter name="network-topology-identifier-structure.eipam-v4-address-plan" value="`$network-model.eipam-v4-address-plan`"/>
\r
119 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name" value="`$network-model.eipam-v4-address-plan`"/>
\r
120 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests_length" value="1"/>
\r
121 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].allocate-subnet-flag" value="`$tmp.allocate-subnet-flag`"/>
\r
122 <!-- Number of Pool Levels -->
\r
123 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools_length" value="`$eipam-ip-block.level`"/>
\r
125 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
127 <parameter name="tmp.create-v4-pool-flag" value="Y" />
\r
129 <for index="l4-idx" start="0" end="`$eipam-ip-block.level`">
\r
130 <block atomic='true'>
\r
131 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
133 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l4-idx].key-name" value="`$v4FQPN-output.pools[$l4-idx].key-name`"/>
\r
134 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l4-idx].key-value" value="`$v4FQPN-output.pools[$l4-idx].key-value`"/>
\r
136 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
137 <parameter name="logger" value="message-log"/>
\r
138 <parameter name="field1" value="__TIMESTAMP__"/>
\r
139 <parameter name="field2" value="network-topology-operation"/>
\r
140 <parameter name="field3" value="eipam-create-generic-pool"/>
\r
141 <parameter name="field4" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name`"/>
\r
142 <parameter name="field5" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l4-idx].key-name`"/>
\r
143 <parameter name="field6" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l4-idx].key-value`"/>
\r
148 <parameter name="eipam-ip-block.plans_length" value="`$eipam-ip-block.plans_length + 1`" />
\r
156 <return status="failure">
\r
157 <parameter name="tmp.eipam-error" value="true" />
\r
158 <parameter name="error-code" value="500"/>
\r
159 <parameter name="error-message" value="Please set the eipam-ip-block.level for appropriate EIPAM request." />
\r
162 <outcome value='Other'>
\r
163 <block atomic='true'>
\r
164 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
166 <parameter name="network-topology-identifier-structure.eipam-v4-address-plan" value="`$network-model.eipam-v4-address-plan`"/>
\r
167 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name" value="`$network-model.eipam-v4-address-plan`"/>
\r
168 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests_length" value="1"/>
\r
169 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].allocate-subnet-flag" value="`$tmp.allocate-subnet-flag`"/>
\r
170 <!-- Number of Pool Levels -->
\r
171 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools_length" value="`$eipam-ip-block.level`"/>
\r
173 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
175 <parameter name="tmp.create-v4-pool-flag" value="Y" />
\r
177 <for index="l4-idx" start="0" end="`$eipam-ip-block.level`">
\r
178 <block atomic='true'>
\r
179 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
181 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l4-idx].key-name" value="`$v4FQPN-output.pools[$l4-idx].key-name`"/>
\r
182 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l4-idx].key-value" value="`$v4FQPN-output.pools[$l4-idx].key-value`"/>
\r
184 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
185 <parameter name="logger" value="message-log"/>
\r
186 <parameter name="field1" value="__TIMESTAMP__"/>
\r
187 <parameter name="field2" value="network-topology-operation"/>
\r
188 <parameter name="field3" value="eipam-create-generic-pool"/>
\r
189 <parameter name="field4" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name`"/>
\r
190 <parameter name="field5" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l4-idx].key-name`"/>
\r
191 <parameter name="field6" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l4-idx].key-value`"/>
\r
196 <parameter name="eipam-ip-block.plans_length" value="`$eipam-ip-block.plans_length + 1`" />
\r
205 <outcome value=""></outcome>
\r
206 <outcome value='N'></outcome>
\r
208 <switch test="`$network-model.use-ipv6`">
\r
209 <outcome value='Y'>
\r
210 <block atomic='true'>
\r
212 plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'
\r
214 key="SELECT * FROM EIPAM_IP_POOLS where plan_name = $network-model.eipam-v6-address-plan and level = $eipam-ip-block.level and key_value = $v6FQPN-output.pools[$level].key-value ;"
\r
215 pfx='tmp.eipam-pool-row'>
\r
216 <outcome value='failure'>
\r
217 <return status="failure">
\r
218 <parameter name="tmp.eipam-error" value="true" />
\r
219 <parameter name="error-code" value="500"/>
\r
220 <parameter name="error-message" value="Query to DB table EIPAM_IP_POOLS failed." />
\r
223 <outcome value='success'>
\r
224 <block atomic='true'>
\r
225 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
226 <parameter name="logger" value="message-log"/>
\r
227 <parameter name="field1" value="__TIMESTAMP__"/>
\r
228 <parameter name="field2" value="network-topology-operation"/>
\r
229 <parameter name="field3" value="eipam-create-generic-pool"/>
\r
230 <parameter name="field4" value="`$network-model.eipam-v6-address-plan`"/>
\r
231 <parameter name="field5" value="`$v6FQPN-output.pools[$eipam-ip-block.level - 1].key-value`"/>
\r
232 <parameter name="field6" value="Level already exists, SKIP."/>
\r
233 <parameter name="field7" value="`$eipam-ip-block.level`"/>
\r
234 <parameter name="field8" value="`$tmp.eipam-pool-row.pool-id`"/>
\r
237 <parameter name="eipam-pool.v6.pre-existing" value="Y"/>
\r
241 <outcome value="not-found">
\r
242 <switch test="`$l-idx`">
\r
243 <outcome value='1'>
\r
244 <block atomic='true'>
\r
245 <switch test="`$tmp.qip-pool`">
\r
246 <outcome value=""></outcome>
\r
247 <outcome value='Other'>
\r
248 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
250 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].parent-pool" value="`$tmp.qip-pool`"/>
\r
251 <parameter name="tmp.v6-qip-pool" value="`$tmp.qip-pool`" />
\r
255 <switch test="`$tmp.skip-first-level`">
\r
256 <outcome value='Y'></outcome>
\r
258 <block atomic='true'>
\r
259 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
261 <parameter name="network-topology-identifier-structure.eipam-v6-address-plan" value="`$network-model.eipam-v6-address-plan`"/>
\r
262 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name" value="`$network-model.eipam-v6-address-plan`"/>
\r
263 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests_length" value="1"/>
\r
264 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].allocate-subnet-flag" value="`$tmp.allocate-subnet-flag`"/>
\r
265 <!-- Number of Pool Levels -->
\r
266 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools_length" value="`$eipam-ip-block.level`"/>
\r
268 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
270 <parameter name="tmp.create-v6-pool-flag" value="Y" />
\r
272 <for index="l6-idx" start="0" end="`$eipam-ip-block.level`">
\r
273 <block atomic='true'>
\r
274 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
276 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l6-idx].key-name" value="`$v6FQPN-output.pools[$l6-idx].key-name`"/>
\r
277 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l6-idx].key-value" value="`$v6FQPN-output.pools[$l6-idx].key-value`"/>
\r
279 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
280 <parameter name="logger" value="message-log"/>
\r
281 <parameter name="field1" value="__TIMESTAMP__"/>
\r
282 <parameter name="field2" value="network-topology-operation"/>
\r
283 <parameter name="field3" value="eipam-create-generic-pool"/>
\r
284 <parameter name="field4" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name`"/>
\r
285 <parameter name="field5" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l6-idx].key-name`"/>
\r
286 <parameter name="field6" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l6-idx].key-value`"/>
\r
287 <parameter name="field7" value="`$l6-idx`"/>
\r
292 <parameter name="eipam-ip-block.plans_length" value="`$eipam-ip-block.plans_length + 1`" />
\r
296 <outcome value='N'>
\r
297 <block atomic='true'>
\r
298 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
300 <parameter name="network-topology-identifier-structure.eipam-v6-address-plan" value="`$network-model.eipam-v6-address-plan`"/>
\r
301 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name" value="`$network-model.eipam-v6-address-plan`"/>
\r
302 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests_length" value="1"/>
\r
303 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].allocate-subnet-flag" value="`$tmp.allocate-subnet-flag`"/>
\r
304 <!-- Number of Pool Levels -->
\r
305 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools_length" value="`$eipam-ip-block.level`"/>
\r
307 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
309 <parameter name="tmp.create-v6-pool-flag" value="Y" />
\r
311 <for index="l6-idx" start="0" end="`$eipam-ip-block.level`">
\r
312 <block atomic='true'>
\r
313 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
315 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l6-idx].key-name" value="`$v6FQPN-output.pools[$l6-idx].key-name`"/>
\r
316 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l6-idx].key-value" value="`$v6FQPN-output.pools[$l6-idx].key-value`"/>
\r
318 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
319 <parameter name="logger" value="message-log"/>
\r
320 <parameter name="field1" value="__TIMESTAMP__"/>
\r
321 <parameter name="field2" value="network-topology-operation"/>
\r
322 <parameter name="field3" value="eipam-create-generic-pool"/>
\r
323 <parameter name="field4" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name`"/>
\r
324 <parameter name="field5" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l6-idx].key-name`"/>
\r
325 <parameter name="field6" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l6-idx].key-value`"/>
\r
326 <parameter name="field7" value="`$l6-idx`"/>
\r
331 <parameter name="eipam-ip-block.plans_length" value="`$eipam-ip-block.plans_length + 1`" />
\r
339 <return status="failure">
\r
340 <parameter name="tmp.eipam-error" value="true" />
\r
341 <parameter name="error-code" value="500"/>
\r
342 <parameter name="error-message" value="Please set the eipam-ip-block.level for appropriate EIPAM request." />
\r
345 <outcome value='Other'>
\r
346 <block atomic='true'>
\r
347 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
349 <parameter name="network-topology-identifier-structure.eipam-v6-address-plan" value="`$network-model.eipam-v6-address-plan`"/>
\r
350 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name" value="`$network-model.eipam-v6-address-plan`"/>
\r
351 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests_length" value="1"/>
\r
352 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].allocate-subnet-flag" value="`$tmp.allocate-subnet-flag`"/>
\r
353 <!-- Number of Pool Levels -->
\r
354 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools_length" value="`$eipam-ip-block.level`"/>
\r
356 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
358 <parameter name="tmp.create-v6-pool-flag" value="Y" />
\r
360 <for index="l6-idx" start="0" end="`$eipam-ip-block.level`">
\r
361 <block atomic='true'>
\r
362 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
364 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l6-idx].key-name" value="`$v6FQPN-output.pools[$l6-idx].key-name`"/>
\r
365 <parameter name="eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l6-idx].key-value" value="`$v6FQPN-output.pools[$l6-idx].key-value`"/>
\r
367 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
368 <parameter name="logger" value="message-log"/>
\r
369 <parameter name="field1" value="__TIMESTAMP__"/>
\r
370 <parameter name="field2" value="network-topology-operation"/>
\r
371 <parameter name="field3" value="eipam-create-generic-pool"/>
\r
372 <parameter name="field4" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].plan-name`"/>
\r
373 <parameter name="field5" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l6-idx].key-name`"/>
\r
374 <parameter name="field6" value="`$eipam-ip-block.plans[$eipam-ip-block.plans_length].requests[0].pools[$l6-idx].key-value`"/>
\r
375 <parameter name="field7" value="`$l6-idx`"/>
\r
380 <parameter name="eipam-ip-block.plans_length" value="`$eipam-ip-block.plans_length + 1`" />
\r
389 <outcome value=""></outcome>
\r
390 <outcome value='N'></outcome>
\r
392 <switch test="`$tmp.create-v4-pool-flag`">
\r
393 <outcome value='Y'>
\r
394 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
395 <execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="createPool">
\r
396 <outcome value='success'></outcome>
\r
397 <outcome value='failure'>
\r
398 <return status="failure">
\r
399 <parameter name="tmp.eipam-error" value="true" />
\r
400 <parameter name="error-code" value="500"/>
\r
401 <parameter name="error-message" value="An error occured while creating pool in EIPAM." />
\r
406 <outcome value='N'>
\r
407 <switch test="`$tmp.create-v6-pool-flag`">
\r
408 <outcome value='Y'>
\r
409 <!--subnet and subnet_keys are deleted in the EIPAMPlugin-->
\r
410 <execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="createPool">
\r
411 <outcome value='success'></outcome>
\r
412 <outcome value='failure'>
\r
413 <return status="failure">
\r
414 <parameter name="tmp.eipam-error" value="true" />
\r
415 <parameter name="error-code" value="500"/>
\r
416 <parameter name="error-message" value="An error occured while creating pool in EIPAM." />
\r
424 <switch test="`$network-model.use-ipv4`">
\r
425 <outcome value='Y'>
\r
426 <block atomic='true'>
\r
427 <switch test="`$eipam-pool.v4.pre-existing`">
\r
428 <outcome value='N'>
\r
429 <block atomic='true'>
\r
431 <parameter name="key-name" value="`$v4FQPN-output.pools[$eipam-ip-block.level - 1].key-name`" />
\r
432 <parameter name="key-value" value="`$v4FQPN-output.pools[$eipam-ip-block.level - 1].key-value`" />
\r
434 <switch test="`$eipam-ip-block.level`">
\r
435 <outcome value='1'>
\r
436 <block atomic='true'>
\r
438 <parameter name="parent_pool" value="`$tmp.v4-qip-pool`" />
\r
439 <parameter name="level" value="`$eipam-ip-block.level - 1`" />
\r
443 <outcome value='Other'>
\r
444 <block atomic='true'>
\r
446 <parameter name="parent_pool" value="`$v4FQPN-output.pools[$eipam-ip-block.level - 2].key-value`" />
\r
447 <parameter name="level" value="`$eipam-ip-block.level - 1`" />
\r
452 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
453 <parameter name="logger" value="message-log"/>
\r
454 <parameter name="field1" value="__TIMESTAMP__"/>
\r
455 <parameter name="field2" value="network-topology-operation"/>
\r
456 <parameter name="field3" value="eipam-create-generic-pool"/>
\r
457 <parameter name="field4" value="`$network-model.eipam-v4-address-plan`"/>
\r
458 <parameter name="field5" value="`$key-name`"/>
\r
459 <parameter name="field6" value="`$key-value`"/>
\r
460 <parameter name="field7" value="`$tmp.network_instance_group_id`"/>
\r
461 <parameter name="field8" value="`$eipam-ip-block.level`"/>
\r
462 <parameter name="field9" value="`$network-model.network-role`"/>
\r
463 <parameter name="field10" value="`$tmp.network-id`"/>
\r
464 <parameter name="field11" value="Saving to EIPAM_IP_POOLS table."/>
\r
466 <switch test="`$network-instance-group-data.subnet-assignment-policy.subnet-use`">
\r
467 <outcome value='shared'>
\r
469 plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'
\r
471 key="INSERT EIPAM_IP_POOLS
\r
473 key_name = $key-name ,
\r
474 key_value = $key-value ,
\r
475 level = $eipam-ip-block.level ,
\r
476 plan_name = $network-model.eipam-v4-address-plan ,
\r
477 address_family = $network-model.ipv4-ip-version ,
\r
478 parent_pool = $parent_pool ,
\r
479 service_instance_id = $network-topology-operation-input.service-information.service-instance-id ,
\r
480 network_id = $tmp.network-id ,
\r
481 network_instance_group_id = $tmp.network-instance-group-id ; "
\r
483 pfx='pfx.eipam-v4pool-row'>
\r
484 <outcome value='failure'>
\r
485 <return status='failure'>
\r
486 <parameter name='error-code' value='500' />
\r
487 <parameter name='error-message' value='failed to update EIPAM_IP_POOLS .' />
\r
492 <outcome value='Other'>
\r
494 plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'
\r
496 key="INSERT EIPAM_IP_POOLS
\r
498 key_name = $key-name ,
\r
499 key_value = $key-value ,
\r
500 level = $eipam-ip-block.level ,
\r
501 plan_name = $network-model.eipam-v4-address-plan ,
\r
502 address_family = $network-model.ipv4-ip-version ,
\r
503 parent_pool = $parent_pool ,
\r
504 service_instance_id = $network-topology-operation-input.service-information.service-instance-id ,
\r
505 network_id = $tmp.network-id ; "
\r
507 pfx='pfx.eipam-v4pool-row'>
\r
508 <outcome value='failure'>
\r
509 <return status='failure'>
\r
510 <parameter name='error-code' value='500' />
\r
511 <parameter name='error-message' value='failed to update EIPAM_IP_POOLS .' />
\r
518 plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'
\r
520 key="INSERT EIPAM_IP_POOLS
\r
522 key_name = $key-name ,
\r
523 key_value = $key-value ,
\r
524 level = $eipam-ip-block.level ,
\r
525 plan_name = $network-model.eipam-v4-address-plan ,
\r
526 address_family = $network-model.ipv4-ip-version ,
\r
527 parent_pool = $parent_pool ,
\r
528 service_instance_id = $network-topology-operation-input.service-information.service-instance-id ,
\r
529 network_id = $tmp.network-id ; "
\r
531 pfx='pfx.eipam-v4pool-row'>
\r
532 <outcome value='failure'>
\r
533 <return status='failure'>
\r
534 <parameter name='error-code' value='500' />
\r
535 <parameter name='error-message' value='failed to update EIPAM_IP_POOLS .' />
\r
541 <switch test="`$eipam-ip-block.level == $eipam-ip-block.getPlanTopologyResponse.TopologyDetails_length`">
\r
542 <outcome value='true'>
\r
543 <block atomic='true'>
\r
544 <switch test="`$tmp.allocate-subnet-flag`">
\r
545 <outcome value='Y'>
\r
546 <block atomic='true'>
\r
547 <for index="i" start="0" end="`$eipam-ip-block.createPoolResponse.CreatePoolPlans.CreatePoolPlan_length`">
\r
548 <block atomic='true'>
\r
549 <switch test="`$network-model.eipam-v4-address-plan == $eipam-ip-block.createPoolResponse.CreatePoolPlans.CreatePoolPlan[$i].PlanName`">
\r
550 <outcome value='true'>
\r
551 <block atomic='true'>
\r
553 <parameter name="index_found" value="true" />
\r
561 <switch test="`$index_found`">
\r
562 <outcome value='true'>
\r
563 <block atomic='true'>
\r
565 plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'
\r
567 key="SELECT * FROM EIPAM_IP_POOLS where plan_name = $network-model.eipam-v4-address-plan and level = $eipam-ip-block.level and key_value = $v4FQPN-output.pools[$level].key-value ;"
\r
568 pfx='tmp.eipam-pool-row'>
\r
569 <outcome value='failure'>
\r
570 <return status="failure">
\r
571 <parameter name="tmp.eipam-error" value="true" />
\r
572 <parameter name="error-code" value="500"/>
\r
573 <parameter name="error-message" value="Query to DB table EIPAM_IP_POOLS failed." />
\r
576 <outcome value='success'>
\r
577 <block atomic='true'>
\r
579 plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'
\r
581 key="INSERT EIPAM_IP_SUBNETS
\r
583 entity_id = $eipam-ip-block.createPoolResponse.CreatePoolPlans.CreatePoolPlan[$i].PoolItem.IPDataBlock.IpamPoolAllocId ,
\r
584 service_type = $tmp.service-type ,
\r
585 ip_address = $eipam-ip-block.createPoolResponse.CreatePoolPlans.CreatePoolPlan[$i].PoolItem.IPDataBlock.IPAddress ,
\r
586 prefix_length = $eipam-ip-block.createPoolResponse.CreatePoolPlans.CreatePoolPlan[$i].PoolItem.IPDataBlock.Mask ,
\r
587 plan_name = $network-model.eipam-v4-address-plan ,
\r
588 status = 'ALLOCATED' ,
\r
589 pool_id = $tmp.eipam-pool-row.pool-id ,
\r
590 address_family = $network-model.ipv4-ip-version ,
\r
591 network_id = $tmp.network-id ; "
\r
593 pfx='pfx.eipam-subnet-row'>
\r
594 <outcome value='failure'>
\r
595 <return status='failure'>
\r
596 <parameter name='error-code' value='500' />
\r
597 <parameter name='error-message' value='failed to update EIPAM_IP_SUBNETS .' />
\r
600 <outcome value='success'></outcome>
\r
603 plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'
\r
605 key="INSERT EIPAM_IP_SUBNET_KEYS
\r
607 entity_id = $eipam-ip-block.createPoolResponse.CreatePoolPlans.CreatePoolPlan[$i].PoolItem.IPDataBlock.IpamPoolAllocId ,
\r
608 key_name = $key-name ,
\r
609 key_value = $key-value ,
\r
610 level = $eipam-ip-block.level ; "
\r
612 pfx='pfx.eipam-v4subnet-key-row'>
\r
613 <outcome value='success'></outcome>
\r
614 <outcome value='failure'>
\r
615 <return status='failure'>
\r
616 <parameter name='error-code' value='500' />
\r
617 <parameter name='error-message' value='failed to update EIPAM_IP_SUBNET_KEYS .' />
\r
623 <outcome value="not-found">
\r
624 <return status="failure">
\r
625 <parameter name="tmp.eipam-error" value="true" />
\r
626 <parameter name="error-code" value="500"/>
\r
627 <parameter name="error-message" value="Query to DB table EIPAM_IP_POOLS failed." />
\r
633 <outcome value='Other'>
\r
634 <return status='failure'>
\r
635 <parameter name='error-code' value='500' />
\r
636 <parameter name='error-message' value='failed to find plan name in CreatePoolResponse.' />
\r
640 <return status='failure'>
\r
641 <parameter name='error-code' value='500' />
\r
642 <parameter name='error-message' value='failed to find plan name in CreatePoolResponse.' />
\r
648 <outcome value='N'></outcome>
\r
655 <outcome value='Y'></outcome>
\r
659 <outcome value=""></outcome>
\r
660 <outcome value='N'></outcome>
\r
662 <switch test="`$network-model.use-ipv6`">
\r
663 <outcome value='Y'>
\r
664 <block atomic='true'>
\r
665 <switch test="`$eipam-pool.v6.pre-existing`">
\r
666 <outcome value='N'>
\r
667 <block atomic='true'>
\r
669 <parameter name="key-name" value="`$v6FQPN-output.pools[$eipam-ip-block.level - 1].key-name`" />
\r
670 <parameter name="key-value" value="`$v6FQPN-output.pools[$eipam-ip-block.level - 1].key-value`" />
\r
672 <switch test="`$eipam-ip-block.level`">
\r
673 <outcome value='1'>
\r
675 <parameter name="parent_pool" value="`$tmp.v6-qip-pool`" />
\r
676 <parameter name="level" value="`$eipam-ip-block.level - 1`" />
\r
679 <outcome value='Other'>
\r
681 <parameter name="parent_pool" value="`$v6FQPN-output.pools[$eipam-ip-block.level - 2].key-value`" />
\r
682 <parameter name="level" value="`$eipam-ip-block.level - 1`" />
\r
686 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
687 <parameter name="logger" value="message-log"/>
\r
688 <parameter name="field1" value="__TIMESTAMP__"/>
\r
689 <parameter name="field2" value="network-topology-operation"/>
\r
690 <parameter name="field3" value="eipam-create-network-role-pool"/>
\r
691 <parameter name="field4" value="`$network-model.eipam-v6-address-plan`"/>
\r
692 <parameter name="field5" value="`$v6FQPN-output.pools[$level].key-name`"/>
\r
693 <parameter name="field6" value="`$v6FQPN-output.pools[$level].key-value`"/>
\r
694 <parameter name="field7" value="`$tmp.network_instance_group_id`"/>
\r
695 <parameter name="field8" value="`$eipam-ip-block.level`"/>
\r
696 <parameter name="field9" value="`$network-model.network-role`"/>
\r
697 <parameter name="field10" value="`$tmp.network-id`"/>
\r
698 <parameter name="field11" value="Saving to EIPAM_IP_POOLS table."/>
\r
700 <switch test="`$network-instance-group-data.subnet-assignment-policy.subnet-use`">
\r
701 <outcome value='shared'>
\r
703 plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'
\r
705 key="INSERT EIPAM_IP_POOLS
\r
707 key_name = $v6FQPN-output.pools[$level].key-name ,
\r
708 key_value = $v6FQPN-output.pools[$level].key-value ,
\r
709 level = $eipam-ip-block.level ,
\r
710 plan_name = $network-model.eipam-v6-address-plan ,
\r
711 address_family = $network-model.ipv6-ip-version ,
\r
712 parent_pool = $parent_pool ,
\r
713 service_instance_id = $network-topology-operation-input.service-information.service-instance-id ,
\r
714 network_id = $tmp.network-id ,
\r
715 network_instance_group_id = $tmp.network-instance-group-id ; "
\r
717 pfx='pfx.eipam-v6pool-row'>
\r
718 <outcome value='failure'>
\r
719 <return status='failure'>
\r
720 <parameter name='error-code' value='500' />
\r
721 <parameter name='error-message' value='failed to update EIPAM_IP_POOLS .' />
\r
726 <outcome value='Other'>
\r
728 plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'
\r
730 key="INSERT EIPAM_IP_POOLS
\r
732 key_name = $v6FQPN-output.pools[$level].key-name ,
\r
733 key_value = $v6FQPN-output.pools[$level].key-value ,
\r
734 level = $eipam-ip-block.level ,
\r
735 plan_name = $network-model.eipam-v6-address-plan ,
\r
736 address_family = $network-model.ipv6-ip-version ,
\r
737 parent_pool = $parent_pool ,
\r
738 service_instance_id = $network-topology-operation-input.service-information.service-instance-id ,
\r
739 network_id = $tmp.network-id ; "
\r
741 pfx='pfx.eipam-v6pool-row'>
\r
742 <outcome value='failure'>
\r
743 <return status='failure'>
\r
744 <parameter name='error-code' value='500' />
\r
745 <parameter name='error-message' value='failed to update EIPAM_IP_POOLS .' />
\r
752 plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'
\r
754 key="INSERT EIPAM_IP_POOLS
\r
756 key_name = $v6FQPN-output.pools[$level].key-name ,
\r
757 key_value = $v6FQPN-output.pools[$level].key-value ,
\r
758 level = $eipam-ip-block.level ,
\r
759 plan_name = $network-model.eipam-v6-address-plan ,
\r
760 address_family = $network-model.ipv6-ip-version ,
\r
761 parent_pool = $parent_pool ,
\r
762 service_instance_id = $network-topology-operation-input.service-information.service-instance-id ,
\r
763 network_id = $tmp.network-id ; "
\r
765 pfx='pfx.eipam-v6pool-row'>
\r
766 <outcome value='failure'>
\r
767 <return status='failure'>
\r
768 <parameter name='error-code' value='500' />
\r
769 <parameter name='error-message' value='failed to update EIPAM_IP_POOLS .' />
\r
775 <switch test="`$eipam-ip-block.level == $eipam-ip-block.getPlanTopologyResponse.TopologyDetails_length`">
\r
776 <outcome value='true'>
\r
777 <block atomic='true'>
\r
778 <switch test="`$tmp.allocate-subnet-flag`">
\r
779 <outcome value='Y'>
\r
780 <block atomic='true'>
\r
781 <for index="i" start="0" end="`$eipam-ip-block.createPoolResponse.CreatePoolPlans.CreatePoolPlan_length`">
\r
782 <block atomic='true'>
\r
783 <switch test="`$network-model.eipam-v6-address-plan == $eipam-ip-block.createPoolResponse.CreatePoolPlans.CreatePoolPlan[$i].PlanName`">
\r
784 <outcome value='true'>
\r
785 <block atomic='true'>
\r
787 <parameter name="index_found" value="true" />
\r
795 <switch test="`$index_found`">
\r
796 <outcome value='true'>
\r
797 <block atomic='true'>
\r
799 plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'
\r
801 key="SELECT * FROM EIPAM_IP_POOLS where plan_name = $network-model.eipam-v6-address-plan and level = $eipam-ip-block.level and key_value = $v6FQPN-output.pools[$level].key-value ;"
\r
802 pfx='tmp.eipam-pool-row'>
\r
803 <outcome value='failure'>
\r
804 <return status="failure">
\r
805 <parameter name="tmp.eipam-error" value="true" />
\r
806 <parameter name="error-code" value="500"/>
\r
807 <parameter name="error-message" value="Query to DB table EIPAM_IP_POOLS failed." />
\r
810 <outcome value='success'>
\r
811 <block atomic='true'>
\r
813 plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'
\r
815 key="INSERT EIPAM_IP_SUBNETS
\r
817 entity_id = $eipam-ip-block.createPoolResponse.CreatePoolPlans.CreatePoolPlan[$i].PoolItem.IPDataBlock.IpamPoolAllocId ,
\r
818 service_type = $tmp.service-type ,
\r
819 ip_address = $eipam-ip-block.createPoolResponse.CreatePoolPlans.CreatePoolPlan[$i].PoolItem.IPDataBlock.IPAddress ,
\r
820 prefix_length = $eipam-ip-block.createPoolResponse.CreatePoolPlans.CreatePoolPlan[$i].PoolItem.IPDataBlock.Mask ,
\r
821 plan_name = $network-model.eipam-v6-address-plan ,
\r
822 status = 'ALLOCATED' ,
\r
823 pool_id = $tmp.eipam-pool-row.pool-id ,
\r
824 address_family = $network-model.ipv6-ip-version ,
\r
825 network_id = $tmp.network-id ; "
\r
827 pfx='pfx.eipam-subnet-row'>
\r
828 <outcome value='failure'>
\r
829 <return status='failure'>
\r
830 <parameter name='error-code' value='500' />
\r
831 <parameter name='error-message' value='failed to update EIPAM_IP_SUBNETS .' />
\r
834 <outcome value='success'></outcome>
\r
837 plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'
\r
839 key="INSERT EIPAM_IP_SUBNET_KEYS
\r
841 entity_id = $eipam-ip-block.createPoolResponse.CreatePoolPlans.CreatePoolPlan[$i].PoolItem.IPDataBlock.IpamPoolAllocId ,
\r
842 key_name = $key-name ,
\r
843 key_value = $key-value ,
\r
844 level = $eipam-ip-block.level ; "
\r
846 pfx='pfx.eipam-v4subnet-key-row'>
\r
847 <outcome value='success'></outcome>
\r
848 <outcome value='failure'>
\r
849 <return status='failure'>
\r
850 <parameter name='error-code' value='500' />
\r
851 <parameter name='error-message' value='failed to update EIPAM_IP_SUBNET_KEYS .' />
\r
857 <outcome value="not-found">
\r
858 <return status="failure">
\r
859 <parameter name="tmp.eipam-error" value="true" />
\r
860 <parameter name="error-code" value="500"/>
\r
861 <parameter name="error-message" value="Query to DB table EIPAM_IP_POOLS failed." />
\r
867 <outcome value='Other'>
\r
868 <return status='failure'>
\r
869 <parameter name='error-code' value='500' />
\r
870 <parameter name='error-message' value='failed to find plan name in CreatePoolResponse.' />
\r
874 <return status='failure'>
\r
875 <parameter name='error-code' value='500' />
\r
876 <parameter name='error-message' value='failed to find plan name in CreatePoolResponse.' />
\r
882 <outcome value='N'></outcome>
\r
889 <outcome value='Y'></outcome>
\r
893 <outcome value=""></outcome>
\r
894 <outcome value='N'></outcome>
\r
896 <return status='success'>
\r
897 <parameter name="error-code" value="200" />
\r