[SDNGC-5859] copy local change to onap
[sdnc/oam.git] / platform-logic / vnfapi / src / main / xml / VNF-API_vnf-topology-automated-operation.xml
diff --git a/platform-logic/vnfapi/src/main/xml/VNF-API_vnf-topology-automated-operation.xml b/platform-logic/vnfapi/src/main/xml/VNF-API_vnf-topology-automated-operation.xml
new file mode 100644 (file)
index 0000000..acf2f17
--- /dev/null
@@ -0,0 +1,41 @@
+<service-logic xmlns='http://www.openecomp.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd' module='VNF-API' version='${project.version}'><method rpc='vnf-topology-automated-operation' mode='sync'>\r
+<block atomic="true"><switch test="`$vnf-topology-operation-input.vnf-request-information.vnf-id`"><outcome value='0'><return status='failure'>\r
+       <parameter name='error-code' value='400'/>\r
+       <parameter name='error-message' value='vf-modules vnf-id cannot be NULL or 0'/></return></outcome><outcome value=''><return status='failure'>\r
+       <parameter name='error-code' value='400'/>\r
+       <parameter name='error-message' value='vf-modules vnf-id cannot be NULL or 0'/></return></outcome></switch><switch test="`$vnf-topology-operation-input.sdnc-request-header.svc-action`">\r
+<!--\r
+leaf svc-action { \r
+       type enumeration { \r
+               enum "reserve";\r
+               enum "assign";\r
+               enum "activate";  // equal to commit\r
+               enum "delete";    // equal to commit\r
+               enum "changeassign";\r
+               enum "changedelete";\r
+               enum "rollback";\r
+       }\r
+}\r
+-->\r
+\r
+<outcome value='assign'><block atomic='true'><block atomic="true">\r
+<switch test="`$vnf-topology-operation-input.vnf-request-information.vnf-name`"><outcome value=''><return status='failure'>\r
+       <parameter name='error-code' value='400'/>\r
+       <parameter name='error-message' value='vnf-name is required'/></return></outcome></switch><switch test="`$vnf-topology-operation-input.vnf-request-information.vnf-type`"><outcome value=''><return status='failure'>\r
+       <parameter name='error-code' value='400'/>\r
+       <parameter name='error-message' value='vnf-type is required'/></return></outcome></switch><switch test="`$vnf-topology-operation-input.vnf-request-information.generic-vnf-id`"><outcome value='0'><return status='failure'>\r
+       <parameter name='error-code' value='400'/>\r
+       <parameter name='error-message' value='generic-vnf-id cannot be NULL or 0'/></return></outcome><outcome value=''><return status='failure'>\r
+       <parameter name='error-code' value='400'/>\r
+       <parameter name='error-message' value='generic-vnf-id cannot be NULL or 0'/></return></outcome></switch><switch test="`$vnf-topology-operation-input.vnf-request-information.generic-vnf-name`"><outcome value=''><return status='failure'>\r
+       <parameter name='error-code' value='400'/>\r
+       <parameter name='error-message' value='generic-vnf-name cannot be NULL'/></return></outcome></switch><switch test="`$vnf-topology-operation-input.vnf-request-information.generic-vnf-type`"><outcome value=''><return status='failure'>\r
+       <parameter name='error-code' value='400'/>\r
+       <parameter name='error-message' value='generic-vnf-type cannot be NULL'/></return></outcome></switch><switch test="`$vnf-topology-operation-input.vnf-request-information.aic-cloud-region`"><outcome value=''><return status='failure'>\r
+       <parameter name='error-code' value='400'/>\r
+       <parameter name='error-message' value='aic-cloud-region cannot be NULL'/></return></outcome></switch></block><call module='VNF-API' rpc='vnf-topology-automated-assign' mode='sync' ></call></block></outcome><outcome value='activate'><block>\r
+<call module='VNF-API' rpc='vnf-topology-activate' mode='sync' ></call></block></outcome><outcome value='rollback'><block>\r
+<call module='VNF-API' rpc='vnf-topology-automated-rollback' mode='sync' ></call></block></outcome><outcome value='delete'><call module='VNF-API' rpc='vnf-topology-automated-delete' mode='sync' ></call></outcome><outcome value='Other'><return status='failure'>\r
+       <parameter name='error-code' value='400'/>\r
+       <parameter name='error-message' value='svc-action not recognized'/>\r
+</return></outcome></switch></block></method></service-logic>
\ No newline at end of file