X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=POLICY-SDK-APP%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fpolicy%2Fcontroller%2FCreateDcaeMicroServiceController.java;h=a40b48aa2cafba75d94b5cc85d290d5b116a4fad;hb=0368cb99d6108970d172d4dc7145c67e4524b4a9;hp=7d2fe23c6868fe90c885417d062f14ff56fb15d5;hpb=428150834ee60899b9a8da019bae3c8bf009adf1;p=policy%2Fengine.git diff --git a/POLICY-SDK-APP/src/main/java/org/onap/policy/controller/CreateDcaeMicroServiceController.java b/POLICY-SDK-APP/src/main/java/org/onap/policy/controller/CreateDcaeMicroServiceController.java index 7d2fe23c6..a40b48aa2 100644 --- a/POLICY-SDK-APP/src/main/java/org/onap/policy/controller/CreateDcaeMicroServiceController.java +++ b/POLICY-SDK-APP/src/main/java/org/onap/policy/controller/CreateDcaeMicroServiceController.java @@ -708,17 +708,25 @@ public class CreateDcaeMicroServiceController extends RestrictedBaseController { //The "." in the value determines if its a string or a user defined type. if (!value.contains(".")){ //This is string - constraints.add(keyValues.get(key)); + if(StringUtils.isNumeric(key) ){ //only integer key for the value of Constrains + constraints.add(keyValues.get(key)); + } }else{ - //This is userdefined string + //This is user defined string String trimValue=value.substring(value.lastIndexOf('.')+1); StringBuilder referenceIndividualStringBuilder= new StringBuilder(); referenceIndividualStringBuilder.append(keySetString+"="+trimValue+":MANY-true"); referenceStringBuilder.append(referenceIndividualStringBuilder+","); } - } + } + } + if(keyValues.get("type").equalsIgnoreCase(LIST)){ + if(constraints == null || constraints.isEmpty()){ + referenceStringBuilder.append(keySetString+"=MANY-true"+","); + } + } }else{ //User defined Datatype. String value=keyValues.get("type"); @@ -1014,7 +1022,7 @@ public class CreateDcaeMicroServiceController extends RestrictedBaseController { if(allkeys != null){ Iterator iter = allkeys.iterator(); while(iter.hasNext()){ - //convert to array values for MANY-true keys + //Convert to array values for MANY-true keys finalJsonObject = convertToArrayElement(jsonObject, iter.next()); } } @@ -1036,7 +1044,7 @@ public class CreateDcaeMicroServiceController extends RestrictedBaseController { if(finalJsonObject != null){ LOGGER.info(finalJsonObject.toString()); - jsonModel = finalJsonObject.toString(); + jsonModel = finalJsonObject.toString(); } } @@ -1562,10 +1570,7 @@ public class CreateDcaeMicroServiceController extends RestrictedBaseController { else { this.newModel.setVersion(this.newFile.toString().split("-v")[1].replace(".xmi", "")); } - }else{ - errorMsg = "Upload error: The file name should contain '-v', such as xxx-v1802.yml"; - } - + } }catch(Exception e){ LOGGER.error("Upload error : ", e); errorMsg = "Upload error:" + e.getMessage(); @@ -1573,6 +1578,21 @@ public class CreateDcaeMicroServiceController extends RestrictedBaseController { } } + + if(!errorMsg.isEmpty()){ + + PrintWriter out = response.getWriter(); + + response.setCharacterEncoding("UTF-8"); + response.setContentType("application / json"); + request.setCharacterEncoding("UTF-8"); + + JSONObject j = new JSONObject(); + j.put("errorMsg", errorMsg); + out.write(j.toString()); + return; + } + List fileList = new ArrayList<>(); this.directory = "model"; if (zip){