Merge "connectivity attachment issue fix"
[sdnc/oam.git] / platform-logic / datachange / src / main / xml / DataChange_update-network-to-aai.xml
1 <service-logic
2     xmlns='http://www.onap.org/sdnc/svclogic'
3     xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='DataChange' version='${project.version}'>
4     <method rpc='update-network-to-aai' mode='sync'>
5         <block atomic="true">
6             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
7                 <parameter name="source" value="`$network.network-id`"/>
8                 <parameter name="outputPath" value="tmp.network-id"/>
9                 <parameter name="target" value="/"/>
10                 <parameter name="replacement" value="-"/>
11             </execute>
12             <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='network-resource'  
13      key='network-resource.network-id = $tmp.network-id' >
14                 <parameter name='network-id' value='`$tmp.network-id`' />
15                 <parameter name='client-id' value='`$network.client-id`' />
16                 <parameter name='te-topo-id' value='`$network.te-topology-id`' />
17                 <parameter name='provider-id' value='`$network.provider-id`' />
18             </save>
19             <for index='pidx' start='0' end='`$network.node_length`' >
20                 <set>
21                     <parameter name='node.' value='`$network.node[$pidx].`' />
22                 </set>
23                 <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='pnf' 
24       key='network-resource.network-id = $tmp.network-id
25       AND pnf.pnf-name = $node.node-id' >
26                     <parameter name='pnf-name' value='`$node.node-id`' />
27                     <parameter name='pnf-id' value='`$node.node-id`' />
28                     <parameter name='operational-status' value='`$node.te.oper-status`' />
29                     <parameter name='admin-status' value='`$node.te.te-node-attributes.admin-status`' />
30                     <parameter name='in-maint' value='true' />
31                 </save>
32                 <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='pnf:relationship-list' 
33       key='pnf.pnf-name = $node.node-id' force="true" pfx="tmp.AnAI-data">
34                     <parameter name="relationship-list.relationship[0].related-to" value="network-resource" />
35                     <parameter name="relationship-list.relationship[0].related-link" value="`'/network/network-resources/network-resource/' + $tmp.network-id`" />
36                     <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="network-resource.network-id" />
37                     <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$tmp.network-id`" />
38                 </save>
39                 <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='esr-thirdparty-sdnc:relationship-list' 
40       key='esr-thirdparty-sdnc.thirdparty-sdnc-id = $prop.sdncRestApi.thirdpartySdnc.id' 
41       force="true" pfx="tmp.AnAI-data">
42                     <parameter name="relationship-list.relationship[0].related-to" value="pnf" />
43                     <parameter name="relationship-list.relationship[0].related-link" value="`'/network/network-resources/network-resource/' + $tmp.network-id + '/pnfs/pnf/' + $node.node-id`" />
44                     <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="pnf.pnf-name" />
45                     <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$node.node-id`" />
46                 </save>
47                 <for index='tidx' start='0' end='`$node.termination-point_length`' >
48                     <set>
49                         <parameter name='tp.' value='`$node.termination-point[$tidx].`' />
50                     </set>
51                     <set>
52                         <parameter name='unique-ltpId' value="`'nodeId-' + $node.node-id + '-ltpId-' + $tp.te-tp-id`" />
53                     </set>
54                     <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='p-interface' 
55       key='network-resource.network-id = $tmp.network-id
56       AND pnf.pnf-name = $node.node-id
57       AND p-interface.interface-name = $unique-ltpId' >
58                         <parameter name='network-ref' value='`$tp.supporting-termination-point[0].network-ref`' />
59                         <parameter name='transparent' value='`$tp.svc.supported-classification.transparent`' />
60                         <parameter name='speed-value' value='`$tp.te.interface-switching-capability[0].max-lsp-bandwidth[0].te-bandwidth.eth-bandwidth`' />
61                         <parameter name='operational-status' value='`$tp.te.oper-status`' />
62                         <parameter name='in-maint' value="true" />
63                     </save>
64                     <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='pnf:relationship-list' 
65       key='pnf.pnf-name = $node.node-id' force="true" pfx="tmp.AnAI-data">
66                         <parameter name="relationship-list.relationship[0].related-to" value="p-interface" />
67                         <parameter name="relationship-list.relationship[0].related-link" value="`'/network/network-resources/network-resource/' + $tmp.network-id + '/pnfs/pnf/' + $node.node-id '/p-interfaces/p-interface/' + $unique-ltpId`" />
68                         <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="p-interface.interface-name" />
69                         <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$unique-ltpId`" />
70                     </save>
71                 </for>
72             </for>
73         </block>
74     </method>
75 </service-logic>