Mapping based RA Processing
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_self-serve-process-vnf-mapping-ra-response.xml
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_self-serve-process-vnf-mapping-ra-response.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_self-serve-process-vnf-mapping-ra-response.xml
new file mode 100644 (file)
index 0000000..67f16c8
--- /dev/null
@@ -0,0 +1,92 @@
+<service-logic\r
+    xmlns='http://www.onap.org/sdnc/svclogic'\r
+    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
+    <method rpc='self-serve-process-vnf-mapping-ra-response' mode='sync'>\r
+        <block atomic="true">\r
+            <switch test='`$jsonContextPrefix.resolution-summary_length`'>\r
+                <outcome value=''>\r
+                    <return status='failure'>\r
+                        <parameter name='ack-final' value='Y'/>\r
+                        <parameter name="error-code" value="500" />\r
+                        <parameter name="error-message" value="resolution-summary is null" />\r
+                    </return>\r
+                </outcome>\r
+            </switch>\r
+            <for silentFailure='true'  index='vdns-index' start='0' end='`$jsonContextPrefix.resolution-summary_length`' >\r
+                <block atomic="true">\r
+                    <set>\r
+                        <parameter name='tmp.mso.param.found' value='false' />\r
+                    </set>\r
+                    <switch test='`$prehighnum &gt; 0`'>\r
+                        <outcome value='true'>\r
+                            <for silentFailure='true' index='param-index' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`' >\r
+                                <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].name == $jsonContextPrefix.resolution-summary[$vdns-index].name`'>\r
+                                    <outcome value='true'>\r
+                                        <block>\r
+                                            <set>\r
+                                                <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$param-index].value`' \r
+       value='`$jsonContextPrefix.resolution-summary[$vdns-index].value`'/>\r
+                                            </set>\r
+                                            <set>\r
+                                                <parameter name='tmp.mso.param.found' value='true' />\r
+                                            </set>\r
+                                        </block>\r
+                                    </outcome>\r
+                                </switch>\r
+                            </for>\r
+                        </outcome>\r
+                    </switch>\r
+                    <switch test='`$tmp.mso.param.found`'>\r
+                        <outcome value='false'>\r
+                            <block atomic='true'>\r
+                                <set>\r
+                                    <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].name`' \r
+       value='`$jsonContextPrefix.resolution-summary[$vdns-index].name`'/>\r
+                                    <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].value`' \r
+       value='`$jsonContextPrefix.resolution-summary[$vdns-index].value`'/>\r
+                                </set>\r
+                                <switch test='`$jsonContextPrefix.resolution-summary[$vdns-index].dictionary-source`'>\r
+                                    <outcome value='sdnc'>\r
+                                        <for silentFailure='true'  index='kid-index' start='0' end='`$jsonContextPrefix.resolution-summary[$vdns-index].key-identifiers_length`' >\r
+                                            <set>\r
+                                                <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].resource-resolution-data.resource-key[$kid-index].name' \r
+       value='`$jsonContextPrefix.resolution-summary[$vdns-index].key-identifiers[$kid-index].name`'/>\r
+                                                <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].resource-resolution-data.resource-key[$kid-index].value' \r
+       value='`$jsonContextPrefix.resolution-summary[$vdns-index].key-identifiers[$kid-index].value`'/>\r
+                                            </set>\r
+                                        </for>\r
+                                    </outcome>\r
+                                </switch>\r
+                                <set>\r
+                                    <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].resource-resolution-data.resource-key_length' \r
+       value='`$jsonContextPrefix.resolution-summary[$vdns-index].key-identifiers_length`' />\r
+                                </set>\r
+                                <set>\r
+                                    <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].resource-resolution-data.payload`' \r
+       value='`$jsonContextPrefix.resolution-summary[$vdns-index].request-payload`'/>\r
+                                </set>\r
+                                <set>\r
+                                    <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].resource-resolution-data.capability-name`' \r
+       value='RA Resolved'/>\r
+                                    <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$highnum].resource-resolution-data.status`' \r
+       value='`$jsonContextPrefix.payload.resolution-summary[$vdns-index].status`'/>\r
+                                </set>\r
+                                <set>\r
+                                    <parameter name='highnum' value='`$highnum + 1`' />\r
+                                </set>\r
+                            </block>\r
+                        </outcome>\r
+                    </switch>\r
+                </block>\r
+            </for>\r
+            <set>\r
+                <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`' \r
+       value='`$highnum`'/>\r
+            </set>\r
+            <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
+                <parameter name="logger" value="message-log"/>\r
+                <parameter name="field1" value="DONE: self-serve-process-vnf-mapping-ra-response"/>\r
+            </record>\r
+        </block>\r
+    </method>\r
+</service-logic>
\ No newline at end of file