]> source.dussan.org Git - sonarqube.git/commitdiff
Drop WebService#setResponseExampleFormat()
authorSimon Brandhof <simon.brandhof@gmail.com>
Wed, 30 Apr 2014 07:56:04 +0000 (09:56 +0200)
committerSimon Brandhof <simon.brandhof@gmail.com>
Wed, 30 Apr 2014 07:56:04 +0000 (09:56 +0200)
sonar-plugin-api/src/main/java/org/sonar/api/server/ws/WebService.java
sonar-plugin-api/src/test/java/org/sonar/api/server/ws/WebServiceTest.java
sonar-server/src/main/java/org/sonar/server/source/ws/ShowAction.java
sonar-server/src/test/java/org/sonar/server/ws/ListingWsTest.java

index 94a41cf436edc350a5e4c5c6889b7ac6683f13f4..cc2803e1ba3d51f905b6c492e8df18d539489d2c 100644 (file)
@@ -23,6 +23,7 @@ import com.google.common.base.Charsets;
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.Maps;
+import org.apache.commons.io.FilenameUtils;
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.lang.StringUtils;
 import org.sonar.api.ServerExtension;
@@ -253,7 +254,6 @@ public interface WebService extends ServerExtension {
     private RequestHandler handler;
     private Map<String, NewParam> newParams = Maps.newHashMap();
     private URL responseExample = null;
-    private String responseExampleFormat = null;
 
     private NewAction(String key) {
       this.key = key;
@@ -299,16 +299,6 @@ public interface WebService extends ServerExtension {
       return this;
     }
 
-    /**
-     * Used only if {@link #setResponseExample(java.net.URL)} is set. Example of values: "xml", "json", "txt", "csv".
-     *
-     * @since 4.4
-     */
-    public NewAction setResponseExampleFormat(@Nullable String format) {
-      this.responseExampleFormat = format;
-      return this;
-    }
-
     public NewParam createParam(String paramKey) {
       if (newParams.containsKey(paramKey)) {
         throw new IllegalStateException(
@@ -337,7 +327,6 @@ public interface WebService extends ServerExtension {
     private final RequestHandler handler;
     private final Map<String, Param> params;
     private final URL responseExample;
-    private final String responseExampleFormat;
 
     private Action(Controller controller, NewAction newAction) {
       this.key = newAction.key;
@@ -347,7 +336,6 @@ public interface WebService extends ServerExtension {
       this.post = newAction.post;
       this.isInternal = newAction.isInternal;
       this.responseExample = newAction.responseExample;
-      this.responseExampleFormat = newAction.responseExampleFormat;
 
       if (newAction.handler == null) {
         throw new IllegalArgumentException("RequestHandler is not set on action " + path);
@@ -418,11 +406,14 @@ public interface WebService extends ServerExtension {
     }
 
     /**
-     * @see org.sonar.api.server.ws.WebService.NewAction#setResponseExampleFormat(String)
+     * @see org.sonar.api.server.ws.WebService.NewAction#setResponseExample(java.net.URL)
      */
     @CheckForNull
     public String responseExampleFormat() {
-      return responseExampleFormat;
+      if (responseExample != null) {
+        return StringUtils.lowerCase(FilenameUtils.getExtension(responseExample.getFile()));
+      }
+      return null;
     }
 
     @CheckForNull
index 431e21a2e9fa3b52228c091e5d6f7b970ae002ef..ccebd01cd4b63b571ace1e4533db21ff7f1e8638 100644 (file)
@@ -54,7 +54,6 @@ public class WebServiceTest {
         .setSince("4.1")
         .setPost(true)
         .setInternal(true)
-        .setResponseExampleFormat("txt")
         .setResponseExample(getClass().getResource("/org/sonar/api/server/ws/WebServiceTest/response-example.txt"))
         .setHandler(new RequestHandler() {
           @Override
@@ -102,6 +101,9 @@ public class WebServiceTest {
     assertThat(showAction.key()).isEqualTo("show");
     assertThat(showAction.description()).isEqualTo("Show metric");
     assertThat(showAction.handler()).isNotNull();
+    assertThat(showAction.responseExample()).isNull();
+    assertThat(showAction.responseExampleFormat()).isNull();
+    assertThat(showAction.responseExampleAsString()).isNull();
     // same as controller
     assertThat(showAction.since()).isEqualTo("3.2");
     assertThat(showAction.isPost()).isFalse();
index 08463a3ff0a073f3facd5ad6f68302e6a178301a..2cfe1a63f4edac016c1861160cc59fee46a409da 100644 (file)
@@ -19,6 +19,7 @@
  */
 package org.sonar.server.source.ws;
 
+import com.google.common.io.Resources;
 import org.sonar.api.server.ws.Request;
 import org.sonar.api.server.ws.RequestHandler;
 import org.sonar.api.server.ws.Response;
@@ -44,8 +45,7 @@ public class ShowAction implements RequestHandler {
       .setDescription("Get source code. Parameter 'output' with value 'raw' is missing before being marked as a public WS.")
       .setSince("4.2")
       .setInternal(true)
-      .setResponseExampleFormat("json")
-      .setResponseExample(getClass().getResource("/org/sonar/server/source/ws/example-show.json"))
+      .setResponseExample(Resources.getResource(getClass(), "example-show.json"))
       .setHandler(this);
 
     action
index b60cdbc0ea35d631745702ccae8fc445d93a0470..0daf8447175cebdaa7db8cdbff7d04084109195b 100644 (file)
@@ -90,7 +90,6 @@ public class ListingWsTest {
         .setPost(true)
         .setInternal(true)
         .setResponseExample(getClass().getResource("/org/sonar/server/ws/ListingWsTest/metrics_example.json"))
-        .setResponseExampleFormat("json")
         .setHandler(new RequestHandler() {
           @Override
           public void handle(Request request, Response response) {