summaryrefslogtreecommitdiffstats
path: root/common-parameters/src/main/java/org/onap/policy/common/parameters/GroupMapValidationResult.java
diff options
context:
space:
mode:
Diffstat (limited to 'common-parameters/src/main/java/org/onap/policy/common/parameters/GroupMapValidationResult.java')
-rw-r--r--common-parameters/src/main/java/org/onap/policy/common/parameters/GroupMapValidationResult.java98
1 files changed, 14 insertions, 84 deletions
diff --git a/common-parameters/src/main/java/org/onap/policy/common/parameters/GroupMapValidationResult.java b/common-parameters/src/main/java/org/onap/policy/common/parameters/GroupMapValidationResult.java
index 3baacb1f..2a616dba 100644
--- a/common-parameters/src/main/java/org/onap/policy/common/parameters/GroupMapValidationResult.java
+++ b/common-parameters/src/main/java/org/onap/policy/common/parameters/GroupMapValidationResult.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,23 +22,15 @@
package org.onap.policy.common.parameters;
import java.lang.reflect.Field;
-import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Map.Entry;
/**
* This class holds the result of the validation of a map of parameter groups.
*/
-public class GroupMapValidationResult implements ValidationResult {
+public class GroupMapValidationResult extends CommonGroupValidationResult {
// The name of the parameter group map
final String mapParameterName;
-
- // Validation status for the entire parameter class
- private ValidationStatus status = ValidationStatus.CLEAN;
- private String message = ParameterConstants.PARAMETER_GROUP_MAP_HAS_STATUS_MESSAGE + status.toString();
-
- // Validation results for each parameter in the group
- private final Map<String, ValidationResult> validationResultMap = new LinkedHashMap<>();
/**
* Constructor, create the group map validation result.
@@ -46,6 +39,8 @@ public class GroupMapValidationResult implements ValidationResult {
* @param mapObject the value of the map parameter field
*/
protected GroupMapValidationResult(final Field field, final Object mapObject) {
+ super(ParameterConstants.PARAMETER_GROUP_MAP_HAS_STATUS_MESSAGE);
+
this.mapParameterName = field.getName();
// Cast the map object to a map of parameter groups keyed by string, we can't type check maps
@@ -73,44 +68,8 @@ public class GroupMapValidationResult implements ValidationResult {
}
/**
- * Gets the status of validation.
- *
- * @return the status
- */
- @Override
- public ValidationStatus getStatus() {
- return status;
- }
-
- /**
- * Set the validation result on on a parameter group.
- *
- * @param status The validation status the field is receiving
- * @param message The validation message explaining the validation status
- */
- @Override
- public void setResult(final ValidationStatus status, final String message) {
- setResult(status);
- this.message = message;
- }
-
- /**
- * Set the validation result on on a parameter group.
- *
- * @param status The validation status the field is receiving
- */
- public void setResult(final ValidationStatus status) {
- // We record the most serious validation status, assuming the status enum ordinals
- // increase in order of severity
- if (this.status.ordinal() < status.ordinal()) {
- this.status = status;
- this.message = ParameterConstants.PARAMETER_GROUP_HAS_STATUS_MESSAGE + status.toString();
- }
- }
-
- /**
* Set the validation result on a parameter map entry.
- *
+ *
* @param entryName The name of the parameter map entry
* @param status The validation status for the entry
* @param message The validation message for the entry
@@ -122,14 +81,14 @@ public class GroupMapValidationResult implements ValidationResult {
}
// Set the status of the parameter group and replace the field result
- validationResult.setResult(status, message);
+ validationResult.setResult(status, message);
this.setResult(status);
}
/**
* Set the validation result on a parameter map entry.
- *
+ *
* @param entryName The name of the parameter map entry
* @param mapEntryValidationResult The validation result for the entry
*/
@@ -144,39 +103,10 @@ public class GroupMapValidationResult implements ValidationResult {
this.setResult(mapEntryValidationResult.getStatus());
}
- /**
- * Gets the validation result.
- *
- * @param initialIndentation the indentation to use on the main result output
- * @param subIndentation the indentation to use on sub parts of the result output
- * @param showClean output information on clean fields
- * @return the result
- */
@Override
- public String getResult(final String initialIndentation, final String subIndentation, final boolean showClean) {
- if (status == ValidationStatus.CLEAN && !showClean) {
- return null;
- }
-
- StringBuilder validationResultBuilder = new StringBuilder();
-
- validationResultBuilder.append(initialIndentation);
- validationResultBuilder.append("parameter group map \"");
- validationResultBuilder.append(mapParameterName);
- validationResultBuilder.append("\" ");
- validationResultBuilder.append(status);
- validationResultBuilder.append(", ");
- validationResultBuilder.append(message);
- validationResultBuilder.append('\n');
-
- for (ValidationResult fieldResult : validationResultMap.values()) {
- String fieldResultMessage = fieldResult.getResult(initialIndentation + subIndentation, subIndentation,
- showClean);
- if (fieldResultMessage != null) {
- validationResultBuilder.append(fieldResultMessage);
- }
- }
-
- return validationResultBuilder.toString();
+ protected void addGroupTypeName(StringBuilder result) {
+ result.append("parameter group map \"");
+ result.append(mapParameterName);
+ result.append("\" ");
}
} \ No newline at end of file