aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--models-tosca/src/main/java/org/onap/policy/models/tosca/legacy/mapping/LegacyGuardPolicyMapper.java15
-rw-r--r--models-tosca/src/test/java/org/onap/policy/models/tosca/legacy/mapping/LegacyGuardPolicyMapperTest.java12
2 files changed, 16 insertions, 11 deletions
diff --git a/models-tosca/src/main/java/org/onap/policy/models/tosca/legacy/mapping/LegacyGuardPolicyMapper.java b/models-tosca/src/main/java/org/onap/policy/models/tosca/legacy/mapping/LegacyGuardPolicyMapper.java
index 1c414ee17..a664010b8 100644
--- a/models-tosca/src/main/java/org/onap/policy/models/tosca/legacy/mapping/LegacyGuardPolicyMapper.java
+++ b/models-tosca/src/main/java/org/onap/policy/models/tosca/legacy/mapping/LegacyGuardPolicyMapper.java
@@ -115,7 +115,7 @@ public class LegacyGuardPolicyMapper
final LegacyGuardPolicyOutput legacyGuardPolicyOutput = new LegacyGuardPolicyOutput();
legacyGuardPolicyOutput.setType(toscaPolicy.getType().getName());
- legacyGuardPolicyOutput.setVersion(toscaPolicy.getType().getVersion());
+ legacyGuardPolicyOutput.setVersion(toscaPolicy.getKey().getVersion());
if (toscaPolicy.getMetadata() == null) {
String errorMessage = "no metadata defined on TOSCA policy";
@@ -123,14 +123,11 @@ public class LegacyGuardPolicyMapper
throw new PfModelRuntimeException(Response.Status.BAD_REQUEST, errorMessage);
}
- final Map<String, Object> metadata = new LinkedHashMap<>();
- for (Entry<String, String> metadataEntry : toscaPolicy.getMetadata().entrySet()) {
- if (POLICY_VERSION.equals(metadataEntry.getKey())) {
- metadata.put(POLICY_VERSION, Integer.parseInt(metadataEntry.getValue()));
- } else {
- metadata.put(metadataEntry.getKey(), metadataEntry.getValue());
- }
- }
+ final Map<String, Object> metadata = new LinkedHashMap<>(toscaPolicy.getMetadata());
+
+ // if version exists, convert it to int
+ metadata.computeIfPresent(POLICY_VERSION, (key,val) -> Integer.parseInt(val.toString()));
+
legacyGuardPolicyOutput.setMetadata(metadata);
if (toscaPolicy.getProperties() == null) {
diff --git a/models-tosca/src/test/java/org/onap/policy/models/tosca/legacy/mapping/LegacyGuardPolicyMapperTest.java b/models-tosca/src/test/java/org/onap/policy/models/tosca/legacy/mapping/LegacyGuardPolicyMapperTest.java
index f2fb53d60..6d32c6d0b 100644
--- a/models-tosca/src/test/java/org/onap/policy/models/tosca/legacy/mapping/LegacyGuardPolicyMapperTest.java
+++ b/models-tosca/src/test/java/org/onap/policy/models/tosca/legacy/mapping/LegacyGuardPolicyMapperTest.java
@@ -21,11 +21,13 @@
package org.onap.policy.models.tosca.legacy.mapping;
import static org.assertj.core.api.Assertions.assertThatThrownBy;
+import static org.junit.Assert.assertEquals;
import java.util.LinkedHashMap;
-
+import java.util.Map;
import org.junit.Test;
import org.onap.policy.models.base.PfConceptKey;
+import org.onap.policy.models.tosca.legacy.concepts.LegacyGuardPolicyOutput;
import org.onap.policy.models.tosca.simple.concepts.JpaToscaPolicies;
import org.onap.policy.models.tosca.simple.concepts.JpaToscaPolicy;
import org.onap.policy.models.tosca.simple.concepts.JpaToscaServiceTemplate;
@@ -44,7 +46,7 @@ public class LegacyGuardPolicyMapperTest {
serviceTemplate.setTopologyTemplate(new JpaToscaTopologyTemplate());
serviceTemplate.getTopologyTemplate().setPolicies(new JpaToscaPolicies());
- JpaToscaPolicy policy = new JpaToscaPolicy(new PfConceptKey("PolicyName", "0.0.1"));
+ JpaToscaPolicy policy = new JpaToscaPolicy(new PfConceptKey("PolicyName", "2.0.0"));
serviceTemplate.getTopologyTemplate().getPolicies().getConceptMap().put(policy.getKey(), policy);
assertThatThrownBy(() -> {
@@ -55,5 +57,11 @@ public class LegacyGuardPolicyMapperTest {
assertThatThrownBy(() -> {
new LegacyGuardPolicyMapper().fromToscaServiceTemplate(serviceTemplate);
}).hasMessageContaining("no properties defined on TOSCA policy");
+
+ policy.setProperties(new LinkedHashMap<>());
+ Map<String, LegacyGuardPolicyOutput> guardPolicyMap =
+ new LegacyGuardPolicyMapper().fromToscaServiceTemplate(serviceTemplate);
+ LegacyGuardPolicyOutput guardPolicy = guardPolicyMap.values().iterator().next();
+ assertEquals("2.0.0", guardPolicy.getVersion());
}
}