Chore: Add gerrit maven verify GHA workflow
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / trans_slicing / GENERIC-RESOURCE-API_tsli-vnf-topology-operation-get-otn-tunnel-path-from-oof.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='tsli-vnf-topology-operation-get-otn-tunnel-path-from-oof' mode='sync'>\r
5         <block atomic="true">\r
6             <block atomic='true'>\r
7                 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
8                               resource="network-resources"\r
9                               key="selflink = 'https://aai.onap:8443/aai/v21/network/network-resources?depth=0'"\r
10                               local-only="false"\r
11                               pfx="allNetworksList" >\r
12                     <outcome value='success'></outcome>\r
13                     <outcome value='Other'></outcome>\r
14                     <outcome value='not-found'></outcome>\r
15                 </get-resource>\r
16                 <for index='netwidx' start='0' end='`$allNetworksList.network-resource_length`' >\r
17                     <switch test='`$allNetworksList.network-resource[$netwidx].provider-id == $param-prefix-domainA-pnfName[2]`'>\r
18                         <outcome value='true'>\r
19                             <switch test='`$allNetworksList.network-resource[$netwidx].te-topo-id != $param-prefix-domainA-pnfName[6]`'>\r
20                                 <outcome value='true'>\r
21                                     <set>\r
22                                         <parameter name='otnTopoIdSrc' value='`$allNetworksList.network-resource[$netwidx].te-topo-id`' />\r
23                                     </set>\r
24                                 </outcome>\r
25                             </switch>\r
26                         </outcome>\r
27                         <outcome value='false'>\r
28                             <switch test='`$allNetworksList.network-resource[$netwidx].provider-id == $param-prefix-domainB-pnfName[2]`'>\r
29                                 <outcome value='true'>\r
30                                     <switch test='`$allNetworksList.network-resource[$netwidx].te-topo-id != $param-prefix-domainB-pnfName[6]`'>\r
31                                         <outcome value='true'>\r
32                                             <block>\r
33                                                 <switch test='`$hasSecondary`'>\r
34                                                     <outcome value='true'>\r
35                                                         <block>\r
36                                                             <!-- This is to check the provider-id of ROOt and SECONDARY-ROOT-->\r
37                                                             <switch test='`$param-prefix-domainB[$param-prefix-domainB_length -9] == $param-prefix-domainC[$param-prefix-domainC_length -9]`'>\r
38                                                                 <outcome value='true'>\r
39                                                                     <block>\r
40                                                                         <set>\r
41                                                                             <parameter name='otnTopoIdDst' value='`$allNetworksList.network-resource[$netwidx].te-topo-id`' />\r
42                                                                         </set>\r
43                                                                         <set>\r
44                                                                             <parameter name='otnTopoIdDstBackup' value='`$allNetworksList.network-resource[$netwidx].te-topo-id`' />\r
45                                                                         </set>\r
46                                                                     </block>\r
47                                                                 </outcome>\r
48                                                                 <outcome value='false'>\r
49                                                                     <block>\r
50                                                                         <set>\r
51                                                                             <parameter name='otnTopoIdDst' value='`$allNetworksList.network-resource[$netwidx].te-topo-id`' />\r
52                                                                         </set>\r
53                                                                     </block>\r
54                                                                 </outcome>\r
55                                                             </switch>\r
56                                                         </block>\r
57                                                     </outcome>\r
58                                                     <outcome value='Other'>\r
59                                                         <set>\r
60                                                             <parameter name='otnTopoIdDst' value='`$allNetworksList.network-resource[$netwidx].te-topo-id`' />\r
61                                                         </set>\r
62                                                     </outcome>\r
63                                                 </switch>\r
64                                             </block>\r
65                                         </outcome>\r
66                                     </switch>\r
67                                 </outcome>\r
68                                 <outcome value='false'>\r
69                                     <switch test='`$allNetworksList.network-resource[$netwidx].provider-id == $param-prefix-domainC-pnfName[2]`'>\r
70                                         <outcome value='true'>\r
71                                             <block>\r
72                                                 <switch test='`$hasSecondary`'>\r
73                                                     <outcome value='true'>\r
74                                                         <block>\r
75                                                             <set>\r
76                                                                 <parameter name='otnTopoIdDstBackup' value='`$allNetworksList.network-resource[$netwidx].te-topo-id`' />\r
77                                                             </set>\r
78                                                         </block>\r
79                                                     </outcome>\r
80                                                 </switch>\r
81                                             </block>\r
82                                         </outcome>\r
83                                     </switch>\r
84                                 </outcome>\r
85                             </switch>\r
86                         </outcome>\r
87                     </switch>\r
88                 </for>\r
89                 <set>\r
90                     <parameter name='tmp.pce-src-node.' value='' />\r
91                 </set>\r
92                 <set>\r
93                     <parameter name='tmp.pce-dst-node.' value='' />\r
94                 </set>\r
95                 <set>\r
96                     <parameter name='tmp.pce-dst-node-backup.' value='' />\r
97                 </set>\r
98                 <set>\r
99                     <!--<parameter name='`otn-oof`' value='' />-->\r
100                     <parameter name='otn-oof.' value='' />\r
101                     <!--<parameter name='`otn-oof.solutions`' value='' />-->\r
102                     <!--<parameter name='`otn-oof.solutions.`' value='' />-->\r
103                     <!--<parameter name='`otn-oof.solutions_length`' value='0' />-->\r
104                 </set>\r
105                 <set>\r
106                     <!--<parameter name='tmp.pce-src-node' value="`$param-prefix-domainA-pnfName[0] + '-' +-->\r
107                     <!--                                                   $param-prefix-domainA-pnfName[1] + '-' +-->\r
108                     <!--                                                   $param-prefix-domainA-pnfName[2] + '-' +-->\r
109                     <!--                                                   $param-prefix-domainA-pnfName[3] + '-' +-->\r
110                     <!--                                                   $param-prefix-domainA-pnfName[4] + '-' +-->\r
111                     <!--                                                   $param-prefix-domainA-pnfName[5] + '-' +-->\r
112                     <!--                                                   1 + '-' +-->\r
113                     <!--                                                   $param-prefix-domainA-pnfName[7] + '-' +-->\r
114                     <!--                                                   $param-prefix-domainA-pnfName[8]`" />-->\r
115                     <parameter name='tmp.pce-src-node' value="`$param-prefix-domainA-pnfName[0] + '-' +\r
116                                                    $param-prefix-domainA-pnfName[1] + '-' +\r
117                                                    $param-prefix-domainA-pnfName[2] + '-' +\r
118                                                    $param-prefix-domainA-pnfName[3] + '-' +\r
119                                                    $param-prefix-domainA-pnfName[4] + '-' +\r
120                                                    $param-prefix-domainA-pnfName[5] + '-' +\r
121                                                    $otnTopoIdSrc + '-' +\r
122                                                    $param-prefix-domainA-pnfName[7] + '-' +\r
123                                                    $param-prefix-domainA-pnfName[8]`" />\r
124                 </set>\r
125                 <set>\r
126                     <!--<parameter name='$tmp.pce-dst-node' value="`$param-prefix-domainB-pnfName[0] + '-' +-->\r
127                     <!--                                                   $param-prefix-domainB-pnfName[1] + '-' +-->\r
128                     <!--                                                   $param-prefix-domainB-pnfName[2] + '-' +-->\r
129                     <!--                                                   $param-prefix-domainB-pnfName[3] + '-' +-->\r
130                     <!--                                                   $param-prefix-domainB-pnfName[4] + '-' +-->\r
131                     <!--                                                   $param-prefix-domainB-pnfName[5] + '-' +-->\r
132                     <!--                                                   1 + '-' +-->\r
133                     <!--                                                   $param-prefix-domainB-pnfName[7] + '-' +-->\r
134                     <!--                                                   $param-prefix-domainB-pnfName[8]`" />-->\r
135                     <parameter name='tmp.pce-dst-node' value="`$param-prefix-domainB-pnfName[0] + '-' +\r
136                                                    $param-prefix-domainB-pnfName[1] + '-' +\r
137                                                    $param-prefix-domainB-pnfName[2] + '-' +\r
138                                                    $param-prefix-domainB-pnfName[3] + '-' +\r
139                                                    $param-prefix-domainB-pnfName[4] + '-' +\r
140                                                    $param-prefix-domainB-pnfName[5] + '-' +\r
141                                                    $otnTopoIdDst + '-' +\r
142                                                    $param-prefix-domainB-pnfName[7] + '-' +\r
143                                                    $param-prefix-domainB-pnfName[8]`" />\r
144                 </set>\r
145                 <set>\r
146                     <!--<parameter name='$tmp.pce-dst-node' value="`$param-prefix-domainB-pnfName[0] + '-' +-->\r
147                     <!--                                                   $param-prefix-domainB-pnfName[1] + '-' +-->\r
148                     <!--                                                   $param-prefix-domainB-pnfName[2] + '-' +-->\r
149                     <!--                                                   $param-prefix-domainB-pnfName[3] + '-' +-->\r
150                     <!--                                                   $param-prefix-domainB-pnfName[4] + '-' +-->\r
151                     <!--                                                   $param-prefix-domainB-pnfName[5] + '-' +-->\r
152                     <!--                                                   1 + '-' +-->\r
153                     <!--                                                   $param-prefix-domainB-pnfName[7] + '-' +-->\r
154                     <!--                                                   $param-prefix-domainB-pnfName[8]`" />-->\r
155                     <parameter name='tmp.pce-dst-node-backup' value="`$param-prefix-domainC-pnfName[0] + '-' +\r
156                                                    $param-prefix-domainC-pnfName[1] + '-' +\r
157                                                    $param-prefix-domainC-pnfName[2] + '-' +\r
158                                                    $param-prefix-domainC-pnfName[3] + '-' +\r
159                                                    $param-prefix-domainC-pnfName[4] + '-' +\r
160                                                    $param-prefix-domainC-pnfName[5] + '-' +\r
161                                                    $otnTopoIdDstBackup + '-' +\r
162                                                    $param-prefix-domainC-pnfName[7] + '-' +\r
163                                                    $param-prefix-domainC-pnfName[8]`" />\r
164                 </set>\r
165                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
166                     <parameter name="logger" value="message-log" />\r
167                     <parameter name="level" value="info" />\r
168                     <!--<parameter name="field1" value="Path computation succeed!"/>-->\r
169                     <!--<parameter name="field2" value="`$ccsdkTopo.resp.solutions_length`"/>-->\r
170                     <!--<parameter name="field1" value="`$tmp.src.domainA.pnf-name`"/>-->\r
171                     <!--<parameter name="field2" value="`$tmp.dst.domainB.pnf-name`"/>-->\r
172                     <parameter name="field1" value="`$tmp.pce-src-node`"/>\r
173                     <parameter name="field2" value="`$tmp.pce-dst-node`"/>\r
174                     <parameter name="field3" value="`$tmp.pce-dst-node-backup`"/>\r
175                 </record>\r
176                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
177                     <parameter name="logger" value="message-log" />\r
178                     <parameter name="level" value="info" />\r
179                     <parameter name="field1" value="`$otn-oof.`"/>\r
180                 </record>\r
181                 <set>\r
182                     <!--<parameter name='tmp.pce-src-node' value="`$param-prefix-domainA-pnfName[0] + '-' +-->\r
183                     <!--                                                   $param-prefix-domainA-pnfName[1] + '-' +-->\r
184                     <!--                                                   $param-prefix-domainA-pnfName[2] + '-' +-->\r
185                     <!--                                                   $param-prefix-domainA-pnfName[3] + '-' +-->\r
186                     <!--                                                   $param-prefix-domainA-pnfName[4] + '-' +-->\r
187                     <!--                                                   $param-prefix-domainA-pnfName[5] + '-' +-->\r
188                     <!--                                                   1 + '-' +-->\r
189                     <!--                                                   $param-prefix-domainA-pnfName[7] + '-' +-->\r
190                     <!--                                                   $param-prefix-domainA-pnfName[8]`" />-->\r
191                     <parameter name='filenamemm' value="`$tmp.pce-src-node + $tmp.pce-dst-node + $tmp.pce-dst-node-backup`" />\r
192                 </set>\r
193                 <switch test='`$hasSecondary`'>\r
194                     <outcome value='true'>\r
195                         <block>\r
196                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliTopologyUtils' method='computePaths' >\r
197                                 <parameter name="pnfs-pfx" value='ccsdkTopopnfs'/>\r
198                                 <parameter name="links-pfx" value="ccsdkTopologicalLinks"/>\r
199                                 <parameter name="response-pfx" value="otn-oof"/>\r
200                                 <parameter name="output-end-to-end-path" value="false"/>\r
201                                 <!--<parameter name="src-node" value="`$tmp.src.domainA.pnf-name`"/>-->\r
202                                 <!--<parameter name="dst-node" value="`$tmp.dst.domainB.pnf-name`"/>-->\r
203                                 <parameter name="src-node" value="`$tmp.pce-src-node`"/>\r
204                                 <parameter name="dst-node" value="`$tmp.pce-dst-node`"/>\r
205                                 <parameter name="dst-node-backup" value="`$tmp.pce-dst-node-backup`"/>\r
206                                 <parameter name="require-backuppath" value="`$hasSecondary`"/>\r
207                                 <outcome value='success'></outcome>\r
208                                 <outcome value='Other'></outcome>\r
209                                 <outcome value='not-found'></outcome>\r
210                             </execute>\r
211                         </block>\r
212                     </outcome>\r
213                     <outcome value='Other'>\r
214                         <block>\r
215                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliTopologyUtils' method='computePath' >\r
216                                 <parameter name="pnfs-pfx" value='ccsdkTopopnfs'/>\r
217                                 <parameter name="links-pfx" value="ccsdkTopologicalLinks"/>\r
218                                 <parameter name="response-pfx" value="otn-oof"/>\r
219                                 <parameter name="output-end-to-end-path" value="false"/>\r
220                                 <!--<parameter name="src-node" value="`$tmp.src.domainA.pnf-name`"/>-->\r
221                                 <!--<parameter name="dst-node" value="`$tmp.dst.domainB.pnf-name`"/>-->\r
222                                 <parameter name="src-node" value="`$tmp.pce-src-node`"/>\r
223                                 <parameter name="dst-node" value="`$tmp.pce-dst-node`"/>\r
224                                 <outcome value='success'></outcome>\r
225                                 <outcome value='Other'></outcome>\r
226                                 <outcome value='not-found'></outcome>\r
227                             </execute>\r
228                         </block>\r
229                     </outcome>\r
230                 </switch>\r
231             </block>\r
232             <set>\r
233                 <parameter name='`tmp.otninfo.`' value='' />\r
234                 <!--<parameter name='`tmp.otninfo_length`' value='0' />-->\r
235                 <parameter name='`tmp.otninfoProtect.`' value='' />\r
236             </set>\r
237             <for index='vidx' start='0' end='`$otn-oof.solutions_length`' >\r
238                 <block atomic="true">\r
239                     <set>\r
240                         <parameter name='otn-oof.link-name' value='' />\r
241                         <!--<parameter name='tmp.aai.cross-link' value='' />-->\r
242                         <parameter name='tmp.aai.cross-link.' value='' />\r
243                         <!--<parameter name='tmp.aai.cross-link.link-role' value='' />-->\r
244                     </set>\r
245                     <set>\r
246                         <parameter name='otn-oof.link-name' value='`$otn-oof.solutions[$vidx].original_link`' />\r
247                         <parameter name='otn-oof.start-node' value='`$otn-oof.solutions[$vidx].src_node`' />\r
248                         <parameter name='otn-oof.end-node' value='`$otn-oof.solutions[$vidx].dst_node`' />\r
249                     </set>\r
250                     <set>\r
251                         <parameter name='tmp.cross-link.src-ltpId' value="`$otn-oof.solutions[$vidx].src_pinterface`" />\r
252                         <parameter name='tmp.src-pnf-name' value="`$otn-oof.solutions[$vidx].src_node`" />\r
253                     </set>\r
254                     <set>\r
255                         <parameter name='tmp.cross-link.dst-ltpId' value="`$otn-oof.solutions[$vidx].dst_pinterface`" />\r
256                         <parameter name='tmp.dst-pnf-name' value="`$otn-oof.solutions[$vidx].dst_node`" />\r
257                     </set>\r
258                     <block atomic="true">\r
259                         <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
260                                       resource="p-interface"\r
261                                       key="pnf.pnf-name = $tmp.src-pnf-name\r
262                     AND p-interface.interface-name = $tmp.cross-link.src-ltpId"\r
263                                       pfx='tmp.aai.src-tp' local-only='false' >\r
264                             <!--AND depth = '0'"-->\r
265                             <outcome value='success'>\r
266                                 <block>\r
267                                     <for silentFailure='true' index='pintsidx' start='0' end='`$tmp.aai.src-tp.relationship-list.relationship_length`' >\r
268                                         <switch test='`$tmp.aai.src-tp.relationship-list.relationship[$pintsidx].related-to`'>\r
269                                             <outcome value='tunnel-termination-point'>\r
270                                                 <block atomic="true">\r
271                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
272                                                         <!--<parameter name="original_string" value='`$tmp.aai.src-tp`'/>-->\r
273                                                         <parameter name="original_string" value='`$tmp.aai.src-tp.interface-name`'/>\r
274                                                         <!--<parameter name="regex" value="[^-]+$"/>-->\r
275                                                         <parameter name="regex" value="[-]+"/>\r
276                                                         <parameter name="ctx_memory_result_key" value="param-prefix-src-tp"/>\r
277                                                         <outcome value='success'>\r
278                                                             <block atomic="true">\r
279                                                                 <set>\r
280                                                                     <parameter name='domain-A.ltpId' value='`$param-prefix-src-tp[$param-prefix-src-tp_length -1]`' />\r
281                                                                     <parameter name='`tmp.otninfo[$vidx].dstPort.dst-ltp-id`' value="`$param-prefix-src-tp[$param-prefix-src-tp_length -1]`" />\r
282                                                                     <parameter name='`tmp.otninfo_length`' value='`$vidx + 1`' />\r
283                                                                 </set>\r
284                                                             </block>\r
285                                                         </outcome>\r
286                                                         <outcome value='failure'>\r
287                                                             <return status='failure'>\r
288                                                                 <parameter name='error-code' value='' />\r
289                                                                 <parameter name='error-message' value="An error occured while splitting sna1_route" />\r
290                                                             </return>\r
291                                                         </outcome>\r
292                                                     </execute>\r
293                                                     <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
294                                                                   resource="pnf"\r
295                                                                   key="pnf.pnf-name = $tmp.src-pnf-name"\r
296                                                                   pfx='tmp.aai.src-pnf' local-only='false' >\r
297                                                         <!--AND depth = '0'"-->\r
298                                                         <outcome value='success'>\r
299                                                             <block>\r
300                                                                 <set>\r
301                                                                     <parameter name='domain-A.node-id' value="`$tmp.aai.src-pnf.pnf-id`" />\r
302                                                                     <parameter name='domain-A.tpn' value='1' />\r
303                                                                     <parameter name='`tmp.otninfo[$vidx].dstPort.dst-access-node-id`' value="`$tmp.aai.src-pnf.pnf-id`" />\r
304                                                                     <parameter name='`tmp.otninfo_length`' value='`$vidx + 1`' />\r
305                                                                 </set>\r
306                                                                 <for silentFailure='true' index='pvidx' start='0' end='`$tmp.aai.src-pnf.relationship-list.relationship_length`' >\r
307                                                                     <switch test='`$tmp.aai.src-pnf.relationship-list.relationship[$pvidx].related-to`'>\r
308                                                                         <outcome value='network-resource'>\r
309                                                                             <block atomic="true">\r
310                                                                                 <set>\r
311                                                                                     <parameter name='tmp.domain-A.network-id' value="`$tmp.aai.src-pnf.relationship-list.relationship[$pvidx].relationship-data[0].relationship-value`" />\r
312                                                                                 </set>\r
313                                                                                 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
314                                                                                               resource="network-resource"\r
315                                                                                               key="network-resource.network-id = $tmp.domain-A.network-id\r
316                 AND depth = '0'"\r
317                                                                                               pfx='tmp.aai.src-network-resource' local-only='false' >\r
318                                                                                     <outcome value='success'>\r
319                                                                                         <set>\r
320                                                                                             <parameter name='domain-A.network-id' value="`$tmp.aai.src-network-resource.network-id`" />\r
321                                                                                             <parameter name='domain-A.provider-id' value="`$tmp.aai.src-network-resource.provider-id`" />\r
322                                                                                             <parameter name='domain-A.client-id' value="`$tmp.aai.src-network-resource.client-id`" />\r
323                                                                                             <parameter name='domain-A.te-topo-id' value="`$tmp.aai.src-network-resource.te-topo-id`" />\r
324                                                                                             <parameter name='domain-A.network-type' value="`$tmp.aai.src-network-resource.network-type`" />\r
325                                                                                             <parameter name='`tmp.otninfo[$vidx].dstPort.dst-access-network-id`' value="`$tmp.aai.src-network-resource.network-id`" />\r
326                                                                                             <parameter name='`tmp.otninfo[$vidx].dstPort.dst-access-provider-id`' value="`$tmp.aai.src-network-resource.provider-id`" />\r
327                                                                                             <parameter name='`tmp.otninfo[$vidx].dstPort.dst-access-client-id`' value="`$tmp.aai.src-network-resource.client-id`" />\r
328                                                                                             <parameter name='`tmp.otninfo[$vidx].dstPort.dst-access-topology-id`' value="`$tmp.aai.src-network-resource.te-topo-id`" />\r
329                                                                                             <parameter name='`tmp.otninfo[$vidx].dstPort.dst-access-network-type`' value="`$tmp.aai.src-network-resource.network-type`" />\r
330                                                                                             <parameter name='`tmp.otninfo_length`' value='`$vidx + 1`' />\r
331                                                                                         </set>\r
332                                                                                     </outcome>\r
333                                                                                 </get-resource>\r
334                                                                                 <break/>\r
335                                                                             </block>\r
336                                                                         </outcome>\r
337                                                                     </switch>\r
338                                                                 </for>\r
339                                                             </block>\r
340                                                         </outcome>\r
341                                                         <outcome value='not-found'>\r
342                                                             <return status='failure'>\r
343                                                                 <parameter name='ack-final' value='Y'/>\r
344                                                                 <parameter name="error-code" value="500" />\r
345                                                                 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />\r
346                                                             </return>\r
347                                                         </outcome>\r
348                                                         <outcome value='Other'>\r
349                                                             <return status='failure'>\r
350                                                                 <parameter name='ack-final' value='Y'/>\r
351                                                                 <parameter name="error-code" value="500" />\r
352                                                                 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />\r
353                                                             </return>\r
354                                                         </outcome>\r
355                                                     </get-resource>\r
356                                                     <set>\r
357                                                         <parameter name='tmp.domain-A.ttp-id' value="`$tmp.aai.src-tp.relationship-list.relationship[$pintsidx].relationship-data[0].relationship-value`" />\r
358                                                     </set>\r
359                                                     <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
360                                                                   resource="tunnel-termination-point"\r
361                                                                   key="tunnel-termination-point.ttp-id = $tmp.domain-A.ttp-id\r
362                 AND depth = '0'"\r
363                                                                   pfx='tmp.aai.src-ttp' local-only='false' >\r
364                                                         <outcome value='success'>\r
365                                                             <block atomic="true">\r
366                                                                 <set>\r
367                                                                     <parameter name='domain-A.tunnel-tp-id' value="`$tmp.aai.src-ttp.tunnel-tp-id`" />\r
368                                                                     <parameter name='`tmp.otninfo[$vidx].dstPort.dst-tunnel-tp-id`' value="`$tmp.aai.src-ttp.tunnel-tp-id`" />\r
369                                                                     <parameter name='`tmp.otninfo_length`' value='`$vidx + 1`' />\r
370                                                                 </set>\r
371                                                             </block>\r
372                                                         </outcome>\r
373                                                     </get-resource>\r
374                                                     <break/>\r
375                                                 </block>\r
376                                             </outcome>\r
377                                         </switch>\r
378                                     </for>\r
379                                 </block>\r
380                             </outcome>\r
381                             <outcome value='not-found'>\r
382                                 <return status='failure'>\r
383                                     <parameter name='ack-final' value='Y'/>\r
384                                     <parameter name="error-code" value="500" />\r
385                                     <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />\r
386                                 </return>\r
387                             </outcome>\r
388                             <outcome value='Other'>\r
389                                 <return status='failure'>\r
390                                     <parameter name='ack-final' value='Y'/>\r
391                                     <parameter name="error-code" value="500" />\r
392                                     <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />\r
393                                 </return>\r
394                             </outcome>\r
395                         </get-resource>\r
396                         <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
397                                       resource="p-interface"\r
398                                       key="pnf.pnf-name = $tmp.dst-pnf-name\r
399                     AND p-interface.interface-name = $tmp.cross-link.dst-ltpId"\r
400                                       pfx='tmp.aai.dst-tp' local-only='false' >\r
401                             <!--AND depth = '0'"-->\r
402                             <outcome value='success'>\r
403                                 <block>\r
404                                     <for silentFailure='true' index='pintdidx' start='0' end='`$tmp.aai.dst-tp.relationship-list.relationship_length`' >\r
405                                         <switch test='`$tmp.aai.dst-tp.relationship-list.relationship[$pintdidx].related-to`'>\r
406                                             <outcome value='tunnel-termination-point'>\r
407                                                 <block atomic="true">\r
408                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
409                                                         <parameter name="original_string" value='`$tmp.aai.dst-tp`'/>\r
410                                                         <!--<parameter name="regex" value="[^-]+$"/>-->\r
411                                                         <parameter name="regex" value="[-]+"/>\r
412                                                         <parameter name="ctx_memory_result_key" value="param-prefix-dst-tp"/>\r
413                                                         <outcome value='success'>\r
414                                                             <block atomic="true">\r
415                                                                 <set>\r
416                                                                     <parameter name='domain-B.ltpId' value='`$param-prefix-dst-tp[$param-prefix-dst-tp_length -1]`' />\r
417                                                                     <parameter name='`tmp.otninfo[$vidx + 1].srcPort.src-ltp-id`' value="`$param-prefix-dst-tp[$param-prefix-dst-tp_length -1]`" />\r
418                                                                     <parameter name='`tmp.otninfo_length`' value='`$vidx + 2`' />\r
419                                                                 </set>\r
420                                                             </block>\r
421                                                         </outcome>\r
422                                                         <outcome value='failure'>\r
423                                                             <return status='failure'>\r
424                                                                 <parameter name='error-code' value='' />\r
425                                                                 <parameter name='error-message' value="An error occured while splitting sna1_route" />\r
426                                                             </return>\r
427                                                         </outcome>\r
428                                                     </execute>\r
429                                                     <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
430                                                                   resource="pnf"\r
431                                                                   key="pnf.pnf-name = $tmp.dst-pnf-name"\r
432                                                                   pfx='tmp.aai.dst-pnf' local-only='false' >\r
433                                                         <!--AND depth = '0'"-->\r
434                                                         <outcome value='success'>\r
435                                                             <block>\r
436                                                                 <set>\r
437                                                                     <parameter name='domain-B.node-id' value="`$tmp.aai.dst-pnf.pnf-id`" />\r
438                                                                     <parameter name='domain-B.tpn' value='1' />\r
439                                                                     <parameter name='`tmp.otninfo[$vidx + 1].srcPort.src-access-node-id`' value="`$tmp.aai.dst-pnf.pnf-id`" />\r
440                                                                     <parameter name='`tmp.otninfo_length`' value='`$vidx + 2`' />\r
441                                                                 </set>\r
442                                                                 <for silentFailure='true' index='mvidx' start='0' end='`$tmp.aai.dst-pnf.relationship-list.relationship_length`' >\r
443                                                                     <switch test='`$tmp.aai.dst-pnf.relationship-list.relationship[$mvidx].related-to`'>\r
444                                                                         <outcome value='network-resource'>\r
445                                                                             <block atomic="true">\r
446                                                                                 <set>\r
447                                                                                     <parameter name='tmp.domain-B.network-id' value="`$tmp.aai.dst-pnf.relationship-list.relationship[$mvidx].relationship-data[0].relationship-value`" />\r
448                                                                                 </set>\r
449                                                                                 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
450                                                                                               resource="network-resource"\r
451                                                                                               key="network-resource.network-id = $tmp.domain-B.network-id\r
452                 AND depth = '0'"\r
453                                                                                               pfx='tmp.aai.dst-network-resource' local-only='false' >\r
454                                                                                     <outcome value='success'>\r
455                                                                                         <set>\r
456                                                                                             <parameter name='domain-B.network-id' value="`$tmp.aai.dst-network-resource.network-id`" />\r
457                                                                                             <parameter name='domain-B.provider-id' value="`$tmp.aai.dst-network-resource.provider-id`" />\r
458                                                                                             <parameter name='domain-B.client-id' value="`$tmp.aai.dst-network-resource.client-id`" />\r
459                                                                                             <parameter name='domain-B.te-topo-id' value="`$tmp.aai.dst-network-resource.te-topo-id`" />\r
460                                                                                             <parameter name='domain-B.network-type' value="`$tmp.aai.dst-network-resource.network-type`" />\r
461                                                                                             <parameter name='`tmp.otninfo[$vidx + 1].srcPort.src-access-network-id`' value="`$tmp.aai.dst-network-resource.network-id`" />\r
462                                                                                             <parameter name='`tmp.otninfo[$vidx + 1].srcPort.src-access-provider-id`' value="`$tmp.aai.dst-network-resource.provider-id`" />\r
463                                                                                             <parameter name='`tmp.otninfo[$vidx + 1].srcPort.src-access-client-id`' value="`$tmp.aai.dst-network-resource.client-id`" />\r
464                                                                                             <parameter name='`tmp.otninfo[$vidx + 1].srcPort.src-access-topology-id`' value="`$tmp.aai.dst-network-resource.te-topo-id`" />\r
465                                                                                             <parameter name='`tmp.otninfo[$vidx + 1].srcPort.src-access-network-type`' value="`$tmp.aai.dst-network-resource.network-type`" />\r
466                                                                                             <parameter name='`tmp.otninfo_length`' value='`$vidx + 2`' />\r
467                                                                                         </set>\r
468                                                                                     </outcome>\r
469                                                                                 </get-resource>\r
470                                                                                 <break/>\r
471                                                                             </block>\r
472                                                                         </outcome>\r
473                                                                     </switch>\r
474                                                                 </for>\r
475                                                             </block>\r
476                                                         </outcome>\r
477                                                         <outcome value='not-found'>\r
478                                                             <return status='failure'>\r
479                                                                 <parameter name='ack-final' value='Y'/>\r
480                                                                 <parameter name="error-code" value="500" />\r
481                                                                 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />\r
482                                                             </return>\r
483                                                         </outcome>\r
484                                                         <outcome value='Other'>\r
485                                                             <return status='failure'>\r
486                                                                 <parameter name='ack-final' value='Y'/>\r
487                                                                 <parameter name="error-code" value="500" />\r
488                                                                 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />\r
489                                                             </return>\r
490                                                         </outcome>\r
491                                                     </get-resource>\r
492                                                     <set>\r
493                                                         <parameter name='tmp.domain-B.ttp-id' value="`$tmp.aai.dst-tp.relationship-list.relationship[$pintdidx].relationship-data[0].relationship-value`" />\r
494                                                     </set>\r
495                                                     <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
496                                                                   resource="tunnel-termination-point"\r
497                                                                   key="tunnel-termination-point.ttp-id = $tmp.domain-B.ttp-id\r
498                 AND depth = '0'"\r
499                                                                   pfx='tmp.aai.dst-ttp' local-only='false' >\r
500                                                         <outcome value='success'>\r
501                                                             <block atomic="true">\r
502                                                                 <set>\r
503                                                                     <parameter name='domain-B.tunnel-tp-id' value="`$tmp.aai.dst-ttp.tunnel-tp-id`" />\r
504                                                                     <parameter name='`tmp.otninfo[$vidx + 1].srcPort.src-tunnel-tp-id`' value="`$tmp.aai.dst-ttp.tunnel-tp-id`" />\r
505                                                                     <parameter name='`tmp.otninfo_length`' value='`$vidx + 2`' />\r
506                                                                 </set>\r
507                                                             </block>\r
508                                                         </outcome>\r
509                                                     </get-resource>\r
510                                                     <break/>\r
511                                                 </block>\r
512                                             </outcome>\r
513                                         </switch>\r
514                                     </for>\r
515                                 </block>\r
516                             </outcome>\r
517                             <outcome value='not-found'>\r
518                                 <return status='failure'>\r
519                                     <parameter name='ack-final' value='Y'/>\r
520                                     <parameter name="error-code" value="500" />\r
521                                     <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />\r
522                                 </return>\r
523                             </outcome>\r
524                             <outcome value='Other'>\r
525                                 <return status='failure'>\r
526                                     <parameter name='ack-final' value='Y'/>\r
527                                     <parameter name="error-code" value="500" />\r
528                                     <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />\r
529                                 </return>\r
530                             </outcome>\r
531                         </get-resource>\r
532                     </block>\r
533                 </block>\r
534             </for>\r
535             <switch test='`$hasSecondary`'>\r
536                 <outcome value='true'>\r
537                     <block>\r
538                         <for index='vidx' start='0' end='`$otn-oof.secondarySolutions_length`' >\r
539                             <block atomic="true">\r
540                                 <set>\r
541                                     <parameter name='otn-oof.link-name' value='' />\r
542                                     <!--<parameter name='tmp.aai.cross-link' value='' />-->\r
543                                     <parameter name='tmp.aai.cross-link.' value='' />\r
544                                     <!--<parameter name='tmp.aai.cross-link.link-role' value='' />-->\r
545                                     <parameter name='tmp.src-pnf-name' value='' />\r
546                                     <parameter name='tmp.cross-link.' value='' />\r
547                                     <parameter name='tmp.dst-pnf-name' value='' />\r
548                                     <parameter name='tmp.aai.src-tp.' value='' />\r
549                                     <parameter name='param-prefix-src-tp.' value='' />\r
550                                     <parameter name='tmp.aai.src-pnf.' value='' />\r
551                                     <parameter name='tmp.domain-A.network-id' value='' />\r
552                                     <parameter name='tmp.aai.src-network-resource.' value='' />\r
553                                     <parameter name='tmp.domain-A.ttp-id' value='' />\r
554                                     <parameter name='tmp.aai.src-ttp.' value='' />\r
555                                     <parameter name='tmp.aai.dst-tp.' value='' />\r
556                                     <parameter name='param-prefix-dst-tp.' value='' />\r
557                                     <parameter name='tmp.aai.dst-pnf.' value='' />\r
558                                     <parameter name='tmp.domain-C.network-id' value='' />\r
559                                     <parameter name='tmp.aai.dst-network-resource.' value='' />\r
560                                     <parameter name='tmp.domain-C.ttp-id' value='' />\r
561                                     <parameter name='tmp.aai.dst-ttp.' value='' />\r
562                                 </set>\r
563                                 <set>\r
564                                     <parameter name='otn-oof.link-name' value='`$otn-oof.secondarySolutions[$vidx].original_link`' />\r
565                                     <parameter name='otn-oof.start-node' value='`$otn-oof.secondarySolutions[$vidx].src_node`' />\r
566                                     <parameter name='otn-oof.end-node' value='`$otn-oof.secondarySolutions[$vidx].dst_node`' />\r
567                                 </set>\r
568                                 <set>\r
569                                     <parameter name='tmp.cross-link.src-ltpId' value="`$otn-oof.secondarySolutions[$vidx].src_pinterface`" />\r
570                                     <parameter name='tmp.src-pnf-name' value="`$otn-oof.secondarySolutions[$vidx].src_node`" />\r
571                                 </set>\r
572                                 <set>\r
573                                     <parameter name='tmp.cross-link.dst-ltpId' value="`$otn-oof.secondarySolutions[$vidx].dst_pinterface`" />\r
574                                     <parameter name='tmp.dst-pnf-name' value="`$otn-oof.secondarySolutions[$vidx].dst_node`" />\r
575                                 </set>\r
576                                 <block atomic="true">\r
577                                     <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
578                                                   resource="p-interface"\r
579                                                   key="pnf.pnf-name = $tmp.src-pnf-name\r
580                     AND p-interface.interface-name = $tmp.cross-link.src-ltpId"\r
581                                                   pfx='tmp.aai.src-tp' local-only='false' >\r
582                                         <!--AND depth = '0'"-->\r
583                                         <outcome value='success'>\r
584                                             <block>\r
585                                                 <for silentFailure='true' index='pintsidx' start='0' end='`$tmp.aai.src-tp.relationship-list.relationship_length`' >\r
586                                                     <switch test='`$tmp.aai.src-tp.relationship-list.relationship[$pintsidx].related-to`'>\r
587                                                         <outcome value='tunnel-termination-point'>\r
588                                                             <block atomic="true">\r
589                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
590                                                                     <!--<parameter name="original_string" value='`$tmp.aai.src-tp`'/>-->\r
591                                                                     <parameter name="original_string" value='`$tmp.aai.src-tp.interface-name`'/>\r
592                                                                     <!--<parameter name="regex" value="[^-]+$"/>-->\r
593                                                                     <parameter name="regex" value="[-]+"/>\r
594                                                                     <parameter name="ctx_memory_result_key" value="param-prefix-src-tp"/>\r
595                                                                     <outcome value='success'>\r
596                                                                         <block atomic="true">\r
597                                                                             <set>\r
598                                                                                 <parameter name='domain-A.ltpId' value='`$param-prefix-src-tp[$param-prefix-src-tp_length -1]`' />\r
599                                                                                 <parameter name='`tmp.otninfoProtect[$vidx].dstPort.dst-ltp-id`' value="`$param-prefix-src-tp[$param-prefix-src-tp_length -1]`" />\r
600                                                                                 <parameter name='`tmp.otninfoProtect_length`' value='`$vidx + 1`' />\r
601                                                                             </set>\r
602                                                                         </block>\r
603                                                                     </outcome>\r
604                                                                     <outcome value='failure'>\r
605                                                                         <return status='failure'>\r
606                                                                             <parameter name='error-code' value='' />\r
607                                                                             <parameter name='error-message' value="An error occured while splitting sna1_route" />\r
608                                                                         </return>\r
609                                                                     </outcome>\r
610                                                                 </execute>\r
611                                                                 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
612                                                                               resource="pnf"\r
613                                                                               key="pnf.pnf-name = $tmp.src-pnf-name"\r
614                                                                               pfx='tmp.aai.src-pnf' local-only='false' >\r
615                                                                     <!--AND depth = '0'"-->\r
616                                                                     <outcome value='success'>\r
617                                                                         <block>\r
618                                                                             <set>\r
619                                                                                 <parameter name='domain-A.node-id' value="`$tmp.aai.src-pnf.pnf-id`" />\r
620                                                                                 <parameter name='domain-A.tpn' value='1' />\r
621                                                                                 <parameter name='`tmp.otninfoProtect[$vidx].dstPort.dst-access-node-id`' value="`$tmp.aai.src-pnf.pnf-id`" />\r
622                                                                                 <parameter name='`tmp.otninfoProtect_length`' value='`$vidx + 1`' />\r
623                                                                             </set>\r
624                                                                             <for silentFailure='true' index='pvidx' start='0' end='`$tmp.aai.src-pnf.relationship-list.relationship_length`' >\r
625                                                                                 <switch test='`$tmp.aai.src-pnf.relationship-list.relationship[$pvidx].related-to`'>\r
626                                                                                     <outcome value='network-resource'>\r
627                                                                                         <block atomic="true">\r
628                                                                                             <set>\r
629                                                                                                 <parameter name='tmp.domain-A.network-id' value="`$tmp.aai.src-pnf.relationship-list.relationship[$pvidx].relationship-data[0].relationship-value`" />\r
630                                                                                             </set>\r
631                                                                                             <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
632                                                                                                           resource="network-resource"\r
633                                                                                                           key="network-resource.network-id = $tmp.domain-A.network-id\r
634                 AND depth = '0'"\r
635                                                                                                           pfx='tmp.aai.src-network-resource' local-only='false' >\r
636                                                                                                 <outcome value='success'>\r
637                                                                                                     <set>\r
638                                                                                                         <parameter name='domain-A.network-id' value="`$tmp.aai.src-network-resource.network-id`" />\r
639                                                                                                         <parameter name='domain-A.provider-id' value="`$tmp.aai.src-network-resource.provider-id`" />\r
640                                                                                                         <parameter name='domain-A.client-id' value="`$tmp.aai.src-network-resource.client-id`" />\r
641                                                                                                         <parameter name='domain-A.te-topo-id' value="`$tmp.aai.src-network-resource.te-topo-id`" />\r
642                                                                                                         <parameter name='domain-A.network-type' value="`$tmp.aai.src-network-resource.network-type`" />\r
643                                                                                                         <parameter name='`tmp.otninfoProtect[$vidx].dstPort.dst-access-network-id`' value="`$tmp.aai.src-network-resource.network-id`" />\r
644                                                                                                         <parameter name='`tmp.otninfoProtect[$vidx].dstPort.dst-access-provider-id`' value="`$tmp.aai.src-network-resource.provider-id`" />\r
645                                                                                                         <parameter name='`tmp.otninfoProtect[$vidx].dstPort.dst-access-client-id`' value="`$tmp.aai.src-network-resource.client-id`" />\r
646                                                                                                         <parameter name='`tmp.otninfoProtect[$vidx].dstPort.dst-access-topology-id`' value="`$tmp.aai.src-network-resource.te-topo-id`" />\r
647                                                                                                         <parameter name='`tmp.otninfoProtect[$vidx].dstPort.dst-access-network-type`' value="`$tmp.aai.src-network-resource.network-type`" />\r
648                                                                                                         <parameter name='`tmp.otninfoProtect`' value='`$vidx + 1`' />\r
649                                                                                                     </set>\r
650                                                                                                 </outcome>\r
651                                                                                             </get-resource>\r
652                                                                                             <break/>\r
653                                                                                         </block>\r
654                                                                                     </outcome>\r
655                                                                                 </switch>\r
656                                                                             </for>\r
657                                                                         </block>\r
658                                                                     </outcome>\r
659                                                                     <outcome value='not-found'>\r
660                                                                         <return status='failure'>\r
661                                                                             <parameter name='ack-final' value='Y'/>\r
662                                                                             <parameter name="error-code" value="500" />\r
663                                                                             <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />\r
664                                                                         </return>\r
665                                                                     </outcome>\r
666                                                                     <outcome value='Other'>\r
667                                                                         <return status='failure'>\r
668                                                                             <parameter name='ack-final' value='Y'/>\r
669                                                                             <parameter name="error-code" value="500" />\r
670                                                                             <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />\r
671                                                                         </return>\r
672                                                                     </outcome>\r
673                                                                 </get-resource>\r
674                                                                 <set>\r
675                                                                     <parameter name='tmp.domain-A.ttp-id' value="`$tmp.aai.src-tp.relationship-list.relationship[$pintsidx].relationship-data[0].relationship-value`" />\r
676                                                                 </set>\r
677                                                                 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
678                                                                               resource="tunnel-termination-point"\r
679                                                                               key="tunnel-termination-point.ttp-id = $tmp.domain-A.ttp-id\r
680                 AND depth = '0'"\r
681                                                                               pfx='tmp.aai.src-ttp' local-only='false' >\r
682                                                                     <outcome value='success'>\r
683                                                                         <block atomic="true">\r
684                                                                             <set>\r
685                                                                                 <parameter name='domain-A.tunnel-tp-id' value="`$tmp.aai.src-ttp.tunnel-tp-id`" />\r
686                                                                                 <parameter name='`tmp.otninfoProtect[$vidx].dstPort.dst-tunnel-tp-id`' value="`$tmp.aai.src-ttp.tunnel-tp-id`" />\r
687                                                                                 <parameter name='`tmp.otninfoProtect_length`' value='`$vidx + 1`' />\r
688                                                                             </set>\r
689                                                                         </block>\r
690                                                                     </outcome>\r
691                                                                 </get-resource>\r
692                                                                 <break/>\r
693                                                             </block>\r
694                                                         </outcome>\r
695                                                     </switch>\r
696                                                 </for>\r
697                                             </block>\r
698                                         </outcome>\r
699                                         <outcome value='not-found'>\r
700                                             <return status='failure'>\r
701                                                 <parameter name='ack-final' value='Y'/>\r
702                                                 <parameter name="error-code" value="500" />\r
703                                                 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />\r
704                                             </return>\r
705                                         </outcome>\r
706                                         <outcome value='Other'>\r
707                                             <return status='failure'>\r
708                                                 <parameter name='ack-final' value='Y'/>\r
709                                                 <parameter name="error-code" value="500" />\r
710                                                 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />\r
711                                             </return>\r
712                                         </outcome>\r
713                                     </get-resource>\r
714                                     <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
715                                                   resource="p-interface"\r
716                                                   key="pnf.pnf-name = $tmp.dst-pnf-name\r
717                     AND p-interface.interface-name = $tmp.cross-link.dst-ltpId"\r
718                                                   pfx='tmp.aai.dst-tp' local-only='false' >\r
719                                         <!--AND depth = '0'"-->\r
720                                         <outcome value='success'>\r
721                                             <block>\r
722                                                 <for silentFailure='true' index='pintdidx' start='0' end='`$tmp.aai.dst-tp.relationship-list.relationship_length`' >\r
723                                                     <switch test='`$tmp.aai.dst-tp.relationship-list.relationship[$pintdidx].related-to`'>\r
724                                                         <outcome value='tunnel-termination-point'>\r
725                                                             <block atomic="true">\r
726                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
727                                                                     <parameter name="original_string" value='`$tmp.aai.dst-tp`'/>\r
728                                                                     <!--<parameter name="regex" value="[^-]+$"/>-->\r
729                                                                     <parameter name="regex" value="[-]+"/>\r
730                                                                     <parameter name="ctx_memory_result_key" value="param-prefix-dst-tp"/>\r
731                                                                     <outcome value='success'>\r
732                                                                         <block atomic="true">\r
733                                                                             <set>\r
734                                                                                 <parameter name='domain-C.ltpId' value='`$param-prefix-dst-tp[$param-prefix-dst-tp_length -1]`' />\r
735                                                                                 <parameter name='`tmp.otninfoProtect[$vidx + 1].srcPort.src-ltp-id`' value="`$param-prefix-dst-tp[$param-prefix-dst-tp_length -1]`" />\r
736                                                                                 <parameter name='`tmp.otninfoProtect_length`' value='`$vidx + 2`' />\r
737                                                                             </set>\r
738                                                                         </block>\r
739                                                                     </outcome>\r
740                                                                     <outcome value='failure'>\r
741                                                                         <return status='failure'>\r
742                                                                             <parameter name='error-code' value='' />\r
743                                                                             <parameter name='error-message' value="An error occured while splitting sna1_route" />\r
744                                                                         </return>\r
745                                                                     </outcome>\r
746                                                                 </execute>\r
747                                                                 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
748                                                                               resource="pnf"\r
749                                                                               key="pnf.pnf-name = $tmp.dst-pnf-name"\r
750                                                                               pfx='tmp.aai.dst-pnf' local-only='false' >\r
751                                                                     <!--AND depth = '0'"-->\r
752                                                                     <outcome value='success'>\r
753                                                                         <block>\r
754                                                                             <set>\r
755                                                                                 <parameter name='domain-C.node-id' value="`$tmp.aai.dst-pnf.pnf-id`" />\r
756                                                                                 <parameter name='domain-C.tpn' value='1' />\r
757                                                                                 <parameter name='`tmp.otninfoProtect[$vidx + 1].srcPort.src-access-node-id`' value="`$tmp.aai.dst-pnf.pnf-id`" />\r
758                                                                                 <parameter name='`tmp.otninfoProtect_length`' value='`$vidx + 2`' />\r
759                                                                             </set>\r
760                                                                             <for silentFailure='true' index='mvidx' start='0' end='`$tmp.aai.dst-pnf.relationship-list.relationship_length`' >\r
761                                                                                 <switch test='`$tmp.aai.dst-pnf.relationship-list.relationship[$mvidx].related-to`'>\r
762                                                                                     <outcome value='network-resource'>\r
763                                                                                         <block atomic="true">\r
764                                                                                             <set>\r
765                                                                                                 <parameter name='tmp.domain-C.network-id' value="`$tmp.aai.dst-pnf.relationship-list.relationship[$mvidx].relationship-data[0].relationship-value`" />\r
766                                                                                             </set>\r
767                                                                                             <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
768                                                                                                           resource="network-resource"\r
769                                                                                                           key="network-resource.network-id = $tmp.domain-C.network-id\r
770                 AND depth = '0'"\r
771                                                                                                           pfx='tmp.aai.dst-network-resource' local-only='false' >\r
772                                                                                                 <outcome value='success'>\r
773                                                                                                     <set>\r
774                                                                                                         <parameter name='domain-C.network-id' value="`$tmp.aai.dst-network-resource.network-id`" />\r
775                                                                                                         <parameter name='domain-C.provider-id' value="`$tmp.aai.dst-network-resource.provider-id`" />\r
776                                                                                                         <parameter name='domain-C.client-id' value="`$tmp.aai.dst-network-resource.client-id`" />\r
777                                                                                                         <parameter name='domain-C.te-topo-id' value="`$tmp.aai.dst-network-resource.te-topo-id`" />\r
778                                                                                                         <parameter name='domain-C.network-type' value="`$tmp.aai.dst-network-resource.network-type`" />\r
779                                                                                                         <parameter name='`tmp.otninfoProtect[$vidx + 1].srcPort.src-access-network-id`' value="`$tmp.aai.dst-network-resource.network-id`" />\r
780                                                                                                         <parameter name='`tmp.otninfoProtect[$vidx + 1].srcPort.src-access-provider-id`' value="`$tmp.aai.dst-network-resource.provider-id`" />\r
781                                                                                                         <parameter name='`tmp.otninfoProtect[$vidx + 1].srcPort.src-access-client-id`' value="`$tmp.aai.dst-network-resource.client-id`" />\r
782                                                                                                         <parameter name='`tmp.otninfoProtect[$vidx + 1].srcPort.src-access-topology-id`' value="`$tmp.aai.dst-network-resource.te-topo-id`" />\r
783                                                                                                         <parameter name='`tmp.otninfoProtect[$vidx + 1].srcPort.src-access-network-type`' value="`$tmp.aai.dst-network-resource.network-type`" />\r
784                                                                                                         <parameter name='`tmp.otninfoProtect`' value='`$vidx + 2`' />\r
785                                                                                                     </set>\r
786                                                                                                 </outcome>\r
787                                                                                             </get-resource>\r
788                                                                                             <break/>\r
789                                                                                         </block>\r
790                                                                                     </outcome>\r
791                                                                                 </switch>\r
792                                                                             </for>\r
793                                                                         </block>\r
794                                                                     </outcome>\r
795                                                                     <outcome value='not-found'>\r
796                                                                         <return status='failure'>\r
797                                                                             <parameter name='ack-final' value='Y'/>\r
798                                                                             <parameter name="error-code" value="500" />\r
799                                                                             <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />\r
800                                                                         </return>\r
801                                                                     </outcome>\r
802                                                                     <outcome value='Other'>\r
803                                                                         <return status='failure'>\r
804                                                                             <parameter name='ack-final' value='Y'/>\r
805                                                                             <parameter name="error-code" value="500" />\r
806                                                                             <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />\r
807                                                                         </return>\r
808                                                                     </outcome>\r
809                                                                 </get-resource>\r
810                                                                 <set>\r
811                                                                     <parameter name='tmp.domain-C.ttp-id' value="`$tmp.aai.dst-tp.relationship-list.relationship[$pintdidx].relationship-data[0].relationship-value`" />\r
812                                                                 </set>\r
813                                                                 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"\r
814                                                                               resource="tunnel-termination-point"\r
815                                                                               key="tunnel-termination-point.ttp-id = $tmp.domain-C.ttp-id\r
816                 AND depth = '0'"\r
817                                                                               pfx='tmp.aai.dst-ttp' local-only='false' >\r
818                                                                     <outcome value='success'>\r
819                                                                         <block atomic="true">\r
820                                                                             <set>\r
821                                                                                 <parameter name='domain-C.tunnel-tp-id' value="`$tmp.aai.dst-ttp.tunnel-tp-id`" />\r
822                                                                                 <parameter name='`tmp.otninfoProtect[$vidx + 1].srcPort.src-tunnel-tp-id`' value="`$tmp.aai.dst-ttp.tunnel-tp-id`" />\r
823                                                                                 <parameter name='`tmp.otninfoProtect_length`' value='`$vidx + 2`' />\r
824                                                                             </set>\r
825                                                                         </block>\r
826                                                                     </outcome>\r
827                                                                 </get-resource>\r
828                                                                 <break/>\r
829                                                             </block>\r
830                                                         </outcome>\r
831                                                     </switch>\r
832                                                 </for>\r
833                                             </block>\r
834                                         </outcome>\r
835                                         <outcome value='not-found'>\r
836                                             <return status='failure'>\r
837                                                 <parameter name='ack-final' value='Y'/>\r
838                                                 <parameter name="error-code" value="500" />\r
839                                                 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />\r
840                                             </return>\r
841                                         </outcome>\r
842                                         <outcome value='Other'>\r
843                                             <return status='failure'>\r
844                                                 <parameter name='ack-final' value='Y'/>\r
845                                                 <parameter name="error-code" value="500" />\r
846                                                 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />\r
847                                             </return>\r
848                                         </outcome>\r
849                                     </get-resource>\r
850                                 </block>\r
851                             </block>\r
852                         </for>\r
853                     </block>\r
854                 </outcome>\r
855             </switch>\r
856         </block>\r
857     </method>\r
858 </service-logic>