DG'S added for MDONS use case
[sdnc/oam.git] / platform-logic / optical-service / src / main / xml / optical-service_bandwidth-update-odu1.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='optical-service' version='${project.version}'>\r
4     <method rpc='bandwidth-update-odu1' mode='sync'>\r
5         <block atomic="true">\r
6             <switch test='`$optical-service-create-input.payload.service-rate`'>\r
7                 <outcome value='ODU0'>\r
8                     <for index='idx' start='0' end='pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth_length' >\r
9                         <set>\r
10                             <parameter name='odu-name' value='`pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[$idx].odu-type`' />\r
11                             <parameter name='odu-number' value='`pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[$idx].number`' />\r
12                         </set>\r
13                         <switch test='`$odu-name`'>\r
14                             <outcome value='ODU0'>\r
15                                 <block>\r
16                                     <set>\r
17                                         <parameter name='mul' value='`$odu-number * 1.25`' />\r
18                                         <parameter name='sub' value='`$mul - 1.25`' />\r
19                                         <parameter name='new-odu-number' value='`$sub / 1.25`' />\r
20                                     </set>\r
21                                     <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
22 force='true'\r
23 resource='available-bandwidth'\r
24      key='pnf.pnf-name = $pnf-name AND\r
25      p-interface.interface-name = $pinterface-name AND\r
26      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
27      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
28       local-only='false'>\r
29                                         <parameter name='number' value='`$new-odu-number`' />\r
30                                     </update>\r
31                                 </block>\r
32                             </outcome>\r
33                             <outcome value='ODU1'>\r
34                                 <block>\r
35                                     <set>\r
36                                         <parameter name='new-odu-number' value='0' />\r
37                                     </set>\r
38                                     <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
39 force='true'\r
40 resource='available-bandwidth'\r
41      key='pnf.pnf-name = $pnf-name AND\r
42      p-interface.interface-name = $pinterface-name AND\r
43      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
44      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
45       local-only='false'>\r
46                                         <parameter name='number' value='`$new-odu-number`' />\r
47                                     </update>\r
48                                 </block>\r
49                             </outcome>\r
50                         </switch>\r
51                     </for>\r
52                 </outcome>\r
53                 <outcome value='ODU1'>\r
54                     <for index='idx' start='0' end='pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth_length' >\r
55                         <set>\r
56                             <parameter name='odu-name' value='`pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[$idx].odu-type`' />\r
57                             <parameter name='odu-number' value='`pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[$idx].number`' />\r
58                         </set>\r
59                         <switch test='`$odu-name`'>\r
60                             <outcome value='ODU0'>\r
61                                 <block>\r
62                                     <set>\r
63                                         <parameter name='new-odu-number' value='0' />\r
64                                     </set>\r
65                                     <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
66 force='true'\r
67 resource='available-bandwidth'\r
68      key='pnf.pnf-name = $pnf-name AND\r
69      p-interface.interface-name = $pinterface-name AND\r
70      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
71      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
72       local-only='false'>\r
73                                         <parameter name='number' value='`$new-odu-number`' />\r
74                                     </update>\r
75                                 </block>\r
76                             </outcome>\r
77                             <outcome value='ODU1'>\r
78                                 <block>\r
79                                     <set>\r
80                                         <parameter name='new-odu-number' value='0' />\r
81                                     </set>\r
82                                     <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
83 force='true'\r
84 resource='available-bandwidth'\r
85      key='pnf.pnf-name = $pnf-name AND\r
86      p-interface.interface-name = $pinterface-name AND\r
87      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
88      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
89       local-only='false'>\r
90                                         <parameter name='number' value='`$new-odu-number`' />\r
91                                     </update>\r
92                                 </block>\r
93                             </outcome>\r
94                         </switch>\r
95                     </for>\r
96                 </outcome>\r
97             </switch>\r
98         </block>\r
99     </method>\r
100 </service-logic>