From 66e5f2e595eb17f35af184ef18408b53e7f2f5a3 Mon Sep 17 00:00:00 2001 From: subhash kumar singh Date: Sat, 21 Apr 2018 12:36:39 +0000 Subject: Fix request parameter building for sdnc resource Fix request parameter building for sdnc resource Change-Id: Ib87c08e31837ec9f2c10bcfe9ce7caccfb3f461e Issue-ID: SO-422 Signed-off-by: subhash kumar singh --- .../bpmn/common/resource/ResourceRequestBuilder.java | 7 +------ .../scripts/CreateSDNCNetworkResource.groovy | 20 ++++++++++++++++++-- 2 files changed, 19 insertions(+), 8 deletions(-) (limited to 'bpmn') diff --git a/bpmn/MSOCommonBPMN/src/main/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilder.java b/bpmn/MSOCommonBPMN/src/main/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilder.java index d32a06d89b..7c3ea37817 100644 --- a/bpmn/MSOCommonBPMN/src/main/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilder.java +++ b/bpmn/MSOCommonBPMN/src/main/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilder.java @@ -123,7 +123,6 @@ public class ResourceRequestBuilder { throws SdcToscaParserException { Map resouceRequest = new HashMap<>(); - List> param = new ArrayList<>(); String csarpath = null; try { csarpath = getCsarFromUuid(serviceUuid); @@ -147,13 +146,9 @@ public class ResourceRequestBuilder { Property property = resourceProperties.get(key); Object value = getValue(property.getValue(), serviceInputs, serInput); - HashMap parameter = new HashMap<>(); - parameter.put("name", key); - parameter.put("value", value); - param.add(parameter); + resouceRequest.put(key, value); } } - resouceRequest.put("param", param); return resouceRequest; } diff --git a/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/CreateSDNCNetworkResource.groovy b/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/CreateSDNCNetworkResource.groovy index 63fab7d389..ede76c0fd2 100644 --- a/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/CreateSDNCNetworkResource.groovy +++ b/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/CreateSDNCNetworkResource.groovy @@ -120,7 +120,23 @@ public class CreateSDNCNetworkResource extends AbstractServiceTaskProcessor { exceptionUtil.buildAndThrowWorkflowException(execution, 7000, msg) } } - + + String customizeResourceParam(String netowrkInputParametersJson) { + List> paramList = new ArrayList(); + JSONObject jsonObject = new JSONObject(netowrkInputParametersJson); + Iterator iterator = jsonObject.keys(); + while (iterator.hasNext()) { + String key = iterator.next(); + HashMap hashMap = new HashMap(); + hashMap.put("name", key); + hashMap.put("value", jsonObject.get(key)) + paramList.add(hashMap) + } + Map>> paramMap = new HashMap(); + paramMap.put("param", paramList); + + return new JSONObject(paramMap).toString(); + } /** * Pre Process the BPMN Flow Request @@ -158,7 +174,7 @@ public class CreateSDNCNetworkResource extends AbstractServiceTaskProcessor { String resourceInputPrameters = resourceInputObj.getResourceParameters() String netowrkInputParametersJson = jsonUtil.getJsonValue(resourceInputPrameters, "requestInputs") //here convert json string to xml string - String netowrkInputParameters = XML.toString(new JSONObject(netowrkInputParametersJson)) + String netowrkInputParameters = XML.toString(new JSONObject(customizeResourceParam(netowrkInputParametersJson))) // 1. prepare assign topology via SDNC Adapter SUBFLOW call String sndcTopologyCreateRequest = """