Chore: Add gerrit maven verify GHA workflow
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_auto-ip-assignment.xml
1 <service-logic\r
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='auto-ip-assignment' mode='sync'>\r
5         <block atomic="true">\r
6             <switch test='`$auto-ip-assignment-input.aic-cloud-region`'>\r
7                 <outcome value=''>\r
8                     <return status="failure">\r
9                         <parameter name="ack-final" value="Y" />\r
10                         <parameter name="error-code" value="500"/>\r
11                         <parameter name="error-message" value="auto-ip-assignment-input.aic-cloud-region is null" />\r
12                     </return>\r
13                 </outcome>\r
14             </switch>\r
15             <switch test='`$auto-ip-assignment-input.vf-module.model-customization-uuid`'>\r
16                 <outcome value=''>\r
17                     <return status="failure">\r
18                         <parameter name="ack-final" value="Y" />\r
19                         <parameter name="error-code" value="500"/>\r
20                         <parameter name="error-message" value="auto-ip-assignment-input.vf-module.model-customization-uuid is null" />\r
21                     </return>\r
22                 </outcome>\r
23             </switch>\r
24             <switch test='`$auto-ip-assignment-input.vf-module-id`'>\r
25                 <outcome value=''>\r
26                     <return status="failure">\r
27                         <parameter name="ack-final" value="Y" />\r
28                         <parameter name="error-code" value="500"/>\r
29                         <parameter name="error-message" value="auto-ip-assignment-input.vf-module-id is null" />\r
30                     </return>\r
31                 </outcome>\r
32             </switch>\r
33             <switch test='`$auto-ip-assignment-input.service-instance-id`'>\r
34                 <outcome value=''>\r
35                     <return status="failure">\r
36                         <parameter name="ack-final" value="Y" />\r
37                         <parameter name="error-code" value="500"/>\r
38                         <parameter name="error-message" value="auto-ip-assignment-input.service-instance-id is null" />\r
39                     </return>\r
40                 </outcome>\r
41             </switch>\r
42             <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
43   key='SELECT * from VF_MODULE_MODEL WHERE customization_uuid = $auto-ip-assignment-input.vf-module.model-customization-uuid'\r
44   pfx='db1.vf-module-model'>\r
45                 <outcome value='failure'>\r
46                     <return status='failure'>\r
47                         <parameter name='ack-final' value='Y'/>\r
48                         <parameter name="error-code" value="500" />\r
49                         <parameter name="error-message" value="Error reading VF_MODULE_MODEL table" />\r
50                     </return>\r
51                 </outcome>\r
52                 <outcome value='not-found'>\r
53                     <return status='failure'>\r
54                         <parameter name='ack-final' value='Y'/>\r
55                         <parameter name="error-code" value="404" />\r
56                         <parameter name="error-message" value="`'No model found for VF module customization UUID ' + $vnf-topology-operation-input.vnf-request-information.model-customization-uuid`" />\r
57                     </return>\r
58                 </outcome>\r
59             </get-resource>\r
60             <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
61         key='SELECT * from VF_MODULE_TO_VFC_MAPPING WHERE vf_module_customization_uuid = $auto-ip-assignment-input.vf-module.model-customization-uuid \r
62                 AND vm_count > 0'\r
63   pfx='db1.vf-module-to-vfc-mapping[]'>\r
64                 <outcome value='failure'>\r
65                     <return status='failure'>\r
66                         <parameter name='ack-final' value='Y'/>\r
67                         <parameter name="error-code" value="500" />\r
68                         <parameter name="error-message" value="Error reading VF_MODULE_TO_VFC_MAPPING table" />\r
69                     </return>\r
70                 </outcome>\r
71                 <outcome value='not-found'>\r
72                     <set>\r
73                         <parameter name='db1.vf-module-to-vfc-mapping_length' value='0' />\r
74                     </set>\r
75                 </outcome>\r
76             </get-resource>\r
77             <block atomic='true'>\r
78                 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
79         resource="cloud-region" \r
80                 key="cloud-region.cloud-owner = $prop.cloud-region.cloud-owner AND \r
81                      cloud-region.cloud-region-id = $auto-ip-assignment-input.aic-cloud-region AND\r
82                      depth = '0'"\r
83         pfx='aai.cloud-region' >\r
84                     <outcome value='not-found'>\r
85                         <return status='failure'>\r
86                             <parameter name='ack-final' value='Y'/>\r
87                             <parameter name="error-code" value="404" />\r
88                             <parameter name="error-message" value="`'aic-cloud-region, '+ $generate-fqpn-input.aic-cloud-region + ' not found in AAI'`" />\r
89                         </return>\r
90                     </outcome>\r
91                     <outcome value='failure'>\r
92                         <return status='failure'>\r
93                             <parameter name='ack-final' value='Y'/>\r
94                             <parameter name="error-code" value="500" />\r
95                             <parameter name="error-message" value="Error retrieving cloud region from AAI" />\r
96                         </return>\r
97                     </outcome>\r
98                 </get-resource>\r
99                 <switch test='`$aai.cloud-region.relationship-list.relationship_length`'>\r
100                     <outcome value='0'>\r
101                         <return status='failure'>\r
102                             <parameter name='ack-final' value='Y'/>\r
103                             <parameter name="error-code" value="500" />\r
104                             <parameter name="error-message" value="cloud-region missing relationships in AAI" />\r
105                         </return>\r
106                     </outcome>\r
107                     <outcome value=''>\r
108                         <return status='failure'>\r
109                             <parameter name='ack-final' value='Y'/>\r
110                             <parameter name="error-code" value="500" />\r
111                             <parameter name="error-message" value="cloud-region missing relationships in AAI" />\r
112                         </return>\r
113                     </outcome>\r
114                 </switch>\r
115                 <for index='ridx' start='0' end='`$aai.cloud-region.relationship-list.relationship_length`' >\r
116                     <for silentFailure='false' index='rdidx' start='0' end="`$aai.cloud-region.relationship-list.relationship[$ridx].relationship-data_length`" >\r
117                         <switch test='`$aai.cloud-region.relationship-list.relationship[$ridx].relationship-data[$rdidx].relationship-key`'>\r
118                             <outcome value='complex.physical-location-id'>\r
119                                 <block atomic='true'>\r
120                                     <block>\r
121                                         <set>\r
122                                             <parameter name='tmp.aic-clli' value='`$aai.cloud-region.relationship-list.relationship[$ridx].relationship-data[$rdidx].relationship-value`' />\r
123                                         </set>\r
124                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>\r
125                                             <parameter name='result' value='tmp.truncated.clli8' />\r
126                                             <parameter name='string' value='`$tmp.aic-clli`' />\r
127                                             <parameter name='begin-index' value='0' />\r
128                                             <parameter name='end-index' value='8' />\r
129                                         </execute>\r
130                                         <set>\r
131                                             <parameter name='generate-FQPN-input.location-clli8' value='`$tmp.truncated.clli8`' />\r
132                                         </set>\r
133                                     </block>\r
134                                     <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
135         resource="complex" \r
136                 key="complex.physical-location-id = $aai.cloud-region.relationship-list.relationship[$ridx].relationship-data[$rdidx].relationship-value"\r
137     pfx='aai.complex' >\r
138                                         <outcome value='not-found'>\r
139                                             <return status='failure'>\r
140                                                 <parameter name='ack-final' value='Y'/>\r
141                                                 <parameter name="error-code" value="500" />\r
142                                                 <parameter name="error-message" value="Complex not found in AAI" />\r
143                                             </return>\r
144                                         </outcome>\r
145                                         <outcome value='failure'>\r
146                                             <return status='failure'>\r
147                                                 <parameter name='ack-final' value='Y'/>\r
148                                                 <parameter name="error-code" value="500" />\r
149                                                 <parameter name="error-message" value="Error retrieving complex from AAI" />\r
150                                             </return>\r
151                                         </outcome>\r
152                                     </get-resource>\r
153                                     <set>\r
154                                         <parameter name='generate-FQPN-input.complex-region' value='`$aai.complex.region`' />\r
155                                     </set>\r
156                                 </block>\r
157                             </outcome>\r
158                         </switch>\r
159                     </for>\r
160                 </for>\r
161                 <set>\r
162                     <parameter name='generate-FQPN-input.aic-cloud-region' \r
163         value='`$auto-ip-assignment-input.aic-cloud-region`' />\r
164                 </set>\r
165             </block>\r
166             <set>\r
167                 <parameter name='tmp.network-role-query-results_length' value='0' />\r
168             </set>\r
169             <set>\r
170                 <parameter name='eipam-ip-block.plans_length' value = '0' />\r
171                 <parameter name='query-aai-l3-network-by-network-role-output.' value = '' />\r
172             </set>\r
173             <set>\r
174                 <parameter name='qridx' value = '0' />\r
175             </set>\r
176             <set>\r
177                 <parameter name='pidx' value = '0' />\r
178             </set>\r
179             <for index='vm-type-index' start='0' end='`$db1.vf-module-to-vfc-mapping_length`' >\r
180                 <block atomic="true">\r
181                     <set>\r
182                         <parameter name='vm-type-loop' value = 'START' />\r
183                         <parameter name='tmp.vm-type' value = '`$db1.vf-module-to-vfc-mapping[$vm-type-index].vm-type`' />\r
184                     </set>\r
185                     <set>\r
186                         <parameter name='tmp.db1.' value = '' />\r
187                     </set>\r
188                     <set>\r
189                         <parameter name='db1.vfc-to-network-role-mapping.' value = '' />\r
190                     </set>\r
191                     <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
192         key='SELECT * from VFC_TO_NETWORK_ROLE_MAPPING WHERE vfc_customization_uuid = $db1.vf-module-to-vfc-mapping[$vm-type-index].vfc-customization-uuid \r
193                 AND (ipv4_count > 0 OR ipv6_count > 0 OR ipv4_floating_count > 0 OR ipv6_floating_count > 0)'\r
194         pfx='db1.vfc-to-network-role-mapping[]'>\r
195                         <outcome value='not-found'>\r
196                             <set>\r
197                                 <parameter name='db1.vfc-to-network-role-mapping_length' value='0' />\r
198                             </set>\r
199                         </outcome>\r
200                         <outcome value='failure'>\r
201                             <return status='failure'>\r
202                                 <parameter name='ack-final' value='Y'/>\r
203                                 <parameter name="error-code" value="500" />\r
204                                 <parameter name="error-message" value="Error reading VFC_TO_NETWORK_ROLE_MAPPING table" />\r
205                             </return>\r
206                         </outcome>\r
207                     </get-resource>\r
208                     <set>\r
209                         <parameter name='tmp.qresult.network-role' value = '`$tmp.network-role-query-results[$q].l3-network.network-role`' />\r
210                     </set>\r
211                     <for index='network-role-index' start='0' end='`$db1.vfc-to-network-role-mapping_length`' >\r
212                         <block atomic="true">\r
213                             <set>\r
214                                 <parameter name='network-role-loop' value = 'START' />\r
215                             </set>\r
216                             <set>\r
217                                 <parameter name='tmp.plan-index-to-be-incremented' value='false' />\r
218                             </set>\r
219                             <set>\r
220                                 <parameter name='tmp.network-role.found' value = 'false' />\r
221                             </set>\r
222                             <set>\r
223                                 <parameter name='tmp.db1.network-role' value = '`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
224                             </set>\r
225                             <set>\r
226                                 <parameter name='tmp.db1.network-role-tag' value = '`$db1.vfc-to-network-role-mapping[$network-role-index].network-role-tag`' />\r
227                             </set>\r
228                             <block atomic='true'>\r
229                                 <block>\r
230                                     <for index='q' start='0' end='`$tmp.network-role-query-results_length`' >\r
231                                         <set>\r
232                                             <parameter name='tmp.qresult.network-role' value = '`$tmp.network-role-query-results[$q].l3-network.network-role`' />\r
233                                         </set>\r
234                                         <switch test='`$tmp.qresult.network-role == $tmp.db1.network-role`' >\r
235                                             <outcome value='true'>\r
236                                                 <block atomic='true'>\r
237                                                     <set>\r
238                                                         <parameter name='generate-FQPN-input.network-name' \r
239         value='`$tmp.network-role-query-results[$q].l3-network.network-name`' />\r
240                                                         <parameter name='generate-FQPN-input.network-id' \r
241         value='`$tmp.network-role-query-results[$q].l3-network.network-id`' />\r
242                                                     </set>\r
243                                                     <set>\r
244                                                         <parameter name='tmp.network-role.found' value = 'true' />\r
245                                                     </set>\r
246                                                     <set>\r
247                                                         <parameter name='query-results-found-index' value = '`$q`' />\r
248                                                     </set>\r
249                                                     <return status='failure'></return>\r
250                                                 </block>\r
251                                             </outcome>\r
252                                         </switch>\r
253                                     </for>\r
254                                     <return status='success'></return>\r
255                                 </block>\r
256                                 <switch test='`$tmp.network-role.found`'>\r
257                                     <outcome value='false'>\r
258                                         <block atomic='true'>\r
259                                             <set>\r
260                                                 <parameter name='query-aai-l3-network-by-network-role-input.aic-cloud-region' \r
261         value='`$auto-ip-assignment-input.aic-cloud-region`' />\r
262                                                 <parameter name='query-aai-l3-network-by-network-role-input.service-instance-id' \r
263         value='`$auto-ip-assignment-input.service-instance-id`' />\r
264                                                 <parameter name='query-aai-l3-network-by-network-role-input.network-role' \r
265         value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
266                                                 <!--\r
267 filter options: service-instance-id, aic-cloud-region, null, Other (or any string)\r
268     - null or Other will filter by aic-cloud-region first, then service-instance-id\r
269 <parameter name='query-aai-l3-network-by-network-role-input.filter' \r
270         value='service-instance-id' />\r
271 -->\r
272                                             </set>\r
273                                             <call module='GENERIC-RESOURCE-API' rpc='query-aai-l3-network-by-network-role' mode='sync' >\r
274                                                 <outcome value='failure'>\r
275                                                     <return status="failure">\r
276                                                         <parameter name="ack-final" value="Y" />\r
277                                                         <parameter name="error-code" value="500"/>\r
278                                                         <parameter name="error-message" value="`'An error occured while querying AAI to retrieve l3-network by network-role: ' + $error-message`" />\r
279                                                     </return>\r
280                                                 </outcome>\r
281                                             </call>\r
282                                             <set>\r
283                                                 <parameter name='generate-FQPN-input.network-name' \r
284         value='`$query-aai-l3-network-by-network-role-output.l3-network.network-name`' />\r
285                                                 <parameter name='generate-FQPN-input.network-id' \r
286         value='`$query-aai-l3-network-by-network-role-output.l3-network.network-id`' />\r
287                                             </set>\r
288                                             <set>\r
289                                                 <parameter name='tmp.network-role-query-results[$qridx].l3-network.' \r
290         value='`$query-aai-l3-network-by-network-role-output.l3-network.`' />\r
291                                                 <parameter name='tmp.network-role-query-results[$qridx].l3-network.network-role-tag' \r
292         value='`$tmp.db1.network-role-tag`' />\r
293                                                 <!--\r
294 <parameter name='tmp.network-role-query-results[$qridx].network-role' \r
295         value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' /><parameter name='tmp.network-role-query-results[$qridx].network-name' \r
296         value='`$query-aai-l3-network-by-network-role-output.l3-network.network-name`' />\r
297 -->\r
298                                             </set>\r
299                                             <set>\r
300                                                 <parameter name='eipam-ip-block.plans[$pidx].l3-network.' \r
301         value='query-aai-l3-network-by-network-role-output.l3-network.' />\r
302                                             </set>\r
303                                             <set>\r
304                                                 <parameter name='qridx' value='`$qridx + 1`' />\r
305                                             </set>\r
306                                             <set>\r
307                                                 <parameter name='tmp.network-role-query-results_length' value='`$qridx`' />\r
308                                             </set>\r
309                                             <block atomic="true">\r
310                                                 <set>\r
311                                                     <parameter name='ridx' value='0' />\r
312                                                 </set>\r
313                                                 <set>\r
314                                                     <parameter name='eipam-ip-block.plans[$pidx].network-role'\r
315     value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
316                                                     <parameter name='eipam-ip-block.plans[$pidx].subnet-role'\r
317     value="`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`" />\r
318                                                 </set>\r
319                                                 <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-ip-version`'>\r
320                                                     <outcome value='4'>\r
321                                                         <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-use-dhcp`'>\r
322                                                             <outcome value='N'>\r
323                                                                 <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-count &gt; 0`'>\r
324                                                                     <outcome value='true'>\r
325                                                                         <block atomic='true'>\r
326                                                                             <set>\r
327                                                                                 <parameter name='generate-FQPN-input.plan-name'\r
328         value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-address-plan-name`' />\r
329                                                                                 <parameter name='generate-FQPN-input.network-role'\r
330         value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
331                                                                                 <parameter name='generate-FQPN-input.subnet-role'\r
332         value='`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`' />\r
333                                                                                 <parameter name='generate-FQPN-input.vrf-name'\r
334         value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-vrf-name`' />\r
335                                                                                 <!--\r
336 <parameter name='generate-FQPN-input.plans-index' value='`$pidx`' /><parameter name='generate-FQPN-input.requests-index' value='`$ridx`' />\r
337 -->\r
338                                                                             </set>\r
339                                                                             <call module='GENERIC-RESOURCE-API' rpc='generate-FQPN' mode='sync' >\r
340                                                                                 <outcome value='failure'>\r
341                                                                                     <return status="failure">\r
342                                                                                         <parameter name="ack-final" value="Y" />\r
343                                                                                         <parameter name="error-code" value="500"/>\r
344                                                                                         <parameter name="error-message" value="`'An error occured while generating FQPN: '+ $error-message`" />\r
345                                                                                     </return>\r
346                                                                                 </outcome>\r
347                                                                             </call>\r
348                                                                             <set>\r
349                                                                                 <parameter name='eipam-ip-block.plans[$pidx].plan-name'\r
350     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-address-plan-name`' />\r
351                                                                                 <parameter name='eipam-ip-block.plans[$pidx].address-family'\r
352     value="`'ipv' + $db1.vfc-to-network-role-mapping[$network-role-index].ipv4-ip-version`" />\r
353                                                                             </set>\r
354                                                                             <set>\r
355                                                                                 <parameter name='tmp.plan-index-to-be-incremented' value='true' />\r
356                                                                             </set>\r
357                                                                             <set>\r
358                                                                                 <parameter name='tmp.client-key.seq' value='0' />\r
359                                                                             </set>\r
360                                                                             <for index='vm-index' start='0' end='`$db1.vf-module-to-vfc-mapping[$vm-type-index].vm-count`' >\r
361                                                                                 <for index='ipv4-index' start='0' end='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-count`' >\r
362                                                                                     <block atomic='true'>\r
363                                                                                         <set>\r
364                                                                                             <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].ip-version'\r
365     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-ip-version`' />\r
366                                                                                             <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].use-dhcp'\r
367     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-use-dhcp`' />\r
368                                                                                         </set>\r
369                                                                                         <set>\r
370                                                                                             <parameter name='tmp.client-key.seq' value='`$tmp.client-key.seq + 1`' />\r
371                                                                                         </set>\r
372                                                                                         <block atomic='true'>\r
373                                                                                             <set>\r
374                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].'\r
375     value='generate-FQPN-output.' />\r
376                                                                                             </set>\r
377                                                                                             <set>\r
378                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vm-type'\r
379     value='`$db1.vf-module-to-vfc-mapping[$vm-type-index].vm-type`' />\r
380                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].network-role'\r
381     value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
382                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].subnet-role'\r
383     value='`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`' />\r
384                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].ip-type'\r
385     value='FIXED' />\r
386                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name'\r
387     value='`$auto-ip-assignment-input.vnf-topology.vnf-assignments.vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name`' />\r
388                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vnfc-name'\r
389     value='`$auto-ip-assignment-input.vnf-topology.vnf-assignments.vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name`' />\r
390                                                                                             </set>\r
391                                                                                             <block>\r
392                                                                                                 <switch test='`$tmp.client-key.seq &lt; 10`'>\r
393                                                                                                     <outcome value='true'>\r
394                                                                                                         <set>\r
395                                                                                                             <parameter name='tmp.client-key.padding' value='000' />\r
396                                                                                                         </set>\r
397                                                                                                     </outcome>\r
398                                                                                                     <outcome value='false'>\r
399                                                                                                         <switch test='`$tmp.client-key.seq &lt; 100`'>\r
400                                                                                                             <outcome value='true'>\r
401                                                                                                                 <set>\r
402                                                                                                                     <parameter name='tmp.client-key.padding' value='00' />\r
403                                                                                                                 </set>\r
404                                                                                                             </outcome>\r
405                                                                                                             <outcome value='false'>\r
406                                                                                                                 <switch test='`$tmp.client-key.seq &lt; 1000`'>\r
407                                                                                                                     <outcome value='true'>\r
408                                                                                                                         <set>\r
409                                                                                                                             <parameter name='tmp.client-key.padding' value='0' />\r
410                                                                                                                         </set>\r
411                                                                                                                     </outcome>\r
412                                                                                                                     <outcome value='false'>\r
413                                                                                                                         <switch test='`$tmp.client-key.seq &lt; 10000`'>\r
414                                                                                                                             <outcome value='true'>\r
415                                                                                                                                 <set>\r
416                                                                                                                                     <parameter name='tmp.client-key.padding' value='' />\r
417                                                                                                                                 </set>\r
418                                                                                                                             </outcome>\r
419                                                                                                                         </switch>\r
420                                                                                                                     </outcome>\r
421                                                                                                                 </switch>\r
422                                                                                                             </outcome>\r
423                                                                                                         </switch>\r
424                                                                                                     </outcome>\r
425                                                                                                 </switch>\r
426                                                                                             </block>\r
427                                                                                             <set>\r
428                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].client-key'\r
429    value="`$eipam-ip-block.plans[$pidx].requests[$ridx].vm-type + '|' +\r
430                         $eipam-ip-block.plans[$pidx].requests[$ridx].vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name + '|' +\r
431                         $eipam-ip-block.plans[$pidx].requests[$ridx].network-role + '|' + \r
432                         $eipam-ip-block.plans[$pidx].requests[$ridx].subnet-role + '|' +\r
433                         $eipam-ip-block.plans[$pidx].requests[$ridx].ip-type + '|' + \r
434                         $eipam-ip-block.plans[$pidx].requests[$ridx].ip-version + '|' +\r
435                         $tmp.client-key.padding + $tmp.client-key.seq`"/>\r
436                                                                                                 <!-- rdn|zrdm3amdns02testdns001|data|static|VIP|4|0001 -->\r
437                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].info'\r
438    value='`$auto-ip-assignment-input.vf-module-id`' />\r
439                                                                                             </set>\r
440                                                                                             <set>\r
441                                                                                                 <parameter name='ridx' value='`$ridx + 1`' />\r
442                                                                                             </set>\r
443                                                                                             <set>\r
444                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests_length' value='`$ridx`' />\r
445                                                                                             </set>\r
446                                                                                         </block>\r
447                                                                                     </block>\r
448                                                                                 </for>\r
449                                                                             </for>\r
450                                                                         </block>\r
451                                                                     </outcome>\r
452                                                                 </switch>\r
453                                                             </outcome>\r
454                                                         </switch>\r
455                                                     </outcome>\r
456                                                 </switch>\r
457                                                 <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-ip-version`'>\r
458                                                     <outcome value='6'>\r
459                                                         <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-use-dhcp`'>\r
460                                                             <outcome value='N'>\r
461                                                                 <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-count &gt; 0`'>\r
462                                                                     <outcome value='true'>\r
463                                                                         <block atomic='true'>\r
464                                                                             <set>\r
465                                                                                 <parameter name='generate-FQPN-input.plan-name'\r
466         value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-address-plan-name`' />\r
467                                                                                 <parameter name='generate-FQPN-input.network-role'\r
468         value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
469                                                                                 <parameter name='generate-FQPN-input.subnet-role'\r
470         value='`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`' />\r
471                                                                                 <parameter name='generate-FQPN-input.vrf-name'\r
472         value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-vrf-name`' />\r
473                                                                                 <!--\r
474 <parameter name='generate-FQPN-input.plans-index' value='`$pidx`' /><parameter name='generate-FQPN-input.requests-index' value='`$ridx`' />\r
475 -->\r
476                                                                             </set>\r
477                                                                             <call module='GENERIC-RESOURCE-API' rpc='generate-FQPN' mode='sync' >\r
478                                                                                 <outcome value='failure'>\r
479                                                                                     <return status="failure">\r
480                                                                                         <parameter name="ack-final" value="Y" />\r
481                                                                                         <parameter name="error-code" value="500"/>\r
482                                                                                         <parameter name="error-message" value="`'An error occured while generating FQPN: '+ $error-message`" />\r
483                                                                                     </return>\r
484                                                                                 </outcome>\r
485                                                                             </call>\r
486                                                                             <set>\r
487                                                                                 <parameter name='eipam-ip-block.plans[$pidx].plan-name'\r
488     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-address-plan-name`' />\r
489                                                                                 <parameter name='eipam-ip-block.plans[$pidx].address-family'\r
490     value="`'ipv' + $db1.vfc-to-network-role-mapping[$network-role-index].ipv6-ip-version`" />\r
491                                                                             </set>\r
492                                                                             <set>\r
493                                                                                 <parameter name='tmp.plan-index-to-be-incremented' value='true' />\r
494                                                                             </set>\r
495                                                                             <set>\r
496                                                                                 <parameter name='tmp.client-key.seq' value='0' />\r
497                                                                             </set>\r
498                                                                             <for index='vm-index' start='0' end='`$db1.vf-module-to-vfc-mapping[$vm-type-index].vm-count`' >\r
499                                                                                 <for index='ipv6-index' start='0' end='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-count`' >\r
500                                                                                     <block atomic='true'>\r
501                                                                                         <set>\r
502                                                                                             <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].ip-version'\r
503     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-ip-version`' />\r
504                                                                                             <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].use-dhcp'\r
505     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-use-dhcp`' />\r
506                                                                                         </set>\r
507                                                                                         <set>\r
508                                                                                             <parameter name='tmp.client-key.seq' value='`$tmp.client-key.seq + 1`' />\r
509                                                                                         </set>\r
510                                                                                         <block atomic='true'>\r
511                                                                                             <set>\r
512                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].'\r
513     value='generate-FQPN-output.' />\r
514                                                                                             </set>\r
515                                                                                             <set>\r
516                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vm-type'\r
517     value='`$db1.vf-module-to-vfc-mapping[$vm-type-index].vm-type`' />\r
518                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].network-role'\r
519     value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
520                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].subnet-role'\r
521     value='`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`' />\r
522                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].ip-type'\r
523     value='FIXED' />\r
524                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name'\r
525     value='`$auto-ip-assignment-input.vnf-topology.vnf-assignments.vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name`' />\r
526                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vnfc-name'\r
527     value='`$auto-ip-assignment-input.vnf-topology.vnf-assignments.vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name`' />\r
528                                                                                             </set>\r
529                                                                                             <block>\r
530                                                                                                 <switch test='`$tmp.client-key.seq &lt; 10`'>\r
531                                                                                                     <outcome value='true'>\r
532                                                                                                         <set>\r
533                                                                                                             <parameter name='tmp.client-key.padding' value='000' />\r
534                                                                                                         </set>\r
535                                                                                                     </outcome>\r
536                                                                                                     <outcome value='false'>\r
537                                                                                                         <switch test='`$tmp.client-key.seq &lt; 100`'>\r
538                                                                                                             <outcome value='true'>\r
539                                                                                                                 <set>\r
540                                                                                                                     <parameter name='tmp.client-key.padding' value='00' />\r
541                                                                                                                 </set>\r
542                                                                                                             </outcome>\r
543                                                                                                             <outcome value='false'>\r
544                                                                                                                 <switch test='`$tmp.client-key.seq &lt; 1000`'>\r
545                                                                                                                     <outcome value='true'>\r
546                                                                                                                         <set>\r
547                                                                                                                             <parameter name='tmp.client-key.padding' value='0' />\r
548                                                                                                                         </set>\r
549                                                                                                                     </outcome>\r
550                                                                                                                     <outcome value='false'>\r
551                                                                                                                         <switch test='`$tmp.client-key.seq &lt; 10000`'>\r
552                                                                                                                             <outcome value='true'>\r
553                                                                                                                                 <set>\r
554                                                                                                                                     <parameter name='tmp.client-key.padding' value='' />\r
555                                                                                                                                 </set>\r
556                                                                                                                             </outcome>\r
557                                                                                                                         </switch>\r
558                                                                                                                     </outcome>\r
559                                                                                                                 </switch>\r
560                                                                                                             </outcome>\r
561                                                                                                         </switch>\r
562                                                                                                     </outcome>\r
563                                                                                                 </switch>\r
564                                                                                             </block>\r
565                                                                                             <set>\r
566                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].client-key'\r
567    value="`$eipam-ip-block.plans[$pidx].requests[$ridx].vm-type + '|' +\r
568                         $eipam-ip-block.plans[$pidx].requests[$ridx].vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name + '|' +\r
569                         $eipam-ip-block.plans[$pidx].requests[$ridx].network-role + '|' + \r
570                         $eipam-ip-block.plans[$pidx].requests[$ridx].subnet-role + '|' +\r
571                         $eipam-ip-block.plans[$pidx].requests[$ridx].ip-type + '|' + \r
572                         $eipam-ip-block.plans[$pidx].requests[$ridx].ip-version + '|' +\r
573                         $tmp.client-key.padding + $tmp.client-key.seq`"/>\r
574                                                                                                 <!-- rdn|zrdm3amdns02testdns001|data|static|VIP|4|0001 -->\r
575                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].info'\r
576    value='`$auto-ip-assignment-input.vf-module-id`' />\r
577                                                                                             </set>\r
578                                                                                             <set>\r
579                                                                                                 <parameter name='ridx' value='`$ridx + 1`' />\r
580                                                                                             </set>\r
581                                                                                             <set>\r
582                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests_length' value='`$ridx`' />\r
583                                                                                             </set>\r
584                                                                                         </block>\r
585                                                                                     </block>\r
586                                                                                 </for>\r
587                                                                             </for>\r
588                                                                         </block>\r
589                                                                     </outcome>\r
590                                                                 </switch>\r
591                                                             </outcome>\r
592                                                         </switch>\r
593                                                     </outcome>\r
594                                                 </switch>\r
595                                                 <switch test='`$tmp.plan-index-to-be-incremented`'>\r
596                                                     <outcome value='true'>\r
597                                                         <block>\r
598                                                             <set>\r
599                                                                 <parameter name='pidx' value='`$pidx + 1`' />\r
600                                                             </set>\r
601                                                             <set>\r
602                                                                 <parameter name="eipam-ip-block.plans_length" value="`$pidx`"/>\r
603                                                             </set>\r
604                                                         </block>\r
605                                                     </outcome>\r
606                                                 </switch>\r
607                                             </block>\r
608                                         </block>\r
609                                     </outcome>\r
610                                     <outcome value='true'>\r
611                                         <block atomic='true'>\r
612                                             <set>\r
613                                                 <parameter name='eipam-ip-block.plans[$pidx].l3-network.' \r
614         value='tmp.network-role-query-results[$query-results-found-index].l3-network.' />\r
615                                             </set>\r
616                                             <block atomic="true">\r
617                                                 <set>\r
618                                                     <parameter name='ridx' value='0' />\r
619                                                 </set>\r
620                                                 <set>\r
621                                                     <parameter name='eipam-ip-block.plans[$pidx].network-role'\r
622     value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
623                                                     <parameter name='eipam-ip-block.plans[$pidx].subnet-role'\r
624     value="`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`" />\r
625                                                 </set>\r
626                                                 <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-ip-version`'>\r
627                                                     <outcome value='4'>\r
628                                                         <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-use-dhcp`'>\r
629                                                             <outcome value='N'>\r
630                                                                 <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-count &gt; 0`'>\r
631                                                                     <outcome value='true'>\r
632                                                                         <block atomic='true'>\r
633                                                                             <set>\r
634                                                                                 <parameter name='generate-FQPN-input.plan-name'\r
635         value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-address-plan-name`' />\r
636                                                                                 <parameter name='generate-FQPN-input.network-role'\r
637         value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
638                                                                                 <parameter name='generate-FQPN-input.subnet-role'\r
639         value='`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`' />\r
640                                                                                 <parameter name='generate-FQPN-input.vrf-name'\r
641         value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-vrf-name`' />\r
642                                                                                 <!--\r
643 <parameter name='generate-FQPN-input.plans-index' value='`$pidx`' /><parameter name='generate-FQPN-input.requests-index' value='`$ridx`' />\r
644 -->\r
645                                                                             </set>\r
646                                                                             <call module='GENERIC-RESOURCE-API' rpc='generate-FQPN' mode='sync' >\r
647                                                                                 <outcome value='failure'>\r
648                                                                                     <return status="failure">\r
649                                                                                         <parameter name="ack-final" value="Y" />\r
650                                                                                         <parameter name="error-code" value="500"/>\r
651                                                                                         <parameter name="error-message" value="`'An error occured while generating FQPN: '+ $error-message`" />\r
652                                                                                     </return>\r
653                                                                                 </outcome>\r
654                                                                             </call>\r
655                                                                             <set>\r
656                                                                                 <parameter name='eipam-ip-block.plans[$pidx].plan-name'\r
657     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-address-plan-name`' />\r
658                                                                                 <parameter name='eipam-ip-block.plans[$pidx].address-family'\r
659     value="`'ipv' + $db1.vfc-to-network-role-mapping[$network-role-index].ipv4-ip-version`" />\r
660                                                                             </set>\r
661                                                                             <set>\r
662                                                                                 <parameter name='tmp.plan-index-to-be-incremented' value='true' />\r
663                                                                             </set>\r
664                                                                             <set>\r
665                                                                                 <parameter name='tmp.client-key.seq' value='0' />\r
666                                                                             </set>\r
667                                                                             <for index='vm-index' start='0' end='`$db1.vf-module-to-vfc-mapping[$vm-type-index].vm-count`' >\r
668                                                                                 <for index='ipv4-index' start='0' end='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-count`' >\r
669                                                                                     <block atomic='true'>\r
670                                                                                         <set>\r
671                                                                                             <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].ip-version'\r
672     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-ip-version`' />\r
673                                                                                             <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].use-dhcp'\r
674     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-use-dhcp`' />\r
675                                                                                         </set>\r
676                                                                                         <set>\r
677                                                                                             <parameter name='tmp.client-key.seq' value='`$tmp.client-key.seq + 1`' />\r
678                                                                                         </set>\r
679                                                                                         <block atomic='true'>\r
680                                                                                             <set>\r
681                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].'\r
682     value='generate-FQPN-output.' />\r
683                                                                                             </set>\r
684                                                                                             <set>\r
685                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vm-type'\r
686     value='`$db1.vf-module-to-vfc-mapping[$vm-type-index].vm-type`' />\r
687                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].network-role'\r
688     value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
689                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].subnet-role'\r
690     value='`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`' />\r
691                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].ip-type'\r
692     value='FIXED' />\r
693                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name'\r
694     value='`$auto-ip-assignment-input.vnf-topology.vnf-assignments.vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name`' />\r
695                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vnfc-name'\r
696     value='`$auto-ip-assignment-input.vnf-topology.vnf-assignments.vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name`' />\r
697                                                                                             </set>\r
698                                                                                             <block>\r
699                                                                                                 <switch test='`$tmp.client-key.seq &lt; 10`'>\r
700                                                                                                     <outcome value='true'>\r
701                                                                                                         <set>\r
702                                                                                                             <parameter name='tmp.client-key.padding' value='000' />\r
703                                                                                                         </set>\r
704                                                                                                     </outcome>\r
705                                                                                                     <outcome value='false'>\r
706                                                                                                         <switch test='`$tmp.client-key.seq &lt; 100`'>\r
707                                                                                                             <outcome value='true'>\r
708                                                                                                                 <set>\r
709                                                                                                                     <parameter name='tmp.client-key.padding' value='00' />\r
710                                                                                                                 </set>\r
711                                                                                                             </outcome>\r
712                                                                                                             <outcome value='false'>\r
713                                                                                                                 <switch test='`$tmp.client-key.seq &lt; 1000`'>\r
714                                                                                                                     <outcome value='true'>\r
715                                                                                                                         <set>\r
716                                                                                                                             <parameter name='tmp.client-key.padding' value='0' />\r
717                                                                                                                         </set>\r
718                                                                                                                     </outcome>\r
719                                                                                                                     <outcome value='false'>\r
720                                                                                                                         <switch test='`$tmp.client-key.seq &lt; 10000`'>\r
721                                                                                                                             <outcome value='true'>\r
722                                                                                                                                 <set>\r
723                                                                                                                                     <parameter name='tmp.client-key.padding' value='' />\r
724                                                                                                                                 </set>\r
725                                                                                                                             </outcome>\r
726                                                                                                                         </switch>\r
727                                                                                                                     </outcome>\r
728                                                                                                                 </switch>\r
729                                                                                                             </outcome>\r
730                                                                                                         </switch>\r
731                                                                                                     </outcome>\r
732                                                                                                 </switch>\r
733                                                                                             </block>\r
734                                                                                             <set>\r
735                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].client-key'\r
736    value="`$eipam-ip-block.plans[$pidx].requests[$ridx].vm-type + '|' +\r
737                         $eipam-ip-block.plans[$pidx].requests[$ridx].vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name + '|' +\r
738                         $eipam-ip-block.plans[$pidx].requests[$ridx].network-role + '|' + \r
739                         $eipam-ip-block.plans[$pidx].requests[$ridx].subnet-role + '|' +\r
740                         $eipam-ip-block.plans[$pidx].requests[$ridx].ip-type + '|' + \r
741                         $eipam-ip-block.plans[$pidx].requests[$ridx].ip-version + '|' +\r
742                         $tmp.client-key.padding + $tmp.client-key.seq`"/>\r
743                                                                                                 <!-- rdn|zrdm3amdns02testdns001|data|static|VIP|4|0001 -->\r
744                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].info'\r
745    value='`$auto-ip-assignment-input.vf-module-id`' />\r
746                                                                                             </set>\r
747                                                                                             <set>\r
748                                                                                                 <parameter name='ridx' value='`$ridx + 1`' />\r
749                                                                                             </set>\r
750                                                                                             <set>\r
751                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests_length' value='`$ridx`' />\r
752                                                                                             </set>\r
753                                                                                         </block>\r
754                                                                                     </block>\r
755                                                                                 </for>\r
756                                                                             </for>\r
757                                                                         </block>\r
758                                                                     </outcome>\r
759                                                                 </switch>\r
760                                                             </outcome>\r
761                                                         </switch>\r
762                                                     </outcome>\r
763                                                 </switch>\r
764                                                 <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-ip-version`'>\r
765                                                     <outcome value='6'>\r
766                                                         <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-use-dhcp`'>\r
767                                                             <outcome value='N'>\r
768                                                                 <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-count &gt; 0`'>\r
769                                                                     <outcome value='true'>\r
770                                                                         <block atomic='true'>\r
771                                                                             <set>\r
772                                                                                 <parameter name='generate-FQPN-input.plan-name'\r
773         value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-address-plan-name`' />\r
774                                                                                 <parameter name='generate-FQPN-input.network-role'\r
775         value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
776                                                                                 <parameter name='generate-FQPN-input.subnet-role'\r
777         value='`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`' />\r
778                                                                                 <parameter name='generate-FQPN-input.vrf-name'\r
779         value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-vrf-name`' />\r
780                                                                                 <!--\r
781 <parameter name='generate-FQPN-input.plans-index' value='`$pidx`' /><parameter name='generate-FQPN-input.requests-index' value='`$ridx`' />\r
782 -->\r
783                                                                             </set>\r
784                                                                             <call module='GENERIC-RESOURCE-API' rpc='generate-FQPN' mode='sync' >\r
785                                                                                 <outcome value='failure'>\r
786                                                                                     <return status="failure">\r
787                                                                                         <parameter name="ack-final" value="Y" />\r
788                                                                                         <parameter name="error-code" value="500"/>\r
789                                                                                         <parameter name="error-message" value="`'An error occured while generating FQPN: '+ $error-message`" />\r
790                                                                                     </return>\r
791                                                                                 </outcome>\r
792                                                                             </call>\r
793                                                                             <set>\r
794                                                                                 <parameter name='eipam-ip-block.plans[$pidx].plan-name'\r
795     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-address-plan-name`' />\r
796                                                                                 <parameter name='eipam-ip-block.plans[$pidx].address-family'\r
797     value="`'ipv' + $db1.vfc-to-network-role-mapping[$network-role-index].ipv6-ip-version`" />\r
798                                                                             </set>\r
799                                                                             <set>\r
800                                                                                 <parameter name='tmp.plan-index-to-be-incremented' value='true' />\r
801                                                                             </set>\r
802                                                                             <set>\r
803                                                                                 <parameter name='tmp.client-key.seq' value='0' />\r
804                                                                             </set>\r
805                                                                             <for index='vm-index' start='0' end='`$db1.vf-module-to-vfc-mapping[$vm-type-index].vm-count`' >\r
806                                                                                 <for index='ipv6-index' start='0' end='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-count`' >\r
807                                                                                     <block atomic='true'>\r
808                                                                                         <set>\r
809                                                                                             <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].ip-version'\r
810     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-ip-version`' />\r
811                                                                                             <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].use-dhcp'\r
812     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-use-dhcp`' />\r
813                                                                                         </set>\r
814                                                                                         <set>\r
815                                                                                             <parameter name='tmp.client-key.seq' value='`$tmp.client-key.seq + 1`' />\r
816                                                                                         </set>\r
817                                                                                         <block atomic='true'>\r
818                                                                                             <set>\r
819                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].'\r
820     value='generate-FQPN-output.' />\r
821                                                                                             </set>\r
822                                                                                             <set>\r
823                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vm-type'\r
824     value='`$db1.vf-module-to-vfc-mapping[$vm-type-index].vm-type`' />\r
825                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].network-role'\r
826     value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
827                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].subnet-role'\r
828     value='`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`' />\r
829                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].ip-type'\r
830     value='FIXED' />\r
831                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name'\r
832     value='`$auto-ip-assignment-input.vnf-topology.vnf-assignments.vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name`' />\r
833                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vnfc-name'\r
834     value='`$auto-ip-assignment-input.vnf-topology.vnf-assignments.vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name`' />\r
835                                                                                             </set>\r
836                                                                                             <block>\r
837                                                                                                 <switch test='`$tmp.client-key.seq &lt; 10`'>\r
838                                                                                                     <outcome value='true'>\r
839                                                                                                         <set>\r
840                                                                                                             <parameter name='tmp.client-key.padding' value='000' />\r
841                                                                                                         </set>\r
842                                                                                                     </outcome>\r
843                                                                                                     <outcome value='false'>\r
844                                                                                                         <switch test='`$tmp.client-key.seq &lt; 100`'>\r
845                                                                                                             <outcome value='true'>\r
846                                                                                                                 <set>\r
847                                                                                                                     <parameter name='tmp.client-key.padding' value='00' />\r
848                                                                                                                 </set>\r
849                                                                                                             </outcome>\r
850                                                                                                             <outcome value='false'>\r
851                                                                                                                 <switch test='`$tmp.client-key.seq &lt; 1000`'>\r
852                                                                                                                     <outcome value='true'>\r
853                                                                                                                         <set>\r
854                                                                                                                             <parameter name='tmp.client-key.padding' value='0' />\r
855                                                                                                                         </set>\r
856                                                                                                                     </outcome>\r
857                                                                                                                     <outcome value='false'>\r
858                                                                                                                         <switch test='`$tmp.client-key.seq &lt; 10000`'>\r
859                                                                                                                             <outcome value='true'>\r
860                                                                                                                                 <set>\r
861                                                                                                                                     <parameter name='tmp.client-key.padding' value='' />\r
862                                                                                                                                 </set>\r
863                                                                                                                             </outcome>\r
864                                                                                                                         </switch>\r
865                                                                                                                     </outcome>\r
866                                                                                                                 </switch>\r
867                                                                                                             </outcome>\r
868                                                                                                         </switch>\r
869                                                                                                     </outcome>\r
870                                                                                                 </switch>\r
871                                                                                             </block>\r
872                                                                                             <set>\r
873                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].client-key'\r
874    value="`$eipam-ip-block.plans[$pidx].requests[$ridx].vm-type + '|' +\r
875                         $eipam-ip-block.plans[$pidx].requests[$ridx].vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name + '|' +\r
876                         $eipam-ip-block.plans[$pidx].requests[$ridx].network-role + '|' + \r
877                         $eipam-ip-block.plans[$pidx].requests[$ridx].subnet-role + '|' +\r
878                         $eipam-ip-block.plans[$pidx].requests[$ridx].ip-type + '|' + \r
879                         $eipam-ip-block.plans[$pidx].requests[$ridx].ip-version + '|' +\r
880                         $tmp.client-key.padding + $tmp.client-key.seq`"/>\r
881                                                                                                 <!-- rdn|zrdm3amdns02testdns001|data|static|VIP|4|0001 -->\r
882                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].info'\r
883    value='`$auto-ip-assignment-input.vf-module-id`' />\r
884                                                                                             </set>\r
885                                                                                             <set>\r
886                                                                                                 <parameter name='ridx' value='`$ridx + 1`' />\r
887                                                                                             </set>\r
888                                                                                             <set>\r
889                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests_length' value='`$ridx`' />\r
890                                                                                             </set>\r
891                                                                                         </block>\r
892                                                                                     </block>\r
893                                                                                 </for>\r
894                                                                             </for>\r
895                                                                         </block>\r
896                                                                     </outcome>\r
897                                                                 </switch>\r
898                                                             </outcome>\r
899                                                         </switch>\r
900                                                     </outcome>\r
901                                                 </switch>\r
902                                                 <switch test='`$tmp.plan-index-to-be-incremented`'>\r
903                                                     <outcome value='true'>\r
904                                                         <block>\r
905                                                             <set>\r
906                                                                 <parameter name='pidx' value='`$pidx + 1`' />\r
907                                                             </set>\r
908                                                             <set>\r
909                                                                 <parameter name="eipam-ip-block.plans_length" value="`$pidx`"/>\r
910                                                             </set>\r
911                                                         </block>\r
912                                                     </outcome>\r
913                                                 </switch>\r
914                                             </block>\r
915                                         </block>\r
916                                     </outcome>\r
917                                 </switch>\r
918                             </block>\r
919                         </block>\r
920                     </for>\r
921                 </block>\r
922             </for>\r
923             <for index='vm-type-index' start='0' end='`$db1.vf-module-to-vfc-mapping_length`' >\r
924                 <block atomic="true">\r
925                     <set>\r
926                         <parameter name='vm-type-floating-loop' value = 'START' />\r
927                         <parameter name='tmp.vm-type' value = '`$db1.vf-module-to-vfc-mapping[$vm-type-index].vm-type`' />\r
928                     </set>\r
929                     <set>\r
930                         <parameter name='db1.vfc-to-network-role-mapping.' value = '' />\r
931                     </set>\r
932                     <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
933         key='SELECT * from VFC_TO_NETWORK_ROLE_MAPPING WHERE vfc_customization_uuid = $db1.vf-module-to-vfc-mapping[$vm-type-index].vfc-customization-uuid \r
934                 AND (ipv4_count > 0 OR ipv6_count > 0 OR ipv4_floating_count > 0 OR ipv6_floating_count > 0)'\r
935         pfx='db1.vfc-to-network-role-mapping[]'>\r
936                         <outcome value='not-found'>\r
937                             <set>\r
938                                 <parameter name='db1.vfc-to-network-role-mapping_length' value='0' />\r
939                             </set>\r
940                         </outcome>\r
941                         <outcome value='failure'>\r
942                             <return status='failure'>\r
943                                 <parameter name='ack-final' value='Y'/>\r
944                                 <parameter name="error-code" value="500" />\r
945                                 <parameter name="error-message" value="Error reading VFC_TO_NETWORK_ROLE_MAPPING table" />\r
946                             </return>\r
947                         </outcome>\r
948                     </get-resource>\r
949                     <set>\r
950                         <parameter name='tmp.db1.network-role' value = '' />\r
951                     </set>\r
952                     <for index='network-role-index' start='0' end='`$db1.vfc-to-network-role-mapping_length`' >\r
953                         <block atomic="true">\r
954                             <set>\r
955                                 <parameter name='network-role-loop' value = 'START' />\r
956                             </set>\r
957                             <set>\r
958                                 <parameter name='tmp.plan-index-to-be-incremented' value='false' />\r
959                             </set>\r
960                             <set>\r
961                                 <parameter name='tmp.network-role.found' value = 'false' />\r
962                             </set>\r
963                             <set>\r
964                                 <parameter name='tmp.db1.network-role' value = '`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
965                             </set>\r
966                             <block atomic="true">\r
967                                 <block>\r
968                                     <for index='q' start='0' end='`$tmp.network-role-query-results_length`' >\r
969                                         <set>\r
970                                             <parameter name='tmp.qresult.network-role' value = '`$tmp.network-role-query-results[$q].l3-network.network-role`' />\r
971                                         </set>\r
972                                         <switch test='`$tmp.qresult.network-role == $tmp.db1.network-role`' >\r
973                                             <outcome value='true'>\r
974                                                 <block atomic='true'>\r
975                                                     <set>\r
976                                                         <parameter name='generate-FQPN-input.network-name' \r
977         value='`$tmp.network-role-query-results[$q].l3-network.network-name`' />\r
978                                                         <parameter name='generate-FQPN-input.network-id' \r
979         value='`$tmp.network-role-query-results[$q].l3-network.network-id`' />\r
980                                                     </set>\r
981                                                     <set>\r
982                                                         <parameter name='tmp.network-role.found' value = 'true' />\r
983                                                     </set>\r
984                                                     <set>\r
985                                                         <parameter name='query-results-found-index' value = '`$q`' />\r
986                                                     </set>\r
987                                                     <return status='failure'></return>\r
988                                                 </block>\r
989                                             </outcome>\r
990                                         </switch>\r
991                                     </for>\r
992                                     <return status='success'></return>\r
993                                 </block>\r
994                                 <switch test='`$tmp.network-role.found`'>\r
995                                     <outcome value='false'>\r
996                                         <block atomic='true'>\r
997                                             <set>\r
998                                                 <parameter name='query-aai-l3-network-by-network-role-input.aic-cloud-region' \r
999         value='`$auto-ip-assignment-input.aic-cloud-region`' />\r
1000                                                 <parameter name='query-aai-l3-network-by-network-role-input.service-instance-id' \r
1001         value='`$auto-ip-assignment-input.service-instance-id`' />\r
1002                                                 <parameter name='query-aai-l3-network-by-network-role-input.network-role' \r
1003         value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
1004                                                 <!--\r
1005 filter options: service-instance-id, aic-cloud-region, null, Other (or any string)\r
1006     - null or Other will filter by aic-cloud-region first, then service-instance-id\r
1007 <parameter name='query-aai-l3-network-by-network-role-input.filter' \r
1008         value='service-instance-id' />\r
1009 -->\r
1010                                             </set>\r
1011                                             <call module='GENERIC-RESOURCE-API' rpc='query-aai-l3-network-by-network-role' mode='sync' >\r
1012                                                 <outcome value='failure'>\r
1013                                                     <return status="failure">\r
1014                                                         <parameter name="ack-final" value="Y" />\r
1015                                                         <parameter name="error-code" value="500"/>\r
1016                                                         <parameter name="error-message" value="`'An error occured while querying AAI to retrieve l3-network by network-role: ' + $error-message`" />\r
1017                                                     </return>\r
1018                                                 </outcome>\r
1019                                             </call>\r
1020                                             <set>\r
1021                                                 <parameter name='generate-FQPN-input.network-name' \r
1022         value='`$query-aai-l3-network-by-network-role-output.l3-network.network-name`' />\r
1023                                                 <parameter name='generate-FQPN-input.network-id' \r
1024         value='`$query-aai-l3-network-by-network-role-output.l3-network.network-id`' />\r
1025                                             </set>\r
1026                                             <set>\r
1027                                                 <parameter name='tmp.network-role-query-results[$qridx].l3-network.' \r
1028         value='`$query-aai-l3-network-by-network-role-output.l3-network.`' />\r
1029                                                 <parameter name='tmp.network-role-query-results[$qridx].l3-network.network-role-tag' \r
1030         value='`$tmp.db1.network-role-tag`' />\r
1031                                                 <!--\r
1032 <parameter name='tmp.network-role-query-results[$qridx].network-role' \r
1033         value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' /><parameter name='tmp.network-role-query-results[$qridx].network-name' \r
1034         value='`$query-aai-l3-network-by-network-role-output.l3-network.network-name`' />\r
1035 -->\r
1036                                             </set>\r
1037                                             <set>\r
1038                                                 <parameter name='eipam-ip-block.plans[$pidx].l3-network.' \r
1039         value='query-aai-l3-network-by-network-role-output.l3-network.' />\r
1040                                             </set>\r
1041                                             <set>\r
1042                                                 <parameter name='qridx' value='`$qridx + 1`' />\r
1043                                             </set>\r
1044                                             <set>\r
1045                                                 <parameter name='tmp.network-role-query-results_length' value='`$qridx`' />\r
1046                                             </set>\r
1047                                             <block atomic="true">\r
1048                                                 <set>\r
1049                                                     <parameter name='ridx' value='0' />\r
1050                                                 </set>\r
1051                                                 <set>\r
1052                                                     <parameter name='eipam-ip-block.plans[$pidx].network-role'\r
1053     value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
1054                                                     <parameter name='eipam-ip-block.plans[$pidx].subnet-role'\r
1055     value="`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`" />\r
1056                                                 </set>\r
1057                                                 <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-ip-version`'>\r
1058                                                     <outcome value='4'>\r
1059                                                         <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-use-dhcp`'>\r
1060                                                             <outcome value='N'>\r
1061                                                                 <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-count &gt; 0`'>\r
1062                                                                     <outcome value='true'>\r
1063                                                                         <block atomic='true'>\r
1064                                                                             <set>\r
1065                                                                                 <parameter name='generate-FQPN-input.plan-name'\r
1066         value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-address-plan-name`' />\r
1067                                                                                 <parameter name='generate-FQPN-input.network-role'\r
1068         value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
1069                                                                                 <parameter name='generate-FQPN-input.subnet-role'\r
1070         value='`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`' />\r
1071                                                                                 <parameter name='generate-FQPN-input.vrf-name'\r
1072         value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-vrf-name`' />\r
1073                                                                                 <!--\r
1074 <parameter name='generate-FQPN-input.plans-index' value='`$pidx`' /><parameter name='generate-FQPN-input.requests-index' value='`$ridx`' />\r
1075 -->\r
1076                                                                             </set>\r
1077                                                                             <call module='GENERIC-RESOURCE-API' rpc='generate-FQPN' mode='sync' >\r
1078                                                                                 <outcome value='failure'>\r
1079                                                                                     <return status="failure">\r
1080                                                                                         <parameter name="ack-final" value="Y" />\r
1081                                                                                         <parameter name="error-code" value="500"/>\r
1082                                                                                         <parameter name="error-message" value="`'An error occured while generating FQPN: '+ $error-message`" />\r
1083                                                                                     </return>\r
1084                                                                                 </outcome>\r
1085                                                                             </call>\r
1086                                                                             <set>\r
1087                                                                                 <parameter name='eipam-ip-block.plans[$pidx].plan-name'\r
1088     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-address-plan-name`' />\r
1089                                                                                 <parameter name='eipam-ip-block.plans[$pidx].address-family'\r
1090     value="`'ipv' + $db1.vfc-to-network-role-mapping[$network-role-index].ipv4-ip-version`" />\r
1091                                                                             </set>\r
1092                                                                             <set>\r
1093                                                                                 <parameter name='tmp.plan-index-to-be-incremented' value='true' />\r
1094                                                                             </set>\r
1095                                                                             <set>\r
1096                                                                                 <parameter name='tmp.client-key.seq' value='0' />\r
1097                                                                             </set>\r
1098                                                                             <for index='vm-index' start='0' end='`$db1.vf-module-to-vfc-mapping[$vm-type-index].vm-count`' >\r
1099                                                                                 <for index='ipv4-index' start='0' end='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-count`' >\r
1100                                                                                     <block atomic='true'>\r
1101                                                                                         <set>\r
1102                                                                                             <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].ip-version'\r
1103     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-ip-version`' />\r
1104                                                                                             <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].use-dhcp'\r
1105     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-use-dhcp`' />\r
1106                                                                                         </set>\r
1107                                                                                         <set>\r
1108                                                                                             <parameter name='tmp.client-key.seq' value='`$tmp.client-key.seq + 1`' />\r
1109                                                                                         </set>\r
1110                                                                                         <block atomic='true'>\r
1111                                                                                             <set>\r
1112                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].'\r
1113     value='generate-FQPN-output.' />\r
1114                                                                                             </set>\r
1115                                                                                             <set>\r
1116                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vm-type'\r
1117     value='`$db1.vf-module-to-vfc-mapping[$vm-type-index].vm-type`' />\r
1118                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].network-role'\r
1119     value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
1120                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].subnet-role'\r
1121     value='`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`' />\r
1122                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].ip-type'\r
1123     value='FIXED' />\r
1124                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name'\r
1125     value='`$auto-ip-assignment-input.vnf-topology.vnf-assignments.vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name`' />\r
1126                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vnfc-name'\r
1127     value='`$auto-ip-assignment-input.vnf-topology.vnf-assignments.vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name`' />\r
1128                                                                                             </set>\r
1129                                                                                             <block>\r
1130                                                                                                 <switch test='`$tmp.client-key.seq &lt; 10`'>\r
1131                                                                                                     <outcome value='true'>\r
1132                                                                                                         <set>\r
1133                                                                                                             <parameter name='tmp.client-key.padding' value='000' />\r
1134                                                                                                         </set>\r
1135                                                                                                     </outcome>\r
1136                                                                                                     <outcome value='false'>\r
1137                                                                                                         <switch test='`$tmp.client-key.seq &lt; 100`'>\r
1138                                                                                                             <outcome value='true'>\r
1139                                                                                                                 <set>\r
1140                                                                                                                     <parameter name='tmp.client-key.padding' value='00' />\r
1141                                                                                                                 </set>\r
1142                                                                                                             </outcome>\r
1143                                                                                                             <outcome value='false'>\r
1144                                                                                                                 <switch test='`$tmp.client-key.seq &lt; 1000`'>\r
1145                                                                                                                     <outcome value='true'>\r
1146                                                                                                                         <set>\r
1147                                                                                                                             <parameter name='tmp.client-key.padding' value='0' />\r
1148                                                                                                                         </set>\r
1149                                                                                                                     </outcome>\r
1150                                                                                                                     <outcome value='false'>\r
1151                                                                                                                         <switch test='`$tmp.client-key.seq &lt; 10000`'>\r
1152                                                                                                                             <outcome value='true'>\r
1153                                                                                                                                 <set>\r
1154                                                                                                                                     <parameter name='tmp.client-key.padding' value='' />\r
1155                                                                                                                                 </set>\r
1156                                                                                                                             </outcome>\r
1157                                                                                                                         </switch>\r
1158                                                                                                                     </outcome>\r
1159                                                                                                                 </switch>\r
1160                                                                                                             </outcome>\r
1161                                                                                                         </switch>\r
1162                                                                                                     </outcome>\r
1163                                                                                                 </switch>\r
1164                                                                                             </block>\r
1165                                                                                             <set>\r
1166                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].client-key'\r
1167    value="`$eipam-ip-block.plans[$pidx].requests[$ridx].vm-type + '|' +\r
1168                         $eipam-ip-block.plans[$pidx].requests[$ridx].vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name + '|' +\r
1169                         $eipam-ip-block.plans[$pidx].requests[$ridx].network-role + '|' + \r
1170                         $eipam-ip-block.plans[$pidx].requests[$ridx].subnet-role + '|' +\r
1171                         $eipam-ip-block.plans[$pidx].requests[$ridx].ip-type + '|' + \r
1172                         $eipam-ip-block.plans[$pidx].requests[$ridx].ip-version + '|' +\r
1173                         $tmp.client-key.padding + $tmp.client-key.seq`"/>\r
1174                                                                                                 <!-- rdn|zrdm3amdns02testdns001|data|static|VIP|4|0001 -->\r
1175                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].info'\r
1176    value='`$auto-ip-assignment-input.vf-module-id`' />\r
1177                                                                                             </set>\r
1178                                                                                             <set>\r
1179                                                                                                 <parameter name='ridx' value='`$ridx + 1`' />\r
1180                                                                                             </set>\r
1181                                                                                             <set>\r
1182                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests_length' value='`$ridx`' />\r
1183                                                                                             </set>\r
1184                                                                                         </block>\r
1185                                                                                     </block>\r
1186                                                                                 </for>\r
1187                                                                             </for>\r
1188                                                                         </block>\r
1189                                                                     </outcome>\r
1190                                                                 </switch>\r
1191                                                             </outcome>\r
1192                                                         </switch>\r
1193                                                     </outcome>\r
1194                                                 </switch>\r
1195                                                 <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-ip-version`'>\r
1196                                                     <outcome value='6'>\r
1197                                                         <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-use-dhcp`'>\r
1198                                                             <outcome value='N'>\r
1199                                                                 <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-count &gt; 0`'>\r
1200                                                                     <outcome value='true'>\r
1201                                                                         <block atomic='true'>\r
1202                                                                             <set>\r
1203                                                                                 <parameter name='generate-FQPN-input.plan-name'\r
1204         value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-address-plan-name`' />\r
1205                                                                                 <parameter name='generate-FQPN-input.network-role'\r
1206         value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
1207                                                                                 <parameter name='generate-FQPN-input.subnet-role'\r
1208         value='`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`' />\r
1209                                                                                 <parameter name='generate-FQPN-input.vrf-name'\r
1210         value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-vrf-name`' />\r
1211                                                                                 <!--\r
1212 <parameter name='generate-FQPN-input.plans-index' value='`$pidx`' /><parameter name='generate-FQPN-input.requests-index' value='`$ridx`' />\r
1213 -->\r
1214                                                                             </set>\r
1215                                                                             <call module='GENERIC-RESOURCE-API' rpc='generate-FQPN' mode='sync' >\r
1216                                                                                 <outcome value='failure'>\r
1217                                                                                     <return status="failure">\r
1218                                                                                         <parameter name="ack-final" value="Y" />\r
1219                                                                                         <parameter name="error-code" value="500"/>\r
1220                                                                                         <parameter name="error-message" value="`'An error occured while generating FQPN: '+ $error-message`" />\r
1221                                                                                     </return>\r
1222                                                                                 </outcome>\r
1223                                                                             </call>\r
1224                                                                             <set>\r
1225                                                                                 <parameter name='eipam-ip-block.plans[$pidx].plan-name'\r
1226     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-address-plan-name`' />\r
1227                                                                                 <parameter name='eipam-ip-block.plans[$pidx].address-family'\r
1228     value="`'ipv' + $db1.vfc-to-network-role-mapping[$network-role-index].ipv6-ip-version`" />\r
1229                                                                             </set>\r
1230                                                                             <set>\r
1231                                                                                 <parameter name='tmp.plan-index-to-be-incremented' value='true' />\r
1232                                                                             </set>\r
1233                                                                             <set>\r
1234                                                                                 <parameter name='tmp.client-key.seq' value='0' />\r
1235                                                                             </set>\r
1236                                                                             <for index='vm-index' start='0' end='`$db1.vf-module-to-vfc-mapping[$vm-type-index].vm-count`' >\r
1237                                                                                 <for index='ipv6-index' start='0' end='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-count`' >\r
1238                                                                                     <block atomic='true'>\r
1239                                                                                         <set>\r
1240                                                                                             <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].ip-version'\r
1241     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-ip-version`' />\r
1242                                                                                             <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].use-dhcp'\r
1243     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-use-dhcp`' />\r
1244                                                                                         </set>\r
1245                                                                                         <set>\r
1246                                                                                             <parameter name='tmp.client-key.seq' value='`$tmp.client-key.seq + 1`' />\r
1247                                                                                         </set>\r
1248                                                                                         <block atomic='true'>\r
1249                                                                                             <set>\r
1250                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].'\r
1251     value='generate-FQPN-output.' />\r
1252                                                                                             </set>\r
1253                                                                                             <set>\r
1254                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vm-type'\r
1255     value='`$db1.vf-module-to-vfc-mapping[$vm-type-index].vm-type`' />\r
1256                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].network-role'\r
1257     value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
1258                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].subnet-role'\r
1259     value='`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`' />\r
1260                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].ip-type'\r
1261     value='FIXED' />\r
1262                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name'\r
1263     value='`$auto-ip-assignment-input.vnf-topology.vnf-assignments.vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name`' />\r
1264                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vnfc-name'\r
1265     value='`$auto-ip-assignment-input.vnf-topology.vnf-assignments.vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name`' />\r
1266                                                                                             </set>\r
1267                                                                                             <block>\r
1268                                                                                                 <switch test='`$tmp.client-key.seq &lt; 10`'>\r
1269                                                                                                     <outcome value='true'>\r
1270                                                                                                         <set>\r
1271                                                                                                             <parameter name='tmp.client-key.padding' value='000' />\r
1272                                                                                                         </set>\r
1273                                                                                                     </outcome>\r
1274                                                                                                     <outcome value='false'>\r
1275                                                                                                         <switch test='`$tmp.client-key.seq &lt; 100`'>\r
1276                                                                                                             <outcome value='true'>\r
1277                                                                                                                 <set>\r
1278                                                                                                                     <parameter name='tmp.client-key.padding' value='00' />\r
1279                                                                                                                 </set>\r
1280                                                                                                             </outcome>\r
1281                                                                                                             <outcome value='false'>\r
1282                                                                                                                 <switch test='`$tmp.client-key.seq &lt; 1000`'>\r
1283                                                                                                                     <outcome value='true'>\r
1284                                                                                                                         <set>\r
1285                                                                                                                             <parameter name='tmp.client-key.padding' value='0' />\r
1286                                                                                                                         </set>\r
1287                                                                                                                     </outcome>\r
1288                                                                                                                     <outcome value='false'>\r
1289                                                                                                                         <switch test='`$tmp.client-key.seq &lt; 10000`'>\r
1290                                                                                                                             <outcome value='true'>\r
1291                                                                                                                                 <set>\r
1292                                                                                                                                     <parameter name='tmp.client-key.padding' value='' />\r
1293                                                                                                                                 </set>\r
1294                                                                                                                             </outcome>\r
1295                                                                                                                         </switch>\r
1296                                                                                                                     </outcome>\r
1297                                                                                                                 </switch>\r
1298                                                                                                             </outcome>\r
1299                                                                                                         </switch>\r
1300                                                                                                     </outcome>\r
1301                                                                                                 </switch>\r
1302                                                                                             </block>\r
1303                                                                                             <set>\r
1304                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].client-key'\r
1305    value="`$eipam-ip-block.plans[$pidx].requests[$ridx].vm-type + '|' +\r
1306                         $eipam-ip-block.plans[$pidx].requests[$ridx].vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name + '|' +\r
1307                         $eipam-ip-block.plans[$pidx].requests[$ridx].network-role + '|' + \r
1308                         $eipam-ip-block.plans[$pidx].requests[$ridx].subnet-role + '|' +\r
1309                         $eipam-ip-block.plans[$pidx].requests[$ridx].ip-type + '|' + \r
1310                         $eipam-ip-block.plans[$pidx].requests[$ridx].ip-version + '|' +\r
1311                         $tmp.client-key.padding + $tmp.client-key.seq`"/>\r
1312                                                                                                 <!-- rdn|zrdm3amdns02testdns001|data|static|VIP|4|0001 -->\r
1313                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].info'\r
1314    value='`$auto-ip-assignment-input.vf-module-id`' />\r
1315                                                                                             </set>\r
1316                                                                                             <set>\r
1317                                                                                                 <parameter name='ridx' value='`$ridx + 1`' />\r
1318                                                                                             </set>\r
1319                                                                                             <set>\r
1320                                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests_length' value='`$ridx`' />\r
1321                                                                                             </set>\r
1322                                                                                         </block>\r
1323                                                                                     </block>\r
1324                                                                                 </for>\r
1325                                                                             </for>\r
1326                                                                         </block>\r
1327                                                                     </outcome>\r
1328                                                                 </switch>\r
1329                                                             </outcome>\r
1330                                                         </switch>\r
1331                                                     </outcome>\r
1332                                                 </switch>\r
1333                                                 <switch test='`$tmp.plan-index-to-be-incremented`'>\r
1334                                                     <outcome value='true'>\r
1335                                                         <block>\r
1336                                                             <set>\r
1337                                                                 <parameter name='pidx' value='`$pidx + 1`' />\r
1338                                                             </set>\r
1339                                                             <set>\r
1340                                                                 <parameter name="eipam-ip-block.plans_length" value="`$pidx`"/>\r
1341                                                             </set>\r
1342                                                         </block>\r
1343                                                     </outcome>\r
1344                                                 </switch>\r
1345                                             </block>\r
1346                                         </block>\r
1347                                     </outcome>\r
1348                                     <outcome value='true'>\r
1349                                         <block>\r
1350                                             <set>\r
1351                                                 <parameter name='eipam-ip-block.plans[$pidx].l3-network.' \r
1352         value='tmp.network-role-query-results[$query-results-found-index].l3-network.' />\r
1353                                             </set>\r
1354                                             <block atomic="true">\r
1355                                                 <set>\r
1356                                                     <parameter name='ridx' value='0' />\r
1357                                                 </set>\r
1358                                                 <set>\r
1359                                                     <parameter name='eipam-ip-block.plans[$pidx].network-role'\r
1360     value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
1361                                                     <parameter name='eipam-ip-block.plans[$pidx].subnet-role'\r
1362     value="`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`" />\r
1363                                                 </set>\r
1364                                                 <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-ip-version`'>\r
1365                                                     <outcome value='4'>\r
1366                                                         <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-use-dhcp`'>\r
1367                                                             <outcome value='N'>\r
1368                                                                 <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-floating-count &gt; 0`'>\r
1369                                                                     <outcome value='true'>\r
1370                                                                         <block atomic='true'>\r
1371                                                                             <set>\r
1372                                                                                 <parameter name='generate-FQPN-input.plan-name'\r
1373         value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-address-plan-name`' />\r
1374                                                                                 <parameter name='generate-FQPN-input.subnet-role'\r
1375         value='`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`' />\r
1376                                                                                 <parameter name='generate-FQPN-input.network-role'\r
1377         value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
1378                                                                                 <parameter name='generate-FQPN-input.vrf-name'\r
1379         value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-vrf-name`' />\r
1380                                                                                 <!--\r
1381 <parameter name='generate-FQPN-input.plans-index' value='`$pidx`' /><parameter name='generate-FQPN-input.requests-index' value='`$ridx`' />\r
1382 -->\r
1383                                                                             </set>\r
1384                                                                             <call module='GENERIC-RESOURCE-API' rpc='generate-FQPN' mode='sync' >\r
1385                                                                                 <outcome value='failure'>\r
1386                                                                                     <return status="failure">\r
1387                                                                                         <parameter name="ack-final" value="Y" />\r
1388                                                                                         <parameter name="error-code" value="500"/>\r
1389                                                                                         <parameter name="error-message" value="`'An error occured while generating FQPN: '+ $error-message`" />\r
1390                                                                                     </return>\r
1391                                                                                 </outcome>\r
1392                                                                             </call>\r
1393                                                                             <set>\r
1394                                                                                 <parameter name='eipam-ip-block.plans[$pidx].plan-name'\r
1395     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-address-plan-name`' />\r
1396                                                                                 <parameter name='eipam-ip-block.plans[$pidx].address-family'\r
1397     value="`'ipv' + $db1.vfc-to-network-role-mapping[$network-role-index].ipv4-ip-version`" />\r
1398                                                                             </set>\r
1399                                                                             <set>\r
1400                                                                                 <parameter name='tmp.plan-index-to-be-incremented' value='true' />\r
1401                                                                             </set>\r
1402                                                                             <set>\r
1403                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].ip-version'\r
1404     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-ip-version`' />\r
1405                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].use-dhcp'\r
1406     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv4-use-dhcp`' />\r
1407                                                                             </set>\r
1408                                                                             <block atomic='true'>\r
1409                                                                                 <set>\r
1410                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].'\r
1411     value='generate-FQPN-output.' />\r
1412                                                                                 </set>\r
1413                                                                                 <set>\r
1414                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vm-type'\r
1415     value='`$db1.vf-module-to-vfc-mapping[$vm-type-index].vm-type`' />\r
1416                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].network-role'\r
1417     value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
1418                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].subnet-role'\r
1419     value='`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`' />\r
1420                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].ip-type'\r
1421     value='VIP' />\r
1422                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].group-number'\r
1423     value='1' />\r
1424                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name'\r
1425     value='`$auto-ip-assignment-input.vnf-topology.vnf-assignments.vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name`' />\r
1426                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vnfc-name'\r
1427     value='`$auto-ip-assignment-input.vnf-topology.vnf-assignments.vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name`' />\r
1428                                                                                 </set>\r
1429                                                                                 <set>\r
1430                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].client-key'\r
1431    value="`$eipam-ip-block.plans[$pidx].requests[$ridx].vm-type + '|' +\r
1432                         $eipam-ip-block.plans[$pidx].requests[$ridx].network-role + '|' + \r
1433                         $eipam-ip-block.plans[$pidx].requests[$ridx].subnet-role + '|' +\r
1434                         $eipam-ip-block.plans[$pidx].requests[$ridx].ip-type + '|' + \r
1435                         $eipam-ip-block.plans[$pidx].requests[$ridx].ip-version + '|' + \r
1436                         $eipam-ip-block.plans[$pidx].requests[$ridx].group-number + '|0001'`" />\r
1437                                                                                     <!-- rdn|data|static|FIXED|4|1|0001 -->\r
1438                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].info'\r
1439    value='`$auto-ip-assignment-input.vf-module-id`' />\r
1440                                                                                 </set>\r
1441                                                                                 <set>\r
1442                                                                                     <parameter name='ridx' value='`$ridx + 1`' />\r
1443                                                                                 </set>\r
1444                                                                                 <set>\r
1445                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests_length' value='`$ridx`' />\r
1446                                                                                 </set>\r
1447                                                                             </block>\r
1448                                                                         </block>\r
1449                                                                     </outcome>\r
1450                                                                 </switch>\r
1451                                                             </outcome>\r
1452                                                         </switch>\r
1453                                                     </outcome>\r
1454                                                 </switch>\r
1455                                                 <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-ip-version`'>\r
1456                                                     <outcome value='6'>\r
1457                                                         <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-use-dhcp`'>\r
1458                                                             <outcome value='N'>\r
1459                                                                 <switch test='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-floating-count &gt; 0`'>\r
1460                                                                     <outcome value='true'>\r
1461                                                                         <block atomic='true'>\r
1462                                                                             <set>\r
1463                                                                                 <parameter name='generate-FQPN-input.plan-name'\r
1464         value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-address-plan-name`' />\r
1465                                                                                 <parameter name='generate-FQPN-input.vrf-name'\r
1466         value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-vrf-name`' />\r
1467                                                                                 <parameter name='generate-FQPN-input.subnet-role' \r
1468         value='`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`' />\r
1469                                                                                 <parameter name='generate-FQPN-input.network-role'\r
1470         value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
1471                                                                                 <!--\r
1472 <parameter name='generate-FQPN-input.plans-index' value='`$pidx`' /><parameter name='generate-FQPN-input.requests-index' value='`$ridx`' />\r
1473 -->\r
1474                                                                             </set>\r
1475                                                                             <call module='GENERIC-RESOURCE-API' rpc='generate-FQPN' mode='sync' >\r
1476                                                                                 <outcome value='failure'>\r
1477                                                                                     <return status="failure">\r
1478                                                                                         <parameter name="ack-final" value="Y" />\r
1479                                                                                         <parameter name="error-code" value="500"/>\r
1480                                                                                         <parameter name="error-message" value="`'An error occured while generating FQPN: '+ $error-message`" />\r
1481                                                                                     </return>\r
1482                                                                                 </outcome>\r
1483                                                                             </call>\r
1484                                                                             <set>\r
1485                                                                                 <parameter name='tmp.plan-index-to-be-incremented' value='true' />\r
1486                                                                             </set>\r
1487                                                                             <set>\r
1488                                                                                 <parameter name='eipam-ip-block.plans[$pidx].plan-name'\r
1489     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-address-plan-name`' />\r
1490                                                                                 <parameter name='eipam-ip-block.plans[$pidx].address-family'\r
1491     value="`'ipv' + $db1.vfc-to-network-role-mapping[$network-role-index].ipv6-ip-version`" />\r
1492                                                                             </set>\r
1493                                                                             <set>\r
1494                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].ip-version'\r
1495     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-ip-version`' />\r
1496                                                                                 <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].use-dhcp'\r
1497     value='`$db1.vfc-to-network-role-mapping[$network-role-index].ipv6-use-dhcp`' />\r
1498                                                                             </set>\r
1499                                                                             <block atomic='true'>\r
1500                                                                                 <set>\r
1501                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].'\r
1502     value='generate-FQPN-output.' />\r
1503                                                                                 </set>\r
1504                                                                                 <set>\r
1505                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vm-type'\r
1506     value='`$db1.vf-module-to-vfc-mapping[$vm-type-index].vm-type`' />\r
1507                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].network-role'\r
1508     value='`$db1.vfc-to-network-role-mapping[$network-role-index].network-role`' />\r
1509                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].subnet-role'\r
1510     value='`$db1.vfc-to-network-role-mapping[$network-role-index].subnet-role`' />\r
1511                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].ip-type'\r
1512     value='VIP' />\r
1513                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].group-number'\r
1514     value='1' />\r
1515                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name'\r
1516     value='`$auto-ip-assignment-input.vnf-topology.vnf-assignments.vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name`' />\r
1517                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].vnfc-name'\r
1518     value='`$auto-ip-assignment-input.vnf-topology.vnf-assignments.vnf-vms[$vm-type-index].vm-names[$vm-index].vnfc-names[0].vnfc-name`' />\r
1519                                                                                 </set>\r
1520                                                                                 <set>\r
1521                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].client-key'\r
1522    value="`$eipam-ip-block.plans[$pidx].requests[$ridx].vm-type + '|' +\r
1523                         $eipam-ip-block.plans[$pidx].requests[$ridx].network-role + '|' + \r
1524                         $eipam-ip-block.plans[$pidx].requests[$ridx].subnet-role + '|' +\r
1525                         $eipam-ip-block.plans[$pidx].requests[$ridx].ip-type + '|' + \r
1526                         $eipam-ip-block.plans[$pidx].requests[$ridx].ip-version + '|' + \r
1527                         $eipam-ip-block.plans[$pidx].requests[$ridx].group-number + '|0001'`" />\r
1528                                                                                     <!-- rdn|data|static|FIXED|4|1|0001 -->\r
1529                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests[$ridx].info'\r
1530    value='`$auto-ip-assignment-input.vf-module-id`' />\r
1531                                                                                 </set>\r
1532                                                                                 <set>\r
1533                                                                                     <parameter name='ridx' value='`$ridx + 1`' />\r
1534                                                                                 </set>\r
1535                                                                                 <set>\r
1536                                                                                     <parameter name='eipam-ip-block.plans[$pidx].requests_length' value='`$ridx`' />\r
1537                                                                                 </set>\r
1538                                                                             </block>\r
1539                                                                         </block>\r
1540                                                                     </outcome>\r
1541                                                                 </switch>\r
1542                                                             </outcome>\r
1543                                                         </switch>\r
1544                                                     </outcome>\r
1545                                                 </switch>\r
1546                                                 <switch test='`$tmp.plan-index-to-be-incremented`'>\r
1547                                                     <outcome value='true'>\r
1548                                                         <block>\r
1549                                                             <set>\r
1550                                                                 <parameter name='pidx' value='`$pidx + 1`' />\r
1551                                                             </set>\r
1552                                                             <set>\r
1553                                                                 <parameter name="eipam-ip-block.plans_length" value="`$pidx`"/>\r
1554                                                             </set>\r
1555                                                         </block>\r
1556                                                     </outcome>\r
1557                                                 </switch>\r
1558                                             </block>\r
1559                                         </block>\r
1560                                     </outcome>\r
1561                                 </switch>\r
1562                             </block>\r
1563                         </block>\r
1564                     </for>\r
1565                 </block>\r
1566             </for>\r
1567             <block atomic='true'>\r
1568                 <switch test='`$eipam-ip-block.plans_length &gt; 0`'>\r
1569                     <outcome value='true'>\r
1570                         <block atomic='true'>\r
1571                             <switch test='`$auto-ip-assignment-input.service-type`'>\r
1572                                 <outcome value=''>\r
1573                                     <set>\r
1574                                         <parameter name='service-data.service-information.service-type' value='NA' />\r
1575                                     </set>\r
1576                                 </outcome>\r
1577                             </switch>\r
1578                             <execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="assignIPAddress">\r
1579                                 <outcome value='failure'>\r
1580                                     <return status="failure">\r
1581                                         <parameter name="ack-final" value="Y" />\r
1582                                         <parameter name="error-code" value="500"/>\r
1583                                         <parameter name="error-message" value="`'An error occured while obtaining ip addresses from EIPAM: ' + $error-message`" />\r
1584                                     </return>\r
1585                                 </outcome>\r
1586                             </execute>\r
1587                         </block>\r
1588                     </outcome>\r
1589                 </switch>\r
1590             </block>\r
1591         </block>\r
1592     </method>\r
1593 </service-logic>