aboutsummaryrefslogtreecommitdiffstats
path: root/common-parameters/src/test/java/org/onap/policy/common
diff options
context:
space:
mode:
Diffstat (limited to 'common-parameters/src/test/java/org/onap/policy/common')
-rw-r--r--common-parameters/src/test/java/org/onap/policy/common/parameters/TestValidation.java262
-rw-r--r--common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/EmptyParameterGroup.java32
-rw-r--r--common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupMissingGetter.java32
-rw-r--r--common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupPrivateGetter.java32
-rw-r--r--common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithArray.java30
-rw-r--r--common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithCollection.java33
-rw-r--r--common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithIllegalMapKey.java33
-rw-r--r--common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithIllegalMapValue.java33
-rw-r--r--common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullCollection.java31
-rw-r--r--common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullMapValue.java31
-rw-r--r--common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullSubGroup.java29
-rw-r--r--common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithParameterGroupCollection.java32
-rw-r--r--common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersL00.java36
-rw-r--r--common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersL10.java32
-rw-r--r--common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersLGeneric.java53
15 files changed, 367 insertions, 364 deletions
diff --git a/common-parameters/src/test/java/org/onap/policy/common/parameters/TestValidation.java b/common-parameters/src/test/java/org/onap/policy/common/parameters/TestValidation.java
index fb08d325..8adf1165 100644
--- a/common-parameters/src/test/java/org/onap/policy/common/parameters/TestValidation.java
+++ b/common-parameters/src/test/java/org/onap/policy/common/parameters/TestValidation.java
@@ -1,19 +1,20 @@
-/*-
+/*
* ============LICENSE_START=======================================================
* Copyright (C) 2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2019 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.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
+ *
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
@@ -28,12 +29,43 @@ import static org.junit.Assert.assertTrue;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
-
import org.junit.Test;
+import org.onap.policy.common.parameters.annotations.Min;
+import org.onap.policy.common.parameters.annotations.NotBlank;
+import org.onap.policy.common.parameters.annotations.NotNull;
import org.onap.policy.common.parameters.testclasses.TestParametersL00;
import org.onap.policy.common.parameters.testclasses.TestParametersL10;
public class TestValidation {
+ private static final String NOT_BLANK_STRING_MESSAGE =
+ "field 'notBlankString' type 'java.lang.String' value '' INVALID, must be a non-blank string\n"
+ .replace('\'', '"');
+
+ private static final String NULL_STRING_MESSAGE =
+ "field 'notNullString' type 'java.lang.String' value 'null' INVALID, is null\n".replace('\'', '"');
+
+
+ private static final String NOT_BLANK_OBJECT_NAME = "notBlankObject";
+ private static final String NOT_BLANK_STRING_NAME = "notBlankString";
+ private static final String NOT_NULL_OBJECT_NAME = "notNullObject";
+ private static final String NOT_NULL_STRING_NAME = "notNullString";
+ private static final String MIN_LONG_NAME = "minLong";
+
+ @NotNull
+ private String notNullString;
+
+ @NotNull
+ private Object notNullObject;
+
+ @NotBlank
+ private String notBlankString;
+
+ @NotBlank
+ private Object notBlankObject;
+
+ @Min(value = 10)
+ private long minLong;
+
@Test
public void testValidationOk() throws IOException {
TestParametersL00 l0Parameters = new TestParametersL00("l0Parameters");
@@ -50,11 +82,11 @@ public class TestValidation {
.replaceAll("\\s+", "");
assertEquals(expectedResult, validationResult.getResult("", " ", true).replaceAll("\\s+", ""));
}
-
+
@Test
public void testValidationObservation() throws IOException {
TestParametersL00 l0Parameters = new TestParametersL00("l0Parameters");
-
+
l0Parameters.triggerValidationStatus(ValidationStatus.OBSERVATION, 3);
String expectedResult = new String(Files.readAllBytes(
@@ -65,7 +97,7 @@ public class TestValidation {
assertTrue(validationResult.isValid());
assertFalse(validationResult.isClean());
assertEquals(expectedResult, validationResult.getResult().replaceAll("\\s+", ""));
-
+
l0Parameters.triggerValidationStatus(ValidationStatus.CLEAN, 3);
l0Parameters.triggerValidationStatus(ValidationStatus.OBSERVATION, 2);
@@ -76,7 +108,7 @@ public class TestValidation {
validationResult = l0Parameters.validate();
assertTrue(validationResult.isValid());
assertEquals(expectedResult, validationResult.getResult().replaceAll("\\s+", ""));
-
+
l0Parameters.triggerValidationStatus(ValidationStatus.CLEAN, 3);
l0Parameters.triggerValidationStatus(ValidationStatus.OBSERVATION, 1);
@@ -87,7 +119,7 @@ public class TestValidation {
validationResult = l0Parameters.validate();
assertTrue(validationResult.isValid());
assertEquals(expectedResult, validationResult.getResult().replaceAll("\\s+", ""));
-
+
l0Parameters.triggerValidationStatus(ValidationStatus.CLEAN, 3);
l0Parameters.triggerValidationStatus(ValidationStatus.OBSERVATION, 0);
@@ -95,11 +127,11 @@ public class TestValidation {
assertTrue(validationResult.isValid());
assertEquals(null, validationResult.getResult());
}
-
+
@Test
public void testValidationWarning() throws IOException {
TestParametersL00 l0Parameters = new TestParametersL00("l0Parameters");
-
+
l0Parameters.triggerValidationStatus(ValidationStatus.WARNING, 3);
String expectedResult = new String(Files.readAllBytes(
@@ -109,7 +141,7 @@ public class TestValidation {
GroupValidationResult validationResult = l0Parameters.validate();
assertTrue(validationResult.isValid());
assertEquals(expectedResult, validationResult.getResult().replaceAll("\\s+", ""));
-
+
l0Parameters.triggerValidationStatus(ValidationStatus.CLEAN, 3);
l0Parameters.triggerValidationStatus(ValidationStatus.WARNING, 2);
@@ -120,7 +152,7 @@ public class TestValidation {
validationResult = l0Parameters.validate();
assertTrue(validationResult.isValid());
assertEquals(expectedResult, validationResult.getResult().replaceAll("\\s+", ""));
-
+
l0Parameters.triggerValidationStatus(ValidationStatus.CLEAN, 3);
l0Parameters.triggerValidationStatus(ValidationStatus.WARNING, 1);
@@ -131,7 +163,7 @@ public class TestValidation {
validationResult = l0Parameters.validate();
assertTrue(validationResult.isValid());
assertEquals(expectedResult, validationResult.getResult().replaceAll("\\s+", ""));
-
+
l0Parameters.triggerValidationStatus(ValidationStatus.CLEAN, 3);
l0Parameters.triggerValidationStatus(ValidationStatus.WARNING, 0);
@@ -139,11 +171,11 @@ public class TestValidation {
assertTrue(validationResult.isValid());
assertEquals(null, validationResult.getResult());
}
-
+
@Test
public void testValidationInvalid() throws IOException {
TestParametersL00 l0Parameters = new TestParametersL00("l0Parameters");
-
+
l0Parameters.triggerValidationStatus(ValidationStatus.INVALID, 3);
String expectedResult = new String(Files.readAllBytes(
@@ -153,7 +185,7 @@ public class TestValidation {
GroupValidationResult validationResult = l0Parameters.validate();
assertFalse(validationResult.isValid());
assertEquals(expectedResult, validationResult.getResult().replaceAll("\\s+", ""));
-
+
l0Parameters.triggerValidationStatus(ValidationStatus.CLEAN, 3);
l0Parameters.triggerValidationStatus(ValidationStatus.INVALID, 2);
@@ -164,7 +196,7 @@ public class TestValidation {
validationResult = l0Parameters.validate();
assertFalse(validationResult.isValid());
assertEquals(expectedResult, validationResult.getResult().replaceAll("\\s+", ""));
-
+
l0Parameters.triggerValidationStatus(ValidationStatus.CLEAN, 3);
l0Parameters.triggerValidationStatus(ValidationStatus.INVALID, 1);
@@ -175,7 +207,7 @@ public class TestValidation {
validationResult = l0Parameters.validate();
assertFalse(validationResult.isValid());
assertEquals(expectedResult, validationResult.getResult().replaceAll("\\s+", ""));
-
+
l0Parameters.triggerValidationStatus(ValidationStatus.CLEAN, 3);
l0Parameters.triggerValidationStatus(ValidationStatus.INVALID, 0);
@@ -183,7 +215,7 @@ public class TestValidation {
assertTrue(validationResult.isValid());
assertEquals(null, validationResult.getResult());
}
-
+
@Test
public void testValidationEmptySubGroup() throws IOException {
TestParametersL10 l10Parameters = new TestParametersL10("l10Parameters");
@@ -192,7 +224,193 @@ public class TestValidation {
GroupValidationResult validationResult = l10Parameters.validate();
assertTrue(validationResult.isValid());
-
+
assertTrue(validationResult.getResult("", "", true).contains("UNDEFINED"));
}
+
+ @Test
+ public void testGetValidationResult() throws Exception {
+ Contained item = new Contained();
+ item.setName("item");
+
+ Container cont = new Container();
+ cont.item = item;
+ GroupValidationResult result = cont.validate();
+ assertEquals(ValidationStatus.INVALID, result.getStatus());
+ assertTrue(result.getResult().contains(">= 1"));
+
+ item.minInt = 1000;
+ result = cont.validate();
+ assertEquals(ValidationStatus.CLEAN, result.getStatus());
+
+ cont.item = null;
+ result = cont.validate();
+ assertEquals(ValidationStatus.INVALID, result.getStatus());
+ assertTrue(result.getResult().contains("is null"));
+ }
+
+ @Test
+ public void testParameterValidationResult_NotNull() throws Exception {
+ ParameterValidationResult result = new ParameterValidationResult(
+ TestValidation.class.getDeclaredField(NOT_NULL_STRING_NAME), null);
+ assertEquals(ValidationStatus.INVALID, result.getStatus());
+ assertEquals(NULL_STRING_MESSAGE, result.getResult());
+
+ // don't allow overwrite - values should remain unchanged
+ result.setResult(ValidationStatus.WARNING, "unknown");
+ assertEquals(ValidationStatus.INVALID, result.getStatus());
+ assertEquals(NULL_STRING_MESSAGE, result.getResult());
+
+ // non-null should be OK
+ result = new ParameterValidationResult(TestValidation.class.getDeclaredField(NOT_NULL_STRING_NAME), "");
+ assertEquals(ValidationStatus.CLEAN, result.getStatus());
+
+ // non-null should be OK
+ result = new ParameterValidationResult(TestValidation.class.getDeclaredField(NOT_NULL_STRING_NAME), "abc");
+ assertEquals(ValidationStatus.CLEAN, result.getStatus());
+
+ /*
+ * Check plain object fields, too.
+ */
+ result = new ParameterValidationResult(TestValidation.class.getDeclaredField(NOT_NULL_OBJECT_NAME), null);
+ assertEquals(ValidationStatus.INVALID, result.getStatus());
+ assertEquals("field 'notNullObject' type 'java.lang.Object' value 'null' INVALID, is null\n".replace('\'', '"'),
+ result.getResult());
+
+ // non-null should be OK
+ result = new ParameterValidationResult(TestValidation.class.getDeclaredField(NOT_NULL_OBJECT_NAME),
+ new Object());
+ assertEquals(ValidationStatus.CLEAN, result.getStatus());
+
+ /*
+ * Class-level annotation.
+ */
+
+ result = new ParameterValidationResult(NotNullSub.class.getDeclaredField(NOT_NULL_STRING_NAME), null);
+ assertEquals(ValidationStatus.INVALID, result.getStatus());
+ assertEquals(NULL_STRING_MESSAGE, result.getResult());
+
+ // non-null should be OK
+ result = new ParameterValidationResult(NotNullSub.class.getDeclaredField(NOT_NULL_STRING_NAME), "");
+ assertEquals(ValidationStatus.CLEAN, result.getStatus());
+
+ /*
+ * Super class annotation - null should be OK
+ */
+ result = new ParameterValidationResult(NotNullSub2.class.getDeclaredField("anotherString"), null);
+ assertEquals(ValidationStatus.CLEAN, result.getStatus());
+ }
+
+ @Test
+ public void testParameterValidationResult_NotBlank() throws Exception {
+ ParameterValidationResult result =
+ new ParameterValidationResult(TestValidation.class.getDeclaredField(NOT_BLANK_STRING_NAME), "");
+ assertEquals(ValidationStatus.INVALID, result.getStatus());
+ assertEquals(NOT_BLANK_STRING_MESSAGE, result.getResult());
+
+ // spaces only
+ result = new ParameterValidationResult(TestValidation.class.getDeclaredField(NOT_BLANK_STRING_NAME), " \t");
+ assertEquals(ValidationStatus.INVALID, result.getStatus());
+
+ // null should be OK
+ result = new ParameterValidationResult(TestValidation.class.getDeclaredField(NOT_BLANK_STRING_NAME), null);
+ assertEquals(ValidationStatus.CLEAN, result.getStatus());
+
+ // null should be OK
+ result = new ParameterValidationResult(TestValidation.class.getDeclaredField(NOT_BLANK_STRING_NAME), "abc");
+ assertEquals(ValidationStatus.CLEAN, result.getStatus());
+
+ /*
+ * Check plain object fields, too.
+ */
+ result = new ParameterValidationResult(TestValidation.class.getDeclaredField(NOT_BLANK_OBJECT_NAME), null);
+ assertEquals(ValidationStatus.CLEAN, result.getStatus());
+
+ result = new ParameterValidationResult(TestValidation.class.getDeclaredField(NOT_BLANK_OBJECT_NAME),
+ new Object());
+ assertEquals(ValidationStatus.CLEAN, result.getStatus());
+
+ /*
+ * Class-level annotation.
+ */
+ result = new ParameterValidationResult(NotBlankSub.class.getDeclaredField(NOT_BLANK_STRING_NAME), "");
+ assertEquals(ValidationStatus.INVALID, result.getStatus());
+ assertEquals(NOT_BLANK_STRING_MESSAGE, result.getResult());
+
+ // non-null should be OK
+ result = new ParameterValidationResult(NotBlankSub.class.getDeclaredField(NOT_BLANK_STRING_NAME), "abc");
+ assertEquals(ValidationStatus.CLEAN, result.getStatus());
+ }
+
+ @Test
+ public void testParameterValidationResult_Min() throws Exception {
+ ParameterValidationResult result =
+ new ParameterValidationResult(TestValidation.class.getDeclaredField(MIN_LONG_NAME), 9L);
+ assertEquals(ValidationStatus.INVALID, result.getStatus());
+ assertEquals("field 'minLong' type 'long' value '9' INVALID, must be >= 10\n".replace('\'', '"'),
+ result.getResult());
+
+ result = new ParameterValidationResult(TestValidation.class.getDeclaredField(MIN_LONG_NAME), -2);
+ assertEquals(ValidationStatus.INVALID, result.getStatus());
+ assertEquals("field 'minLong' type 'long' value '-2' INVALID, must be >= 10\n".replace('\'', '"'),
+ result.getResult());
+
+ result = new ParameterValidationResult(TestValidation.class.getDeclaredField(MIN_LONG_NAME), 10L);
+ assertEquals(ValidationStatus.CLEAN, result.getStatus());
+
+ result = new ParameterValidationResult(TestValidation.class.getDeclaredField(MIN_LONG_NAME), 11);
+ assertEquals(ValidationStatus.CLEAN, result.getStatus());
+ }
+
+ // these classes are used to test class-level annotations
+
+
+ private static class EmptyBase {
+
+ }
+
+ @NotNull
+ private static class NotNullSub extends EmptyBase {
+ @SuppressWarnings("unused")
+ private String notNullString;
+ }
+
+ private static class NotNullSub2 extends NotNullSub {
+ @SuppressWarnings("unused")
+ private String anotherString;
+ }
+
+ @NotBlank
+ private static class NotBlankSub extends EmptyBase {
+ @SuppressWarnings("unused")
+ private String notBlankString;
+ }
+
+ private static class Contained extends ParameterGroupImpl {
+ @Min(value = 1)
+ private int minInt;
+
+ public Contained() {
+ super("Contained");
+ }
+
+ @SuppressWarnings("unused")
+ public int getMinInt() {
+ return minInt;
+ }
+ }
+
+ private static class Container extends ParameterGroupImpl {
+ @NotNull
+ private Contained item;
+
+ public Container() {
+ super("Container");
+ }
+
+ @SuppressWarnings("unused")
+ public Contained getItem() {
+ return item;
+ }
+ }
}
diff --git a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/EmptyParameterGroup.java b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/EmptyParameterGroup.java
index 505b2ce4..d1787482 100644
--- a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/EmptyParameterGroup.java
+++ b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/EmptyParameterGroup.java
@@ -1,47 +1,31 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2019 AT&T Intellectual Property.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
+ *
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
package org.onap.policy.common.parameters.testclasses;
-import org.onap.policy.common.parameters.GroupValidationResult;
-import org.onap.policy.common.parameters.ParameterGroup;
+import org.onap.policy.common.parameters.ParameterGroupImpl;
-public class EmptyParameterGroup implements ParameterGroup {
- private String name;
+public class EmptyParameterGroup extends ParameterGroupImpl {
- public EmptyParameterGroup(final String name) {
- this.name = name;
- }
-
- @Override
- public String getName() {
- return name;
- }
-
- @Override
- public void setName(final String name) {
- this.name = name;
- }
-
- @Override
- public GroupValidationResult validate() {
- return new GroupValidationResult(this);
+ public EmptyParameterGroup(String name) {
+ super(name);
}
}
diff --git a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupMissingGetter.java b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupMissingGetter.java
index e05eea3f..e6c85923 100644
--- a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupMissingGetter.java
+++ b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupMissingGetter.java
@@ -1,36 +1,35 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2019 AT&T Intellectual Property.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
+ *
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
package org.onap.policy.common.parameters.testclasses;
-import org.onap.policy.common.parameters.GroupValidationResult;
-import org.onap.policy.common.parameters.ParameterGroup;
+import org.onap.policy.common.parameters.ParameterGroupImpl;
-public class ParameterGroupMissingGetter implements ParameterGroup {
- private String name;
+public class ParameterGroupMissingGetter extends ParameterGroupImpl {
private String value;
public ParameterGroupMissingGetter(final String name) {
- this.name = name;
+ super(name);
}
-
+
public String getTheValue() {
return value;
}
@@ -38,19 +37,4 @@ public class ParameterGroupMissingGetter implements ParameterGroup {
public void setValue(String value) {
this.value = value;
}
-
- @Override
- public String getName() {
- return name;
- }
-
- @Override
- public void setName(final String name) {
- this.name = name;
- }
-
- @Override
- public GroupValidationResult validate() {
- return new GroupValidationResult(this);
- }
}
diff --git a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupPrivateGetter.java b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupPrivateGetter.java
index 78a7c157..1d90ca1f 100644
--- a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupPrivateGetter.java
+++ b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupPrivateGetter.java
@@ -1,36 +1,35 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2019 AT&T Intellectual Property.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
+ *
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
package org.onap.policy.common.parameters.testclasses;
-import org.onap.policy.common.parameters.GroupValidationResult;
-import org.onap.policy.common.parameters.ParameterGroup;
+import org.onap.policy.common.parameters.ParameterGroupImpl;
-public class ParameterGroupPrivateGetter implements ParameterGroup {
- private String name;
+public class ParameterGroupPrivateGetter extends ParameterGroupImpl {
private String value;
public ParameterGroupPrivateGetter(final String name) {
- this.name = name;
+ super(name);
}
-
+
public String getTheValue() {
return getValue();
}
@@ -42,19 +41,4 @@ public class ParameterGroupPrivateGetter implements ParameterGroup {
public void setValue(String value) {
this.value = value;
}
-
- @Override
- public String getName() {
- return name;
- }
-
- @Override
- public void setName(final String name) {
- this.name = name;
- }
-
- @Override
- public GroupValidationResult validate() {
- return new GroupValidationResult(this);
- }
}
diff --git a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithArray.java b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithArray.java
index c448cea1..e37b47ae 100644
--- a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithArray.java
+++ b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithArray.java
@@ -1,52 +1,36 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2019 AT&T Intellectual Property.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
+ *
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
package org.onap.policy.common.parameters.testclasses;
-import org.onap.policy.common.parameters.GroupValidationResult;
-import org.onap.policy.common.parameters.ParameterGroup;
+import org.onap.policy.common.parameters.ParameterGroupImpl;
-public class ParameterGroupWithArray implements ParameterGroup {
- private String name;
+public class ParameterGroupWithArray extends ParameterGroupImpl {
private int[] intArray = {1, 2, 3};
public ParameterGroupWithArray(final String name) {
- this.name = name;
+ super(name);
}
public int[] getIntArray() {
return intArray;
}
-
- @Override
- public String getName() {
- return name;
- }
-
- @Override
- public void setName(final String name) {
- this.name = name;
- }
-
- @Override
- public GroupValidationResult validate() {
- return new GroupValidationResult(this);
- }
}
diff --git a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithCollection.java b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithCollection.java
index 7f2c0ab5..ee7c1715 100644
--- a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithCollection.java
+++ b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithCollection.java
@@ -1,19 +1,20 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2019 AT&T Intellectual Property.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
+ *
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
@@ -22,21 +23,18 @@ package org.onap.policy.common.parameters.testclasses;
import java.util.ArrayList;
import java.util.List;
+import org.onap.policy.common.parameters.ParameterGroupImpl;
-import org.onap.policy.common.parameters.GroupValidationResult;
-import org.onap.policy.common.parameters.ParameterGroup;
-
-public class ParameterGroupWithCollection implements ParameterGroup {
- private String name;
+public class ParameterGroupWithCollection extends ParameterGroupImpl {
private List<Integer> intArrayList = new ArrayList<>();
/**
* Create a test parameter group.
- *
+ *
* @param name the parameter group name
*/
public ParameterGroupWithCollection(final String name) {
- this.name = name;
+ super(name);
intArrayList.add(1);
intArrayList.add(2);
@@ -46,19 +44,4 @@ public class ParameterGroupWithCollection implements ParameterGroup {
public List<Integer> getIntArrayList() {
return intArrayList;
}
-
- @Override
- public String getName() {
- return name;
- }
-
- @Override
- public void setName(final String name) {
- this.name = name;
- }
-
- @Override
- public GroupValidationResult validate() {
- return new GroupValidationResult(this);
- }
}
diff --git a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithIllegalMapKey.java b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithIllegalMapKey.java
index 57a5a110..b3c7d1b7 100644
--- a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithIllegalMapKey.java
+++ b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithIllegalMapKey.java
@@ -1,19 +1,20 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2019 AT&T Intellectual Property.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
+ *
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
@@ -22,12 +23,10 @@ package org.onap.policy.common.parameters.testclasses;
import java.util.LinkedHashMap;
import java.util.Map;
-
-import org.onap.policy.common.parameters.GroupValidationResult;
import org.onap.policy.common.parameters.ParameterGroup;
+import org.onap.policy.common.parameters.ParameterGroupImpl;
-public class ParameterGroupWithIllegalMapKey implements ParameterGroup {
- private String name;
+public class ParameterGroupWithIllegalMapKey extends ParameterGroupImpl {
private Map<Integer, ParameterGroup> badMap = new LinkedHashMap<>();
/**
@@ -35,8 +34,8 @@ public class ParameterGroupWithIllegalMapKey implements ParameterGroup {
* @param name the parameter group name
*/
public ParameterGroupWithIllegalMapKey(final String name) {
- this.name = name;
-
+ super(name);
+
badMap.put(1, new TestParametersLGeneric("One"));
badMap.put(2, new TestParametersLGeneric("Two"));
badMap.put(3, new TestParametersLGeneric("Three"));
@@ -45,20 +44,4 @@ public class ParameterGroupWithIllegalMapKey implements ParameterGroup {
public Map<Integer, ParameterGroup> getBadMap() {
return badMap;
}
-
- @Override
- public String getName() {
- return name;
- }
-
- @Override
- public void setName(final String name) {
- this.name = name;
- }
-
- @Override
- public GroupValidationResult validate() {
- return new GroupValidationResult(this);
- }
-
}
diff --git a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithIllegalMapValue.java b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithIllegalMapValue.java
index 39e35d9c..4df708a4 100644
--- a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithIllegalMapValue.java
+++ b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithIllegalMapValue.java
@@ -1,19 +1,20 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2019 AT&T Intellectual Property.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
+ *
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
@@ -22,12 +23,9 @@ package org.onap.policy.common.parameters.testclasses;
import java.util.LinkedHashMap;
import java.util.Map;
+import org.onap.policy.common.parameters.ParameterGroupImpl;
-import org.onap.policy.common.parameters.GroupValidationResult;
-import org.onap.policy.common.parameters.ParameterGroup;
-
-public class ParameterGroupWithIllegalMapValue implements ParameterGroup {
- private String name;
+public class ParameterGroupWithIllegalMapValue extends ParameterGroupImpl {
private Map<String, Integer> intMap = new LinkedHashMap<>();
/**
@@ -35,8 +33,8 @@ public class ParameterGroupWithIllegalMapValue implements ParameterGroup {
* @param name the parameter group name
*/
public ParameterGroupWithIllegalMapValue(final String name) {
- this.name = name;
-
+ super(name);
+
intMap.put("One", 1);
intMap.put("Two", 2);
intMap.put("Three", 3);
@@ -45,19 +43,4 @@ public class ParameterGroupWithIllegalMapValue implements ParameterGroup {
public Map<String, Integer> getIntMap() {
return intMap;
}
-
- @Override
- public String getName() {
- return name;
- }
-
- @Override
- public void setName(final String name) {
- this.name = name;
- }
-
- @Override
- public GroupValidationResult validate() {
- return new GroupValidationResult(this);
- }
}
diff --git a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullCollection.java b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullCollection.java
index 9b661bd5..35752c75 100644
--- a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullCollection.java
+++ b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullCollection.java
@@ -1,19 +1,20 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2019 AT&T Intellectual Property.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
+ *
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
@@ -21,12 +22,9 @@
package org.onap.policy.common.parameters.testclasses;
import java.util.List;
+import org.onap.policy.common.parameters.ParameterGroupImpl;
-import org.onap.policy.common.parameters.GroupValidationResult;
-import org.onap.policy.common.parameters.ParameterGroup;
-
-public class ParameterGroupWithNullCollection implements ParameterGroup {
- private String name;
+public class ParameterGroupWithNullCollection extends ParameterGroupImpl {
private List<Integer> nullList = null;
/**
@@ -34,25 +32,10 @@ public class ParameterGroupWithNullCollection implements ParameterGroup {
* @param name the parameter group name
*/
public ParameterGroupWithNullCollection(final String name) {
- this.name = name;
+ super(name);
}
public List<Integer> getNullList() {
return nullList;
}
-
- @Override
- public String getName() {
- return name;
- }
-
- @Override
- public void setName(final String name) {
- this.name = name;
- }
-
- @Override
- public GroupValidationResult validate() {
- return new GroupValidationResult(this);
- }
}
diff --git a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullMapValue.java b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullMapValue.java
index ac863a42..1a640023 100644
--- a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullMapValue.java
+++ b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullMapValue.java
@@ -1,19 +1,20 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2019 AT&T Intellectual Property.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
+ *
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
@@ -21,12 +22,9 @@
package org.onap.policy.common.parameters.testclasses;
import java.util.Map;
+import org.onap.policy.common.parameters.ParameterGroupImpl;
-import org.onap.policy.common.parameters.GroupValidationResult;
-import org.onap.policy.common.parameters.ParameterGroup;
-
-public class ParameterGroupWithNullMapValue implements ParameterGroup {
- private String name;
+public class ParameterGroupWithNullMapValue extends ParameterGroupImpl {
private Map<String, Integer> nullMap = null;
/**
@@ -34,25 +32,10 @@ public class ParameterGroupWithNullMapValue implements ParameterGroup {
* @param name the parameter group name
*/
public ParameterGroupWithNullMapValue(final String name) {
- this.name = name;
+ super(name);
}
public Map<String, Integer> getNullMap() {
return nullMap;
}
-
- @Override
- public String getName() {
- return name;
- }
-
- @Override
- public void setName(final String name) {
- this.name = name;
- }
-
- @Override
- public GroupValidationResult validate() {
- return new GroupValidationResult(this);
- }
}
diff --git a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullSubGroup.java b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullSubGroup.java
index 830c8117..7fe1402f 100644
--- a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullSubGroup.java
+++ b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullSubGroup.java
@@ -1,30 +1,30 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2019 AT&T Intellectual Property.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
+ *
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
package org.onap.policy.common.parameters.testclasses;
-import org.onap.policy.common.parameters.GroupValidationResult;
import org.onap.policy.common.parameters.ParameterGroup;
+import org.onap.policy.common.parameters.ParameterGroupImpl;
-public class ParameterGroupWithNullSubGroup implements ParameterGroup {
- private String name;
+public class ParameterGroupWithNullSubGroup extends ParameterGroupImpl {
private ParameterGroup subGroup = null;
/**
@@ -32,25 +32,10 @@ public class ParameterGroupWithNullSubGroup implements ParameterGroup {
* @param name the parameter group name
*/
public ParameterGroupWithNullSubGroup(final String name) {
- this.name = name;
+ super(name);
}
public ParameterGroup getSubGroup() {
return subGroup;
}
-
- @Override
- public String getName() {
- return name;
- }
-
- @Override
- public void setName(final String name) {
- this.name = name;
- }
-
- @Override
- public GroupValidationResult validate() {
- return new GroupValidationResult(this);
- }
}
diff --git a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithParameterGroupCollection.java b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithParameterGroupCollection.java
index 3966e49c..08c799f5 100644
--- a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithParameterGroupCollection.java
+++ b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithParameterGroupCollection.java
@@ -1,19 +1,20 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2019 AT&T Intellectual Property.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
+ *
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
@@ -22,12 +23,10 @@ package org.onap.policy.common.parameters.testclasses;
import java.util.ArrayList;
import java.util.List;
-
-import org.onap.policy.common.parameters.GroupValidationResult;
import org.onap.policy.common.parameters.ParameterGroup;
+import org.onap.policy.common.parameters.ParameterGroupImpl;
-public class ParameterGroupWithParameterGroupCollection implements ParameterGroup {
- private String name;
+public class ParameterGroupWithParameterGroupCollection extends ParameterGroupImpl {
private List<ParameterGroup> parameterGroupArrayList = new ArrayList<>();
/**
@@ -35,8 +34,8 @@ public class ParameterGroupWithParameterGroupCollection implements ParameterGrou
* @param name the parameter group name
*/
public ParameterGroupWithParameterGroupCollection(final String name) {
- this.name = name;
-
+ super(name);
+
parameterGroupArrayList.add(new TestParametersLGeneric("Generic0"));
parameterGroupArrayList.add(new TestParametersLGeneric("Generic1"));
parameterGroupArrayList.add(new TestParametersLGeneric("Generic2"));
@@ -45,19 +44,4 @@ public class ParameterGroupWithParameterGroupCollection implements ParameterGrou
public List<ParameterGroup> getParameterGroupArrayList() {
return parameterGroupArrayList;
}
-
- @Override
- public String getName() {
- return name;
- }
-
- @Override
- public void setName(final String name) {
- this.name = name;
- }
-
- @Override
- public GroupValidationResult validate() {
- return new GroupValidationResult(this);
- }
}
diff --git a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersL00.java b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersL00.java
index b4a7e9c8..748eb902 100644
--- a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersL00.java
+++ b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersL00.java
@@ -1,19 +1,20 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2019 AT&T Intellectual Property.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
+ *
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
@@ -23,16 +24,14 @@ package org.onap.policy.common.parameters.testclasses;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Map.Entry;
-
import org.onap.policy.common.parameters.GroupValidationResult;
import org.onap.policy.common.parameters.ParameterConstants;
-import org.onap.policy.common.parameters.ParameterGroup;
+import org.onap.policy.common.parameters.ParameterGroupImpl;
import org.onap.policy.common.parameters.ValidationStatus;
-public class TestParametersL00 implements ParameterGroup {
+public class TestParametersL00 extends ParameterGroupImpl {
private static final String A_CONSTANT = "A Constant";
-
- private String name = A_CONSTANT;
+
private int l00IntField = 0;
private String l00StringField = "Legal " + this.getClass().getCanonicalName();
private TestParametersL10 l00L10Nested = new TestParametersL10("l00L10Nested");
@@ -45,16 +44,16 @@ public class TestParametersL00 implements ParameterGroup {
* Default constructor.
*/
public TestParametersL00() {
- // Default Cnstructor
+ super(A_CONSTANT);
}
/**
* Create a test parameter group.
- *
+ *
* @param name the parameter group name
*/
public TestParametersL00(final String name) {
- this.name = name;
+ super(name);
TestParametersLGeneric l00LGenericNestedMapVal0 = new TestParametersLGeneric("l00LGenericNestedMapVal0");
l00LGenericNestedMap.put(l00LGenericNestedMapVal0.getName(), l00LGenericNestedMapVal0);
@@ -94,10 +93,6 @@ public class TestParametersL00 implements ParameterGroup {
this.isSomeFlag = isSomeFlag;
}
- public void setName(String name) {
- this.name = name;
- }
-
public void setL00IntField(int l00IntField) {
this.l00IntField = l00IntField;
}
@@ -120,7 +115,7 @@ public class TestParametersL00 implements ParameterGroup {
/**
* Trigger a validation message.
- *
+ *
* @param triggerStatus Validation status to trigger
* @param level Number of levels to recurse before stopping
*/
@@ -162,15 +157,10 @@ public class TestParametersL00 implements ParameterGroup {
}
@Override
- public String getName() {
- return name;
- }
-
- @Override
public GroupValidationResult validate() {
- GroupValidationResult validationResult = new GroupValidationResult(this);
+ GroupValidationResult validationResult = super.validate();
- if (name == null || name.trim().length() == 0) {
+ if (getName() == null || getName().trim().length() == 0) {
validationResult.setResult("name", ValidationStatus.INVALID, "name must be a non-blank string");
}
diff --git a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersL10.java b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersL10.java
index f63ec3f9..8ad682ff 100644
--- a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersL10.java
+++ b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersL10.java
@@ -1,19 +1,20 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2019 AT&T Intellectual Property.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
+ *
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
@@ -23,14 +24,12 @@ package org.onap.policy.common.parameters.testclasses;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Map.Entry;
-
import org.onap.policy.common.parameters.GroupValidationResult;
import org.onap.policy.common.parameters.ParameterConstants;
-import org.onap.policy.common.parameters.ParameterGroup;
+import org.onap.policy.common.parameters.ParameterGroupImpl;
import org.onap.policy.common.parameters.ValidationStatus;
-public class TestParametersL10 implements ParameterGroup {
- private String name;
+public class TestParametersL10 extends ParameterGroupImpl {
private int l10IntField = 0;
private String l10StringField = "Legal " + this.getClass().getCanonicalName();
private TestParametersLGeneric l10LGenericNested0 = new TestParametersLGeneric("l10LGenericNested0");
@@ -43,14 +42,14 @@ public class TestParametersL10 implements ParameterGroup {
public TestParametersL10() {
// Default Constructor
}
-
+
/**
* Create a test parameter group.
- *
+ *
* @param name the parameter group name
*/
public TestParametersL10(final String name) {
- this.name = name;
+ super(name);
TestParametersLGeneric l10LGenericNestedMapVal0 = new TestParametersLGeneric("l10LGenericNestedMapVal0");
l10LGenericNestedMap.put(l10LGenericNestedMapVal0.getName(), l10LGenericNestedMapVal0);
@@ -78,10 +77,6 @@ public class TestParametersL10 implements ParameterGroup {
return l10LGenericNestedMap;
}
- public void setName(String name) {
- this.name = name;
- }
-
public void setL10IntField(int l10IntField) {
this.l10IntField = l10IntField;
}
@@ -104,7 +99,7 @@ public class TestParametersL10 implements ParameterGroup {
/**
* Trigger a validation message.
- *
+ *
* @param level Number of levels to recurse before stopping
*/
public void triggerValidationStatus(final ValidationStatus triggerStatus, int level) {
@@ -145,13 +140,8 @@ public class TestParametersL10 implements ParameterGroup {
}
@Override
- public String getName() {
- return this.name;
- }
-
- @Override
public GroupValidationResult validate() {
- GroupValidationResult validationResult = new GroupValidationResult(this);
+ GroupValidationResult validationResult = super.validate();
if (l10StringField == null || l10StringField.trim().length() == 0) {
validationResult.setResult("l10StringField", ValidationStatus.INVALID,
diff --git a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersLGeneric.java b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersLGeneric.java
index 2d263fc7..2fc04180 100644
--- a/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersLGeneric.java
+++ b/common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersLGeneric.java
@@ -1,19 +1,20 @@
-/*-
+/*
* ============LICENSE_START=======================================================
* Copyright (C) 2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2019 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.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
+ *
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
@@ -21,29 +22,31 @@
package org.onap.policy.common.parameters.testclasses;
import org.onap.policy.common.parameters.GroupValidationResult;
-import org.onap.policy.common.parameters.ParameterConstants;
-import org.onap.policy.common.parameters.ParameterGroup;
+import org.onap.policy.common.parameters.ParameterGroupImpl;
import org.onap.policy.common.parameters.ValidationStatus;
+import org.onap.policy.common.parameters.annotations.NotBlank;
+import org.onap.policy.common.parameters.annotations.NotNull;
-public class TestParametersLGeneric implements ParameterGroup {
- private String name;
+public class TestParametersLGeneric extends ParameterGroupImpl {
private int lgenericIntField = 0;
+
+ @NotNull @NotBlank
private String lgenericStringField = "Legal " + this.getClass().getCanonicalName();
-
+
/**
* Default constructor.
*/
public TestParametersLGeneric() {
// Default Constructor
}
-
+
/**
* Create a test parameter group.
- *
+ *
* @param name the parameter group name
*/
public TestParametersLGeneric(final String name) {
- this.name = name;
+ super(name);
}
public int getLgenericIntField() {
@@ -54,10 +57,6 @@ public class TestParametersLGeneric implements ParameterGroup {
return lgenericStringField;
}
- public void setName(String name) {
- this.name = name;
- }
-
public void setLgenericIntField(int lgenericIntField) {
this.lgenericIntField = lgenericIntField;
}
@@ -68,7 +67,7 @@ public class TestParametersLGeneric implements ParameterGroup {
/**
* Trigger a validation message.
- *
+ *
* @param level Number of levels to recurse before stopping
*/
public void triggerValidationStatus(final ValidationStatus triggerStatus, int level) {
@@ -103,26 +102,15 @@ public class TestParametersLGeneric implements ParameterGroup {
}
@Override
- public String getName() {
- return this.name;
- }
-
- @Override
public GroupValidationResult validate() {
- GroupValidationResult validationResult = new GroupValidationResult(this);
+ GroupValidationResult validationResult = super.validate();
- if (lgenericStringField == null || lgenericStringField.trim().length() == 0) {
- validationResult.setResult("lgenericStringField", ValidationStatus.INVALID,
- "lgenericStringField must be a non-blank string");
- } else if (lgenericStringField.equals("lgenericStringField")) {
+ if ("lgenericStringField".equals(lgenericStringField)) {
validationResult.setResult("lgenericStringField", ValidationStatus.WARNING,
"using the field name for the parameter value is dangerous");
- } else if (lgenericStringField.equals("aString")) {
+ } else if ("aString".equals(lgenericStringField)) {
validationResult.setResult("lgenericStringField", ValidationStatus.OBSERVATION,
"this value for name is unhelpful");
- } else {
- validationResult.setResult("lgenericStringField", ValidationStatus.CLEAN,
- ParameterConstants.PARAMETER_HAS_STATUS_MESSAGE + ValidationStatus.CLEAN.toString());
}
if (lgenericIntField < 0) {
@@ -134,9 +122,6 @@ public class TestParametersLGeneric implements ParameterGroup {
} else if (lgenericIntField == 2) {
validationResult.setResult("lgenericIntField", ValidationStatus.OBSERVATION,
"this field has been set to 2");
- } else {
- validationResult.setResult("lgenericIntField", ValidationStatus.CLEAN,
- ParameterConstants.PARAMETER_HAS_STATUS_MESSAGE + ValidationStatus.CLEAN.toString());
}
return validationResult;