diff options
Diffstat (limited to 'ECOMP-PDP-REST/src/main/java/org/openecomp/policy/pdp/rest/api/services/ClosedLoopPMPolicyService.java')
-rw-r--r-- | ECOMP-PDP-REST/src/main/java/org/openecomp/policy/pdp/rest/api/services/ClosedLoopPMPolicyService.java | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/ECOMP-PDP-REST/src/main/java/org/openecomp/policy/pdp/rest/api/services/ClosedLoopPMPolicyService.java b/ECOMP-PDP-REST/src/main/java/org/openecomp/policy/pdp/rest/api/services/ClosedLoopPMPolicyService.java index 15a2c3abc..3fb8f461c 100644 --- a/ECOMP-PDP-REST/src/main/java/org/openecomp/policy/pdp/rest/api/services/ClosedLoopPMPolicyService.java +++ b/ECOMP-PDP-REST/src/main/java/org/openecomp/policy/pdp/rest/api/services/ClosedLoopPMPolicyService.java @@ -36,9 +36,9 @@ import org.openecomp.policy.xacml.std.pap.StdPAPPolicy; * @version 0.1 */ public class ClosedLoopPMPolicyService{ - private static Logger LOGGER = FlexLogger.getLogger(ClosedLoopPMPolicyService.class.getName()); - private static PAPServices papServices = null; + private static final Logger LOGGER = FlexLogger.getLogger(ClosedLoopPMPolicyService.class.getName()); + private PAPServices papServices = null; private PolicyParameters policyParameters = null; private String message = null; private String policyName = null; @@ -68,6 +68,7 @@ public class ClosedLoopPMPolicyService{ configBody = PolicyApiUtils.stringToJsonObject(policyParameters.getConfigBody()); } catch(JsonException| IllegalStateException e){ message = XACMLErrorConstants.ERROR_DATA_ISSUE+ " improper JSON object : " + policyParameters.getConfigBody(); + LOGGER.error("Error during parsing JSON config body for Closed loop PM policy " , e); return false; } return true; @@ -85,21 +86,31 @@ public class ClosedLoopPMPolicyService{ } else { operation = "create"; } - boolean levelCheck = PolicyApiUtils.isNumeric(policyParameters.getRiskLevel()); // get values and attributes from the JsonObject - String ecompName = configBody.get("ecompname").toString().replace("\"", ""); - String serviceType = configBody.get("serviceTypePolicyName").toString().replace("\"", ""); - String jsonBody = configBody.toString(); - if (ecompName==null||ecompName.equals("")){ + if(!configBody.containsKey("ecompname")){ message = XACMLErrorConstants.ERROR_DATA_ISSUE + "No Ecomp Name given."; LOGGER.error(message); return message; } + if(!configBody.containsKey("serviceTypePolicyName")){ + message = XACMLErrorConstants.ERROR_DATA_ISSUE + "No Service Type Policy Name given."; + LOGGER.error(message); + return message; + } + String ecompName = configBody.get("ecompname").toString().trim().replace("\"", ""); + if (ecompName==null||ecompName.trim().isEmpty()){ + message = XACMLErrorConstants.ERROR_DATA_ISSUE + "No Ecomp Name given."; + LOGGER.error(message); + return message; + } + boolean levelCheck = PolicyApiUtils.isNumeric(policyParameters.getRiskLevel()); if (!levelCheck){ message = XACMLErrorConstants.ERROR_DATA_ISSUE + "Incorrect Risk Level given."; LOGGER.error(message); return message; } + String jsonBody = configBody.toString(); + String serviceType = configBody.get("serviceTypePolicyName").toString().replace("\"", ""); // Create Policy. StdPAPPolicy newPAPPolicy = new StdPAPPolicy("ClosedLoop_PM", policyName, policyParameters.getPolicyDescription(), ecompName, jsonBody, false, null, serviceType, updateFlag, policyScope, 0, policyParameters.getRiskLevel(), |