DG'S added for MDONS use case
[sdnc/oam.git] / platform-logic / optical-service / src / main / xml / optical-service_delete-bandwidth-update-odu3.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='delete-bandwidth-update-odu3' 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                     <block>\r
9                         <set>\r
10                             <parameter name='new-rate' value='' />\r
11                         </set>\r
12                         <for index='idx' start='0' end='pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth_length' >\r
13                             <set>\r
14                                 <parameter name='odu-name' value='`$pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[$idx].odu-type`' />\r
15                                 <parameter name='odu-number' value='`$pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[$idx].number`' />\r
16                             </set>\r
17                             <switch test='`$odu-name`'>\r
18                                 <outcome value='ODU0'>\r
19                                     <block>\r
20                                         <set>\r
21                                             <parameter name='new-rate' value='`$new-rate + $odu-number * 1.25 + 1.25 `' />\r
22                                             <parameter name='new-odu-number' value='`$new-rate / 1.25`' />\r
23                                         </set>\r
24                                         <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
25 force='true'\r
26 resource='available-bandwidth'\r
27      key='pnf.pnf-name = $pnf-name AND\r
28      p-interface.interface-name = $pinterface-name AND\r
29      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
30      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
31       local-only='false'>\r
32                                             <parameter name='number' value='`$new-odu-number`' />\r
33                                         </update>\r
34                                     </block>\r
35                                 </outcome>\r
36                                 <outcome value='ODU1'>\r
37                                     <block>\r
38                                         <set>\r
39                                             <parameter name='new-odu-number' value='`$new-rate / 2.5`' />\r
40                                         </set>\r
41                                         <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
42 force='true'\r
43 resource='available-bandwidth'\r
44      key='pnf.pnf-name = $pnf-name AND\r
45      p-interface.interface-name = $pinterface-name AND\r
46      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
47      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
48       local-only='false'>\r
49                                             <parameter name='number' value='`$new-odu-number`' />\r
50                                         </update>\r
51                                     </block>\r
52                                 </outcome>\r
53                                 <outcome value='ODU2'>\r
54                                     <block>\r
55                                         <set>\r
56                                             <parameter name='new-odu-number' value='`$new-rate / 10`' />\r
57                                         </set>\r
58                                         <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
59 force='true'\r
60 resource='available-bandwidth'\r
61      key='pnf.pnf-name = $pnf-name AND\r
62      p-interface.interface-name = $pinterface-name AND\r
63      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
64      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
65       local-only='false'>\r
66                                             <parameter name='number' value='`$new-odu-number`' />\r
67                                         </update>\r
68                                     </block>\r
69                                 </outcome>\r
70                                 <outcome value='ODU3'>\r
71                                     <block>\r
72                                         <set>\r
73                                             <parameter name='new-odu-number' value='`$new-rate / 40`' />\r
74                                         </set>\r
75                                         <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
76 force='true'\r
77 resource='available-bandwidth'\r
78      key='pnf.pnf-name = $pnf-name AND\r
79      p-interface.interface-name = $pinterface-name AND\r
80      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
81      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
82       local-only='false'>\r
83                                             <parameter name='number' value='`$new-odu-number`' />\r
84                                         </update>\r
85                                     </block>\r
86                                 </outcome>\r
87                             </switch>\r
88                         </for>\r
89                     </block>\r
90                 </outcome>\r
91                 <outcome value='ODU1'>\r
92                     <block>\r
93                         <set>\r
94                             <parameter name='new-rate' value='' />\r
95                         </set>\r
96                         <for index='idx' start='0' end='pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth_length' >\r
97                             <set>\r
98                                 <parameter name='odu-name' value='`$pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[$idx].odu-type`' />\r
99                                 <parameter name='odu-number' value='`$pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[$idx].number`' />\r
100                             </set>\r
101                             <switch test='`$odu-name`'>\r
102                                 <outcome value='ODU0'>\r
103                                     <block>\r
104                                         <set>\r
105                                             <parameter name='new-rate' value='`$new-rate + $odu-number * 1.25 + 2.25 `' />\r
106                                             <parameter name='new-odu-number' value='`$new-rate / 1.25`' />\r
107                                         </set>\r
108                                         <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
109 force='true'\r
110 resource='available-bandwidth'\r
111      key='pnf.pnf-name = $pnf-name AND\r
112      p-interface.interface-name = $pinterface-name AND\r
113      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
114      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
115       local-only='false'>\r
116                                             <parameter name='number' value='`$new-odu-number`' />\r
117                                         </update>\r
118                                     </block>\r
119                                 </outcome>\r
120                                 <outcome value='ODU1'>\r
121                                     <block>\r
122                                         <set>\r
123                                             <parameter name='new-odu-number' value='`$new-rate / 2.5`' />\r
124                                         </set>\r
125                                         <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
126 force='true'\r
127 resource='available-bandwidth'\r
128      key='pnf.pnf-name = $pnf-name AND\r
129      p-interface.interface-name = $pinterface-name AND\r
130      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
131      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
132       local-only='false'>\r
133                                             <parameter name='number' value='`$new-odu-number`' />\r
134                                         </update>\r
135                                     </block>\r
136                                 </outcome>\r
137                                 <outcome value='ODU2'>\r
138                                     <block>\r
139                                         <set>\r
140                                             <parameter name='new-odu-number' value='`$new-rate / 10`' />\r
141                                         </set>\r
142                                         <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
143 force='true'\r
144 resource='available-bandwidth'\r
145      key='pnf.pnf-name = $pnf-name AND\r
146      p-interface.interface-name = $pinterface-name AND\r
147      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
148      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
149       local-only='false'>\r
150                                             <parameter name='number' value='`$new-odu-number`' />\r
151                                         </update>\r
152                                     </block>\r
153                                 </outcome>\r
154                                 <outcome value='ODU3'>\r
155                                     <block>\r
156                                         <set>\r
157                                             <parameter name='new-odu-number' value='`$new-rate / 40`' />\r
158                                         </set>\r
159                                         <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
160 force='true'\r
161 resource='available-bandwidth'\r
162      key='pnf.pnf-name = $pnf-name AND\r
163      p-interface.interface-name = $pinterface-name AND\r
164      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
165      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
166       local-only='false'>\r
167                                             <parameter name='number' value='`$new-odu-number`' />\r
168                                         </update>\r
169                                     </block>\r
170                                 </outcome>\r
171                             </switch>\r
172                         </for>\r
173                     </block>\r
174                 </outcome>\r
175                 <outcome value='ODU2'>\r
176                     <block>\r
177                         <set>\r
178                             <parameter name='new-rate' value='' />\r
179                         </set>\r
180                         <for index='idx' start='0' end='pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth_length' >\r
181                             <set>\r
182                                 <parameter name='odu-name' value='`$pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[$idx].odu-type`' />\r
183                                 <parameter name='odu-number' value='`$pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[$idx].number`' />\r
184                             </set>\r
185                             <switch test='`$odu-name`'>\r
186                                 <outcome value='ODU0'>\r
187                                     <block>\r
188                                         <set>\r
189                                             <parameter name='new-rate' value='`$new-rate + $odu-number * 1.25 + 10 `' />\r
190                                             <parameter name='new-odu-number' value='`$new-rate / 1.25`' />\r
191                                         </set>\r
192                                         <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
193 force='true'\r
194 resource='available-bandwidth'\r
195      key='pnf.pnf-name = $pnf-name AND\r
196      p-interface.interface-name = $pinterface-name AND\r
197      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
198      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
199       local-only='false'>\r
200                                             <parameter name='number' value='`$new-odu-number`' />\r
201                                         </update>\r
202                                     </block>\r
203                                 </outcome>\r
204                                 <outcome value='ODU1'>\r
205                                     <block>\r
206                                         <set>\r
207                                             <parameter name='new-odu-number' value='`$new-rate / 2.5`' />\r
208                                         </set>\r
209                                         <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
210 force='true'\r
211 resource='available-bandwidth'\r
212      key='pnf.pnf-name = $pnf-name AND\r
213      p-interface.interface-name = $pinterface-name AND\r
214      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
215      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
216       local-only='false'>\r
217                                             <parameter name='number' value='`$new-odu-number`' />\r
218                                         </update>\r
219                                     </block>\r
220                                 </outcome>\r
221                                 <outcome value='ODU2'>\r
222                                     <block>\r
223                                         <set>\r
224                                             <parameter name='new-odu-number' value='`$new-rate / 10`' />\r
225                                         </set>\r
226                                         <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
227 force='true'\r
228 resource='available-bandwidth'\r
229      key='pnf.pnf-name = $pnf-name AND\r
230      p-interface.interface-name = $pinterface-name AND\r
231      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
232      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
233       local-only='false'>\r
234                                             <parameter name='number' value='`$new-odu-number`' />\r
235                                         </update>\r
236                                     </block>\r
237                                 </outcome>\r
238                                 <outcome value='ODU3'>\r
239                                     <block>\r
240                                         <set>\r
241                                             <parameter name='new-odu-number' value='`$new-rate / 40`' />\r
242                                         </set>\r
243                                         <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
244 force='true'\r
245 resource='available-bandwidth'\r
246      key='pnf.pnf-name = $pnf-name AND\r
247      p-interface.interface-name = $pinterface-name AND\r
248      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
249      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
250       local-only='false'>\r
251                                             <parameter name='number' value='`$new-odu-number`' />\r
252                                         </update>\r
253                                     </block>\r
254                                 </outcome>\r
255                             </switch>\r
256                         </for>\r
257                     </block>\r
258                 </outcome>\r
259                 <outcome value='ODU3'>\r
260                     <for index='idx' start='0' end='pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth_length' >\r
261                         <set>\r
262                             <parameter name='odu-name' value='`$pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[$idx].odu-type`' />\r
263                             <parameter name='odu-number' value='`$pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[$idx].number`' />\r
264                         </set>\r
265                         <switch test='`$odu-name`'>\r
266                             <outcome value='ODU0'>\r
267                                 <block>\r
268                                     <set>\r
269                                         <parameter name='new-odu-number' value='32' />\r
270                                     </set>\r
271                                     <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
272 force='true'\r
273 resource='available-bandwidth'\r
274      key='pnf.pnf-name = $aend-pnf-name AND\r
275      p-interface.interface-name = $aend-nep AND\r
276      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
277      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
278       local-only='false'>\r
279                                         <parameter name='number' value='`$new-odu-number`' />\r
280                                     </update>\r
281                                 </block>\r
282                             </outcome>\r
283                             <outcome value='ODU1'>\r
284                                 <block>\r
285                                     <set>\r
286                                         <parameter name='new-odu-number' value='16' />\r
287                                     </set>\r
288                                     <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
289 force='true'\r
290 resource='available-bandwidth'\r
291      key='pnf.pnf-name = $aend-pnf-name AND\r
292      p-interface.interface-name = $aend-nep AND\r
293      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
294      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
295       local-only='false'>\r
296                                         <parameter name='number' value='`$new-odu-number`' />\r
297                                     </update>\r
298                                 </block>\r
299                             </outcome>\r
300                             <outcome value='ODU2'>\r
301                                 <block>\r
302                                     <set>\r
303                                         <parameter name='new-odu-number' value='4' />\r
304                                     </set>\r
305                                     <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
306 force='true'\r
307 resource='available-bandwidth'\r
308      key='pnf.pnf-name = $aend-pnf-name AND\r
309      p-interface.interface-name = $aend-nep AND\r
310      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
311      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
312       local-only='false'>\r
313                                         <parameter name='number' value='`$new-odu-number`' />\r
314                                     </update>\r
315                                 </block>\r
316                             </outcome>\r
317                             <outcome value='ODU3'>\r
318                                 <block>\r
319                                     <set>\r
320                                         <parameter name='new-odu-number' value='1' />\r
321                                     </set>\r
322                                     <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
323 force='true'\r
324 resource='available-bandwidth'\r
325      key='pnf.pnf-name = $aend-pnf-name AND\r
326      p-interface.interface-name = $aend-nep AND\r
327      bandwidth-attribute.id = $pin.bandwidth-attributes.bandwidth-attribute[0].id AND\r
328      available-bandwidth.id = $pin.bandwidth-attributes.bandwidth-attribute[0].available-bandwidth-map.available-bandwidth[0].id' \r
329       local-only='false'>\r
330                                         <parameter name='number' value='`$new-odu-number`' />\r
331                                     </update>\r
332                                 </block>\r
333                             </outcome>\r
334                         </switch>\r
335                     </for>\r
336                 </outcome>\r
337             </switch>\r
338         </block>\r
339     </method>\r
340 </service-logic>