]> source.dussan.org Git - sonarqube.git/commitdiff
Fix quality flaws
authorJulien HENRY <julien.henry@sonarsource.com>
Tue, 8 Nov 2016 15:46:36 +0000 (16:46 +0100)
committerJulien HENRY <julien.henry@sonarsource.com>
Tue, 8 Nov 2016 15:46:52 +0000 (16:46 +0100)
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/internal/SensorContextTester.java
sonar-scanner-engine/src/main/java/org/sonar/scanner/bootstrap/BatchExtensionDictionnary.java
sonar-scanner-engine/src/main/java/org/sonar/scanner/deprecated/DeprecatedSensorContext.java
sonar-scanner-engine/src/main/java/org/sonar/scanner/issue/ignore/pattern/IssuePattern.java
sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/filesystem/FileSystemLogger.java
sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/report/IssuesReportBuilder.java
sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/report/ResourceReport.java
sonar-scanner-engine/src/test/java/org/sonar/scanner/issue/ignore/pattern/IssuePatternTest.java

index e1820ef53c9fd70c6f9c30400b1796dfdd4f29e4..b94287ce6aa9fd64294a8253cb7ab663e19fb4f6 100644 (file)
@@ -32,6 +32,7 @@ import java.util.Objects;
 import java.util.Set;
 import java.util.stream.Stream;
 import javax.annotation.CheckForNull;
+import javax.annotation.Nullable;
 import org.sonar.api.SonarQubeSide;
 import org.sonar.api.SonarRuntime;
 import org.sonar.api.batch.fs.InputModule;
@@ -220,7 +221,7 @@ public class SensorContextTester implements SensorContext {
   }
 
   @CheckForNull
-  public static Integer sumOrNull(Integer o1, Integer o2) {
+  public static Integer sumOrNull(@Nullable Integer o1, @Nullable Integer o2) {
     return o1 == null ? o2 : (o1 + o2);
   }
 
@@ -243,7 +244,7 @@ public class SensorContextTester implements SensorContext {
   }
 
   @CheckForNull
-  public static Integer maxOrNull(Integer o1, Integer o2) {
+  public static Integer maxOrNull(@Nullable Integer o1, @Nullable Integer o2) {
     return o1 == null ? o2 : Math.max(o1, o2);
   }
 
index 6023bb1d0fba574e24ac13abcb00cec72ed9555f..6aac81cf1207683a17765cbefd185a43bd04a7e4 100644 (file)
@@ -130,9 +130,10 @@ public class BatchExtensionDictionnary {
   }
 
   private static void completeBatchExtensions(ComponentContainer container, List<Object> extensions, Class type) {
-    if (container != null) {
-      extensions.addAll(container.getComponentsByType(type));
-      completeBatchExtensions(container.getParent(), extensions, type);
+    extensions.addAll(container.getComponentsByType(type));
+    ComponentContainer parentContainer = container.getParent();
+    if (parentContainer != null) {
+      completeBatchExtensions(parentContainer, extensions, type);
     }
   }
 
index 8a5df01a5597a5640ba4c62a4e221002a91c8aeb..4b19f7d70d22cb75be29bc273a1e86d6a053935e 100644 (file)
@@ -21,6 +21,7 @@ package org.sonar.scanner.deprecated;
 
 import java.io.Serializable;
 import java.util.Collection;
+import javax.annotation.Nullable;
 import org.sonar.api.SonarRuntime;
 import org.sonar.api.batch.AnalysisMode;
 import org.sonar.api.batch.SensorContext;
@@ -135,7 +136,7 @@ public class DeprecatedSensorContext extends DefaultSensorContext implements Sen
     return null;
   }
 
-  private Resource resourceOrProject(Resource resource) {
+  private Resource resourceOrProject(@Nullable Resource resource) {
     if (resource == null) {
       return project;
     }
index 7518f1af4da8a3e97c9a730c66d0c3fef98077d5..60e2869f568d3b26d5e46c549688eca34af57d3d 100644 (file)
  */
 package org.sonar.scanner.issue.ignore.pattern;
 
-import org.sonar.api.scan.issue.filter.FilterableIssue;
-
 import com.google.common.collect.Sets;
+import java.util.Set;
+import javax.annotation.Nullable;
 import org.apache.commons.lang.builder.ToStringBuilder;
 import org.apache.commons.lang.builder.ToStringStyle;
 import org.sonar.api.rule.RuleKey;
+import org.sonar.api.scan.issue.filter.FilterableIssue;
 import org.sonar.api.utils.WildcardPattern;
 
-import java.util.Set;
-
 public class IssuePattern {
 
   private WildcardPattern resourcePattern;
@@ -144,15 +143,11 @@ public class IssuePattern {
   }
 
   boolean matchRule(RuleKey rule) {
-    if (rule == null) {
-      return false;
-    }
-
     String key = new StringBuilder().append(rule.repository()).append(':').append(rule.rule()).toString();
     return rulePattern.match(key);
   }
 
-  boolean matchResource(String resource) {
+  boolean matchResource(@Nullable String resource) {
     return resource != null && resourcePattern.match(resource);
   }
 
index 2bebaa7fd29d3e90b0ea3ed10abaab694e96db3f..879abdec13d52f9a025e9b6bc93fa55fa3b163e3 100644 (file)
@@ -25,6 +25,7 @@ import java.nio.charset.Charset;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Locale;
+import javax.annotation.Nullable;
 import org.apache.commons.lang.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -83,7 +84,7 @@ public class FileSystemLogger {
     }
   }
 
-  private void logDir(Logger logger, String label, File dir) {
+  private static void logDir(Logger logger, String label, @Nullable File dir) {
     if (dir != null) {
       logger.info(label + dir.getAbsolutePath());
     }
index d69ba0f70f38e8a49a8911ec70d65d0948ca46b5..cd39b0750c2d7688db0b0d26c5fa9b77bba1c5e2 100644 (file)
@@ -20,6 +20,7 @@
 package org.sonar.scanner.scan.report;
 
 import javax.annotation.CheckForNull;
+import javax.annotation.Nullable;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.sonar.api.batch.ScannerSide;
@@ -81,7 +82,7 @@ public class IssuesReportBuilder {
     }
   }
 
-  private static boolean validate(TrackedIssue issue, Rule rule, BatchComponent resource) {
+  private static boolean validate(TrackedIssue issue, @Nullable Rule rule, @Nullable BatchComponent resource) {
     if (rule == null) {
       LOG.warn("Unknow rule for issue {}", issue);
       return false;
index 22ae24470b1dac7847f2da994b73fad955abfdda..e0bf1df43cabe215cd50ec8ca9b8ab73d736168c 100644 (file)
@@ -25,6 +25,7 @@ import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 import java.util.concurrent.atomic.AtomicInteger;
+import javax.annotation.Nullable;
 import org.sonar.api.batch.rule.Rule;
 import org.sonar.api.rules.RulePriority;
 import org.sonar.scanner.index.BatchComponent;
@@ -127,7 +128,7 @@ public final class ResourceReport {
     }
   }
 
-  public boolean isDisplayableLine(Integer lineNumber, boolean all) {
+  public boolean isDisplayableLine(@Nullable Integer lineNumber, boolean all) {
     if (lineNumber == null || lineNumber < 1) {
       return false;
     }
index bb14aa84f968009e785382694993ffa4ce4969e6..9914943781188f16fd85c338932d4548f305d91d 100644 (file)
  */
 package org.sonar.scanner.issue.ignore.pattern;
 
-import org.sonar.api.scan.issue.filter.FilterableIssue;
-import org.sonar.scanner.issue.ignore.pattern.IssuePattern;
 import org.junit.Test;
 import org.sonar.api.rule.RuleKey;
 import org.sonar.api.rules.Rule;
+import org.sonar.api.scan.issue.filter.FilterableIssue;
+
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
@@ -82,9 +82,7 @@ public class IssuePatternTest {
 
     assertThat(pattern.match(create(rule, javaFile, null))).isFalse();
     assertThat(pattern.match(create(rule, javaFile, 12))).isTrue();
-    assertThat(pattern.match(create((Rule) null, javaFile, 5))).isFalse();
     assertThat(pattern.match(create(rule, null, null))).isFalse();
-    assertThat(pattern.match(create((Rule) null, null, null))).isFalse();
   }
 
   private FilterableIssue create(Rule rule, String component, Integer line) {
@@ -99,11 +97,6 @@ public class IssuePatternTest {
     return mockIssue;
   }
 
-  @Test
-  public void shouldNotMatchNullRule() {
-    assertThat(new IssuePattern("*", "*").matchRule(null)).isFalse();
-  }
-
   @Test
   public void shouldPrintPatternToString() {
     IssuePattern pattern = new IssuePattern("*", "checkstyle:*");