]> source.dussan.org Git - sonarqube.git/commitdiff
Nested activeRules under its parent Rule for WS result
authorStephane Gamard <stephane.gamard@searchbox.com>
Wed, 14 May 2014 08:25:18 +0000 (10:25 +0200)
committerStephane Gamard <stephane.gamard@searchbox.com>
Wed, 14 May 2014 08:25:28 +0000 (10:25 +0200)
sonar-server/src/main/java/org/sonar/server/rule2/ws/SearchAction.java
sonar-server/src/main/java/org/sonar/server/rule2/ws/ShowAction.java

index 9863ec5fea72f4a9c6ce2426032231717a7a8d5e..0af4d76ae6940438eb9ba67ad44ea4b26963bcce 100644 (file)
@@ -208,9 +208,9 @@ public class SearchAction implements RequestHandler {
     for (Rule rule : result.getHits()) {
       json.beginObject();
       json
-        .prop("id", rule.key().toString())
+        .prop("key", rule.key().toString())
         .prop("repo", rule.key().repository())
-        .prop("key", rule.key().rule())
+        .prop("slug", rule.key().rule())
         .prop("lang", rule.language())
         .prop("name", rule.name())
         .prop("htmlDesc", rule.htmlDescription())
@@ -230,26 +230,25 @@ public class SearchAction implements RequestHandler {
           .endObject();
       }
       json.endArray();
-      json.endObject();
-    }
-    json.endArray();
-
-    json.name("activeRules").beginArray();
+      json.name("actives").beginArray();
 
-    for (ActiveRule activeRule : result.getActiveRules()) {
-      json
-        .beginObject()
-        .prop("id",activeRule.key().toString())
-        .prop("inherit", activeRule.inherit())
-        .prop("override", activeRule.override())
-        .prop("severity", activeRule.severity())
-        .prop("parent", activeRule.parent())
-        .name("params").beginArray();
-      for (Map.Entry<String, String> param : activeRule.params().entrySet()) {
-        json.beginObject()
-          .prop("key", param.getKey())
-          .prop("value", param.getValue())
-          .endObject();
+      for (ActiveRule activeRule : result.getActiveRules()) {
+        json
+          .beginObject()
+          .prop("key",activeRule.key().toString())
+          .prop("inherit", activeRule.inherit())
+          .prop("override", activeRule.override())
+          .prop("severity", activeRule.severity())
+          .prop("parent", activeRule.parent())
+          .name("params").beginArray();
+        for (Map.Entry<String, String> param : activeRule.params().entrySet()) {
+          json.beginObject()
+            .prop("key", param.getKey())
+            .prop("value", param.getValue())
+            .endObject();
+        }
+        json.endArray();
+        json.endObject();
       }
       json.endArray();
       json.endObject();
index 8b304fee28996d3b60e62bc0320b3e266ce6bf24..83d0428901f1230d930f5474ed1b077729ce1b16 100644 (file)
@@ -28,10 +28,13 @@ import org.sonar.api.server.ws.Response;
 import org.sonar.api.server.ws.WebService;
 import org.sonar.api.utils.text.JsonWriter;
 import org.sonar.server.exceptions.NotFoundException;
+import org.sonar.server.qualityprofile.ActiveRule;
 import org.sonar.server.rule2.Rule;
 import org.sonar.server.rule2.RuleParam;
 import org.sonar.server.rule2.RuleService;
 
+import java.util.Map;
+
 /**
  * @since 4.4
  */
@@ -82,8 +85,9 @@ public class ShowAction implements RequestHandler {
 
   private void writeRule(Rule rule, JsonWriter json) {
     json
+      .prop("key", rule.key().toString())
       .prop("repo", rule.key().repository())
-      .prop("key", rule.key().rule())
+      .prop("slug", rule.key().rule())
       .prop("lang", rule.language())
       .prop("name", rule.name())
       .prop("htmlDesc", rule.htmlDescription())
@@ -103,5 +107,24 @@ public class ShowAction implements RequestHandler {
         .endObject();
     }
     json.endArray();
+    json.name("actives").beginArray();
+
+    for (ActiveRule activeRule : result.getActiveRules()) {
+      json
+        .beginObject()
+        .prop("key", activeRule.key().toString())
+        .prop("inherit", activeRule.inherit())
+        .prop("override", activeRule.override())
+        .prop("severity", activeRule.severity())
+        .prop("parent", activeRule.parent())
+        .name("params").beginArray();
+      for (Map.Entry<String, String> param : activeRule.params().entrySet()) {
+        json.beginObject()
+          .prop("key", param.getKey())
+          .prop("value", param.getValue())
+          .endObject();
+      }
+      json.endArray();
+    }
   }
 }