summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjhh <jorge.hernandez-herrero@att.com>2022-10-31 11:31:50 -0500
committerjhh <jorge.hernandez-herrero@att.com>2022-10-31 11:31:50 -0500
commit427669c39ca10bf2d1343d7f5dc2c39ad9ca3b23 (patch)
treef8888e5038377bb8dddc4de5bba41dacab78ae9f
parent47b496b11733374beceab7a4a6eb540159c58c2d (diff)
Support usage for SON policy/models templates.
Issue-ID: POLICY-4427 Signed-off-by: jhh <jorge.hernandez-herrero@att.com> Change-Id: I22706cdbd45c49946435aff15bc5ec5f7408296b
-rw-r--r--controlloop/common/rules-test/src/main/java/org/onap/policy/controlloop/common/rules/test/Rules.java12
1 files changed, 11 insertions, 1 deletions
diff --git a/controlloop/common/rules-test/src/main/java/org/onap/policy/controlloop/common/rules/test/Rules.java b/controlloop/common/rules-test/src/main/java/org/onap/policy/controlloop/common/rules/test/Rules.java
index 09eb58d5a..111f00800 100644
--- a/controlloop/common/rules-test/src/main/java/org/onap/policy/controlloop/common/rules/test/Rules.java
+++ b/controlloop/common/rules-test/src/main/java/org/onap/policy/controlloop/common/rules/test/Rules.java
@@ -2,7 +2,7 @@
* ============LICENSE_START=======================================================
* ONAP
* ================================================================================
- * Copyright (C) 2020-2021 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2020-2022 AT&T Intellectual Property. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -232,6 +232,16 @@ public class Rules {
throw new CoderException(new FileNotFoundException(policyPath));
}
+ if (policyPath.startsWith("policies/")) {
+ // using policy/models examples where policies are wrapped with the ToscaServiceTemplate
+ // for API component provisioning
+ logger.info("retrieving policy from policy models examples");
+ ToscaServiceTemplate template = coder.decode(policyJson, ToscaServiceTemplate.class);
+ if (template.getToscaTopologyTemplate().getPolicies().size() == 1) {
+ return template.getToscaTopologyTemplate().getPolicies().get(0).values().iterator().next();
+ }
+ }
+
return coder.decode(policyJson, ToscaPolicy.class);
}