Chore: Add gerrit maven verify GHA workflow
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_generic-configuration-notification-unassign.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='GENERIC-RESOURCE-API' version='${project.version}'>\r
4     <method rpc='generic-configuration-notification-unassign' mode='sync'>\r
5         <block atomic="true">\r
6             <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\r
7                 <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />\r
8                 <parameter name='contextPrefix' value='prop' />\r
9             </execute>\r
10             <for silentFailure='true' index='pc-index' start='0' end='`$service-data.provided-configurations.provided-configuration_length`' >\r
11                 <switch test='`$service-data.provided-configurations.provided-configuration[$pc-index].configuration-id\r
12   == $generic-configuration-notification-input.configuration-information.configuration-id`'>\r
13                     <outcome value='true'>\r
14                         <block>\r
15                             <for index='pc2-index' start='`$pc-index + 1`' end='`$service-data.provided-configurations.provided-configuration_length`' >\r
16                                 <block>\r
17                                     <set>\r
18                                         <parameter name='prev-index' value='`$pc2-index - 1`' />\r
19                                     </set>\r
20                                     <set>\r
21                                         <parameter name='service-data.provided-configurations.provided-configuration[$prev-index].'\r
22   value='`$service-data.provided-configurations.provided-configuration[$pc2-index].`' />\r
23                                     </set>\r
24                                 </block>\r
25                             </for>\r
26                             <set>\r
27                                 <parameter name='service-data.provided-configurations.provided-configuration_length'\r
28   value='`$service-data.provided-configurations.provided-configuration_length - 1`' />\r
29                             </set>\r
30                         </block>\r
31                     </outcome>\r
32                 </switch>\r
33             </for>\r
34             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
35                 <parameter name="source" value="`$prop.restapi.gc-configuration`"/>\r
36                 <parameter name="outputPath" value="tmp.gc-url"/>\r
37                 <parameter name="target" value="{configuration-id}"/>\r
38                 <parameter name="replacement" value="`$generic-configuration-notification-input.configuration-information.configuration-id`"/>\r
39             </execute>\r
40             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
41                 <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.gc-url`' />\r
42                 <parameter name='restapiUser' value='`$prop.controller.user`' />\r
43                 <parameter name='restapiPassword' value='`$prop.controller.pwd`' />\r
44                 <parameter name='format' value='json' />\r
45                 <parameter name='httpMethod' value='GET' />\r
46                 <parameter name="responsePrefix" value="mdsal-gc" />\r
47                 <outcome value='failure'>\r
48                     <block>\r
49                         <configure activate="true" adaptor="com.att.sdnctl.sli.adaptor.mso.MSOAdaptor" key="__READ_FROM_PARAMETERS__">\r
50                             <parameter name="notification-url"\r
51   value="`$mdsal-gc.gc-configuration[0].configuration-data.configuration-operation-information.sdnc-request-header.svc-notification-url`" />\r
52                             <parameter name="input.ack-final-indicator"\r
53   value="Y" />\r
54                             <parameter name="input.response-code"\r
55   value="500" />\r
56                             <parameter name="input.response-message"\r
57   value="`'Cannot find configuration ' + $generic-configuration-notification-input.configuration-information.configuration-id`" />\r
58                             <parameter name="input.svc-request-id"\r
59   value="`$generic-configuration-notification-input.svc-request-id`" />\r
60                             <parameter name="input.service-information.service-type"\r
61   value="`$generic-configuration-notification-input.service-information.subscription-service-type`" />\r
62                             <parameter name="input.service-information.service-instance-id"\r
63   value="`$generic-configuration-notification-input.service-information.service-instance-id`" />\r
64                         </configure>\r
65                         <return status='failure'>\r
66                             <parameter name='error-code' value='500' />\r
67                             <parameter name='error-message' value="`'Cannot find configuration ' + $generic-configuration-notification-input.configuration-information.configuration-id`" />\r
68                         </return>\r
69                     </block>\r
70                 </outcome>\r
71             </execute>\r
72             <switch test='`$generic-configuration-notification-input.response-code`'>\r
73                 <outcome value='Other'>\r
74                     <block>\r
75                         <configure activate="true" adaptor="com.att.sdnctl.sli.adaptor.mso.MSOAdaptor" key="__READ_FROM_PARAMETERS__">\r
76                             <parameter name="notification-url"\r
77   value="`$mdsal-gc.gc-configuration[0].configuration-data.configuration-operation-information.sdnc-request-header.svc-notification-url`" />\r
78                             <parameter name="input.ack-final-indicator"\r
79   value="`$generic-configuration-notification-input.ack-final-indicator`" />\r
80                             <parameter name="input.response-code"\r
81   value="`$generic-configuration-notification-input.response-code`" />\r
82                             <parameter name="input.svc-request-id"\r
83   value="`$generic-configuration-notification-input.svc-request-id`" />\r
84                             <parameter name="input.service-information.service-type"\r
85   value="`$generic-configuration-notification-input.service-information.subscription-service-type`" />\r
86                             <parameter name="input.service-information.service-instance-id"\r
87   value="`$generic-configuration-notification-input.service-information.service-instance-id`" />\r
88                         </configure>\r
89                         <return status='failure'>\r
90                             <parameter name='error-code' value='500' />\r
91                             <parameter name='error-message' value="`$generic-configuration-notification-input.response-message`" />\r
92                         </return>\r
93                     </block>\r
94                 </outcome>\r
95                 <outcome value='200'>\r
96                     <block></block>\r
97                 </outcome>\r
98             </switch>\r
99             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
100                 <parameter name="source" value="`$prop.restapi.vnf-sub-interface-group`"/>\r
101                 <parameter name="outputPath" value="tmp.part"/>\r
102                 <parameter name="target" value="{service-instance-id}"/>\r
103                 <parameter name="replacement" value="`$generic-configuration-notification-input.vnr-parameters.vnf-service-instance-id`"/>\r
104             </execute>\r
105             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
106                 <parameter name="source" value="`$tmp.part`"/>\r
107                 <parameter name="outputPath" value="tmp.part"/>\r
108                 <parameter name="target" value="{vnf-id}"/>\r
109                 <parameter name="replacement" value="`$generic-configuration-notification-input.vnr-parameters.vnf-id`"/>\r
110             </execute>\r
111             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
112                 <parameter name="source" value="`$tmp.part`"/>\r
113                 <parameter name="outputPath" value="tmp.part"/>\r
114                 <parameter name="target" value="{vnfc-instance-group-function}"/>\r
115                 <parameter name="replacement" value="`$generic-configuration-notification-input.vnr-parameters.vnfc-instance-group-function`"/>\r
116             </execute>\r
117             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
118                 <parameter name="source" value="`$tmp.part`"/>\r
119                 <parameter name="outputPath" value="tmp.part"/>\r
120                 <parameter name="target" value="{network-instance-group-function}"/>\r
121                 <parameter name="replacement" value="`$generic-configuration-notification-input.vnr-parameters.network-instance-group-function`"/>\r
122             </execute>\r
123             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
124                 <parameter name="source" value="`$tmp.part`"/>\r
125                 <parameter name="outputPath" value="tmp.vsig-url"/>\r
126                 <parameter name="target" value="{parent-port-role}"/>\r
127                 <parameter name="replacement" value="`$generic-configuration-notification-input.vnr-parameters.parent-port-role`"/>\r
128             </execute>\r
129             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
130                 <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.vsig-url`' />\r
131                 <parameter name='restapiUser' value='`$prop.controller.user`' />\r
132                 <parameter name='restapiPassword' value='`$prop.controller.pwd`' />\r
133                 <parameter name='format' value='json' />\r
134                 <parameter name='httpMethod' value='GET' />\r
135                 <parameter name="responsePrefix" value="mdsal-vsig" />\r
136                 <outcome value='failure'>\r
137                     <block>\r
138                         <configure activate="true" adaptor="com.att.sdnctl.sli.adaptor.mso.MSOAdaptor" key="__READ_FROM_PARAMETERS__">\r
139                             <parameter name="notification-url"\r
140   value="`$mdsal-gc.gc-configuration[0].configuration-data.configuration-operation-information.sdnc-request-header.svc-notification-url`" />\r
141                             <parameter name="input.ack-final-indicator"\r
142   value="Y" />\r
143                             <parameter name="input.response-code"\r
144   value="500" />\r
145                             <parameter name="input.response-message"\r
146   value="`'Cannot find vnf-sub-interface-group in service ' + $generic-configuration-notification-input.vnr-parameters.vnf-service-instance-id`" />\r
147                             <parameter name="input.svc-request-id"\r
148   value="`$generic-configuration-notification-input.svc-request-id`" />\r
149                             <parameter name="input.service-information.service-type"\r
150   value="`$generic-configuration-notification-input.service-information.subscription-service-type`" />\r
151                             <parameter name="input.service-information.service-instance-id"\r
152   value="`$generic-configuration-notification-input.service-information.service-instance-id`" />\r
153                         </configure>\r
154                         <return status='failure'>\r
155                             <parameter name='error-code' value='500' />\r
156                             <parameter name='error-message' value="`'Cannot find vnf-sub-interface-group in service ' + $generic-configuration-notification-input.vnr-parameters.vnf-service-instance-id`" />\r
157                         </return>\r
158                     </block>\r
159                 </outcome>\r
160             </execute>\r
161             <for silentFailure='true' index='vnfc-index' start='0' end='`$mdsal-vsig.vnf-sub-interface-group[0].vnfcs.vnfc_length`' >\r
162                 <for silentFailure='true' index='vnic-index' start='0' end='`$mdsal-vsig.vnf-sub-interface-group[0].vnfcs.vnfc[$vnfc-index].vnics.vnic_length`' >\r
163                     <for silentFailure='true' index='si-index' start='0' end='`$mdsal-vsig.vnf-sub-interface-group[0].vnfcs.vnfc[$vnfc-index].vnics.vnic[$vnic-index].sub-interfaces.sub-interface_length`' >\r
164                         <switch test='`$mdsal-vsig.vnf-sub-interface-group[0].vnfcs.vnfc[$vnfc-index].vnics.vnic[$vnic-index].sub-interfaces.sub-interface[$si-index].vlan-tags.lower-tag-id\r
165   == $generic-configuration-notification-input.vnr-parameters.lower-tag-id`'>\r
166                             <outcome value='true'>\r
167                                 <set>\r
168                                     <parameter name='mdsal-vsig.vnf-sub-interface-group[0].vnfcs.vnfc[$vnfc-index].vnics.vnic[$vnic-index].sub-interfaces.sub-interface[$si-index].sub-interface-status'\r
169   value='unassigned' />\r
170                                 </set>\r
171                             </outcome>\r
172                         </switch>\r
173                     </for>\r
174                 </for>\r
175             </for>\r
176             <for index='cbr-index' start='0' end='`$mdsal-vsig.vnf-sub-interface-group[0].customer-bonding-requests.customer-bonding-request_length`' >\r
177                 <switch test='`$mdsal-vsig.vnf-sub-interface-group[0].customer-bonding-requests.customer-bonding-request[$cbr-index].configuration-id\r
178   == $generic-configuration-notification-input.configuration-information.configuration-id`'>\r
179                     <outcome value='true'>\r
180                         <block>\r
181                             <for index='cbr2-index' start='`$cbr-index + 1`' end='`$mdsal-vsig.vnf-sub-interface-group[0].customer-bonding-requests.customer-bonding-request_length`' >\r
182                                 <block>\r
183                                     <set>\r
184                                         <parameter name='prev-index' value='`$cbr2-index - 1`' />\r
185                                     </set>\r
186                                     <set>\r
187                                         <parameter name='mdsal-vsig.vnf-sub-interface-group[0].customer-bonding-requests.customer-bonding-request[$cbr-index].[$prev-index].'\r
188   value='`$mdsal-vsig.vnf-sub-interface-group[0].customer-bonding-requests.customer-bonding-request[$cbr-index].[$cbr2-index].`' />\r
189                                     </set>\r
190                                 </block>\r
191                             </for>\r
192                             <set>\r
193                                 <parameter name='mdsal-vsig.vnf-sub-interface-group[0].customer-bonding-requests.customer-bonding-request_length'\r
194   value='`$mdsal-vsig.vnf-sub-interface-group[0].customer-bonding-requests.customer-bonding-request_length - 1`' />\r
195                             </set>\r
196                         </block>\r
197                     </outcome>\r
198                 </switch>\r
199             </for>\r
200             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
201                 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.vnfsubinterfacegroup.templatefile`" />\r
202                 <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.vsig-url`' />\r
203                 <parameter name='restapiUser' value='`$prop.controller.user`' />\r
204                 <parameter name='restapiPassword' value='`$prop.controller.pwd`' />\r
205                 <parameter name='format' value='json' />\r
206                 <parameter name='httpMethod' value='PUT' />\r
207                 <parameter name="responsePrefix" value="mdsal-vsig" />\r
208                 <outcome value='failure'>\r
209                     <block>\r
210                         <configure activate="true" adaptor="com.att.sdnctl.sli.adaptor.mso.MSOAdaptor" key="__READ_FROM_PARAMETERS__">\r
211                             <parameter name="notification-url"\r
212   value="`$mdsal-gc.gc-configuration[0].configuration-data.configuration-operation-information.sdnc-request-header.svc-notification-url`" />\r
213                             <parameter name="input.ack-final-indicator"\r
214   value="Y" />\r
215                             <parameter name="input.response-code"\r
216   value="500" />\r
217                             <parameter name="input.response-message"\r
218   value="Failure writing vnf-sub-interface-group" />\r
219                             <parameter name="input.svc-request-id"\r
220   value="`$generic-configuration-notification-input.svc-request-id`" />\r
221                             <parameter name="input.service-information.service-type"\r
222   value="`$generic-configuration-notification-input.service-information.subscription-service-type`" />\r
223                             <parameter name="input.service-information.service-instance-id"\r
224   value="`$generic-configuration-notification-input.service-information.service-instance-id`" />\r
225                         </configure>\r
226                         <return status='failure'>\r
227                             <parameter name='error-code' value='500' />\r
228                             <parameter name='error-message' value="Failure writing vnf-sub-interface-group" />\r
229                         </return>\r
230                     </block>\r
231                 </outcome>\r
232             </execute>\r
233             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
234                 <parameter name="source" value="`$prop.restapi.network-instance-group-network`"/>\r
235                 <parameter name="outputPath" value="tmp.part"/>\r
236                 <parameter name="target" value="{service-instance-id}"/>\r
237                 <parameter name="replacement" value="`$generic-configuration-notification-input.vnr-parameters.network-collection-service-instance-id`"/>\r
238             </execute>\r
239             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
240                 <parameter name="source" value="`$tmp.part`"/>\r
241                 <parameter name="outputPath" value="tmp.part"/>\r
242                 <parameter name="target" value="{network-instance-group-id}"/>\r
243                 <parameter name="replacement" value="`$generic-configuration-notification-input.vnr-parameters.network-instance-group-id`"/>\r
244             </execute>\r
245             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
246                 <parameter name="source" value="`$tmp.part`"/>\r
247                 <parameter name="outputPath" value="tmp.nign-url"/>\r
248                 <parameter name="target" value="{network-id}"/>\r
249                 <parameter name="replacement" value="`$generic-configuration-notification-input.vnr-parameters.network-id`"/>\r
250             </execute>\r
251             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
252                 <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.nign-url`' />\r
253                 <parameter name='restapiUser' value='`$prop.controller.user`' />\r
254                 <parameter name='restapiPassword' value='`$prop.controller.pwd`' />\r
255                 <parameter name='format' value='json' />\r
256                 <parameter name='httpMethod' value='GET' />\r
257                 <parameter name="responsePrefix" value="mdsal-nign" />\r
258                 <outcome value='failure'>\r
259                     <block>\r
260                         <configure activate="true" adaptor="com.att.sdnctl.sli.adaptor.mso.MSOAdaptor" key="__READ_FROM_PARAMETERS__">\r
261                             <parameter name="notification-url"\r
262   value="`$mdsal-gc.gc-configuration[0].configuration-data.configuration-operation-information.sdnc-request-header.svc-notification-url`" />\r
263                             <parameter name="input.ack-final-indicator"\r
264   value="Y" />\r
265                             <parameter name="input.response-code"\r
266   value="500" />\r
267                             <parameter name="input.response-message"\r
268   value="`'Cannot find network-instance-group-network in service ' + $generic-configuration-notification-input.vnr-parameters.network-collection-service-instance-id`" />\r
269                             <parameter name="input.svc-request-id"\r
270   value="`$generic-configuration-notification-input.svc-request-id`" />\r
271                             <parameter name="input.service-information.service-type"\r
272   value="`$generic-configuration-notification-input.service-information.subscription-service-type`" />\r
273                             <parameter name="input.service-information.service-instance-id"\r
274   value="`$generic-configuration-notification-input.service-information.service-instance-id`" />\r
275                         </configure>\r
276                         <return status='failure'>\r
277                             <parameter name='error-code' value='500' />\r
278                             <parameter name='error-message' value="`'Cannot find network-instance-group-network in service ' + $generic-configuration-notification-input.vnr-parameters.network-collection-service-instance-id`" />\r
279                         </return>\r
280                     </block>\r
281                 </outcome>\r
282             </execute>\r
283             <set>\r
284                 <parameter name='mdsal-nign.network[0].network-status' value='unassigned' />\r
285             </set>\r
286             <for index='cbr-index' start='0' end='`$mdsal-nign.network[0].customer-bonding-requests.customer-bonding-request_length`' >\r
287                 <switch test='`$mdsal-nign.network[0].customer-bonding-requests.customer-bonding-request[$cbr-index].configuration-id\r
288   == $generic-configuration-notification-input.configuration-information.configuration-id`'>\r
289                     <outcome value='true'>\r
290                         <block>\r
291                             <for index='cbr2-index' start='`$cbr-index + 1`' end='`$mdsal-nign.network[0].customer-bonding-requests.customer-bonding-request_length`' >\r
292                                 <block>\r
293                                     <set>\r
294                                         <parameter name='prev-index' value='`$cbr2-index - 1`' />\r
295                                     </set>\r
296                                     <set>\r
297                                         <parameter name='mdsal-nign.network[0].customer-bonding-requests.customer-bonding-request[$cbr-index].[$prev-index].'\r
298   value='`$mdsal-nign.network[0].customer-bonding-requests.customer-bonding-request[$cbr-index].[$cbr2-index].`' />\r
299                                     </set>\r
300                                 </block>\r
301                             </for>\r
302                             <set>\r
303                                 <parameter name='mdsal-nign.network[0].customer-bonding-requests.customer-bonding-request_length'\r
304   value='`$mdsal-nign.network[0].customer-bonding-requests.customer-bonding-request_length - 1`' />\r
305                             </set>\r
306                         </block>\r
307                     </outcome>\r
308                 </switch>\r
309             </for>\r
310             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
311                 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.network-instance-group-network.templatefile`" />\r
312                 <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.nign-url`' />\r
313                 <parameter name='restapiUser' value='`$prop.controller.user`' />\r
314                 <parameter name='restapiPassword' value='`$prop.controller.pwd`' />\r
315                 <parameter name='format' value='json' />\r
316                 <parameter name='httpMethod' value='PUT' />\r
317                 <parameter name="responsePrefix" value="mdsal-nign" />\r
318                 <outcome value='failure'>\r
319                     <block>\r
320                         <configure activate="true" adaptor="com.att.sdnctl.sli.adaptor.mso.MSOAdaptor" key="__READ_FROM_PARAMETERS__">\r
321                             <parameter name="notification-url"\r
322   value="`$mdsal-gc.gc-configuration[0].configuration-data.configuration-operation-information.sdnc-request-header.svc-notification-url`" />\r
323                             <parameter name="input.ack-final-indicator"\r
324   value="Y" />\r
325                             <parameter name="input.response-code"\r
326   value="500" />\r
327                             <parameter name="input.response-message"\r
328   value="Failure writing network-instance-group network" />\r
329                             <parameter name="input.svc-request-id"\r
330   value="`$generic-configuration-notification-input.svc-request-id`" />\r
331                             <parameter name="input.service-information.service-type"\r
332   value="`$generic-configuration-notification-input.service-information.subscription-service-type`" />\r
333                             <parameter name="input.service-information.service-instance-id"\r
334   value="`$generic-configuration-notification-input.service-information.service-instance-id`" />\r
335                         </configure>\r
336                         <return status='failure'>\r
337                             <parameter name='error-code' value='500' />\r
338                             <parameter name='error-message' value="Failure writing network-instance-group network" />\r
339                         </return>\r
340                     </block>\r
341                 </outcome>\r
342             </execute>\r
343             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\r
344                 <parameter name='filename' value='/var/tmp/bgb-gcnotify.log' />\r
345             </execute>\r
346             <return status='success'>\r
347                 <parameter name="ack-final-indicator" value="Y" />\r
348                 <parameter name="error-code" value="200" />\r
349                 <parameter name="error-message" value="success" />\r
350             </return>\r
351         </block>\r
352     </method>\r
353 </service-logic>