From ec5c44dd34ba4e77d43a0f6b67c9326a38c243dc Mon Sep 17 00:00:00 2001 From: Simon Brandhof Date: Mon, 23 Feb 2015 21:51:43 +0100 Subject: Fix quality flaws --- .../src/main/java/org/sonar/process/LoopbackAddress.java | 2 +- .../java/org/sonar/server/computation/step/ParseReportStep.java | 9 +++++---- .../src/main/java/org/sonar/server/issue/index/IssueIndex.java | 5 +++-- .../src/main/java/org/sonar/wsclient/services/WSUtils.java | 2 +- .../java/org/sonar/wsclient/unmarshallers/Unmarshallers.java | 2 +- 5 files changed, 11 insertions(+), 9 deletions(-) (limited to 'server') diff --git a/server/sonar-process/src/main/java/org/sonar/process/LoopbackAddress.java b/server/sonar-process/src/main/java/org/sonar/process/LoopbackAddress.java index 2302a626d2c..154fac61120 100644 --- a/server/sonar-process/src/main/java/org/sonar/process/LoopbackAddress.java +++ b/server/sonar-process/src/main/java/org/sonar/process/LoopbackAddress.java @@ -27,7 +27,7 @@ import java.util.Enumeration; public class LoopbackAddress { - private static InetAddress instance; + private static volatile InetAddress instance; private LoopbackAddress() { // only static stuff diff --git a/server/sonar-server/src/main/java/org/sonar/server/computation/step/ParseReportStep.java b/server/sonar-server/src/main/java/org/sonar/server/computation/step/ParseReportStep.java index 042f13e7c4a..9d6f4a547e4 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/computation/step/ParseReportStep.java +++ b/server/sonar-server/src/main/java/org/sonar/server/computation/step/ParseReportStep.java @@ -92,10 +92,11 @@ public class ParseReportStep implements ComputationStep { private void recursivelyProcessComponent(BatchOutputReader reportReader, ComputationContext context, int componentRef) { BatchReport.Component component = reportReader.readComponent(componentRef); - issueComputation.processComponentIssues(context, component.getUuid(), reportReader.readComponentIssues(componentRef)); - - for (Integer childRef : component.getChildRefsList()) { - recursivelyProcessComponent(reportReader, context, childRef); + if (component != null) { + issueComputation.processComponentIssues(context, component.getUuid(), reportReader.readComponentIssues(componentRef)); + for (Integer childRef : component.getChildRefsList()) { + recursivelyProcessComponent(reportReader, context, childRef); + } } } diff --git a/server/sonar-server/src/main/java/org/sonar/server/issue/index/IssueIndex.java b/server/sonar-server/src/main/java/org/sonar/server/issue/index/IssueIndex.java index eb1a6f9b7c7..b719d076766 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/issue/index/IssueIndex.java +++ b/server/sonar-server/src/main/java/org/sonar/server/issue/index/IssueIndex.java @@ -45,6 +45,7 @@ import org.sonar.api.issue.Issue; import org.sonar.api.rule.Severity; import org.sonar.api.utils.DateUtils; import org.sonar.api.utils.System2; +import org.sonar.core.util.NonNullInputFunction; import org.sonar.server.es.*; import org.sonar.server.exceptions.NotFoundException; import org.sonar.server.issue.IssueQuery; @@ -101,9 +102,9 @@ public class IssueIndex extends BaseIndex { * Convert an Elasticsearch result (a map) to an {@link org.sonar.server.issue.index.IssueDoc}. It's * used for {@link org.sonar.server.es.SearchResult}. */ - private static final Function, IssueDoc> DOC_CONVERTER = new Function, IssueDoc>() { + private static final Function, IssueDoc> DOC_CONVERTER = new NonNullInputFunction, IssueDoc>() { @Override - public IssueDoc apply(Map input) { + protected IssueDoc doApply(Map input) { return new IssueDoc(input); } }; diff --git a/server/sonar-ws-client/src/main/java/org/sonar/wsclient/services/WSUtils.java b/server/sonar-ws-client/src/main/java/org/sonar/wsclient/services/WSUtils.java index 188204771b3..0c8dab2f8a9 100644 --- a/server/sonar-ws-client/src/main/java/org/sonar/wsclient/services/WSUtils.java +++ b/server/sonar-ws-client/src/main/java/org/sonar/wsclient/services/WSUtils.java @@ -31,7 +31,7 @@ import java.util.Set; */ public abstract class WSUtils { - private static WSUtils instance = null; + private static volatile WSUtils instance = null; public static void setInstance(WSUtils utils) { instance = utils; diff --git a/server/sonar-ws-client/src/main/java/org/sonar/wsclient/unmarshallers/Unmarshallers.java b/server/sonar-ws-client/src/main/java/org/sonar/wsclient/unmarshallers/Unmarshallers.java index 094bc270cd3..654e72fbb98 100644 --- a/server/sonar-ws-client/src/main/java/org/sonar/wsclient/unmarshallers/Unmarshallers.java +++ b/server/sonar-ws-client/src/main/java/org/sonar/wsclient/unmarshallers/Unmarshallers.java @@ -28,7 +28,7 @@ public final class Unmarshallers { private Unmarshallers() { } - private static Map unmarshallers; + private static volatile Map unmarshallers; static { unmarshallers = new HashMap(); -- cgit v1.2.3