Chore: Add gerrit maven verify GHA workflow
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_getpathsegment-populate-from-grapi.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='getpathsegment-populate-from-grapi' mode='sync'>\r
5         <block>\r
6             <switch test='`$vnf-ids_length`'>\r
7                 <outcome value=''>\r
8                     <block>\r
9                         <for silentFailure='true' index='vnf-index' start='0' end='`$mdsal-service.service[0].service-data.vnfs.vnf_length`' >\r
10                             <block>\r
11                                 <set>\r
12                                     <parameter name='vnf-network-list_length' value='0' />\r
13                                 </set>\r
14                                 <set>\r
15                                     <parameter name='vnf-ids-index' value='`$vnf-index`' />\r
16                                 </set>\r
17                                 <block>\r
18                                     <set>\r
19                                         <parameter name='serv-inst.vnf-list[$vnf-ids-index].vnf-id' value='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-id`' />\r
20                                     </set>\r
21                                     <for silentFailure='true' index='vnf-network-index' start='0' end='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network_length`' >\r
22                                         <for silentFailure='true' index='vf-module-index' start='0' end='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module_length`' >\r
23                                             <for silentFailure='true' index='vm-index' start='0' end='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm_length`' >\r
24                                                 <for silentFailure='true' index='vm-network-index' start='0' end='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[$vm-index].vm-networks.vm-network_length`' >\r
25                                                     <switch test='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$vnf-network-index].network-role\r
26   == $mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[$vm-index].vm-networks.vm-network[$vm-network-index].network-role`'>\r
27                                                         <outcome value='true'>\r
28                                                             <block>\r
29                                                                 <set>\r
30                                                                     <parameter name='serv-inst.vnf-list[$vnf-ids-index].vnf-network-list[$vnf-network-list_length].network-name'\r
31   value='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$vnf-network-index].network-name`' />\r
32                                                                     <parameter name='serv-inst.vnf-list[$vnf-ids-index].vnf-network-list[$vnf-network-list_length].network-role'\r
33   value='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$vnf-network-index].network-role`' />\r
34                                                                     <parameter name='serv-inst.vnf-list[$vnf-ids-index].vnf-network-list[$vnf-network-list_length].vf-module-id'\r
35   value='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id`' />\r
36                                                                 </set>\r
37                                                                 <set>\r
38                                                                     <parameter name='vnf-network-list_length' value='`$vnf-network-list_length + 1`' />\r
39                                                                 </set>\r
40                                                             </block>\r
41                                                         </outcome>\r
42                                                     </switch>\r
43                                                 </for>\r
44                                             </for>\r
45                                         </for>\r
46                                     </for>\r
47                                     <set>\r
48                                         <parameter name='serv-inst.vnf-list[$vnf-ids-index].vnf-network-list_length' value='`$vnf-network-list_length`' />\r
49                                     </set>\r
50                                 </block>\r
51                             </block>\r
52                         </for>\r
53                         <set>\r
54                             <parameter name='serv-inst.api' value='GR' />\r
55                         </set>\r
56                         <set>\r
57                             <parameter name='serv-inst.vnf-list_length'\r
58   value='`$mdsal-service.service[0].service-data.vnfs.vnf_length`' />\r
59                         </set>\r
60                     </block>\r
61                 </outcome>\r
62                 <outcome value='Other'>\r
63                     <block>\r
64                         <set>\r
65                             <parameter name='mismatch' value='false' />\r
66                         </set>\r
67                         <for silentFailure='true' index='vnf-ids-index' start='0' end='`$vnf-ids_length`' >\r
68                             <block>\r
69                                 <set>\r
70                                     <parameter name='vnf-network-list_length' value='0' />\r
71                                 </set>\r
72                                 <for silentFailure='true' index='vnf-index' start='0' end='`$mdsal-service.service[0].service-data.vnfs.vnf_length`' >\r
73                                     <switch test='`$vnf-ids[$vnf-ids-index] == $mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.onap-model-information.model-customization-uuid`'>\r
74                                         <outcome value='true'>\r
75                                             <block>\r
76                                                 <set>\r
77                                                     <parameter name='serv-inst.vnf-list[$vnf-ids-index].vnf-id' value='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-id`' />\r
78                                                 </set>\r
79                                                 <for silentFailure='true' index='vnf-network-index' start='0' end='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network_length`' >\r
80                                                     <for silentFailure='true' index='vf-module-index' start='0' end='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module_length`' >\r
81                                                         <for silentFailure='true' index='vm-index' start='0' end='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm_length`' >\r
82                                                             <for silentFailure='true' index='vm-network-index' start='0' end='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[$vm-index].vm-networks.vm-network_length`' >\r
83                                                                 <switch test='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$vnf-network-index].network-role\r
84   == $mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-assignments.vms.vm[$vm-index].vm-networks.vm-network[$vm-network-index].network-role`'>\r
85                                                                     <outcome value='true'>\r
86                                                                         <block>\r
87                                                                             <set>\r
88                                                                                 <parameter name='serv-inst.vnf-list[$vnf-ids-index].vnf-network-list[$vnf-network-list_length].network-name'\r
89   value='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$vnf-network-index].network-name`' />\r
90                                                                                 <parameter name='serv-inst.vnf-list[$vnf-ids-index].vnf-network-list[$vnf-network-list_length].network-role'\r
91   value='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$vnf-network-index].network-role`' />\r
92                                                                                 <parameter name='serv-inst.vnf-list[$vnf-ids-index].vnf-network-list[$vnf-network-list_length].vf-module-id'\r
93   value='`$mdsal-service.service[0].service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-id`' />\r
94                                                                             </set>\r
95                                                                             <set>\r
96                                                                                 <parameter name='vnf-network-list_length' value='`$vnf-network-list_length + 1`' />\r
97                                                                             </set>\r
98                                                                         </block>\r
99                                                                     </outcome>\r
100                                                                 </switch>\r
101                                                             </for>\r
102                                                         </for>\r
103                                                     </for>\r
104                                                 </for>\r
105                                                 <set>\r
106                                                     <parameter name='serv-inst.vnf-list[$vnf-ids-index].vnf-network-list_length' value='`$vnf-network-list_length`' />\r
107                                                 </set>\r
108                                             </block>\r
109                                         </outcome>\r
110                                     </switch>\r
111                                 </for>\r
112                                 <switch test='`$vnf-network-list_length == 0`'>\r
113                                     <outcome value='true'>\r
114                                         <block>\r
115                                             <set>\r
116                                                 <parameter name='matching-error' value="`'Unable to find VNF with customization UUID of ' + $vnf-ids[vnf-ids-index] + ' for service instance ' + $serv-inst.service-instance-id`" />\r
117                                             </set>\r
118                                             <set>\r
119                                                 <parameter name='mismatch' value='true' />\r
120                                             </set>\r
121                                             <break/>\r
122                                         </block>\r
123                                     </outcome>\r
124                                 </switch>\r
125                             </block>\r
126                         </for>\r
127                         <switch test='`$mismatch`'>\r
128                             <outcome value='false'>\r
129                                 <block>\r
130                                     <set>\r
131                                         <parameter name='serv-inst.api' value='GR' />\r
132                                     </set>\r
133                                     <set>\r
134                                         <parameter name='serv-inst.vnf-list_length'\r
135   value='`$mdsal-service.service[0].service-data.vnfs.vnf_length`' />\r
136                                     </set>\r
137                                 </block>\r
138                             </outcome>\r
139                         </switch>\r
140                     </block>\r
141                 </outcome>\r
142             </switch>\r
143         </block>\r
144     </method>\r
145 </service-logic>