X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fonap%2Fclamp%2Fclds%2Fclient%2Freq%2Fpolicy%2FPolicyClient.java;h=cc97a7ce0a197aade39c1edccdb10dc13cf84dba;hb=refs%2Fchanges%2F59%2F50659%2F3;hp=1e423ffe7e556cdd3a8bf983e6440db8ac4e8ec9;hpb=6b6521b5824f61dea05f400dba41092f3aaa0697;p=clamp.git diff --git a/src/main/java/org/onap/clamp/clds/client/req/policy/PolicyClient.java b/src/main/java/org/onap/clamp/clds/client/req/policy/PolicyClient.java index 1e423ffe..cc97a7ce 100644 --- a/src/main/java/org/onap/clamp/clds/client/req/policy/PolicyClient.java +++ b/src/main/java/org/onap/clamp/clds/client/req/policy/PolicyClient.java @@ -56,12 +56,14 @@ import org.onap.policy.api.PolicyType; import org.onap.policy.api.PushPolicyParameters; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationContext; +import org.springframework.context.annotation.Primary; import org.springframework.stereotype.Component; /** * Policy utility methods - specifically, send the policy. */ @Component +@Primary public class PolicyClient { protected PolicyEngine policyEngine; @@ -376,8 +378,19 @@ public class PolicyClient { * @return The response message from Policy */ public String deleteMicrosService(ModelProperties prop) { - String policyType = refProp.getStringValue(POLICY_MSTYPE_PROPERTY_NAME); - return deletePolicy(prop, policyType); + String deletePolicyResponse = ""; + try { + String policyNamePrefix = refProp.getStringValue(POLICY_MS_NAME_PREFIX_PROPERTY_NAME); + List versions = getVersions(policyNamePrefix, prop); + if (!versions.isEmpty()) { + String policyType = refProp.getStringValue(POLICY_MSTYPE_PROPERTY_NAME); + deletePolicyResponse = deletePolicy(prop, policyType); + } + } catch (Exception e) { + logger.error("Exception occurred during policy communication", e); + throw new PolicyClientException("Exception while communicating with Policy", e); + } + return deletePolicyResponse; } /** @@ -399,8 +412,19 @@ public class PolicyClient { * @return The response message from policy */ public String deleteBrms(ModelProperties prop) { - String policyType = refProp.getStringValue(POLICY_OP_TYPE_PROPERTY_NAME); - return deletePolicy(prop, policyType); + String deletePolicyResponse = ""; + try { + String policyNamePrefix = refProp.getStringValue(POLICY_OP_NAME_PREFIX_PROPERTY_NAME); + List versions = getVersions(policyNamePrefix, prop); + if (!versions.isEmpty()) { + String policyType = refProp.getStringValue(POLICY_OP_TYPE_PROPERTY_NAME); + deletePolicyResponse = deletePolicy(prop, policyType); + } + } catch (Exception e) { + logger.error("Exception occurred during policy communication", e); + throw new PolicyClientException("Exception while communicating with Policy", e); + } + return deletePolicyResponse; } /**