Chore: Add gerrit maven verify GHA workflow
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_generate-FQPN.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='generate-FQPN' mode='sync'>\r
5         <block atomic="true">\r
6             <switch test='`$generate-FQPN-input.plan-name`'>\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="generate-FQPN-input.plan-name is null" />\r
12                     </return>\r
13                 </outcome>\r
14             </switch>\r
15             <set>\r
16                 <parameter name='eipam-ip-block.plan-name' value='`$generate-FQPN-input.plan-name`' />\r
17             </set>\r
18             <set>\r
19                 <parameter name='generate-FQPN-output.' value='' />\r
20             </set>\r
21             <execute plugin="com.att.sdnctl.sli.plugin.eipam.EIPAMPlugin" method="getPlanTopology">\r
22                 <outcome value='failure'>\r
23                     <return status="failure">\r
24                         <parameter name="ack-final" value="Y" />\r
25                         <parameter name="error-code" value="500"/>\r
26                         <parameter name="error-message" value="`'An error occured while getting Keyname and Keyvalue for address plan, '+ $eipam-ip-block.planName + ', from EIPAM'`" />\r
27                     </return>\r
28                 </outcome>\r
29             </execute>\r
30             <switch test='`$eipam-ip-block.getPlanTopologyResponse.TopologyDetails_length`'>\r
31                 <outcome value=''>\r
32                     <return status="failure">\r
33                         <parameter name="ack-final" value="Y" />\r
34                         <parameter name="error-code" value="500"/>\r
35                         <parameter name="error-message" value="eipam-ip-block.getPlanTopologyResponse.TopologyDetails is null" />\r
36                     </return>\r
37                 </outcome>\r
38             </switch>\r
39             <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.sdnc-generated-cloud-resources`'>\r
40                 <outcome value='true'>\r
41                     <call module='GENERIC-RESOURCE-API' rpc='self-serve-generate-FQPN' mode='sync' ></call>\r
42                 </outcome>\r
43                 <outcome value='false'>\r
44                     <block atomic='true'>\r
45                         <for index="resp-index" start="0" end="`$eipam-ip-block.getPlanTopologyResponse.TopologyDetails_length`">\r
46                             <switch test='`$eipam-ip-block.plan-name == $eipam-ip-block.getPlanTopologyResponse.PlanName`'>\r
47                                 <outcome value='false'>\r
48                                     <return status="failure">\r
49                                         <parameter name="ack-final" value="Y" />\r
50                                         <parameter name="error-code" value="500"/>\r
51                                         <parameter name="error-message" value="`'eipam response plan-name ['+ $eipam-ip-block.getPlanTopologyResponse.PlanName + ' is not the same as input '+$eipam-ip-block.planName`" />\r
52                                     </return>\r
53                                 </outcome>\r
54                             </switch>\r
55                             <set>\r
56                                 <parameter name='pool-index'\r
57    value='`$eipam-ip-block.getPlanTopologyResponse.TopologyDetails[$resp-index].Level - 1`' />\r
58                             </set>\r
59                             <set>\r
60                                 <parameter name='tmp.final.key-value' value="" />\r
61                             </set>\r
62                             <set>\r
63                                 <parameter name='tmp.getPlanTopologyResponse.key-name' \r
64         value='`$eipam-ip-block.getPlanTopologyResponse.TopologyDetails[$resp-index].KeyName`' />\r
65                             </set>\r
66                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
67                                 <parameter name="original_string" value="`$tmp.getPlanTopologyResponse.key-name`" />\r
68                                 <parameter name="regex" value=":" />\r
69                                 <parameter name="ctx_memory_result_key" value="tmp.split.key-name" />\r
70                             </execute>\r
71                             <for index="split-index" start="0" end="`$tmp.split.key-name_length`">\r
72                                 <set>\r
73                                     <parameter name='tmp.eipam.key-name' \r
74         value='`$tmp.split.key-name[$split-index]`' />\r
75                                 </set>\r
76                                 <block atomic='true'>\r
77                                     <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
78   key='SELECT key_value_source from ADDRESS_PLAN_POLICIES WHERE key_name = $tmp.eipam.key-name '\r
79   pfx='db.address-plan-policies'>\r
80                                         <outcome value='failure'>\r
81                                             <return status='failure'>\r
82                                                 <parameter name='ack-final' value='Y'/>\r
83                                                 <parameter name="error-code" value="500" />\r
84                                                 <parameter name="error-message" value="Error reading ADDRESS_PLAN_POLICIES table" />\r
85                                             </return>\r
86                                         </outcome>\r
87                                         <outcome value='not-found'>\r
88                                             <return status='failure'>\r
89                                                 <parameter name='ack-final' value='Y'/>\r
90                                                 <parameter name="error-code" value="500" />\r
91                                                 <parameter name="error-message" value="`'No ADDRESS_PLAN_POLICIES entry found for key_name = ' + $eipam-ip-block.getPlanTopologyResponse.TopologyDetails[$key-index].KeyName`" />\r
92                                             </return>\r
93                                         </outcome>\r
94                                     </get-resource>\r
95                                     <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
96   key='SELECT * from ROUTING_CHARACTERISTIC_MAPPING WHERE network_role = $generate-FQPN-input.network-role '\r
97   pfx='db.routing-characteristic_mapping[]'>\r
98                                         <outcome value='failure'>\r
99                                             <return status='failure'>\r
100                                                 <parameter name='ack-final' value='Y'/>\r
101                                                 <parameter name="error-code" value="500" />\r
102                                                 <parameter name="error-message" value="Error reading ROUTING_CHARACTERISTIC_MAPPING table" />\r
103                                             </return>\r
104                                         </outcome>\r
105                                         <outcome value='not-found'>\r
106                                             <return status='failure'>\r
107                                                 <parameter name='ack-final' value='Y'/>\r
108                                                 <parameter name="error-code" value="500" />\r
109                                                 <parameter name="error-message" value="`'No ROUTING_CHARACTERISTIC_MAPPING entry found for network_role = ' + $generate-FQPN-input.network-role`" />\r
110                                             </return>\r
111                                         </outcome>\r
112                                     </get-resource>\r
113                                     <set>\r
114                                         <parameter name='tmp.key-value' value='' />\r
115                                     </set>\r
116                                     <switch test='`$db.address-plan-policies.key-value-source`'>\r
117                                         <outcome value='AddressPlanPolicyDG-Routing_Characteristic'>\r
118                                             <block atomic="true">\r
119                                                 <set>\r
120                                                     <parameter name='tmp.key-value' value='-1' />\r
121                                                 </set>\r
122                                                 <switch test='`$db.routing-characteristic_mapping_length &gt; 1`'>\r
123                                                     <outcome value='true'>\r
124                                                         <block>\r
125                                                             <for index="routing-index" start="0" end="`$db.routing-characteristic_mapping_length`">\r
126                                                                 <switch test='`$db.routing-characteristic_mapping[$routing-index].vrf-name == $generate-FQPN-input.vrf-name`'>\r
127                                                                     <outcome value='true'>\r
128                                                                         <block atomic='true'>\r
129                                                                             <set>\r
130                                                                                 <parameter name='tmp.key-value' value='`$db.routing-characteristic_mapping[$routing-index].routing-characteristic`' />\r
131                                                                             </set>\r
132                                                                             <return status='failure'></return>\r
133                                                                         </block>\r
134                                                                     </outcome>\r
135                                                                 </switch>\r
136                                                             </for>\r
137                                                             <return status='success'></return>\r
138                                                         </block>\r
139                                                     </outcome>\r
140                                                     <outcome value='false'>\r
141                                                         <set>\r
142                                                             <parameter name='tmp.key-value' value='`$db.routing-characteristic_mapping[0].routing-characteristic`' />\r
143                                                         </set>\r
144                                                     </outcome>\r
145                                                 </switch>\r
146                                                 <switch test='`$tmp.key-value`'>\r
147                                                     <outcome value='-1'>\r
148                                                         <return status='failure'>\r
149                                                             <parameter name='ack-final' value='Y'/>\r
150                                                             <parameter name="error-code" value="500" />\r
151                                                             <parameter name="error-message" value="No matching ROUTING_CHARACTERISTIC_MAPPING.vrf-name found" />\r
152                                                         </return>\r
153                                                     </outcome>\r
154                                                 </switch>\r
155                                             </block>\r
156                                         </outcome>\r
157                                         <outcome value='AddressPlanPolicyDG-Location_Clli8'>\r
158                                             <set>\r
159                                                 <parameter name='tmp.key-value' value='`$generate-FQPN-input.location-clli8`' />\r
160                                             </set>\r
161                                         </outcome>\r
162                                         <outcome value='AddressPlanPolicyDG-Vrf_Name'>\r
163                                             <switch test='`$generate-FQPN-input.vrf-name`'>\r
164                                                 <outcome value=''>\r
165                                                     <set>\r
166                                                         <parameter name='tmp.key-value' value='`$db.routing-characteristic_mapping[0].vrf-name`' />\r
167                                                     </set>\r
168                                                 </outcome>\r
169                                             </switch>\r
170                                         </outcome>\r
171                                         <outcome value='cloud_region_id'>\r
172                                             <set>\r
173                                                 <parameter name='tmp.key-value' value='`$generate-FQPN-input.aic-cloud-region`' />\r
174                                             </set>\r
175                                         </outcome>\r
176                                         <outcome value='AddressPlanPolicyDG-Complex_region'>\r
177                                             <set>\r
178                                                 <parameter name='tmp.key-value' value='`$aai.complex.region`' />\r
179                                             </set>\r
180                                         </outcome>\r
181                                         <outcome value='AddressPlanPolicyDG-Network_Name'>\r
182                                             <set>\r
183                                                 <parameter name='tmp.key-value' value='`$generate-FQPN-input.network-name`' />\r
184                                             </set>\r
185                                         </outcome>\r
186                                         <outcome value='AddressPlanPolicyDG-Subnet_Role'>\r
187                                             <switch test='`$generate-FQPN-input.subnet-role`' >\r
188                                                 <outcome value=''>\r
189                                                     <set>\r
190                                                         <parameter name='tmp.key-value' value='STATIC' />\r
191                                                     </set>\r
192                                                 </outcome>\r
193                                                 <outcome value='Other'>\r
194                                                     <set>\r
195                                                         <parameter name='tmp.key-value' value='`$generate-FQPN-input.subnet-role`' />\r
196                                                     </set>\r
197                                                 </outcome>\r
198                                             </switch>\r
199                                         </outcome>\r
200                                         <outcome value='AddressPlanPolicyDG-Network_Role'>\r
201                                             <set>\r
202                                                 <parameter name='tmp.key-value' value='`$generate-FQPN-input.network-role`' />\r
203                                             </set>\r
204                                         </outcome>\r
205                                         <outcome value='AddressPlanPolicyDG-Network_Id'>\r
206                                             <set>\r
207                                                 <parameter name='tmp.key-value' value='`$generate-FQPN-input.network-id`' />\r
208                                             </set>\r
209                                         </outcome>\r
210                                         <outcome value='AddressPlanPolicyDG-Network_Collection'>\r
211                                             <set>\r
212                                                 <parameter name='tmp.key-value' value='`$generate-FQPN-input.network-collection`' />\r
213                                             </set>\r
214                                         </outcome>\r
215                                         <outcome value='AddressPlanPolicyDG-Zone'>\r
216                                             <set>\r
217                                                 <parameter name='tmp.key-value' value='`$generate-FQPN-input.zone`' />\r
218                                             </set>\r
219                                         </outcome>\r
220                                         <outcome value='Other'>\r
221                                             <return status='failure'>\r
222                                                 <parameter name='ack-final' value='Y'/>\r
223                                                 <parameter name="error-code" value="500" />\r
224                                                 <parameter name="error-message" value="`'Unknown ADDRESS_PLAN_POLICIES: ' + $db.address-plan-policies.key-value-source`" />\r
225                                             </return>\r
226                                         </outcome>\r
227                                     </switch>\r
228                                 </block>\r
229                                 <switch test='`$split-index == 0`'>\r
230                                     <outcome value='true'>\r
231                                         <set>\r
232                                             <parameter name='tmp.final.key-value' value="`$tmp.key-value`" />\r
233                                         </set>\r
234                                     </outcome>\r
235                                     <outcome value='false'>\r
236                                         <set>\r
237                                             <parameter name='tmp.final.key-value' \r
238         value="`$tmp.final.key-value + ':' + $tmp.key-value`" />\r
239                                         </set>\r
240                                     </outcome>\r
241                                 </switch>\r
242                             </for>\r
243                             <set>\r
244                                 <parameter name='generate-FQPN-output.pools[$pool-index].key-name'\r
245    value='`$tmp.getPlanTopologyResponse.key-name`' />\r
246                                 <parameter name='generate-FQPN-output.pools[$pool-index].key-value'\r
247         value='`$tmp.final.key-value`' />\r
248                             </set>\r
249                         </for>\r
250                         <set>\r
251                             <parameter name='generate-FQPN-output.pools_length' \r
252         value='`$eipam-ip-block.getPlanTopologyResponse.TopologyDetails_length`' />\r
253                         </set>\r
254                     </block>\r
255                 </outcome>\r
256                 <outcome value=''>\r
257                     <block atomic='true'>\r
258                         <for index="resp-index" start="0" end="`$eipam-ip-block.getPlanTopologyResponse.TopologyDetails_length`">\r
259                             <switch test='`$eipam-ip-block.plan-name == $eipam-ip-block.getPlanTopologyResponse.PlanName`'>\r
260                                 <outcome value='false'>\r
261                                     <return status="failure">\r
262                                         <parameter name="ack-final" value="Y" />\r
263                                         <parameter name="error-code" value="500"/>\r
264                                         <parameter name="error-message" value="`'eipam response plan-name ['+ $eipam-ip-block.getPlanTopologyResponse.PlanName + ' is not the same as input '+$eipam-ip-block.planName`" />\r
265                                     </return>\r
266                                 </outcome>\r
267                             </switch>\r
268                             <set>\r
269                                 <parameter name='pool-index'\r
270    value='`$eipam-ip-block.getPlanTopologyResponse.TopologyDetails[$resp-index].Level - 1`' />\r
271                             </set>\r
272                             <set>\r
273                                 <parameter name='tmp.final.key-value' value="" />\r
274                             </set>\r
275                             <set>\r
276                                 <parameter name='tmp.getPlanTopologyResponse.key-name' \r
277         value='`$eipam-ip-block.getPlanTopologyResponse.TopologyDetails[$resp-index].KeyName`' />\r
278                             </set>\r
279                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
280                                 <parameter name="original_string" value="`$tmp.getPlanTopologyResponse.key-name`" />\r
281                                 <parameter name="regex" value=":" />\r
282                                 <parameter name="ctx_memory_result_key" value="tmp.split.key-name" />\r
283                             </execute>\r
284                             <for index="split-index" start="0" end="`$tmp.split.key-name_length`">\r
285                                 <set>\r
286                                     <parameter name='tmp.eipam.key-name' \r
287         value='`$tmp.split.key-name[$split-index]`' />\r
288                                 </set>\r
289                                 <block atomic='true'>\r
290                                     <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
291   key='SELECT key_value_source from ADDRESS_PLAN_POLICIES WHERE key_name = $tmp.eipam.key-name '\r
292   pfx='db.address-plan-policies'>\r
293                                         <outcome value='failure'>\r
294                                             <return status='failure'>\r
295                                                 <parameter name='ack-final' value='Y'/>\r
296                                                 <parameter name="error-code" value="500" />\r
297                                                 <parameter name="error-message" value="Error reading ADDRESS_PLAN_POLICIES table" />\r
298                                             </return>\r
299                                         </outcome>\r
300                                         <outcome value='not-found'>\r
301                                             <return status='failure'>\r
302                                                 <parameter name='ack-final' value='Y'/>\r
303                                                 <parameter name="error-code" value="500" />\r
304                                                 <parameter name="error-message" value="`'No ADDRESS_PLAN_POLICIES entry found for key_name = ' + $eipam-ip-block.getPlanTopologyResponse.TopologyDetails[$key-index].KeyName`" />\r
305                                             </return>\r
306                                         </outcome>\r
307                                     </get-resource>\r
308                                     <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
309   key='SELECT * from ROUTING_CHARACTERISTIC_MAPPING WHERE network_role = $generate-FQPN-input.network-role '\r
310   pfx='db.routing-characteristic_mapping[]'>\r
311                                         <outcome value='failure'>\r
312                                             <return status='failure'>\r
313                                                 <parameter name='ack-final' value='Y'/>\r
314                                                 <parameter name="error-code" value="500" />\r
315                                                 <parameter name="error-message" value="Error reading ROUTING_CHARACTERISTIC_MAPPING table" />\r
316                                             </return>\r
317                                         </outcome>\r
318                                         <outcome value='not-found'>\r
319                                             <return status='failure'>\r
320                                                 <parameter name='ack-final' value='Y'/>\r
321                                                 <parameter name="error-code" value="500" />\r
322                                                 <parameter name="error-message" value="`'No ROUTING_CHARACTERISTIC_MAPPING entry found for network_role = ' + $generate-FQPN-input.network-role`" />\r
323                                             </return>\r
324                                         </outcome>\r
325                                     </get-resource>\r
326                                     <set>\r
327                                         <parameter name='tmp.key-value' value='' />\r
328                                     </set>\r
329                                     <switch test='`$db.address-plan-policies.key-value-source`'>\r
330                                         <outcome value='AddressPlanPolicyDG-Routing_Characteristic'>\r
331                                             <block atomic="true">\r
332                                                 <set>\r
333                                                     <parameter name='tmp.key-value' value='-1' />\r
334                                                 </set>\r
335                                                 <switch test='`$db.routing-characteristic_mapping_length &gt; 1`'>\r
336                                                     <outcome value='true'>\r
337                                                         <block>\r
338                                                             <for index="routing-index" start="0" end="`$db.routing-characteristic_mapping_length`">\r
339                                                                 <switch test='`$db.routing-characteristic_mapping[$routing-index].vrf-name == $generate-FQPN-input.vrf-name`'>\r
340                                                                     <outcome value='true'>\r
341                                                                         <block atomic='true'>\r
342                                                                             <set>\r
343                                                                                 <parameter name='tmp.key-value' value='`$db.routing-characteristic_mapping[$routing-index].routing-characteristic`' />\r
344                                                                             </set>\r
345                                                                             <return status='failure'></return>\r
346                                                                         </block>\r
347                                                                     </outcome>\r
348                                                                 </switch>\r
349                                                             </for>\r
350                                                             <return status='success'></return>\r
351                                                         </block>\r
352                                                     </outcome>\r
353                                                     <outcome value='false'>\r
354                                                         <set>\r
355                                                             <parameter name='tmp.key-value' value='`$db.routing-characteristic_mapping[0].routing-characteristic`' />\r
356                                                         </set>\r
357                                                     </outcome>\r
358                                                 </switch>\r
359                                                 <switch test='`$tmp.key-value`'>\r
360                                                     <outcome value='-1'>\r
361                                                         <return status='failure'>\r
362                                                             <parameter name='ack-final' value='Y'/>\r
363                                                             <parameter name="error-code" value="500" />\r
364                                                             <parameter name="error-message" value="No matching ROUTING_CHARACTERISTIC_MAPPING.vrf-name found" />\r
365                                                         </return>\r
366                                                     </outcome>\r
367                                                 </switch>\r
368                                             </block>\r
369                                         </outcome>\r
370                                         <outcome value='AddressPlanPolicyDG-Location_Clli8'>\r
371                                             <set>\r
372                                                 <parameter name='tmp.key-value' value='`$generate-FQPN-input.location-clli8`' />\r
373                                             </set>\r
374                                         </outcome>\r
375                                         <outcome value='AddressPlanPolicyDG-Vrf_Name'>\r
376                                             <switch test='`$generate-FQPN-input.vrf-name`'>\r
377                                                 <outcome value=''>\r
378                                                     <set>\r
379                                                         <parameter name='tmp.key-value' value='`$db.routing-characteristic_mapping[0].vrf-name`' />\r
380                                                     </set>\r
381                                                 </outcome>\r
382                                             </switch>\r
383                                         </outcome>\r
384                                         <outcome value='cloud_region_id'>\r
385                                             <set>\r
386                                                 <parameter name='tmp.key-value' value='`$generate-FQPN-input.aic-cloud-region`' />\r
387                                             </set>\r
388                                         </outcome>\r
389                                         <outcome value='AddressPlanPolicyDG-Complex_region'>\r
390                                             <set>\r
391                                                 <parameter name='tmp.key-value' value='`$aai.complex.region`' />\r
392                                             </set>\r
393                                         </outcome>\r
394                                         <outcome value='AddressPlanPolicyDG-Network_Name'>\r
395                                             <set>\r
396                                                 <parameter name='tmp.key-value' value='`$generate-FQPN-input.network-name`' />\r
397                                             </set>\r
398                                         </outcome>\r
399                                         <outcome value='AddressPlanPolicyDG-Subnet_Role'>\r
400                                             <switch test='`$generate-FQPN-input.subnet-role`' >\r
401                                                 <outcome value=''>\r
402                                                     <set>\r
403                                                         <parameter name='tmp.key-value' value='STATIC' />\r
404                                                     </set>\r
405                                                 </outcome>\r
406                                                 <outcome value='Other'>\r
407                                                     <set>\r
408                                                         <parameter name='tmp.key-value' value='`$generate-FQPN-input.subnet-role`' />\r
409                                                     </set>\r
410                                                 </outcome>\r
411                                             </switch>\r
412                                         </outcome>\r
413                                         <outcome value='AddressPlanPolicyDG-Network_Role'>\r
414                                             <set>\r
415                                                 <parameter name='tmp.key-value' value='`$generate-FQPN-input.network-role`' />\r
416                                             </set>\r
417                                         </outcome>\r
418                                         <outcome value='AddressPlanPolicyDG-Network_Id'>\r
419                                             <set>\r
420                                                 <parameter name='tmp.key-value' value='`$generate-FQPN-input.network-id`' />\r
421                                             </set>\r
422                                         </outcome>\r
423                                         <outcome value='AddressPlanPolicyDG-Network_Collection'>\r
424                                             <set>\r
425                                                 <parameter name='tmp.key-value' value='`$generate-FQPN-input.network-collection`' />\r
426                                             </set>\r
427                                         </outcome>\r
428                                         <outcome value='AddressPlanPolicyDG-Zone'>\r
429                                             <set>\r
430                                                 <parameter name='tmp.key-value' value='`$generate-FQPN-input.zone`' />\r
431                                             </set>\r
432                                         </outcome>\r
433                                         <outcome value='Other'>\r
434                                             <return status='failure'>\r
435                                                 <parameter name='ack-final' value='Y'/>\r
436                                                 <parameter name="error-code" value="500" />\r
437                                                 <parameter name="error-message" value="`'Unknown ADDRESS_PLAN_POLICIES: ' + $db.address-plan-policies.key-value-source`" />\r
438                                             </return>\r
439                                         </outcome>\r
440                                     </switch>\r
441                                 </block>\r
442                                 <switch test='`$split-index == 0`'>\r
443                                     <outcome value='true'>\r
444                                         <set>\r
445                                             <parameter name='tmp.final.key-value' value="`$tmp.key-value`" />\r
446                                         </set>\r
447                                     </outcome>\r
448                                     <outcome value='false'>\r
449                                         <set>\r
450                                             <parameter name='tmp.final.key-value' \r
451         value="`$tmp.final.key-value + ':' + $tmp.key-value`" />\r
452                                         </set>\r
453                                     </outcome>\r
454                                 </switch>\r
455                             </for>\r
456                             <set>\r
457                                 <parameter name='generate-FQPN-output.pools[$pool-index].key-name'\r
458    value='`$tmp.getPlanTopologyResponse.key-name`' />\r
459                                 <parameter name='generate-FQPN-output.pools[$pool-index].key-value'\r
460         value='`$tmp.final.key-value`' />\r
461                             </set>\r
462                         </for>\r
463                         <set>\r
464                             <parameter name='generate-FQPN-output.pools_length' \r
465         value='`$eipam-ip-block.getPlanTopologyResponse.TopologyDetails_length`' />\r
466                         </set>\r
467                     </block>\r
468                 </outcome>\r
469             </switch>\r
470         </block>\r
471     </method>\r
472 </service-logic>