aboutsummaryrefslogtreecommitdiffstats
path: root/ECOMP-PDP-REST/src/main/java/org/openecomp/policy/pdp/rest/api/services/CreateUpdateConfigPolicyService.java
diff options
context:
space:
mode:
Diffstat (limited to 'ECOMP-PDP-REST/src/main/java/org/openecomp/policy/pdp/rest/api/services/CreateUpdateConfigPolicyService.java')
-rw-r--r--ECOMP-PDP-REST/src/main/java/org/openecomp/policy/pdp/rest/api/services/CreateUpdateConfigPolicyService.java28
1 files changed, 22 insertions, 6 deletions
diff --git a/ECOMP-PDP-REST/src/main/java/org/openecomp/policy/pdp/rest/api/services/CreateUpdateConfigPolicyService.java b/ECOMP-PDP-REST/src/main/java/org/openecomp/policy/pdp/rest/api/services/CreateUpdateConfigPolicyService.java
index 850115f22..6dde8a276 100644
--- a/ECOMP-PDP-REST/src/main/java/org/openecomp/policy/pdp/rest/api/services/CreateUpdateConfigPolicyService.java
+++ b/ECOMP-PDP-REST/src/main/java/org/openecomp/policy/pdp/rest/api/services/CreateUpdateConfigPolicyService.java
@@ -37,7 +37,7 @@ import org.openecomp.policy.xacml.api.XACMLErrorConstants;
import org.springframework.http.HttpStatus;
public class CreateUpdateConfigPolicyService {
- private static Logger LOGGER = FlexLogger.getLogger(CreateUpdateConfigPolicyService.class.getName());
+ private static final Logger LOGGER = FlexLogger.getLogger(CreateUpdateConfigPolicyService.class.getName());
private String response = null;
private HttpStatus status = HttpStatus.BAD_REQUEST;
@@ -75,16 +75,32 @@ public class CreateUpdateConfigPolicyService {
Map<AttributeType, Map<String, String>> attributes = new HashMap<>();
attributes.put(AttributeType.MATCHING, configPolicyAPIRequest.getConfigAttributes());
policyParameters.setAttributes(attributes);
- policyParameters.setConfigBodyType(PolicyType.valueOf(configPolicyAPIRequest.getConfigType()));
+ if(configPolicyAPIRequest.getConfigType()==null){
+ String message = XACMLErrorConstants.ERROR_DATA_ISSUE + "No Policy ConfigType given.";
+ LOGGER.error(message);
+ throw new PolicyException(message);
+ }
+ try{
+ policyParameters.setConfigBodyType(PolicyType.valueOf(configPolicyAPIRequest.getConfigType()));
+ }catch(IllegalArgumentException e){
+ String message = XACMLErrorConstants.ERROR_DATA_ISSUE + "Improper ConfigType given.";
+ LOGGER.error(message, e);
+ throw new PolicyException(message);
+ }
policyParameters.setConfigBody(configPolicyAPIRequest.getBody());
policyParameters.setRiskLevel(configPolicyAPIRequest.getRiskLevel());
policyParameters.setRiskType(configPolicyAPIRequest.getRiskType());
policyParameters.setGuard(Boolean.parseBoolean(configPolicyAPIRequest.getGuard()));
- try {
- policyParameters.setTtlDate(new SimpleDateFormat("dd-MM-yyyy").parse(configPolicyAPIRequest.getTtlDate()));
- } catch (ParseException e) {
- LOGGER.warn("Error Parsing date given " + configPolicyAPIRequest.getTtlDate());
+ if(configPolicyAPIRequest.getTtlDate()==null){
+ LOGGER.warn("No TTL date given ");
policyParameters.setTtlDate(null);
+ }else{
+ try {
+ policyParameters.setTtlDate(new SimpleDateFormat("dd-MM-yyyy").parse(configPolicyAPIRequest.getTtlDate()));
+ } catch (ParseException e) {
+ LOGGER.warn("Error Parsing date given " + configPolicyAPIRequest.getTtlDate(), e);
+ policyParameters.setTtlDate(null);
+ }
}
CreateUpdatePolicyService createUpdatePolicyService = new CreateUpdatePolicyServiceImpl(policyParameters, requestID, updateFlag);
status = createUpdatePolicyService.getResponseCode();