Improve validation, add hierarchical validation 93/57993/9
authorliamfallon <liam.fallon@ericsson.com>
Mon, 30 Jul 2018 09:22:27 +0000 (10:22 +0100)
committerliamfallon <liam.fallon@ericsson.com>
Tue, 31 Jul 2018 15:06:47 +0000 (16:06 +0100)
commit73ba8039930ba56f6a64a7acc4126dc50b77070d
treebb46330718aa99e9753a69715c0ea54e990aca4d
parentc36939ee0e648f4ac28b9cdc538991ced0c603bd
Improve validation, add hierarchical validation

Parameter validaiton updated to generically support nested groups of
parameters, and nested maps of parameters.

Unit test showing JSON parameter input added.
Unit test showing YAML parameter inout added.

Test parameter group classes moved into subdirectory

This allows parameters to be unmarshaled seamlessly from JSON and YAML
files.

Change-Id: I768e11f31ee7f62299c4d5d95ab68a005d1aff16
Issue-ID: POLICY-922
Signed-off-by: liamfallon <liam.fallon@ericsson.com>
44 files changed:
common-parameters/pom.xml
common-parameters/src/main/java/org/onap/policy/common/parameters/GroupMapValidationResult.java [new file with mode: 0644]
common-parameters/src/main/java/org/onap/policy/common/parameters/GroupValidationResult.java [new file with mode: 0644]
common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterConstants.java [new file with mode: 0644]
common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterException.java
common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterGroup.java [moved from common-parameters/src/main/java/org/onap/policy/common/parameters/AbstractParameters.java with 60% similarity]
common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterRuntimeException.java
common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterService.java
common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterValidationResult.java [new file with mode: 0644]
common-parameters/src/main/java/org/onap/policy/common/parameters/ValidationResult.java [new file with mode: 0644]
common-parameters/src/main/java/org/onap/policy/common/parameters/ValidationStatus.java [moved from common-parameters/src/test/java/org/onap/policy/common/parameters/LegalParameters.java with 76% similarity]
common-parameters/src/test/java/org/onap/policy/common/parameters/ExceptionTest.java
common-parameters/src/test/java/org/onap/policy/common/parameters/TestAbstractParameters.java
common-parameters/src/test/java/org/onap/policy/common/parameters/TestJsonInput.java [new file with mode: 0644]
common-parameters/src/test/java/org/onap/policy/common/parameters/TestParameterService.java
common-parameters/src/test/java/org/onap/policy/common/parameters/TestValidation.java [new file with mode: 0644]
common-parameters/src/test/java/org/onap/policy/common/parameters/TestValidationErrors.java [new file with mode: 0644]
common-parameters/src/test/java/org/onap/policy/common/parameters/TestValidationResults.java [new file with mode: 0644]
common-parameters/src/test/java/org/onap/policy/common/parameters/TestYamlInput.java [new file with mode: 0644]
common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/EmptyParameterGroup.java [moved from common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterValidator.java with 63% similarity]
common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithArray.java [new file with mode: 0644]
common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithCollection.java [new file with mode: 0644]
common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithIllegalMapKey.java [new file with mode: 0644]
common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithIllegalMapValue.java [new file with mode: 0644]
common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullCollection.java [new file with mode: 0644]
common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithNullMapValue.java [new file with mode: 0644]
common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/ParameterGroupWithParameterGroupCollection.java [new file with mode: 0644]
common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersL00.java [new file with mode: 0644]
common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersL10.java [new file with mode: 0644]
common-parameters/src/test/java/org/onap/policy/common/parameters/testclasses/TestParametersLGeneric.java [new file with mode: 0644]
common-parameters/src/test/resources/expectedValidationResults/TestJsonYamlValidationResult.txt [new file with mode: 0644]
common-parameters/src/test/resources/expectedValidationResults/TestParametersL0_0_OK.txt [new file with mode: 0644]
common-parameters/src/test/resources/expectedValidationResults/TestParametersL0_1_Invalid.txt [new file with mode: 0644]
common-parameters/src/test/resources/expectedValidationResults/TestParametersL0_1_Observation.txt [new file with mode: 0644]
common-parameters/src/test/resources/expectedValidationResults/TestParametersL0_1_Warning.txt [new file with mode: 0644]
common-parameters/src/test/resources/expectedValidationResults/TestParametersL0_2_Invalid.txt [new file with mode: 0644]
common-parameters/src/test/resources/expectedValidationResults/TestParametersL0_2_Observation.txt [new file with mode: 0644]
common-parameters/src/test/resources/expectedValidationResults/TestParametersL0_2_Warning.txt [new file with mode: 0644]
common-parameters/src/test/resources/expectedValidationResults/TestParametersL0_3_Invalid.txt [new file with mode: 0644]
common-parameters/src/test/resources/expectedValidationResults/TestParametersL0_3_Observation.txt [new file with mode: 0644]
common-parameters/src/test/resources/expectedValidationResults/TestParametersL0_3_Warning.txt [new file with mode: 0644]
common-parameters/src/test/resources/parameters/TestParameters.json [new file with mode: 0644]
common-parameters/src/test/resources/parameters/TestParameters.yaml [new file with mode: 0644]
pom.xml