Chore: Add gerrit maven verify GHA workflow
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_vf-module-topology-vlan-tagging-deactivate.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='vf-module-topology-vlan-tagging-deactivate' mode='sync'>\r
5         <block atomic="true">\r
6             <set>\r
7                 <parameter name='tmp.vlan-vnfc-instance-groups.'\r
8   value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vlan-vnfc-instance-groups.`' />\r
9             </set>\r
10             <for index='vvig-index' start='0' end='`$tmp.vlan-vnfc-instance-groups.vlan-vnfc-instance-group_length`' >\r
11                 <for index='vnfc-index' start='0' end='`$tmp.vlan-vnfc-instance-groups.vlan-vnfc-instance-group[$vvig-index].vnfcs.vnfc_length`' >\r
12                     <for index='vnic-group-index' start='0' end='`$tmp.vlan-vnfc-instance-groups.vlan-vnfc-instance-group[$vvig-index].vnfcs.vnfc[$vnfc-index].vnic-groups.vnic-group_length`' >\r
13                         <block atomic="true">\r
14                             <set>\r
15                                 <parameter name='parent-port-role'\r
16   value='`$tmp.vlan-vnfc-instance-groups.vlan-vnfc-instance-group[$vvig-index].vnfcs.vnfc[$vnfc-index].vnic-groups.vnic-group[$vnic-group-index].vnic-interface-role`' />\r
17                                 <parameter name='network-instance-group-function'\r
18   value='`$tmp.vlan-vnfc-instance-groups.vlan-vnfc-instance-group[$vvig-index].vnfcs.vnfc[$vnfc-index].vnic-groups.vnic-group[$vnic-group-index].network-instance-group-function`' />\r
19                                 <parameter name='vnfc-instance-group-function'\r
20   value='`$tmp.vlan-vnfc-instance-groups.vlan-vnfc-instance-group[$vvig-index].instance-group-function`' />\r
21                             </set>\r
22                             <for silentFailure='true' index='vsig-index' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-sub-interface-groups.vnf-sub-interface-group_length`' >\r
23                                 <switch test='`\r
24   $parent-port-role == $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-sub-interface-groups.vnf-sub-interface-group[$vsig-index].parent-port-role\r
25   and $vnfc-instance-group-function == $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-sub-interface-groups.vnf-sub-interface-group[$vsig-index].vnfc-instance-group-function\r
26   and $network-instance-group-function == $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-sub-interface-groups.vnf-sub-interface-group[$vsig-index].network-instance-group-function\r
27 `'>\r
28                                     <outcome value='true'>\r
29                                         <block atomic="true">\r
30                                             <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-sub-interface-groups.vnf-sub-interface-group[$vsig-index].customer-bonding-requests.customer-bonding-request_length`'>\r
31                                                 <outcome value=''>\r
32                                                     <block></block>\r
33                                                 </outcome>\r
34                                                 <outcome value='0'>\r
35                                                     <block></block>\r
36                                                 </outcome>\r
37                                                 <outcome value='Other'>\r
38                                                     <return status='failure'>\r
39                                                         <parameter name='error-code' value='500' />\r
40                                                         <parameter name='error-message' value='Cannot deactivate module because customer bonding request exists' />\r
41                                                     </return>\r
42                                                 </outcome>\r
43                                             </switch>\r
44                                             <for index='vnf-vnfc-index' start='0'\r
45   end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-sub-interface-groups.vnf-sub-interface-group[$vsig-index].vnfcs.vnfc_length`' >\r
46                                                 <switch test='`$tmp.vlan-vnfc-instance-groups.vlan-vnfc-instance-group[$vvig-index].vnfcs.vnfc[$vnfc-index].vnfc-name\r
47   == $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-sub-interface-groups.vnf-sub-interface-group[$vsig-index].vnfcs.vnfc[$vnf-vnfc-index].vnfc-name`'>\r
48                                                     <outcome value='true'>\r
49                                                         <block>\r
50                                                             <for index='$idx' start='`$vnf-vnfc-index`'\r
51   end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-sub-interface-groups.vnf-sub-interface-group[$vsig-index].vnfcs.vnfc_length - 1`' >\r
52                                                                 <block>\r
53                                                                     <set>\r
54                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-sub-interface-groups.vnf-sub-interface-group[$vsig-index].vnfcs.vnfc[$idx].'\r
55   value='' />\r
56                                                                     </set>\r
57                                                                     <set>\r
58                                                                         <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-sub-interface-groups.vnf-sub-interface-group[$vsig-index].vnfcs.vnfc[$idx].'\r
59   value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-sub-interface-groups.vnf-sub-interface-group[$vsig-index].vnfcs.vnfc[$idx + 1].`' />\r
60                                                                     </set>\r
61                                                                 </block>\r
62                                                             </for>\r
63                                                             <set>\r
64                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-sub-interface-groups.vnf-sub-interface-group[$vsig-index].vnfcs.vnfc_length'\r
65   value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-sub-interface-groups.vnf-sub-interface-group[$vsig-index].vnfcs.vnfc_length - 1`' />\r
66                                                             </set>\r
67                                                             <set>\r
68                                                                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-sub-interface-groups.vnf-sub-interface-group[$vsig-index].vnfcs.vnfc[$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-sub-interface-groups.vnf-sub-interface-group[$vsig-index].vnfcs.vnfc_length].' value='' />\r
69                                                             </set>\r
70                                                         </block>\r
71                                                     </outcome>\r
72                                                 </switch>\r
73                                             </for>\r
74                                             <break/>\r
75                                         </block>\r
76                                     </outcome>\r
77                                 </switch>\r
78                             </for>\r
79                         </block>\r
80                     </for>\r
81                 </for>\r
82             </for>\r
83             <return status='success'>\r
84                 <parameter name='' value='' />\r
85             </return>\r
86         </block>\r
87     </method>\r
88 </service-logic>