]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-5007 - Added legacy ID field to Rule for RuleFinder
authorStephane Gamard <stephane.gamard@searchbox.com>
Tue, 1 Jul 2014 08:09:26 +0000 (10:09 +0200)
committerStephane Gamard <stephane.gamard@searchbox.com>
Tue, 1 Jul 2014 08:11:21 +0000 (10:11 +0200)
sonar-plugin-api/src/main/java/org/sonar/api/rules/Rule.java
sonar-server/src/main/java/org/sonar/server/rule/DefaultRuleFinder.java

index 0b7ac65d5c7b8ac7d8e80078464675ce5f2554f8..45328b52e492566a1b7972d0285d9f94a06bc680 100644 (file)
@@ -511,8 +511,9 @@ public class Rule {
   /**
    * For definition of rule only
    */
-  public void setTags(String[] tags) {
+  public Rule setTags(String[] tags) {
     this.tags = tags;
+    return this;
   }
 
   /**
index 395822f832db7be20fa3bcc030f72b53cbc2410c..be224ea5b0fe35b74131db14ead626fe09e45074 100644 (file)
@@ -25,6 +25,7 @@ import org.sonar.api.rule.RuleKey;
 import org.sonar.api.rule.RuleStatus;
 import org.sonar.api.rules.RuleFinder;
 import org.sonar.api.rules.RulePriority;
+import org.sonar.server.rule.index.RuleDoc;
 import org.sonar.server.rule.index.RuleIndex;
 import org.sonar.server.rule.index.RuleQuery;
 import org.sonar.server.search.IndexClient;
@@ -107,7 +108,8 @@ public class DefaultRuleFinder implements RuleFinder {
 
   private org.sonar.api.rules.Rule toRule(Rule rule) {
     org.sonar.api.rules.Rule apiRule = new org.sonar.api.rules.Rule();
-    apiRule.setName(rule.name())
+    apiRule
+      .setName(rule.name())
       .setLanguage(rule.language())
       .setKey(rule.key().rule())
       .setConfigKey(rule.internalKey())
@@ -122,7 +124,8 @@ public class DefaultRuleFinder implements RuleFinder {
       .setDefaultSubCharacteristicKey(rule.defaultDebtSubCharacteristicKey())
       .setCharacteristicKey(rule.debtCharacteristicKey())
       .setSubCharacteristicKey(rule.debtSubCharacteristicKey())
-      .setTags(rule.tags().toArray(new String[rule.tags().size()]));
+      .setTags(rule.tags().toArray(new String[rule.tags().size()]))
+      .setId(((RuleDoc) rule).id());
 
     List<org.sonar.api.rules.RuleParam> apiParams = newArrayList();
     for (RuleParam param : rule.params()) {