Add recipe params for bpmn call 03/33103/1
authorc00149107 <chenchuanyu@huawei.com>
Tue, 27 Feb 2018 01:43:05 +0000 (09:43 +0800)
committerc00149107 <chenchuanyu@huawei.com>
Tue, 27 Feb 2018 07:25:22 +0000 (15:25 +0800)
Add recipe params for bpmn call, to improve recipe enhancement.

Change-Id: If9f2bff3f27ced62e814afcb918c863a527363e6
Issue-ID: SO-449
Signed-off-by: c00149107 <chenchuanyu@huawei.com>
mso-api-handlers/mso-api-handler-common/src/main/java/org/openecomp/mso/apihandler/camundabeans/CamundaVIDRequest.java
mso-api-handlers/mso-api-handler-common/src/main/java/org/openecomp/mso/apihandler/common/BPELRestClient.java
mso-api-handlers/mso-api-handler-common/src/main/java/org/openecomp/mso/apihandler/common/CamundaClient.java
mso-api-handlers/mso-api-handler-common/src/main/java/org/openecomp/mso/apihandler/common/CamundaTaskClient.java
mso-api-handlers/mso-api-handler-common/src/main/java/org/openecomp/mso/apihandler/common/CommonConstants.java
mso-api-handlers/mso-api-handler-common/src/main/java/org/openecomp/mso/apihandler/common/RequestClient.java
mso-api-handlers/mso-api-handler-infra/src/main/java/org/openecomp/mso/apihandlerinfra/E2EServiceInstances.java
mso-api-handlers/mso-api-handler-infra/src/main/java/org/openecomp/mso/apihandlerinfra/RecipeLookupResult.java
mso-api-handlers/mso-api-handler-infra/src/main/java/org/openecomp/mso/apihandlerinfra/ServiceInstances.java
mso-api-handlers/mso-api-handler-infra/src/test/java/org/openecomp/mso/apihandlerinfra/E2EServiceInstancesTest.java
mso-api-handlers/mso-api-handler-infra/src/test/java/org/openecomp/mso/apihandlerinfra/ServiceInstanceTest.java

index fd1227e..a53ef22 100644 (file)
@@ -91,6 +91,9 @@ public class CamundaVIDRequest {
        @JsonProperty(CommonConstants.NETWORK_TYPE_VARIABLE)
        private CamundaInput networkType;
 
+       @JsonProperty(CommonConstants.RECIPE_PARAMS)
+       private CamundaInput recipeParams;
+       
        @JsonProperty(CommonConstants.CAMUNDA_SERVICE_INPUT)
        public CamundaInput getServiceInput() {
                return serviceInput;
@@ -250,8 +253,17 @@ public class CamundaVIDRequest {
                this.networkType = networkType;
        }
 
+       @JsonProperty(CommonConstants.RECIPE_PARAMS)
+    public CamundaInput getRecipeParams() {
+        return recipeParams;
+    }
 
-       @Override
+       @JsonProperty(CommonConstants.RECIPE_PARAMS)
+    public void setRecipeParams(CamundaInput recipeParams) {
+        this.recipeParams = recipeParams;
+    }
+
+    @Override
        public String toString() {
                //return "CamundaRequest [requestId=" +  + ", host="
                //              + host + ", schema=" + schema + ", reqid=" + reqid + ", svcid="
index ddeb359..cc68a45 100644 (file)
@@ -89,7 +89,7 @@ public class BPELRestClient extends RequestClient {
                              int recipeTimeout, String requestAction, String serviceInstanceId,
                              String vnfId, String vfModuleId, String volumeGroupId, String networkId,
                              String serviceType, String vnfType, String vfModuleType, String networkType,
-                             String requestDetails) {
+                             String requestDetails, String recipeParamXsd) {
         return null;
     }
     
index b9c0725..371d316 100644 (file)
@@ -98,13 +98,13 @@ public class CamundaClient extends RequestClient{
                        int recipeTimeout, String requestAction, String serviceInstanceId,
                        String vnfId, String vfModuleId, String volumeGroupId, String networkId,
                        String serviceType, String vnfType, String vfModuleType, String networkType,
-                       String requestDetails)
+                       String requestDetails, String recipeParamXsd)
                                        throws ClientProtocolException, IOException{
                HttpPost post = new HttpPost(url);
                msoLogger.debug(CAMUNDA_URL_MESAGE + url);
                String jsonReq = wrapVIDRequest(requestId, isBaseVfModule, recipeTimeout, requestAction,
                                serviceInstanceId, vnfId, vfModuleId, volumeGroupId, networkId,
-                               serviceType, vnfType, vfModuleType, networkType, requestDetails);
+                               serviceType, vnfType, vfModuleType, networkType, requestDetails, recipeParamXsd);
 
                StringEntity input = new StringEntity(jsonReq);
                input.setContentType(CommonConstants.CONTENT_TYPE_JSON);
@@ -178,7 +178,7 @@ public class CamundaClient extends RequestClient{
                        int recipeTimeout, String requestAction, String serviceInstanceId,
                        String vnfId, String vfModuleId, String volumeGroupId, String networkId,
                        String serviceType, String vnfType, String vfModuleType, String networkType,
-                       String requestDetails){
+                       String requestDetails, String recipeParams){
                String jsonReq = null;
                if(requestId == null){
                        requestId ="";
@@ -236,7 +236,7 @@ public class CamundaClient extends RequestClient{
                        CamundaInput vnfTypeInput = new CamundaInput();
                        CamundaInput vfModuleTypeInput = new CamundaInput();
                        CamundaInput networkTypeInput = new CamundaInput();
-
+                       CamundaInput recipeParamsInput = new CamundaInput();
                        host.setValue(parseURL());
                        requestIdInput.setValue(requestId);
                        isBaseVfModuleInput.setValue(isBaseVfModule);
@@ -251,7 +251,7 @@ public class CamundaClient extends RequestClient{
                        vnfTypeInput.setValue(vnfType);
                        vfModuleTypeInput.setValue(vfModuleType);
                        networkTypeInput.setValue(networkType);
-
+                       recipeParamsInput.setValue(recipeParams);
                        serviceInput.setValue(requestDetails);
                        camundaRequest.setServiceInput(serviceInput);
                        camundaRequest.setHost(host);
@@ -269,7 +269,7 @@ public class CamundaClient extends RequestClient{
                        camundaRequest.setVnfType(vnfTypeInput);
                        camundaRequest.setVfModuleType(vfModuleTypeInput);
                        camundaRequest.setNetworkType(networkTypeInput);
-
+                       camundaRequest.setRecipeParams(recipeParamsInput);
                        ObjectMapper mapper = new ObjectMapper();
                        mapper.configure(SerializationConfig.Feature.WRAP_ROOT_VALUE, true);
 
index 64193cf..364169d 100644 (file)
@@ -74,7 +74,7 @@ public class CamundaTaskClient extends RequestClient{
                        int recipeTimeout, String requestAction, String serviceInstanceId,\r
                        String vnfId, String vfModuleId, String volumeGroupId, String networkId,\r
                        String serviceType, String vnfType, String vfModuleType, String networkType,\r
-                       String requestDetails)\r
+                       String requestDetails, String recipeParamXsd)\r
                                        throws ClientProtocolException, IOException{\r
                msoLogger.debug("Method not supported");\r
                return null;\r
index 91bd226..cfbe892 100644 (file)
@@ -63,6 +63,7 @@ public final class CommonConstants {
        public static final String VF_MODULE_TYPE_VARIABLE = "vfModuleType";
        public static final String NETWORK_TYPE_VARIABLE = "networkType";
        public static final String REQUEST_DETAILS_VARIABLE = "requestDetails"; 
+       public static final String RECIPE_PARAMS = "recipeParams";
        
        private CommonConstants () {
            // prevent creating an instance of this class
index addf4e1..eaf8be7 100644 (file)
@@ -74,7 +74,7 @@ public abstract class RequestClient {
                        int recipeTimeout, String requestAction, String serviceInstanceId,
                        String vnfId, String vfModuleId, String volumeGroupId, String networkId,
                        String serviceType, String vnfType, String vfModuleType, String networkType,
-                       String requestDetails)
+                       String requestDetails, String recipeParamXsd)
                                        throws ClientProtocolException, IOException;
        
        public abstract HttpResponse get() 
index 403e940..0914516 100644 (file)
@@ -314,7 +314,7 @@ public class E2EServiceInstances {
                        response = requestClient.post(requestId, false,
                                        recipeLookupResult.getRecipeTimeout(), action.name(),
                                        serviceId, null, null, null, null, serviceInstanceType,
-                                       null, null, null, bpmnRequest);
+                                       null, null, null, bpmnRequest, recipeLookupResult.getRecipeParamXsd());
 
                        msoLogger.recordMetricEvent(subStartTime,
                                        MsoLogger.StatusCode.COMPLETE, MsoLogger.ResponseCode.Suc,
@@ -542,7 +542,7 @@ public class E2EServiceInstances {
                        msoLogger.debug("MSO API Handler Posting call to BPEL engine for url: " + requestClient.getUrl());
 
                        response = requestClient.post(requestId, false, recipeLookupResult.getRecipeTimeout(), action.name(),
-                                       serviceId, null, null, null, null, serviceInstanceType, null, null, null, sirRequestJson);
+                                       serviceId, null, null, null, null, serviceInstanceType, null, null, null, sirRequestJson, recipeLookupResult.getRecipeParamXsd());
 
                        msoLogger.recordMetricEvent(subStartTime, MsoLogger.StatusCode.COMPLETE, MsoLogger.ResponseCode.Suc,
                                        "Successfully received response from BPMN engine", "BPMN", recipeLookupResult.getOrchestrationURI(),
@@ -723,7 +723,7 @@ public class E2EServiceInstances {
                        return null;
                }
                return new RecipeLookupResult(recipe.getOrchestrationUri(),
-                               recipe.getRecipeTimeout());
+                               recipe.getRecipeTimeout(), recipe.getServiceParamXSD());
 
        }
 
index ac4c011..2a02344 100644 (file)
@@ -25,12 +25,20 @@ public class RecipeLookupResult {
 
     private String orchestrationURI;
     private int recipeTimeout;
+    // the service recipe param.
+    private String recipeParamXsd;
     
     public RecipeLookupResult(String orchestrationURI, int recipeTimeout) {
        this.orchestrationURI = orchestrationURI;
        this.recipeTimeout = recipeTimeout;
     }
     
+    public RecipeLookupResult(String orchestrationURI, int recipeTimeout, String recipeParamXsd) {
+        this.orchestrationURI = orchestrationURI;
+        this.recipeTimeout = recipeTimeout;
+        this.recipeParamXsd = recipeParamXsd;
+    }
+    
     public String getOrchestrationURI () {
        return orchestrationURI;
     }
@@ -46,5 +54,23 @@ public class RecipeLookupResult {
     public void setRecipeTimeout (int recipeTimeout) {
        this.recipeTimeout = recipeTimeout;
     }
+
+    
+    /**
+     * @return Returns the recipeParamXsd.
+     */
+    public String getRecipeParamXsd() {
+        return recipeParamXsd;
+    }
+
+    
+    /**
+     * @param recipeParamXsd The recipeParamXsd to set.
+     */
+    public void setRecipeParamXsd(String recipeParamXsd) {
+        this.recipeParamXsd = recipeParamXsd;
+    }
+    
+    
 }
     
index 6f6d297..287b0ad 100644 (file)
@@ -633,7 +633,7 @@ public class ServiceInstances {
                                        serviceInstanceId, vnfId, vfModuleId, volumeGroupId, networkId,
                                        msoRequest.getServiceInstanceType (),
                                        msoRequest.getVnfType (), msoRequest.getVfModuleType (),
-                                       msoRequest.getNetworkType (), msoRequest.getRequestJSON());
+                                       msoRequest.getNetworkType (), msoRequest.getRequestJSON(), null);
 
                        msoLogger.recordMetricEvent (subStartTime, MsoLogger.StatusCode.COMPLETE, MsoLogger.ResponseCode.Suc, "Successfully received response from BPMN engine", "BPMN", recipeLookupResult.getOrchestrationURI (), null);
                } catch (Exception e) {
index 238b6b6..21c59ac 100644 (file)
@@ -110,7 +110,7 @@ public class E2EServiceInstancesTest {
                                        String serviceInstanceId, String vnfId, String vfModuleId,\r
                                        String volumeGroupId, String networkId, String serviceType,\r
                                        String vnfType, String vfModuleType, String networkType,\r
-                                       String requestDetails) {\r
+                                       String requestDetails, String recipeParamXsd) {\r
                                ProtocolVersion pv = new ProtocolVersion("HTTP", 1, 1);\r
                                HttpResponse resp = new BasicHttpResponse(pv, 202,\r
                                                "test response");\r
@@ -181,7 +181,7 @@ public class E2EServiceInstancesTest {
                                        String serviceInstanceId, String vnfId, String vfModuleId,\r
                                        String volumeGroupId, String networkId, String serviceType,\r
                                        String vnfType, String vfModuleType, String networkType,\r
-                                       String requestDetails) {\r
+                                       String requestDetails, String recipeParamXsd) {\r
                                ProtocolVersion pv = new ProtocolVersion("HTTP", 1, 1);\r
                                HttpResponse resp = new BasicHttpResponse(pv, 500,\r
                                                "test response");\r
@@ -252,7 +252,7 @@ public class E2EServiceInstancesTest {
                                        String serviceInstanceId, String vnfId, String vfModuleId,\r
                                        String volumeGroupId, String networkId, String serviceType,\r
                                        String vnfType, String vfModuleType, String networkType,\r
-                                       String requestDetails) {\r
+                                       String requestDetails, String recipeParamXsd) {\r
                                ProtocolVersion pv = new ProtocolVersion("HTTP", 1, 1);\r
                                HttpResponse resp = new BasicHttpResponse(pv, 500,\r
                                                "test response");\r
@@ -323,7 +323,7 @@ public class E2EServiceInstancesTest {
                                        String serviceInstanceId, String vnfId, String vfModuleId,\r
                                        String volumeGroupId, String networkId, String serviceType,\r
                                        String vnfType, String vfModuleType, String networkType,\r
-                                       String requestDetails) {\r
+                                       String requestDetails, String recipeParamXsd) {\r
                                HttpResponse resp = null;\r
                                return resp;\r
                        }\r
index 08abf57..27d3958 100644 (file)
@@ -216,7 +216,7 @@ public class ServiceInstanceTest {
                                int recipeTimeout, String requestAction, String serviceInstanceId,\r
                                String vnfId, String vfModuleId, String volumeGroupId, String networkId,\r
                                String serviceType, String vnfType, String vfModuleType, String networkType,\r
-                               String requestDetails){ \r
+                               String requestDetails, String recipeParamXsd){ \r
                ProtocolVersion pv = new ProtocolVersion("HTTP",1,1);\r
                HttpResponse resp = new BasicHttpResponse(pv,200, "test response");\r
                BasicHttpEntity entity = new BasicHttpEntity();\r
@@ -286,7 +286,7 @@ public class ServiceInstanceTest {
                                int recipeTimeout, String requestAction, String serviceInstanceId,\r
                                String vnfId, String vfModuleId, String volumeGroupId, String networkId,\r
                                String serviceType, String vnfType, String vfModuleType, String networkType,\r
-                               String requestDetails){ \r
+                               String requestDetails, String recipeParamXsd){ \r
                ProtocolVersion pv = new ProtocolVersion("HTTP",1,1);\r
                HttpResponse resp = new BasicHttpResponse(pv,500, "test response");\r
                BasicHttpEntity entity = new BasicHttpEntity();\r
@@ -357,7 +357,7 @@ public class ServiceInstanceTest {
                                int recipeTimeout, String requestAction, String serviceInstanceId,\r
                                String vnfId, String vfModuleId, String volumeGroupId, String networkId,\r
                                String serviceType, String vnfType, String vfModuleType, String networkType,\r
-                               String requestDetails){ \r
+                               String requestDetails, String recipeParamXsd){ \r
                ProtocolVersion pv = new ProtocolVersion("HTTP",1,1);\r
                HttpResponse resp = new BasicHttpResponse(pv,500, "test response");\r
                BasicHttpEntity entity = new BasicHttpEntity();\r
@@ -428,7 +428,7 @@ public class ServiceInstanceTest {
                                int recipeTimeout, String requestAction, String serviceInstanceId,\r
                                String vnfId, String vfModuleId, String volumeGroupId, String networkId,\r
                                String serviceType, String vnfType, String vfModuleType, String networkType,\r
-                               String requestDetails){ \r
+                               String requestDetails, String recipeParamXsd){ \r
                return null;\r
             }\r
         };\r