From 376c6c4a5ba49d4c4876721f0adcad553ca66d0e Mon Sep 17 00:00:00 2001 From: Jim Hahn Date: Fri, 5 Jul 2019 09:58:14 -0400 Subject: Fix sonar issues in Integrity Monitor Fixed most sonar issues, except for code coverage. Change-Id: I473635d896797b2290920da86c6770848bc2e883 Issue-ID: POLICY-1791 Signed-off-by: Jim Hahn --- .../onap/policy/common/im/IntegrityMonitor.java | 71 +++++++++++++--------- 1 file changed, 41 insertions(+), 30 deletions(-) (limited to 'integrity-monitor/src/main/java/org/onap/policy/common/im/IntegrityMonitor.java') diff --git a/integrity-monitor/src/main/java/org/onap/policy/common/im/IntegrityMonitor.java b/integrity-monitor/src/main/java/org/onap/policy/common/im/IntegrityMonitor.java index 9a553dc8..717ae7a3 100644 --- a/integrity-monitor/src/main/java/org/onap/policy/common/im/IntegrityMonitor.java +++ b/integrity-monitor/src/main/java/org/onap/policy/common/im/IntegrityMonitor.java @@ -928,36 +928,7 @@ public class IntegrityMonitor { // check state of resources in dependency groups for (String group : depGroups) { - group = group.trim(); - if (group.isEmpty()) { - // ignore empty group - continue; - } - String[] dependencies = group.split(","); - if (logger.isDebugEnabled()) { - logger.debug("group dependencies = {}", Arrays.toString(dependencies)); - } - int realDepCount = 0; - int failDepCount = 0; - for (String dep : dependencies) { - dep = dep.trim(); - if (dep.isEmpty()) { - // ignore empty dependency - continue; - } - realDepCount++; // this is a valid dependency whose state is tracked - // if a resource is down, its FP count will not be incremented - String failMsg = doDependencyChecks(dep); - if (failMsg != null) { - failDepCount++; - appendSeparator(errorMsg); - errorMsg.append(failMsg); - } - } // end for (String dep : dependencies) - - // if all dependencies in a group are failed, set this - // resource's state to disable dependency - if ((realDepCount > 0) && (failDepCount == realDepCount)) { + if (checkDependencyGroupHasError(group, errorMsg)) { dependencyOk = false; if (!disableDependency(errorMsg, group)) { break; // break out on failure and skip checking other groups @@ -970,6 +941,46 @@ public class IntegrityMonitor { return dependencyOk; } + /** + * Checks if a dependency group has an error. + * + * @param group group to be checked + * @param errorMsg error messages are appended here + * @return {@code true} if the group has an error, {@code false} otherwise + */ + private boolean checkDependencyGroupHasError(String group, StringBuilder errorMsg) { + group = group.trim(); + if (group.isEmpty()) { + // ignore empty group + return false; + } + String[] dependencies = group.split(","); + if (logger.isDebugEnabled()) { + logger.debug("group dependencies = {}", Arrays.toString(dependencies)); + } + int realDepCount = 0; + int failDepCount = 0; + for (String dep : dependencies) { + dep = dep.trim(); + if (dep.isEmpty()) { + // ignore empty dependency + continue; + } + realDepCount++; // this is a valid dependency whose state is tracked + // if a resource is down, its FP count will not be incremented + String failMsg = doDependencyChecks(dep); + if (failMsg != null) { + failDepCount++; + appendSeparator(errorMsg); + errorMsg.append(failMsg); + } + } // end for (String dep : dependencies) + + // if all dependencies in a group are failed, set this + // resource's state to disable dependency + return (realDepCount > 0) && (failDepCount == realDepCount); + } + /** * Checks a single dependency. * -- cgit 1.2.3-korg