aboutsummaryrefslogtreecommitdiffstats
path: root/common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterValidationResult.java
diff options
context:
space:
mode:
authorJim Hahn <jrh3@att.com>2019-06-13 12:34:17 -0400
committerJim Hahn <jrh3@att.com>2019-06-13 16:10:38 -0400
commitfe5d78724f723a451ddc0d7cc41d6fc60092b314 (patch)
tree9913cc94014b3e99774e9ec5e39a7211046a765a /common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterValidationResult.java
parentea262e6da52fd4da0733f02998f87aebaf502ddb (diff)
More sonar fixes in policy/common
Note: this does not increase code coverage, but should fix other code issues. Resolved cyclomatic complexity issue in ParameterValidationResult. Refactored duplicate code in GroupValidationResult. Removed IOException from NetworkUtil "throws". Replaced null/empty string tests with StringUtils.isBlank(). Added @FunctionalInterface where needed. Replaced anonymous classes with lambda expressions. Replaced duplicate strings with a constant. Added private constructors for utility classes. Removed sleep() from tests. Removed unused parameter from method call. Made some protected methods private. Compute integrity monitor's state-transition table once. Use for-loop instead of iterator. Moved constructors. Fixed some checkstyle issues (tabs => spaces, trailing spaces). Change-Id: I9a962ca45c4ff3f212c6014da799d06f07b232ef Issue-ID: POLICY-1791 Signed-off-by: Jim Hahn <jrh3@att.com>
Diffstat (limited to 'common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterValidationResult.java')
-rw-r--r--common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterValidationResult.java35
1 files changed, 27 insertions, 8 deletions
diff --git a/common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterValidationResult.java b/common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterValidationResult.java
index 0b66a533..2c367a30 100644
--- a/common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterValidationResult.java
+++ b/common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterValidationResult.java
@@ -61,15 +61,34 @@ public class ParameterValidationResult implements ValidationResult {
}
} else if (parameterValue instanceof Number) {
- Min minAnnot = field.getAnnotation(Min.class);
- if (minAnnot != null && ((Number) parameterValue).longValue() < minAnnot.value()) {
- setResult(ValidationStatus.INVALID, "must be >= " + minAnnot.value());
- }
+ checkMinValue(field, parameterValue);
+ checkMaxValue(field, parameterValue);
+ }
+ }
- Max maxAnnot = field.getAnnotation(Max.class);
- if (maxAnnot != null && ((Number) parameterValue).longValue() > maxAnnot.value()) {
- setResult(ValidationStatus.INVALID, "must be <= " + maxAnnot.value());
- }
+ /**
+ * Checks the minimum value of a field, if it has the "@Min" annotation.
+ *
+ * @param field field whose value is being validated
+ * @param parameterValue field's value
+ */
+ private void checkMinValue(final Field field, final Object parameterValue) {
+ Min minAnnot = field.getAnnotation(Min.class);
+ if (minAnnot != null && ((Number) parameterValue).longValue() < minAnnot.value()) {
+ setResult(ValidationStatus.INVALID, "must be >= " + minAnnot.value());
+ }
+ }
+
+ /**
+ * Checks the maximum value of a field, if it has the "@Max" annotation.
+ *
+ * @param field field whose value is being validated
+ * @param parameterValue field's value
+ */
+ private void checkMaxValue(final Field field, final Object parameterValue) {
+ Max maxAnnot = field.getAnnotation(Max.class);
+ if (maxAnnot != null && ((Number) parameterValue).longValue() > maxAnnot.value()) {
+ setResult(ValidationStatus.INVALID, "must be <= " + maxAnnot.value());
}
}