3495214e205076b81b25ce4a85de25f0058da465
[sdnc/oam.git] / platform-logic / datachange / src / main / xml / DataChange_update-network-links-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-links-to-aai' mode='sync'>
5         <block atomic="true">
6             <for index='pidx' start='0' end='`$network.link_length`' >
7                 <set>
8                     <parameter name='link.' value='`$network.link[$pidx].`' />
9                     <parameter name='unique-networkId' value='`$tmp.network-id`' />
10                     <parameter name='unique-linkId' value="`'networkId-' + $unique-networkId + '-linkId-' + $link.link-id`" />
11                     <parameter name='src-tpId' value="`'networkId-' + $unique-networkId + '-nodeId-' + $link.source.source-node + '-ltpId-' + $link.source.source-tp`" />
12                     <parameter name='dst-tpId' value="`'networkId-' + $unique-networkId + '-nodeId-' + $link.destination.dest-node + '-ltpId-' + $link.destination.dest-tp`" />
13                 </set>
14                 <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='logical-link'
15                       key='logical-link.link-name = $unique-linkId' >
16                     <parameter name='link-name' value='`$unique-linkId`' />
17                     <parameter name='link-id' value='`$link.link-id`' />
18                 </save>
19                 <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='logical-link:relationship-list'
20                       key='logical-link.link-name = $unique-linkId' force="true" pfx="tmp.AnAI-data">
21                     <parameter name="relationship-list.relationship[0].related-to" value="p-interface" />
22                     <parameter name="relationship-list.relationship[0].related-link" value="`'/p-interfaces/p-interface/' + $src-tpId`" />
23                     <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="p-interface.interface-name" />
24                     <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$src-tpId`" />
25                     <parameter name="relationship-list.relationship[1].related-to" value="p-interface" />
26                     <parameter name="relationship-list.relationship[1].related-link" value="`'/p-interfaces/p-interface/' + $dst-tpId`" />
27                     <parameter name="relationship-list.relationship[1].relationship-data[0].relationship-key" value="p-interface.interface-name" />
28                     <parameter name="relationship-list.relationship[1].relationship-data[0].relationship-value" value="`$dst-tpId`" />
29                 </save>
30                 <for index='tidx' start='0' end='`$link.te.te-link-attributes.label-restriction_length`' >
31                     <set>
32                         <parameter name='label-restriction.' value='`$link.te.te-link-attributes.label-restriction[$tidx].`' />
33                         <parameter name='unique-lrId' value="`$unique-linkId + '-lrId-' + $label-restriction.index`" />
34                     </set>
35                     <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='label-restriction'
36                           key='logical-link.link-name = $unique-linkId
37       AND label-restriction.id = $unique-lrId' >
38                         <parameter name='id' value='`$unique-lrId`' />
39                         <parameter name='label-start' value='`$label-restriction.label-start`' />
40                         <parameter name='label-end' value='`$label-restriction.label-end`' />
41                         <parameter name='range-bitmap' value='`$label-restriction.range-bitmap`' />
42                         <parameter name='label-step' value='`$label-restriction.label-step`' />
43                         <parameter name='inclusive-exclusive' value='`$label-restriction.inclusive-exclusive`' />
44                         <outcome value='success'>
45                             <block></block>
46                         </outcome>
47                         <outcome value='failure'>
48                             <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='label-restriction'
49                                     key='logical-link.link-name = $unique-linkId
50       AND label-restriction.id = $unique-lrId' >
51                                 <parameter name='id' value='`$unique-lrId`' />
52                                 <parameter name='label-start' value='`$label-restriction.label-start`' />
53                                 <parameter name='label-end' value='`$label-restriction.label-end`' />
54                                 <parameter name='range-bitmap' value='`$label-restriction.range-bitmap`' />
55                                 <parameter name='label-step' value='`$label-restriction.label-step`' />
56                                 <parameter name='inclusive-exclusive' value='`$label-restriction.inclusive-exclusive`' />
57                             </update>
58                         </outcome>
59                     </save>
60                     <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='logical-link:relationship-list'
61                           key='logical-link.link-name = $unique-linkId' force="true" pfx="tmp.AnAI-data">
62                         <parameter name="relationship-list.relationship[$tidx].related-to" value="label-restriction" />
63                         <parameter name="relationship-list.relationship[$tidx].related-link" value="`'/network/label-restrictions/label-restriction/' + $unique-lrId`" />
64                         <parameter name="relationship-list.relationship[$tidx].relationship-data[0].relationship-key" value="label-restriction.id" />
65                         <parameter name="relationship-list.relationship[$tidx].relationship-data[0].relationship-value" value="`$unique-lrId`" />
66                     </save>
67                 </for>
68             </for>
69         </block>
70     </method>
71 </service-logic>