Fixing incorrect response for remove policy

merge-requests/7/head
Saad Sahibjan 8 years ago
parent 556c82b2e8
commit a72b47f6f7

@ -221,14 +221,22 @@ public class PolicyManagementServiceImpl implements PolicyManagementService {
RequestValidationUtil.validatePolicyIds(policyIds); RequestValidationUtil.validatePolicyIds(policyIds);
PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService();
boolean policyDeleted = true; boolean policyDeleted = true;
String invalidPolicyIds = "";
try { try {
PolicyAdministratorPoint pap = policyManagementService.getPAP(); PolicyAdministratorPoint pap = policyManagementService.getPAP();
for (int i : policyIds) { for (int i : policyIds) {
Policy policy = pap.getPolicy(i); Policy policy = pap.getPolicy(i);
if (policy == null || !pap.deletePolicy(policy)) { if (policy == null) {
invalidPolicyIds += i + ",";
policyDeleted = false; policyDeleted = false;
} }
} }
if(policyDeleted) {
for(int i : policyIds) {
Policy policy = pap.getPolicy(i);
pap.deletePolicy(policy);
}
}
} catch (PolicyManagementException e) { } catch (PolicyManagementException e) {
String msg = "ErrorResponse occurred while removing policies"; String msg = "ErrorResponse occurred while removing policies";
log.error(msg, e); log.error(msg, e);
@ -239,8 +247,10 @@ public class PolicyManagementServiceImpl implements PolicyManagementService {
return Response.status(Response.Status.OK).entity("Policies have been successfully deleted").build(); return Response.status(Response.Status.OK).entity("Policies have been successfully deleted").build();
} else { } else {
//TODO:Check of this logic is correct //TODO:Check of this logic is correct
return Response.status(Response.Status.NOT_FOUND).entity( String ModifiedInvalidPolicyIds = invalidPolicyIds.substring(0, invalidPolicyIds.length()-1);
new ErrorResponse.ErrorResponseBuilder().setMessage("Policy doesn't exist").build()).build(); return Response.status(Response.Status.BAD_REQUEST).entity(
new ErrorResponse.ErrorResponseBuilder().setMessage("Policies with the policy ID " +
ModifiedInvalidPolicyIds + " doesn't exist").build()).build();
} }
} }

Loading…
Cancel
Save