X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fonap%2Fclamp%2Fclds%2Fmodel%2Fproperties%2FPolicyItem.java;fp=src%2Fmain%2Fjava%2Forg%2Fonap%2Fclamp%2Fclds%2Fmodel%2Fproperties%2FPolicyItem.java;h=d6deddc682b9b3f7ddd9a8fbfd9a5ae01788fe12;hb=88f0dc9de3216366af961250bef43fa4e232116d;hp=2ac51ab460c4c9d81c1ef905dccd19da2fdbbb9d;hpb=626d60b91ebe94bc9de2dfae45b211a7c9bd7687;p=clamp.git diff --git a/src/main/java/org/onap/clamp/clds/model/properties/PolicyItem.java b/src/main/java/org/onap/clamp/clds/model/properties/PolicyItem.java index 2ac51ab4..d6deddc6 100644 --- a/src/main/java/org/onap/clamp/clds/model/properties/PolicyItem.java +++ b/src/main/java/org/onap/clamp/clds/model/properties/PolicyItem.java @@ -33,6 +33,7 @@ import java.util.List; import java.util.Map; import org.onap.clamp.clds.util.JacksonUtils; +import org.yaml.snakeyaml.Yaml; /** * Parse policyConfigurations from Policy json properties. @@ -105,7 +106,16 @@ public class PolicyItem implements Cloneable { String payload = AbstractModelElement.getValueByName(node, "recipePayload"); if (payload != null && !payload.isEmpty()) { - recipePayload = JacksonUtils.getObjectMapperInstance().readValue(payload, new TypeReference>(){}); + if (payload.trim().startsWith("{") && payload.trim().endsWith("}")) { + // Seems to be a JSON + recipePayload = JacksonUtils.getObjectMapperInstance().readValue(payload, + new TypeReference>() { + }); + } else { + // SHould be a YAML then + Yaml yaml = new Yaml(); + recipePayload = (Map) yaml.load(payload); + } } oapRop = AbstractModelElement.getValueByName(node, "oapRop"); oapLimit = AbstractModelElement.getValueByName(node, "oapLimit");