]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-5931 Update documentation
authorJulien HENRY <julien.henry@sonarsource.com>
Fri, 20 Feb 2015 14:04:45 +0000 (15:04 +0100)
committerJulien HENRY <julien.henry@sonarsource.com>
Fri, 20 Feb 2015 14:05:51 +0000 (15:05 +0100)
18 files changed:
sonar-plugin-api/src/main/java/org/sonar/api/batch/SensorContext.java
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/Sensor.java
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/SensorContext.java
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/SensorDescriptor.java
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/dependency/Dependency.java
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/dependency/NewDependency.java
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/duplication/Duplication.java
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/duplication/DuplicationTokenBuilder.java [deleted file]
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/duplication/NewDuplication.java
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/highlighting/NewHighlighting.java
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/highlighting/TypeOfText.java
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/internal/SensorContextTester.java
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/issue/Issue.java
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/issue/NewIssue.java
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/measure/Measure.java
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/measure/NewMeasure.java
sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/highlighting/internal/DefaultHighlightingTest.java
sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/internal/SensorContextTesterTest.java

index 6a5463e67f985f203983a16d8c11fbce077d2725..77da586cc5a25611f99c61e8c8f0cc27e8888091 100644 (file)
@@ -105,12 +105,12 @@ public interface SensorContext extends org.sonar.api.batch.sensor.SensorContext
   // ----------- MEASURES ON PROJECT --------------
 
   /**
-   * Find a project measure
+   * @deprecated since 5.1 Sensors should not read but only save data
    */
   <G extends Serializable> Measure<G> getMeasure(Metric<G> metric);
 
   /**
-   * All measures of the project. Never return null.
+   * @deprecated since 5.1 Sensors should not read but only save data
    */
   <M> M getMeasures(MeasuresFilter<M> filter);
 
@@ -127,7 +127,7 @@ public interface SensorContext extends org.sonar.api.batch.sensor.SensorContext
   // ----------- MEASURES ON RESOURCES --------------
 
   /**
-   * Find a measure for this project
+   * @deprecated since 5.1 Sensors should not read but only save data
    */
   <G extends Serializable> Measure<G> getMeasure(Resource resource, Metric<G> metric);
 
@@ -141,7 +141,7 @@ public interface SensorContext extends org.sonar.api.batch.sensor.SensorContext
   String saveResource(Resource resource);
 
   /**
-   * Find all measures for this project. Never return null.
+   * @deprecated since 5.1 Sensors should not read but only save data
    */
   <M> M getMeasures(Resource resource, MeasuresFilter<M> filter);
 
@@ -191,9 +191,6 @@ public interface SensorContext extends org.sonar.api.batch.sensor.SensorContext
 
   // ----------- DEPENDENCIES BETWEEN RESOURCES --------------
 
-  /**
-   * @deprecated since 5.1 use {@link #newDependency()}
-   */
   Dependency saveDependency(Dependency dependency);
 
   /**
index 01f0e109e53f7bea625ee965067afed49a53cd93..fe2d78b5cad6974c14b4d84dd34bb561686f70fd 100644 (file)
@@ -19,6 +19,7 @@
  */
 package org.sonar.api.batch.sensor;
 
+import com.google.common.annotations.Beta;
 import org.sonar.api.BatchExtension;
 
 /**
@@ -33,6 +34,7 @@ import org.sonar.api.BatchExtension;
  *
  * @since 5.1
  */
+@Beta
 public interface Sensor extends BatchExtension {
 
   /**
index 91c039763fc387294f959a8845672ed6321ac42e..b52cb989e4c75b3f0a0e53720545ff5fa074132e 100644 (file)
@@ -19,6 +19,7 @@
  */
 package org.sonar.api.batch.sensor;
 
+import com.google.common.annotations.Beta;
 import org.sonar.api.batch.AnalysisMode;
 import org.sonar.api.batch.CpdMapping;
 import org.sonar.api.batch.fs.FileSystem;
@@ -26,6 +27,7 @@ import org.sonar.api.batch.rule.ActiveRules;
 import org.sonar.api.batch.sensor.dependency.NewDependency;
 import org.sonar.api.batch.sensor.duplication.NewDuplication;
 import org.sonar.api.batch.sensor.highlighting.NewHighlighting;
+import org.sonar.api.batch.sensor.internal.SensorContextTester;
 import org.sonar.api.batch.sensor.issue.Issue;
 import org.sonar.api.batch.sensor.issue.NewIssue;
 import org.sonar.api.batch.sensor.measure.Measure;
@@ -36,8 +38,10 @@ import java.io.Serializable;
 
 /**
  * See {@link Sensor#execute(SensorContext)}
+ * In order to write unit tests you can use {@link SensorContextTester}
  * @since 5.1
  */
+@Beta
 public interface SensorContext {
 
   /**
index a247e392870e7310157c72e708d18a8c152b6cce..290815df803f5d4a2791336b422fbd26e8a122ee 100644 (file)
@@ -19,6 +19,7 @@
  */
 package org.sonar.api.batch.sensor;
 
+import com.google.common.annotations.Beta;
 import org.sonar.api.batch.fs.InputFile;
 
 /**
@@ -27,6 +28,7 @@ import org.sonar.api.batch.fs.InputFile;
  * See {@link Sensor#describe(SensorDescriptor)}
  * @since 5.1
  */
+@Beta
 public interface SensorDescriptor {
 
   /**
index 56185acaf3aefca4c642e45167ac395ff98230b3..696447896735e78e38ab9a4671567ca7b97cb9f7 100644 (file)
  */
 package org.sonar.api.batch.sensor.dependency;
 
+import com.google.common.annotations.Beta;
 
 /**
  * @since 5.1
  */
+@Beta
 public interface Dependency {
 
   String fromKey();
index 8d62a2f6516100d384fe40984ee420ca1c977525..9e0de3c991b0c88f3badc966be633741c0baca37 100644 (file)
@@ -19,6 +19,7 @@
  */
 package org.sonar.api.batch.sensor.dependency;
 
+import com.google.common.annotations.Beta;
 import org.sonar.api.batch.fs.InputFile;
 
 /**
@@ -26,6 +27,7 @@ import org.sonar.api.batch.fs.InputFile;
  * Should not be implemented by client.
  * @since 5.1
  */
+@Beta
 public interface NewDependency {
 
   NewDependency from(InputFile from);
index 7baeef0591cb8ded603221da9112bbdb9e91074e..e449063b7b041ac49f21eaaf3c47fbd06da82d0b 100644 (file)
@@ -19,6 +19,7 @@
  */
 package org.sonar.api.batch.sensor.duplication;
 
+import com.google.common.annotations.Beta;
 import org.apache.commons.lang.builder.EqualsBuilder;
 import org.apache.commons.lang.builder.HashCodeBuilder;
 import org.apache.commons.lang.builder.ToStringBuilder;
@@ -35,6 +36,7 @@ import java.util.List;
  * to feed tokens and let the core compute duplications.
  * @since 5.1
  */
+@Beta
 public interface Duplication {
 
   public static class Block {
diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/duplication/DuplicationTokenBuilder.java b/sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/duplication/DuplicationTokenBuilder.java
deleted file mode 100644 (file)
index d43c5d2..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * 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.
- */
-package org.sonar.api.batch.sensor.duplication;
-
-
-import com.google.common.annotations.Beta;
-
-/**
- * Experimental, do not use.
- * <p/>
- * This builder is used to define token on files. Tokens are later used to compute duplication.
- * Tokens should be declared in sequential order.
- * Example:
- * <code><pre>
- * DuplicationTokenBuilder tokenBuilder = context.duplicationTokenBuilder(inputFile)
- *  .addToken(1, "public")
- *  .addToken(1, "class")
- *  .addToken(1, "Foo")
- *  .addToken(1, "{")
- *  .addToken(2, "}")
- *  .done();
- * </pre></code>
- * @since 4.5
- */
-@Beta
-public interface DuplicationTokenBuilder {
-
-  /**
-   * Call this method to register a new token.
-   * @param line Line number of the token. Line starts at 1.
-   * @param image Text of the token.
-   */
-  DuplicationTokenBuilder addToken(int line, String image);
-
-  /**
-   * Call this method only once when your are done with defining tokens of the file.
-   */
-  void done();
-}
index 9cc51c9c7de52a6add05a356174ad82808de6357..d4d06ba600f1856281dbdc808e8b94af1323c651 100644 (file)
@@ -19,6 +19,7 @@
  */
 package org.sonar.api.batch.sensor.duplication;
 
+import com.google.common.annotations.Beta;
 import org.sonar.api.batch.fs.InputFile;
 
 /**
@@ -34,6 +35,7 @@ import org.sonar.api.batch.fs.InputFile;
  * </pre></code>
  * @since 5.1
  */
+@Beta
 public interface NewDuplication {
 
   /**
index 2066ce8ffeb77f4afd8a4159b203e313b73cf1df..e391fc6e3f539750dc68a51ed597349b283970ce 100644 (file)
  */
 package org.sonar.api.batch.sensor.highlighting;
 
+import com.google.common.annotations.Beta;
 import org.sonar.api.batch.fs.InputFile;
 
 /**
  * This builder is used to define syntax highlighting (aka code coloration) on files.
  * @since 5.1
  */
+@Beta
 public interface NewHighlighting {
 
   /**
index 16064019c91e834c81c17066979b98bb887adfb7..19f41a5d0112617715bd30d045058b3003932a38 100644 (file)
@@ -25,7 +25,7 @@ import com.google.common.annotations.Beta;
  * Experimental, do not use.
  * <p/>
  * Possible types for highlighting code. See sonar-colorizer.css
- * @since 4.5
+ * @since 5.1
  */
 @Beta
 public enum TypeOfText {
index 1a41ccefe446740bc35af43a0b6f8dbb08cefa57..2846e0676fb3bba29ddf413b27b0539e0ee25480 100644 (file)
@@ -63,7 +63,11 @@ import java.util.List;
 import java.util.Map;
 
 /**
- * Utility class to help testing {@link Sensor}
+ * Utility class to help testing {@link Sensor}.
+ * 
+ * Usage: call {@link #create(File)} to create an "in memory" implementation of {@link SensorContext} then
+ * pass it to your {@link Sensor}. You can then query elements provided by your sensor using methods {@link #allIssues()}, ...
+ * 
  * @since 5.1
  */
 @Beta
index d320bd2c11f6293025ce3dc1ede7fc325e48832b..e6456ec880342b5fbda0cc6ffa4abd1100f6ad0b 100644 (file)
@@ -19,6 +19,7 @@
  */
 package org.sonar.api.batch.sensor.issue;
 
+import com.google.common.annotations.Beta;
 import org.sonar.api.batch.fs.InputPath;
 import org.sonar.api.batch.sensor.Sensor;
 import org.sonar.api.rule.RuleKey;
@@ -30,6 +31,7 @@ import javax.annotation.CheckForNull;
  *
  * @since 5.1
  */
+@Beta
 public interface Issue {
 
   public enum Severity {
index 734627d568d547743f59195c254a56f8d32f16ba..a98ca7eafd9b3a8a615df185d169429bb5c3f30a 100644 (file)
@@ -19,6 +19,7 @@
  */
 package org.sonar.api.batch.sensor.issue;
 
+import com.google.common.annotations.Beta;
 import org.sonar.api.batch.fs.InputDir;
 import org.sonar.api.batch.fs.InputFile;
 import org.sonar.api.batch.sensor.Sensor;
@@ -32,6 +33,7 @@ import javax.annotation.Nullable;
  *
  * @since 5.1
  */
+@Beta
 public interface NewIssue {
 
   /**
index c59f7a7be7658d55b32efcef7c6a4ce0ef049611..4f82f8587b74bf57f73759ed9dc47f02aabb1a1b 100644 (file)
@@ -19,6 +19,7 @@
  */
 package org.sonar.api.batch.sensor.measure;
 
+import com.google.common.annotations.Beta;
 import org.sonar.api.batch.fs.InputFile;
 import org.sonar.api.batch.measure.Metric;
 
@@ -31,6 +32,7 @@ import java.io.Serializable;
  * Should not be implemented by client.
  * @since 5.1
  */
+@Beta
 public interface Measure<G extends Serializable> {
 
   /**
index cf8bccba48bbe141b9588a5c48dce0d2fa2dcec9..412e4df92036514152cd09a11b70db86bac3a2c6 100644 (file)
@@ -19,6 +19,7 @@
  */
 package org.sonar.api.batch.sensor.measure;
 
+import com.google.common.annotations.Beta;
 import org.sonar.api.batch.fs.InputFile;
 import org.sonar.api.batch.measure.Metric;
 
@@ -29,6 +30,7 @@ import java.io.Serializable;
  * Should not be implemented by client.
  * @since 5.1
  */
+@Beta
 public interface NewMeasure<G extends Serializable> {
 
   /**
index 2770df6cb31c9d992b816c4d4f6924c69e67b293..55900838bc6dd8ada907086a834ffe9002ba15f2 100644 (file)
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
 package org.sonar.api.batch.sensor.highlighting.internal;
 
 import org.junit.Before;
index 090e487ddfe49bb289573d8a5694ff2a645d6619..92a3e262fc1089f7c6189becff71cb25f13c8a56 100644 (file)
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
 package org.sonar.api.batch.sensor.internal;
 
 import org.junit.Before;