Mapping based RA Processing
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_self-serve-process-vnf-template-ra-response.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='self-serve-process-vnf-template-ra-response' mode='sync'>\r
5         <block atomic="true">\r
6             <switch test='`$jsonContextPrefix.resource-accumulator-resolved-data_length`'>\r
7                 <outcome value=''>\r
8                     <return status='failure'>\r
9                         <parameter name='ack-final' value='Y'/>\r
10                         <parameter name="error-code" value="500" />\r
11                         <parameter name="error-message" value="resource-accumulator-resolved-data_length is null" />\r
12                     </return>\r
13                 </outcome>\r
14             </switch>\r
15             <for silentFailure='true'  index='i' start='0' end='`$jsonContextPrefix.resource-accumulator-resolved-data_length`' >\r
16                 <block atomic="true">\r
17                     <set>\r
18                         <parameter name='tmp.mso.param.found' value='false' />\r
19                     </set>\r
20                     <switch test='`$prehighnum &gt; 0`'>\r
21                         <outcome value='true'>\r
22                             <for silentFailure='true' index='cnt' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`' >\r
23                                 <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$cnt].name == $jsonContextPrefix.resource-accumulator-resolved-data[$i].param-name`'>\r
24                                     <outcome value='true'>\r
25                                         <block>\r
26                                             <set>\r
27                                                 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$cnt].value`' value='`$jsonContextPrefix.resource-accumulator-resolved-data[$i].param-value`'/>\r
28                                                 <parameter name='tmp.mso.param.found' value='true' />\r
29                                             </set>\r
30                                             <set>\r
31                                                 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$cnt].value`' value='`$jsonContextPrefix.resource-accumulator-resolved-data[$i].param-value`'/>\r
32                                                 <parameter name='tmp.mso.param.found' value='true' />\r
33                                             </set>\r
34                                         </block>\r
35                                     </outcome>\r
36                                 </switch>\r
37                             </for>\r
38                         </outcome>\r
39                     </switch>\r
40                     <switch test='`$tmp.mso.param.found`'>\r
41                         <outcome value='false'>\r
42                             <block atomic='true'>\r
43                                 <set>\r
44                                     <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].name`' value='`$jsonContextPrefix.resource-accumulator-resolved-data[$i].param-name`'/>\r
45                                     <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].value`' value='`$jsonContextPrefix.resource-accumulator-resolved-data[$i].param-value`'/>\r
46                                     <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].resource-resolution-data.capability-name`' value='RA Resolved'/>\r
47                                     <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].resource-resolution-data.status`' value='SUCCESS'/>\r
48                                 </set>\r
49                                 <set>\r
50                                     <parameter name='highnum' value='`$highnum + 1`' />\r
51                                 </set>\r
52                             </block>\r
53                         </outcome>\r
54                     </switch>\r
55                 </block>\r
56             </for>\r
57             <for silentFailure='true' index='i' start='0' end='`$jsonContextPrefix.capability-data_length`' >\r
58                 <for silentFailure='true' index='j' start='0' end='`$jsonContextPrefix.capability-data[$i].key-mapping_length`' >\r
59                     <for silentFailure='true' index='l' start='0' end='`$jsonContextPrefix.capability-data[$i].key-mapping[$j].output-key-mapping_length`' >\r
60                         <block atomic="true">\r
61                             <set>\r
62                                 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].name`' value='`$jsonContextPrefix.capability-data[$i].key-mapping[$j].output-key-mapping[$l].resource-name`'/>\r
63                                 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].value`' value='`$jsonContextPrefix.capability-data[$i].key-mapping[$j].output-key-mapping[$l].resource-value`'/>\r
64                                 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].resource-resolution-data.capability-name`' value='`$jsonContextPrefix.capability-data[$i].capability-name`'/>\r
65                                 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].resource-resolution-data.status`' value='PENDING'/>\r
66                                 <parameter name='num' value='0' />\r
67                             </set>\r
68                             <switch test="`$jsonContextPrefix.capability-data[$i].key-mapping[$j].payload_length == ''`">\r
69                                 <outcome value='true'></outcome>\r
70                                 <outcome value='false'>\r
71                                     <for silentFailure='true' index='k' start='0' end='`$jsonContextPrefix.capability-data[$i].key-mapping[$j].payload_length`' >\r
72                                         <block atomic="true">\r
73                                             <set>\r
74                                                 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].resource-resolution-data.resource-key[$num].name`' value='`$jsonContextPrefix.capability-data[$i].key-mapping[$j].payload[$k].param-name`'/>\r
75                                                 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].resource-resolution-data.resource-key[$num].value`' value='`$jsonContextPrefix.capability-data[$i].key-mapping[$j].payload[$k].param-value`'/>\r
76                                             </set>\r
77                                             <set>\r
78                                                 <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].resource-resolution-data.resource-key_length`' value='`$num + 1`'/>\r
79                                             </set>\r
80                                             <set>\r
81                                                 <parameter name='num' value='`$num + 1`' />\r
82                                             </set>\r
83                                         </block>\r
84                                     </for>\r
85                                 </outcome>\r
86                             </switch>\r
87                             <set>\r
88                                 <parameter name='highnum' value='`$highnum + 1`' />\r
89                             </set>\r
90                         </block>\r
91                     </for>\r
92                 </for>\r
93             </for>\r
94             <set>\r
95                 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length' \r
96         value='`$highnum`'/>\r
97             </set>\r
98             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
99                 <parameter name="logger" value="message-log"/>\r
100                 <parameter name="field1" value="DONE: self-serve-process-vnf-template-ra-response"/>\r
101             </record>\r
102         </block>\r
103     </method>\r
104 </service-logic>