summaryrefslogtreecommitdiffstats
path: root/sonar-ws-client
diff options
context:
space:
mode:
authorSimon Brandhof <simon.brandhof@gmail.com>2014-03-21 16:40:07 +0100
committerSimon Brandhof <simon.brandhof@gmail.com>2014-03-21 16:40:15 +0100
commit4a77e99189510fd586d57900a7e9d7742647ff58 (patch)
tree732bcf005828d824bb4ed5ac86b6d08828d148aa /sonar-ws-client
parentbe698baf4b4519eb43b5494be23a04703a550c9a (diff)
downloadsonarqube-4a77e99189510fd586d57900a7e9d7742647ff58.tar.gz
sonarqube-4a77e99189510fd586d57900a7e9d7742647ff58.zip
SONAR-4843 move URL to /api/system/restart and complete ws-client
Diffstat (limited to 'sonar-ws-client')
-rw-r--r--sonar-ws-client/src/main/java/org/sonar/wsclient/system/SystemClient.java6
-rw-r--r--sonar-ws-client/src/main/java/org/sonar/wsclient/system/internal/DefaultSystemClient.java9
-rw-r--r--sonar-ws-client/src/test/java/org/sonar/wsclient/system/internal/DefaultSystemClientTest.java11
3 files changed, 24 insertions, 2 deletions
diff --git a/sonar-ws-client/src/main/java/org/sonar/wsclient/system/SystemClient.java b/sonar-ws-client/src/main/java/org/sonar/wsclient/system/SystemClient.java
index db5d48620a4..297925efaa2 100644
--- a/sonar-ws-client/src/main/java/org/sonar/wsclient/system/SystemClient.java
+++ b/sonar-ws-client/src/main/java/org/sonar/wsclient/system/SystemClient.java
@@ -33,4 +33,10 @@ public interface SystemClient {
* Synchronously start a database migration.
*/
Migration migrate(long timeoutInSeconds, long rateInSeconds);
+
+ /**
+ * Restart server. Available only in development mode.
+ * @since 4.3
+ */
+ void restart();
}
diff --git a/sonar-ws-client/src/main/java/org/sonar/wsclient/system/internal/DefaultSystemClient.java b/sonar-ws-client/src/main/java/org/sonar/wsclient/system/internal/DefaultSystemClient.java
index a385ca3ce5d..7eacea238b4 100644
--- a/sonar-ws-client/src/main/java/org/sonar/wsclient/system/internal/DefaultSystemClient.java
+++ b/sonar-ws-client/src/main/java/org/sonar/wsclient/system/internal/DefaultSystemClient.java
@@ -24,7 +24,7 @@ import org.sonar.wsclient.internal.HttpRequestFactory;
import org.sonar.wsclient.system.Migration;
import org.sonar.wsclient.system.SystemClient;
-import java.util.HashMap;
+import java.util.Collections;
import java.util.Map;
public class DefaultSystemClient implements SystemClient {
@@ -37,7 +37,7 @@ public class DefaultSystemClient implements SystemClient {
@Override
public Migration migrate() {
- String json = requestFactory.post("/api/server/setup", new HashMap<String, Object>());
+ String json = requestFactory.post("/api/server/setup", Collections.<String, Object>emptyMap());
return jsonToMigration(json);
}
@@ -61,6 +61,11 @@ public class DefaultSystemClient implements SystemClient {
return migration;
}
+ @Override
+ public void restart() {
+ requestFactory.post("/api/system/restart", Collections.<String, Object>emptyMap());
+ }
+
private void sleepQuietly(long rateInMs) {
try {
Thread.sleep(rateInMs);
diff --git a/sonar-ws-client/src/test/java/org/sonar/wsclient/system/internal/DefaultSystemClientTest.java b/sonar-ws-client/src/test/java/org/sonar/wsclient/system/internal/DefaultSystemClientTest.java
index b2c05a2ef83..7d550852fda 100644
--- a/sonar-ws-client/src/test/java/org/sonar/wsclient/system/internal/DefaultSystemClientTest.java
+++ b/sonar-ws-client/src/test/java/org/sonar/wsclient/system/internal/DefaultSystemClientTest.java
@@ -25,11 +25,14 @@ import org.sonar.wsclient.MockHttpServerInterceptor;
import org.sonar.wsclient.internal.HttpRequestFactory;
import org.sonar.wsclient.system.Migration;
+import java.util.Collections;
+
import static org.fest.assertions.Assertions.assertThat;
import static org.fest.assertions.Fail.fail;
import static org.mockito.Matchers.anyMap;
import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
public class DefaultSystemClientTest {
@@ -112,4 +115,12 @@ public class DefaultSystemClientTest {
assertThat(e.getMessage()).isEqualTo("State is not set");
}
}
+
+ @Test
+ public void restart() {
+ HttpRequestFactory requestFactory = mock(HttpRequestFactory.class);
+ DefaultSystemClient client = new DefaultSystemClient(requestFactory);
+ client.restart();
+ verify(requestFactory).post("/api/system/restart", Collections.<String, Object>emptyMap());
+ }
}