aboutsummaryrefslogtreecommitdiffstats
path: root/policy-utils
diff options
context:
space:
mode:
authorJim Hahn <jrh3@att.com>2021-01-06 18:07:54 +0000
committerGerrit Code Review <gerrit@onap.org>2021-01-06 18:07:54 +0000
commita4e03e4efd11858f4ea69ea97c4c273e0792daa4 (patch)
tree62939316dee1c53cca53611e1507d1458ebafec9 /policy-utils
parent4e8b502d69949b013f3decd34dfa82982ff43f16 (diff)
parentca2f61793ab1d971414c25c68f9007c7c9abfaac (diff)
Merge "Changed identifiers to concept identifiers"
Diffstat (limited to 'policy-utils')
-rw-r--r--policy-utils/src/main/java/org/onap/policy/drools/policies/DomainMaker.java19
-rw-r--r--policy-utils/src/test/java/org/onap/policy/drools/policies/DomainMakerTest.java27
2 files changed, 24 insertions, 22 deletions
diff --git a/policy-utils/src/main/java/org/onap/policy/drools/policies/DomainMaker.java b/policy-utils/src/main/java/org/onap/policy/drools/policies/DomainMaker.java
index 58d5052a..ae85d576 100644
--- a/policy-utils/src/main/java/org/onap/policy/drools/policies/DomainMaker.java
+++ b/policy-utils/src/main/java/org/onap/policy/drools/policies/DomainMaker.java
@@ -1,6 +1,7 @@
/*
* ============LICENSE_START=======================================================
* Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
+ * Modifications Copyright (C) 2021 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -30,9 +31,9 @@ import org.onap.policy.common.utils.coder.CoderException;
import org.onap.policy.common.utils.coder.StandardCoder;
import org.onap.policy.common.utils.coder.StandardValCoder;
import org.onap.policy.common.utils.resources.ResourceUtils;
+import org.onap.policy.models.tosca.authorative.concepts.ToscaConceptIdentifier;
import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicy;
import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicyType;
-import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicyTypeIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -56,7 +57,7 @@ public class DomainMaker {
/**
* policy-type -> schema validator map.
*/
- private final Map<ToscaPolicyTypeIdentifier, StandardValCoder> validators = new ConcurrentHashMap<>();
+ private final Map<ToscaConceptIdentifier, StandardValCoder> validators = new ConcurrentHashMap<>();
/**
* non-validation serialization coder.
@@ -66,7 +67,7 @@ public class DomainMaker {
/**
* Does this json conform to a registered policy type schema?.
*/
- public boolean isConformant(@NonNull ToscaPolicyTypeIdentifier policyType, @NonNull String json) {
+ public boolean isConformant(@NonNull ToscaConceptIdentifier policyType, @NonNull String json) {
if (!isRegistered(policyType)) {
return false;
}
@@ -89,7 +90,7 @@ public class DomainMaker {
/**
* Does this domain policy conforms to its schema definition?.
*/
- public <T> boolean isDomainConformant(@NonNull ToscaPolicyTypeIdentifier policyType, @NonNull T domainPolicy) {
+ public <T> boolean isDomainConformant(@NonNull ToscaConceptIdentifier policyType, @NonNull T domainPolicy) {
if (!isRegistered(policyType)) {
return false;
}
@@ -134,7 +135,7 @@ public class DomainMaker {
* Checks a domain policy conformance to its specification providing a list of errors
* in a ValidationFailedException.
*/
- public <T> boolean conformance(@NonNull ToscaPolicyTypeIdentifier policyType, T domainPolicy) {
+ public <T> boolean conformance(@NonNull ToscaConceptIdentifier policyType, T domainPolicy) {
if (!isRegistered(policyType)) {
return false;
@@ -156,7 +157,7 @@ public class DomainMaker {
/**
* Registers a known schema resource for validation.
*/
- public boolean registerValidator(@NonNull ToscaPolicyTypeIdentifier policyType) {
+ public boolean registerValidator(@NonNull ToscaConceptIdentifier policyType) {
//
// A known schema is one that embedded in a .jar in the classpath as a resource
// matching the following syntax: <policy-type-name>-<policy-type-version>.schema.json.
@@ -175,7 +176,7 @@ public class DomainMaker {
/**
* Registers/Overrides a new/known schema for a policy type.
*/
- public boolean registerValidator(@NonNull ToscaPolicyTypeIdentifier policyType, @NonNull String schema) {
+ public boolean registerValidator(@NonNull ToscaConceptIdentifier policyType, @NonNull String schema) {
try {
validators.put(policyType, new StandardValCoder(schema, policyType.toString()));
} catch (RuntimeException r) {
@@ -195,7 +196,7 @@ public class DomainMaker {
/**
* Converts a JSON policy into a Domain Policy.
*/
- public <T> T convertTo(@NonNull ToscaPolicyTypeIdentifier policyType, @NonNull String json, @NonNull Class<T> clazz)
+ public <T> T convertTo(@NonNull ToscaConceptIdentifier policyType, @NonNull String json, @NonNull Class<T> clazz)
throws CoderException {
if (isRegistered(policyType)) {
return validators.get(policyType).decode(json, clazz);
@@ -215,7 +216,7 @@ public class DomainMaker {
throw new UnsupportedOperationException("schema generation from policy type is not supported");
}
- public boolean isRegistered(@NonNull ToscaPolicyTypeIdentifier policyType) {
+ public boolean isRegistered(@NonNull ToscaConceptIdentifier policyType) {
return validators.containsKey(policyType) || registerValidator(policyType);
}
diff --git a/policy-utils/src/test/java/org/onap/policy/drools/policies/DomainMakerTest.java b/policy-utils/src/test/java/org/onap/policy/drools/policies/DomainMakerTest.java
index 5bc767cd..2c883304 100644
--- a/policy-utils/src/test/java/org/onap/policy/drools/policies/DomainMakerTest.java
+++ b/policy-utils/src/test/java/org/onap/policy/drools/policies/DomainMakerTest.java
@@ -1,6 +1,7 @@
/*
* ============LICENSE_START=======================================================
* Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
+ * Modifications Copyright (C) 2021 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -38,9 +39,9 @@ import org.onap.policy.drools.models.domains.a.DomainAPolicy;
import org.onap.policy.drools.models.domains.a.Metadata;
import org.onap.policy.drools.models.domains.a.Nested;
import org.onap.policy.drools.models.domains.a.Properties;
+import org.onap.policy.models.tosca.authorative.concepts.ToscaConceptIdentifier;
import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicy;
import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicyType;
-import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicyTypeIdentifier;
public class DomainMakerTest {
@@ -53,8 +54,8 @@ public class DomainMakerTest {
@Test
public void testIsConformantString() throws IOException {
- ToscaPolicyTypeIdentifier policyTypeId =
- new ToscaPolicyTypeIdentifier("policy.type.A", "1.0.0");
+ ToscaConceptIdentifier policyTypeId =
+ new ToscaConceptIdentifier("policy.type.A", "1.0.0");
String rawJsonPolicyType =
getJsonFromFile("src/test/resources/policyA.json");
@@ -75,8 +76,8 @@ public class DomainMakerTest {
@Test
public void testIsDomainConformant() {
- ToscaPolicyTypeIdentifier policyTypeId =
- new ToscaPolicyTypeIdentifier("policy.type.A", "1.0.0");
+ ToscaConceptIdentifier policyTypeId =
+ new ToscaConceptIdentifier("policy.type.A", "1.0.0");
DomainAPolicy domainAPolicy = createDomainPolicy();
@@ -108,7 +109,7 @@ public class DomainMakerTest {
assertDomainPolicy(domainAPolicy);
domainAPolicy.getProperties().getNested().setNested1("");
- ToscaPolicyTypeIdentifier ident1 = policy1.getTypeIdentifier();
+ ToscaConceptIdentifier ident1 = policy1.getTypeIdentifier();
assertThatThrownBy(() -> domainMaker.conformance(ident1, domainAPolicy))
.isInstanceOf(ValidationFailedException.class)
.hasMessageContaining("Pattern ^(.+)$ is not contained in text");
@@ -116,8 +117,8 @@ public class DomainMakerTest {
@Test
public void testRegisterValidator() throws IOException, CoderException {
- ToscaPolicyTypeIdentifier policyTypeId =
- new ToscaPolicyTypeIdentifier("policy.type.external", "9.9.9");
+ ToscaConceptIdentifier policyTypeId =
+ new ToscaConceptIdentifier("policy.type.external", "9.9.9");
assertTrue(domainMaker.registerValidator(policyTypeId,
getJsonFromFile("src/test/resources/policy.type.external-9.9.9.schema.json")));
@@ -151,12 +152,12 @@ public class DomainMakerTest {
@Test
public void testIsRegistered() {
- ToscaPolicyTypeIdentifier policyTypeId1 =
- new ToscaPolicyTypeIdentifier("policy.type.A", "1.0.0");
+ ToscaConceptIdentifier policyTypeId1 =
+ new ToscaConceptIdentifier("policy.type.A", "1.0.0");
assertTrue(domainMaker.isRegistered(policyTypeId1));
- ToscaPolicyTypeIdentifier policyTypeId2 =
- new ToscaPolicyTypeIdentifier("policy.type.external", "7.7.9");
+ ToscaConceptIdentifier policyTypeId2 =
+ new ToscaConceptIdentifier("policy.type.external", "7.7.9");
assertFalse(domainMaker.isRegistered(policyTypeId2));
}
@@ -191,4 +192,4 @@ public class DomainMakerTest {
assertEquals(true, domainAPolicy.getProperties().getNested().isNested2());
assertEquals(50, domainAPolicy.getProperties().getNested().getNested3());
}
-} \ No newline at end of file
+}