Bug fixing in topology discovery as part of CCVPN (Cross-Layer Cross-Domain VPN)...
[sdnc/oam.git] / platform-logic / datachange / src / main / xml / DataChange_update-tp-ttp-relationship.xml
1 <service-logic xsi:schemaLocation="http://www.onap.org/sdnc/svclogic ./svclogic.xsd" module="DataChange" version="${project.version}">\r
2     <method rpc="update-tp-ttp-relationship" mode="sync">\r
3         <block atomic="true">\r
4             <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="replace">\r
5                 <parameter name="source" value="`$network-eth.network-id`"/>\r
6                 <parameter name="outputPath" value="tmp.network-eth.network-id"/>\r
7                 <parameter name="target" value="/"/>\r
8                 <parameter name="replacement" value="-"/>\r
9             </execute>\r
10             <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="replace">\r
11                 <parameter name="source" value="`$network-otn.network-id`"/>\r
12                 <parameter name="outputPath" value="tmp.network-otn.network-id"/>\r
13                 <parameter name="target" value="/"/>\r
14                 <parameter name="replacement" value="-"/>\r
15             </execute>\r
16             <for index="pethidx" start="0" end="`$network-eth.node_length`">\r
17                 <set>\r
18                     <parameter name="node-eth." value="`$network-eth.node[$pethidx].`"/>\r
19                 </set>\r
20                 <set>\r
21                     <parameter name="unique-network-ethId" value="`$tmp.network-eth.network-id`"/>\r
22                     <parameter name="unique-node-ethId" value="`'networkId-' + $unique-network-ethId + '-nodeId-' + $node-eth.node-id`"/>\r
23                 </set>\r
24                 <switch test="`$node-eth.termination-point_length`">\r
25                     <outcome value="">\r
26                         <block/>\r
27                     </outcome>\r
28                     <outcome value="0">\r
29                         <block/>\r
30                     </outcome>\r
31                     <outcome value="Other">\r
32                         <for index="tidx" start="0" end="`$node-eth.termination-point_length`">\r
33                             <set>\r
34                                 <parameter name="tp-eth." value=""/>\r
35                             </set>\r
36                             <set>\r
37                                 <parameter name="tp-eth." value="`$node-eth.termination-point[$tidx].`"/>\r
38                             </set>\r
39                             <set>\r
40                                 <parameter name="unique-ltpethId" value="`$unique-node-ethId + '-ltpId-' + $tp-eth.te-tp-id`"/>\r
41                             </set>\r
42                             <set>\r
43                                 <parameter name="tp-inter-layer-lock-id" value="`$node-eth.termination-point[$tidx].te.inter-layer-lock-id[0]`"/>\r
44                             </set>\r
45                             <for index="potnidx" start="0" end="`$network-otn.node_length`">\r
46                                 <set>\r
47                                     <parameter name="node-otn." value=""/>\r
48                                     <parameter name="unique-network-otnId" value=""/>\r
49                                     <parameter name="unique-node-otnId" value=""/>\r
50                                 </set>\r
51                                 <set>\r
52                                     <parameter name="node-otn." value="`$network-otn.node[$potnidx].`"/>\r
53                                 </set>\r
54                                 <set>\r
55                                     <parameter name="unique-network-otnId" value="`$tmp.network-otn.network-id`"/>\r
56                                     <parameter name="unique-node-otnId" value="`'networkId-' + $unique-network-otnId + '-nodeId-' + $node-otn.node-id`"/>\r
57                                 </set>\r
58                                 <switch test="`$node-otn.te.tunnel-termination-point_length`">\r
59                                     <outcome value="">\r
60                                         <block/>\r
61                                     </outcome>\r
62                                     <outcome value="0">\r
63                                         <block/>\r
64                                     </outcome>\r
65                                     <outcome value="Other">\r
66                                         <for index="ttidx" start="0" end="`$node-otn.te.tunnel-termination-point_length`">\r
67                                             <set>\r
68                                                 <parameter name="ttp." value=""/>\r
69                                             </set>\r
70                                             <set>\r
71                                                 <parameter name="ttp." value="`$node-otn.te.tunnel-termination-point[$ttidx].`"/>\r
72                                             </set>\r
73                                             <set>\r
74                                                 <parameter name="unique-ttpId" value="`$unique-node-otnId + '-ttpId-' + $ttp.tunnel-tp-id`"/>\r
75                                             </set>\r
76                                             <set>\r
77                                                 <parameter name="ttp-inter-layer-lock-id" value="`$node-otn.te.tunnel-termination-point[$ttidx].inter-layer-lock-id`"/>\r
78                                             </set>\r
79                                             <switch test="`$tp-inter-layer-lock-id`">\r
80                                                 <outcome value="`$ttp-inter-layer-lock-id`">\r
81                                                     <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="p-interface:relationship-list" key="p-interface.interface-name = $unique-ltpethId" force="true" pfx="tmp.AnAI-data">\r
82                                                         <parameter name="relationship-list.relationship[0].related-to" value="tunnel-termination-point"/>\r
83                                                         <parameter name="relationship-list.relationship[0].related-link" value="/network/tunnel-termination-points/tunnel-termination-point/ + `$unique-ttpId`"/>\r
84                                                         <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="tunnel-termination-point.tunnel-tp-id"/>\r
85                                                         <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$unique-ttpId`"/>\r
86                                                     </save>\r
87                                                 </outcome>\r
88                                             </switch>\r
89                                         </for>\r
90                                     </outcome>\r
91                                 </switch>\r
92                             </for>\r
93                         </for>\r
94                     </outcome>\r
95                 </switch>\r
96             </for>\r
97         </block>\r
98     </method>\r
99 </service-logic>