Restoring try catch for policy request
[clamp.git] / src / main / java / org / onap / clamp / clds / client / PolicyClient.java
index 7aa1330..cb86acb 100644 (file)
@@ -162,16 +162,18 @@ public class PolicyClient {
 
     /**
      * Perform send of base policy in OTHER type.
-     * 
+     *
      * @param configBody
      *            The config policy string body
+     * @param configPolicyName
+     *            The config policy name of the component that has been pre-deployed in DCAE
      * @param prop
      *            The ModelProperties
      * @param policyRequestUuid
      *            The policy request UUID
      * @return The answer from policy call
      */
-    public String sendBasePolicyInOther(String configBody, ModelProperties prop, String policyRequestUuid) {
+    public String sendBasePolicyInOther(String configBody, String configPolicyName, ModelProperties prop, String policyRequestUuid) {
 
         PolicyParameters policyParameters = new PolicyParameters();
 
@@ -183,6 +185,7 @@ public class PolicyClient {
         policyParameters.setConfigBody(configBody);
         policyParameters.setConfigBodyType(PolicyType.OTHER);
         policyParameters.setConfigName("HolmesPolicy");
+        policyParameters.setPolicyName(configPolicyName);
 
         policyParameters.setRequestID(UUID.fromString(policyRequestUuid));
 
@@ -362,15 +365,18 @@ public class PolicyClient {
 
         logger.info("policyName=" + policyName);
         configRequestParameters.setPolicyName(policyName);
-
-        Collection<PolicyConfig> response = getPolicyEngine().getConfig(configRequestParameters);
-        for (PolicyConfig policyConfig : response) {
-            Integer version = Integer.valueOf(policyConfig.getPolicyVersion());
-            versions.add(version);
+        try {
+            Collection<PolicyConfig> response = getPolicyEngine().getConfig(configRequestParameters);
+            for (PolicyConfig policyConfig : response) {
+                Integer version = Integer.valueOf(policyConfig.getPolicyVersion());
+                versions.add(version);
+            }
+            Collections.sort(versions);
+            logger.info("Policy versions.size()=" + versions.size());
+        } catch (PolicyConfigException e) {
+            // just print warning - if no policy version found
+            logger.warn("warning: policy not found...policy name - " + policyName, e.getMessage());
         }
-        Collections.sort(versions);
-        logger.info("Policy versions.size()=" + versions.size());
-
         return versions;
 
     }