diff options
Diffstat (limited to 'sonar-colorizer')
10 files changed, 54 insertions, 5 deletions
diff --git a/sonar-colorizer/pom.xml b/sonar-colorizer/pom.xml index b309edfe5b9..e3e3ead5ada 100644 --- a/sonar-colorizer/pom.xml +++ b/sonar-colorizer/pom.xml @@ -5,7 +5,7 @@ <parent> <groupId>org.codehaus.sonar</groupId> <artifactId>sonar</artifactId> - <version>4.5.2-SNAPSHOT</version> + <version>5.0-SNAPSHOT</version> <relativePath>..</relativePath> </parent> @@ -24,6 +24,12 @@ <artifactId>sonar-channel</artifactId> </dependency> <dependency> + <groupId>com.google.code.findbugs</groupId> + <artifactId>jsr305</artifactId> + <scope>provided</scope> + </dependency> + + <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <scope>test</scope> @@ -34,7 +40,6 @@ <version>1.3</version> <scope>test</scope> </dependency> - <dependency> <groupId>org.easytesting</groupId> <artifactId>fest-assert</artifactId> diff --git a/sonar-colorizer/src/main/java/org/sonar/colorizer/CodeColorizer.java b/sonar-colorizer/src/main/java/org/sonar/colorizer/CodeColorizer.java index f4a0523b7f1..91982b62c71 100644 --- a/sonar-colorizer/src/main/java/org/sonar/colorizer/CodeColorizer.java +++ b/sonar-colorizer/src/main/java/org/sonar/colorizer/CodeColorizer.java @@ -19,6 +19,8 @@ */ package org.sonar.colorizer; +import javax.annotation.Nullable; + import java.io.Reader; import java.util.List; @@ -42,7 +44,7 @@ public class CodeColorizer { return toHtml(code, null); } - public String toHtml(Reader code, HtmlOptions options) { + public String toHtml(Reader code, @Nullable HtmlOptions options) { HtmlOptions opts = options == null ? HtmlOptions.DEFAULT : options; return new HtmlRenderer(opts).render(code, tokenizers); } diff --git a/sonar-colorizer/src/main/java/org/sonar/colorizer/HtmlCodeBuilder.java b/sonar-colorizer/src/main/java/org/sonar/colorizer/HtmlCodeBuilder.java index 8d7057103db..4354d766821 100644 --- a/sonar-colorizer/src/main/java/org/sonar/colorizer/HtmlCodeBuilder.java +++ b/sonar-colorizer/src/main/java/org/sonar/colorizer/HtmlCodeBuilder.java @@ -19,6 +19,9 @@ */ package org.sonar.colorizer; +import javax.annotation.CheckForNull; +import javax.annotation.Nullable; + import java.util.HashMap; import java.util.Map; @@ -31,6 +34,7 @@ public class HtmlCodeBuilder implements Appendable { private StringBuilder colorizedCode = new StringBuilder(); private Map variables = new HashMap(); + @Override public Appendable append(CharSequence csq) { for (int i = 0; i < csq.length(); i++) { append(csq.charAt(i)); @@ -38,6 +42,7 @@ public class HtmlCodeBuilder implements Appendable { return this; } + @Override public Appendable append(char c) { if (c == '<') { colorizedCode.append("<"); @@ -51,6 +56,7 @@ public class HtmlCodeBuilder implements Appendable { return this; } + @Override public Appendable append(CharSequence csq, int start, int end) { for (int i = start; i < end; i++) { append(csq.charAt(i)); @@ -79,13 +85,14 @@ public class HtmlCodeBuilder implements Appendable { * @param value * can be null */ - public void setVariable(Object key, Object value) { + public void setVariable(Object key, @Nullable Object value) { variables.put(key, value); } /** * Get a stateful variable. Return null if not found. */ + @CheckForNull public Object getVariable(Object key) { return variables.get(key); } diff --git a/sonar-colorizer/src/main/java/org/sonar/colorizer/HtmlOptions.java b/sonar-colorizer/src/main/java/org/sonar/colorizer/HtmlOptions.java index 38c6b180f07..0955f4d1ba3 100644 --- a/sonar-colorizer/src/main/java/org/sonar/colorizer/HtmlOptions.java +++ b/sonar-colorizer/src/main/java/org/sonar/colorizer/HtmlOptions.java @@ -19,6 +19,9 @@ */ package org.sonar.colorizer; +import javax.annotation.CheckForNull; +import javax.annotation.Nullable; + /** * @deprecated since 4.5.2 replace by highlighting mechanism */ @@ -35,7 +38,7 @@ public class HtmlOptions { public HtmlOptions() { } - public HtmlOptions(boolean generateTable, String tableId, boolean generateHtmlHeader) { + public HtmlOptions(boolean generateTable, @Nullable String tableId, boolean generateHtmlHeader) { this.generateTable = generateTable; this.generateHtmlHeader = generateHtmlHeader; this.tableId = tableId; @@ -65,6 +68,7 @@ public class HtmlOptions { return this; } + @CheckForNull public String getTableId() { return tableId; } diff --git a/sonar-colorizer/src/main/java/org/sonar/colorizer/InlineDocTokenizer.java b/sonar-colorizer/src/main/java/org/sonar/colorizer/InlineDocTokenizer.java index 9383296e4a7..f4177026b41 100644 --- a/sonar-colorizer/src/main/java/org/sonar/colorizer/InlineDocTokenizer.java +++ b/sonar-colorizer/src/main/java/org/sonar/colorizer/InlineDocTokenizer.java @@ -54,6 +54,7 @@ public abstract class InlineDocTokenizer extends Tokenizer { } private static final EndMatcher LINE_END_MATCHER = new EndMatcher() { + @Override public boolean match(int endFlag) { return endFlag == '\r' || endFlag == '\n'; } diff --git a/sonar-colorizer/src/main/java/org/sonar/colorizer/JavaAnnotationTokenizer.java b/sonar-colorizer/src/main/java/org/sonar/colorizer/JavaAnnotationTokenizer.java index cf98d21a386..227d003bab1 100644 --- a/sonar-colorizer/src/main/java/org/sonar/colorizer/JavaAnnotationTokenizer.java +++ b/sonar-colorizer/src/main/java/org/sonar/colorizer/JavaAnnotationTokenizer.java @@ -37,6 +37,7 @@ public class JavaAnnotationTokenizer extends Tokenizer { } private static final EndMatcher END_TOKEN_MATCHER = new EndMatcher() { + @Override public boolean match(int endFlag) { return !Character.isJavaIdentifierPart(endFlag); } diff --git a/sonar-colorizer/src/main/java/org/sonar/colorizer/JavaConstantTokenizer.java b/sonar-colorizer/src/main/java/org/sonar/colorizer/JavaConstantTokenizer.java index 12937ac49da..58f56b29c90 100644 --- a/sonar-colorizer/src/main/java/org/sonar/colorizer/JavaConstantTokenizer.java +++ b/sonar-colorizer/src/main/java/org/sonar/colorizer/JavaConstantTokenizer.java @@ -73,6 +73,7 @@ public class JavaConstantTokenizer extends Tokenizer { private EndMatcher endTokenMatcher = new EndMatcher() { + @Override public boolean match(int endFlag) { return !isJavaConstantPart(endFlag); } diff --git a/sonar-colorizer/src/main/java/org/sonar/colorizer/LiteralTokenizer.java b/sonar-colorizer/src/main/java/org/sonar/colorizer/LiteralTokenizer.java index 054a74efe57..ed5bacda9da 100644 --- a/sonar-colorizer/src/main/java/org/sonar/colorizer/LiteralTokenizer.java +++ b/sonar-colorizer/src/main/java/org/sonar/colorizer/LiteralTokenizer.java @@ -65,6 +65,7 @@ public class LiteralTokenizer extends Tokenizer { literalValue = new StringBuilder(); } + @Override public boolean match(int endFlag) { literalValue.append((char) endFlag); return code.lastChar() == firstChar && evenNumberOfBackSlashBeforeDelimiter() && literalValue.length() > 1; diff --git a/sonar-colorizer/src/main/java/org/sonar/colorizer/MultilinesDocTokenizer.java b/sonar-colorizer/src/main/java/org/sonar/colorizer/MultilinesDocTokenizer.java index 120615063e2..b18197f1bc8 100644 --- a/sonar-colorizer/src/main/java/org/sonar/colorizer/MultilinesDocTokenizer.java +++ b/sonar-colorizer/src/main/java/org/sonar/colorizer/MultilinesDocTokenizer.java @@ -82,6 +82,7 @@ public class MultilinesDocTokenizer extends Tokenizer { this.codeBuilder = codeBuilder; } + @Override public boolean match(int endFlag) { commentSize++; if (commentSize >= endToken.length + startToken.length || (commentSize >= endToken.length && isCommentStartedOnPreviousLine(codeBuilder))) { diff --git a/sonar-colorizer/src/main/java/org/sonar/colorizer/package-info.java b/sonar-colorizer/src/main/java/org/sonar/colorizer/package-info.java new file mode 100644 index 00000000000..551a67c296f --- /dev/null +++ b/sonar-colorizer/src/main/java/org/sonar/colorizer/package-info.java @@ -0,0 +1,26 @@ +/* + * SonarQube, open source software quality management tool. + * Copyright (C) 2008-2014 SonarSource + * mailto:contact AT sonarsource DOT com + * + * SonarQube is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or (at your option) any later version. + * + * SonarQube is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ +/** + * Deprecated in 4.5.1. JFreechart charts are replaced by Javascript charts. + */ +@ParametersAreNonnullByDefault +package org.sonar.colorizer; + +import javax.annotation.ParametersAreNonnullByDefault; |