+<service-logic\r
+ xmlns='http://www.onap.org/sdnc/svclogic'\r
+ 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
+ <method rpc='bandwidth-update-odu1' mode='sync'>\r
+ <block atomic="true">\r
+ <switch test='`$optical-service-create-input.payload.service-rate`'>\r
+ <outcome value='ODU0'>\r
+ <for index='idx' start='0' end='pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth_length' >\r
+ <set>\r
+ <parameter name='odu-name' value='`pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[$idx].odu-type`' />\r
+ <parameter name='odu-number' value='`pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[$idx].number`' />\r
+ </set>\r
+ <switch test='`$odu-name`'>\r
+ <outcome value='ODU0'>\r
+ <block>\r
+ <set>\r
+ <parameter name='mul' value='`$odu-number * 1.25`' />\r
+ <parameter name='sub' value='`$mul - 1.25`' />\r
+ <parameter name='new-odu-number' value='`$sub / 1.25`' />\r
+ </set>\r
+ <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
+force='true'\r
+resource='available-bandwidth'\r
+ key='pnf.pnf-name = $pnf-name AND\r
+ p-interface.interface-name = $pinterface-name AND\r
+ bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
+ available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
+ local-only='false'>\r
+ <parameter name='number' value='`$new-odu-number`' />\r
+ </update>\r
+ </block>\r
+ </outcome>\r
+ <outcome value='ODU1'>\r
+ <block>\r
+ <set>\r
+ <parameter name='new-odu-number' value='0' />\r
+ </set>\r
+ <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
+force='true'\r
+resource='available-bandwidth'\r
+ key='pnf.pnf-name = $pnf-name AND\r
+ p-interface.interface-name = $pinterface-name AND\r
+ bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
+ available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
+ local-only='false'>\r
+ <parameter name='number' value='`$new-odu-number`' />\r
+ </update>\r
+ </block>\r
+ </outcome>\r
+ </switch>\r
+ </for>\r
+ </outcome>\r
+ <outcome value='ODU1'>\r
+ <for index='idx' start='0' end='pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth_length' >\r
+ <set>\r
+ <parameter name='odu-name' value='`pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[$idx].odu-type`' />\r
+ <parameter name='odu-number' value='`pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[$idx].number`' />\r
+ </set>\r
+ <switch test='`$odu-name`'>\r
+ <outcome value='ODU0'>\r
+ <block>\r
+ <set>\r
+ <parameter name='new-odu-number' value='0' />\r
+ </set>\r
+ <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
+force='true'\r
+resource='available-bandwidth'\r
+ key='pnf.pnf-name = $pnf-name AND\r
+ p-interface.interface-name = $pinterface-name AND\r
+ bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
+ available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
+ local-only='false'>\r
+ <parameter name='number' value='`$new-odu-number`' />\r
+ </update>\r
+ </block>\r
+ </outcome>\r
+ <outcome value='ODU1'>\r
+ <block>\r
+ <set>\r
+ <parameter name='new-odu-number' value='0' />\r
+ </set>\r
+ <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
+force='true'\r
+resource='available-bandwidth'\r
+ key='pnf.pnf-name = $pnf-name AND\r
+ p-interface.interface-name = $pinterface-name AND\r
+ bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
+ available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
+ local-only='false'>\r
+ <parameter name='number' value='`$new-odu-number`' />\r
+ </update>\r
+ </block>\r
+ </outcome>\r
+ </switch>\r
+ </for>\r
+ </outcome>\r
+ </switch>\r
+ </block>\r
+ </method>\r
+</service-logic>
\ No newline at end of file