summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--clustercontroller-apps/src/main/java/com/yahoo/vespa/clustercontroller/apps/clustercontroller/StatusHandler.java6
-rw-r--r--clustercontroller-apps/src/main/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscHttpRequestHandler.java14
-rw-r--r--clustercontroller-apps/src/main/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscMetricWrapper.java4
-rw-r--r--clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apps/clustercontroller/StateRestApiV2HandlerTest.java1
-rw-r--r--clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apps/clustercontroller/StatusHandlerTest.java2
-rw-r--r--clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscHttpRequestHandlerTest.java6
-rw-r--r--clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscMetricWrapperTest.java8
-rw-r--r--clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Id.java9
-rw-r--r--clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/AsyncOperationImpl.java2
-rw-r--r--clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/AsyncOperationListenImpl.java2
-rw-r--r--clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/PipedAsyncOperation.java25
-rw-r--r--clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/RedirectedAsyncOperation.java6
-rw-r--r--clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/http/HttpRequest.java5
-rw-r--r--clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/http/writer/HttpWriter.java3
-rw-r--r--clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/StateRestAPI.java6
-rw-r--r--clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/errors/OperationNotSupportedForUnitException.java4
-rw-r--r--clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/server/RestApiHandler.java6
-rw-r--r--clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/async/AsyncTest.java23
-rw-r--r--clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/http/HttpRequestTest.java6
-rw-r--r--clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/http/HttpResultTest.java10
-rw-r--r--clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/http/writer/HttpWriterTest.java12
-rw-r--r--clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/DummyBackend.java10
-rw-r--r--clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/StateRestAPITest.java41
-rw-r--r--clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/test/TestTransport.java20
-rw-r--r--clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/util/MetricReporterTest.java2
25 files changed, 90 insertions, 143 deletions
diff --git a/clustercontroller-apps/src/main/java/com/yahoo/vespa/clustercontroller/apps/clustercontroller/StatusHandler.java b/clustercontroller-apps/src/main/java/com/yahoo/vespa/clustercontroller/apps/clustercontroller/StatusHandler.java
index ee2110ece4e..9d448f3a903 100644
--- a/clustercontroller-apps/src/main/java/com/yahoo/vespa/clustercontroller/apps/clustercontroller/StatusHandler.java
+++ b/clustercontroller-apps/src/main/java/com/yahoo/vespa/clustercontroller/apps/clustercontroller/StatusHandler.java
@@ -9,8 +9,6 @@ import com.yahoo.vespa.clustercontroller.apputil.communication.http.JDiscHttpReq
public class StatusHandler extends JDiscHttpRequestHandler implements CapabilityRequiringRequestHandler {
- private final com.yahoo.vespa.clustercontroller.core.status.StatusHandler statusHandler;
-
@Inject
public StatusHandler(ClusterController fc, JDiscHttpRequestHandler.Context ctx) {
this(new com.yahoo.vespa.clustercontroller.core.status.StatusHandler(fc), ctx);
@@ -19,10 +17,8 @@ public class StatusHandler extends JDiscHttpRequestHandler implements Capability
@Override public Capability requiredCapability(RequestView __) { return Capability.CLUSTER_CONTROLLER__STATUS; }
private StatusHandler(com.yahoo.vespa.clustercontroller.core.status.StatusHandler handler,
- JDiscHttpRequestHandler.Context ctx)
- {
+ JDiscHttpRequestHandler.Context ctx) {
super(handler, ctx);
- this.statusHandler = handler;
}
}
diff --git a/clustercontroller-apps/src/main/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscHttpRequestHandler.java b/clustercontroller-apps/src/main/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscHttpRequestHandler.java
index 939f09c9e33..8314d1b3ad0 100644
--- a/clustercontroller-apps/src/main/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscHttpRequestHandler.java
+++ b/clustercontroller-apps/src/main/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscHttpRequestHandler.java
@@ -70,13 +70,13 @@ public class JDiscHttpRequestHandler extends ThreadedHttpRequestHandler {
}
static HttpRequest setOperation(HttpRequest request, com.yahoo.jdisc.http.HttpRequest.Method method) {
- switch (method) {
- case GET: return request.setHttpOperation(HttpRequest.HttpOp.GET);
- case POST: return request.setHttpOperation(HttpRequest.HttpOp.POST);
- case PUT: return request.setHttpOperation(HttpRequest.HttpOp.PUT);
- case DELETE: return request.setHttpOperation(HttpRequest.HttpOp.DELETE);
- default: throw new IllegalStateException("Unhandled method " + method);
- }
+ return switch (method) {
+ case GET -> request.setHttpOperation(HttpRequest.HttpOp.GET);
+ case POST -> request.setHttpOperation(HttpRequest.HttpOp.POST);
+ case PUT -> request.setHttpOperation(HttpRequest.HttpOp.PUT);
+ case DELETE -> request.setHttpOperation(HttpRequest.HttpOp.DELETE);
+ default -> throw new IllegalStateException("Unhandled method " + method);
+ };
}
private com.yahoo.container.jdisc.HttpResponse copyResponse(final HttpResult result) {
diff --git a/clustercontroller-apps/src/main/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscMetricWrapper.java b/clustercontroller-apps/src/main/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscMetricWrapper.java
index 5a4df289d87..b707623870a 100644
--- a/clustercontroller-apps/src/main/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscMetricWrapper.java
+++ b/clustercontroller-apps/src/main/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscMetricWrapper.java
@@ -4,15 +4,13 @@ package com.yahoo.vespa.clustercontroller.apputil.communication.http;
import com.yahoo.jdisc.Metric;
import com.yahoo.vespa.clustercontroller.utils.util.MetricReporter;
-import java.util.logging.Logger;
-
public class JDiscMetricWrapper implements MetricReporter {
private final Object lock = new Object();
private Metric m;
private static class ContextWrapper implements MetricReporter.Context {
- Metric.Context wrappedContext;
+ final Metric.Context wrappedContext;
public ContextWrapper(Metric.Context wrapped) {
this.wrappedContext = wrapped;
diff --git a/clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apps/clustercontroller/StateRestApiV2HandlerTest.java b/clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apps/clustercontroller/StateRestApiV2HandlerTest.java
index 7146d95e7ba..d6896aac179 100644
--- a/clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apps/clustercontroller/StateRestApiV2HandlerTest.java
+++ b/clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apps/clustercontroller/StateRestApiV2HandlerTest.java
@@ -17,7 +17,6 @@ public class StateRestApiV2HandlerTest {
ClusterController controller = new ClusterController();
ClusterInfoConfig config = new ClusterInfoConfig(
new ClusterInfoConfig.Builder().clusterId("cluster-id").nodeCount(1));
- ClusterInfoConfig.Builder clusterConfig = new ClusterInfoConfig.Builder();
new StateRestApiV2Handler(controller, config, StateRestApiV2Handler.testContext());
}
diff --git a/clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apps/clustercontroller/StatusHandlerTest.java b/clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apps/clustercontroller/StatusHandlerTest.java
index d4eb84677dc..4673ee39080 100644
--- a/clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apps/clustercontroller/StatusHandlerTest.java
+++ b/clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apps/clustercontroller/StatusHandlerTest.java
@@ -8,7 +8,7 @@ public class StatusHandlerTest {
@Test
void testSimple() {
ClusterController controller = new ClusterController();
- StatusHandler handler = new StatusHandler(controller, StatusHandler.testContext());
+ new StatusHandler(controller, StatusHandler.testContext());
}
}
diff --git a/clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscHttpRequestHandlerTest.java b/clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscHttpRequestHandlerTest.java
index 19a5a2a60f9..23ab03cc673 100644
--- a/clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscHttpRequestHandlerTest.java
+++ b/clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscHttpRequestHandlerTest.java
@@ -13,7 +13,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.fail;
/**
- * The handler is mostly tested through the apache tests, using it as endpoint here..
+ * The handler is mostly tested through the apache tests, using it as endpoint here.
* This test class is just to test some special cases.
*/
public class JDiscHttpRequestHandlerTest {
@@ -30,7 +30,7 @@ public class JDiscHttpRequestHandlerTest {
}
@Test
- void testInvalidMethod() throws Exception {
+ void testInvalidMethod() {
try {
HttpRequest request = new HttpRequest();
JDiscHttpRequestHandler.setOperation(request, com.yahoo.jdisc.http.HttpRequest.Method.CONNECT);
@@ -41,7 +41,7 @@ public class JDiscHttpRequestHandlerTest {
}
@Test
- void testNothingButAddCoverage() throws Exception {
+ void testNothingButAddCoverage() {
new JDiscHttpRequestHandler.EmptyCompletionHandler().failed(null);
}
}
diff --git a/clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscMetricWrapperTest.java b/clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscMetricWrapperTest.java
index a62437d1a8f..a20b4b744f2 100644
--- a/clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscMetricWrapperTest.java
+++ b/clustercontroller-apps/src/test/java/com/yahoo/vespa/clustercontroller/apputil/communication/http/JDiscMetricWrapperTest.java
@@ -7,11 +7,11 @@ import org.junit.jupiter.api.Test;
import java.util.Map;
import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
public class JDiscMetricWrapperTest {
- class MetricImpl implements Metric {
+ static class MetricImpl implements Metric {
int calls = 0;
@Override
public void set(String s, Number number, Context context) { ++calls; }
@@ -31,13 +31,13 @@ public class JDiscMetricWrapperTest {
JDiscMetricWrapper wrapper = new JDiscMetricWrapper(impl1);
wrapper.add("foo", 234, null);
wrapper.set("bar", 234, null);
- assertTrue(wrapper.createContext(null) != null);
+ assertNotNull(wrapper.createContext(null));
assertEquals(3, impl1.calls);
impl1.calls = 0;
wrapper.updateMetricImplementation(impl2);
wrapper.add("foo", 234, wrapper.createContext(null));
wrapper.set("bar", 234, wrapper.createContext(null));
- assertTrue(wrapper.createContext(null) != null);
+ assertNotNull(wrapper.createContext(null));
assertEquals(0, impl1.calls);
assertEquals(5, impl2.calls);
diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Id.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Id.java
index a0fad75c0ed..dd438eeeb16 100644
--- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Id.java
+++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Id.java
@@ -1,15 +1,14 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+package com.yahoo.vespa.clustercontroller.core.restapiv2;
+
+import com.yahoo.vdslib.state.NodeType;
+
/**
* Class representations of resources in State Rest API.
*
* Note that the toString() implementation will put out a slash separated list of the tokens,
* and thus be compatible with the link format.
*/
-
-package com.yahoo.vespa.clustercontroller.core.restapiv2;
-
-import com.yahoo.vdslib.state.NodeType;
-
public class Id {
public static class Cluster extends Id {
diff --git a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/AsyncOperationImpl.java b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/AsyncOperationImpl.java
index d4c1cf9d948..9a89e5dbc5c 100644
--- a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/AsyncOperationImpl.java
+++ b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/AsyncOperationImpl.java
@@ -13,7 +13,7 @@ public class AsyncOperationImpl<T> implements AsyncOperation<T> {
private boolean failed = false;
private T result;
private Exception failure;
- private AsyncOperationListenImpl<T> listenImpl;
+ private final AsyncOperationListenImpl<T> listenImpl;
public AsyncOperationImpl(String name) {
this(name, null);
diff --git a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/AsyncOperationListenImpl.java b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/AsyncOperationListenImpl.java
index 2964c81df5e..a2a73e87537 100644
--- a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/AsyncOperationListenImpl.java
+++ b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/AsyncOperationListenImpl.java
@@ -12,7 +12,7 @@ public class AsyncOperationListenImpl<T> {
private static final Logger log = Logger.getLogger(AsyncOperationListenImpl.class.getName());
private final Collection<AsyncCallback<T>> listeners = new HashSet<>();
private boolean listenersNotified = false;
- private AsyncOperation<T> op;
+ private final AsyncOperation<T> op;
protected AsyncOperationListenImpl(AsyncOperation<T> op) {
this.op = op;
diff --git a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/PipedAsyncOperation.java b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/PipedAsyncOperation.java
deleted file mode 100644
index 5dfad3f1e6d..00000000000
--- a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/PipedAsyncOperation.java
+++ /dev/null
@@ -1,25 +0,0 @@
-// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.vespa.clustercontroller.utils.communication.async;
-
-public abstract class PipedAsyncOperation<S, T> extends RedirectedAsyncOperation<S, T> {
-
- private T result;
-
- public PipedAsyncOperation(AsyncOperation<S> source) {
- super(source);
- setOnCompleteTask(new AsyncCallback<S>() {
- @Override
- public void done(AsyncOperation<S> op) {
- result = convertResult(op.getResult());
- }
- });
- }
-
- public abstract T convertResult(S result);
-
- @Override
- public T getResult() {
- return result;
- }
-
-}
diff --git a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/RedirectedAsyncOperation.java b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/RedirectedAsyncOperation.java
index 46415c03524..54c06c29d6e 100644
--- a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/RedirectedAsyncOperation.java
+++ b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/async/RedirectedAsyncOperation.java
@@ -8,7 +8,6 @@ public abstract class RedirectedAsyncOperation<S, T> implements AsyncOperation<T
protected final AsyncOperation<S> source;
private final AsyncOperationListenImpl<T> listenImpl;
- private AsyncCallback<S> beforeCallbackTask;
public RedirectedAsyncOperation(AsyncOperation<S> source) {
this.source = source;
@@ -19,12 +18,7 @@ public abstract class RedirectedAsyncOperation<S, T> implements AsyncOperation<T
});
}
- public RedirectedAsyncOperation<S, T> setOnCompleteTask(AsyncCallback<S> beforeTask) {
- beforeCallbackTask = beforeTask;
- return this;
- }
private void notifyDone() {
- if (beforeCallbackTask != null) beforeCallbackTask.done(source);
listenImpl.notifyListeners();
}
diff --git a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/http/HttpRequest.java b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/http/HttpRequest.java
index 68bd92f647b..29ec4463cf5 100644
--- a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/http/HttpRequest.java
+++ b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/http/HttpRequest.java
@@ -9,8 +9,8 @@ import java.util.List;
public class HttpRequest extends CertainlyCloneable<HttpRequest> {
public static class KeyValuePair {
- public String key;
- public String value;
+ public final String key;
+ public final String value;
public KeyValuePair(String k, String v) { this.key = k; this.value = v; }
@@ -56,7 +56,6 @@ public class HttpRequest extends CertainlyCloneable<HttpRequest> {
}
return defaultValue;
}
- public long getTimeoutMillis() { return timeoutMillis; }
public Object getPostContent() { return postContent; }
public HttpOp getHttpOperation() { return httpOperation; }
diff --git a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/http/writer/HttpWriter.java b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/http/writer/HttpWriter.java
index a931b2d40dd..5ac24210a6b 100644
--- a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/http/writer/HttpWriter.java
+++ b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/http/writer/HttpWriter.java
@@ -6,7 +6,8 @@ public class HttpWriter {
private final StringBuilder builder = new StringBuilder();
private String title = "Untitled page";
- enum State { HEADER, BODY, FINALIZED };
+ enum State { HEADER, BODY, FINALIZED }
+
private State state = State.HEADER;
public HttpWriter() {
diff --git a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/StateRestAPI.java b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/StateRestAPI.java
index 4861d6cdf51..a6d8007fa0e 100644
--- a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/StateRestAPI.java
+++ b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/StateRestAPI.java
@@ -1,7 +1,4 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-/**
- * Interface to implement for backends that want to have a State Rest API.
- */
package com.yahoo.vespa.clustercontroller.utils.staterestapi;
import com.yahoo.vespa.clustercontroller.utils.staterestapi.errors.StateRestApiException;
@@ -10,6 +7,9 @@ import com.yahoo.vespa.clustercontroller.utils.staterestapi.requests.UnitStateRe
import com.yahoo.vespa.clustercontroller.utils.staterestapi.response.SetResponse;
import com.yahoo.vespa.clustercontroller.utils.staterestapi.response.UnitResponse;
+/**
+ * Interface to implement for backends that want to have a State Rest API.
+ */
public interface StateRestAPI {
UnitResponse getState(UnitStateRequest request) throws StateRestApiException;
diff --git a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/errors/OperationNotSupportedForUnitException.java b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/errors/OperationNotSupportedForUnitException.java
index abc55d68bc6..ffe43878839 100644
--- a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/errors/OperationNotSupportedForUnitException.java
+++ b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/errors/OperationNotSupportedForUnitException.java
@@ -7,9 +7,7 @@ import java.util.List;
public class OperationNotSupportedForUnitException extends StateRestApiException {
private static String createMessage(List<String> path, String description) {
- return new StringBuilder()
- .append(Arrays.toString(path.toArray())).append(": ").append(description)
- .toString();
+ return Arrays.toString(path.toArray()) + ": " + description;
}
public OperationNotSupportedForUnitException(List<String> path, String description) {
diff --git a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/server/RestApiHandler.java b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/server/RestApiHandler.java
index ceec4f67e1b..3a4fe53ee67 100644
--- a/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/server/RestApiHandler.java
+++ b/clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/server/RestApiHandler.java
@@ -141,8 +141,8 @@ public class RestApiHandler implements HttpRequestHandler {
private int getRecursiveLevel(HttpRequest request) throws StateRestApiException {
String val = request.getOption("recursive", "false");
- if (val.toLowerCase().equals("false")) { return 0; }
- if (val.toLowerCase().equals("true")) { return Integer.MAX_VALUE; }
+ if (val.equalsIgnoreCase("false")) { return 0; }
+ if (val.equalsIgnoreCase("true")) { return Integer.MAX_VALUE; }
int level;
try{
level = Integer.parseInt(val);
@@ -178,7 +178,7 @@ public class RestApiHandler implements HttpRequestHandler {
this.replaceWith = repl;
}
}
- private static List<Escape> escapes = new ArrayList<>();
+ private static final List<Escape> escapes = new ArrayList<>();
static {
escapes.add(new Escape("%", "%25"));
escapes.add(new Escape(" ", "%20"));
diff --git a/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/async/AsyncTest.java b/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/async/AsyncTest.java
index 739b8d4bf15..fdb8d5922e7 100644
--- a/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/async/AsyncTest.java
+++ b/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/async/AsyncTest.java
@@ -31,13 +31,13 @@ public class AsyncTest {
op.setResult("foo");
op.register(l4);
// Listener that is unregistered is not called
- assertEquals(false, l1.called);
+ assertFalse(l1.called);
// Listener that is registered is called
- assertEquals(true, l2.called);
+ assertTrue(l2.called);
// Multiple listeners supported
- assertEquals(true, l3.called);
+ assertTrue(l3.called);
// Listener called directly when registered after result is set
- assertEquals(true, l4.called);
+ assertTrue(l4.called);
}
@Test
@@ -53,14 +53,14 @@ public class AsyncTest {
op.setResult("foo");
op.setFailure(new Exception("bar"));
assertEquals("foo", op.getResult());
- assertEquals(true, op.isSuccess());
+ assertTrue(op.isSuccess());
}
{
AsyncOperationImpl<String> op = new AsyncOperationImpl<>("test");
op.setFailure(new Exception("bar"));
op.setResult("foo");
assertNull(op.getResult());
- assertEquals(false, op.isSuccess());
+ assertFalse(op.isSuccess());
assertEquals("bar", op.getCause().getMessage());
}
}
@@ -70,7 +70,7 @@ public class AsyncTest {
AsyncOperationImpl<String> op = new AsyncOperationImpl<>("test");
op.setFailure(new Exception("bar"), "foo");
assertEquals("foo", op.getResult());
- assertEquals(false, op.isSuccess());
+ assertFalse(op.isSuccess());
assertEquals("bar", op.getCause().getMessage());
}
@@ -81,7 +81,6 @@ public class AsyncTest {
super(op);
}
}
- ;
class Listener implements AsyncCallback<String> {
int calls = 0;
@@ -119,8 +118,8 @@ public class AsyncTest {
});
assertNull(deleteRequest.getProgress());
op.setResult("123");
- assertEquals(true, deleteRequest.isDone());
- assertEquals(true, deleteRequest.isSuccess());
+ assertTrue(deleteRequest.isDone());
+ assertTrue(deleteRequest.isSuccess());
assertEquals(Integer.valueOf(123), deleteRequest.getResult());
assertEquals("desc", deleteRequest.getDescription());
assertEquals("test", deleteRequest.getName());
@@ -142,9 +141,9 @@ public class AsyncTest {
}
};
op.setFailure(new Exception("foo"));
- assertEquals(true, deleteRequest.isDone());
+ assertTrue(deleteRequest.isDone());
assertEquals("foo", deleteRequest.getCause().getMessage());
- assertEquals(false, deleteRequest.isSuccess());
+ assertFalse(deleteRequest.isSuccess());
deleteRequest.getProgress();
}
}
diff --git a/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/http/HttpRequestTest.java b/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/http/HttpRequestTest.java
index 41328494f52..7a6ef91894f 100644
--- a/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/http/HttpRequestTest.java
+++ b/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/http/HttpRequestTest.java
@@ -35,12 +35,12 @@ public class HttpRequestTest {
// - The HTTP operation type
try {
new HttpRequest().setPath("/foo").verifyComplete();
- assertTrue(false);
+ fail();
} catch (IllegalStateException e) {
}
try {
new HttpRequest().setHttpOperation(HttpRequest.HttpOp.GET).verifyComplete();
- assertTrue(false);
+ fail();
} catch (IllegalStateException e) {
}
new HttpRequest().setHttpOperation(HttpRequest.HttpOp.GET).setPath("/bar").verifyComplete();
@@ -126,7 +126,7 @@ public class HttpRequestTest {
@Test
void testNothingButGetCoverage() {
- assertEquals(false, new HttpRequest().equals(new Object()));
+ assertNotEquals(new HttpRequest(), new Object());
new HttpRequest().getHeaders();
new HttpRequest().setUrlOptions(new HttpRequest().getUrlOptions());
}
diff --git a/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/http/HttpResultTest.java b/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/http/HttpResultTest.java
index 3a08d735a4e..f4ef99ba40d 100644
--- a/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/http/HttpResultTest.java
+++ b/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/http/HttpResultTest.java
@@ -4,15 +4,17 @@ package com.yahoo.vespa.clustercontroller.utils.communication.http;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
public class HttpResultTest {
@Test
void testSuccess() {
- assertEquals(false, new HttpResult().setHttpCode(199, "foo").isSuccess());
- assertEquals(true, new HttpResult().setHttpCode(200, "foo").isSuccess());
- assertEquals(true, new HttpResult().setHttpCode(299, "foo").isSuccess());
- assertEquals(false, new HttpResult().setHttpCode(300, "foo").isSuccess());
+ assertFalse(new HttpResult().setHttpCode(199, "foo").isSuccess());
+ assertTrue(new HttpResult().setHttpCode(200, "foo").isSuccess());
+ assertTrue(new HttpResult().setHttpCode(299, "foo").isSuccess());
+ assertFalse(new HttpResult().setHttpCode(300, "foo").isSuccess());
}
@Test
diff --git a/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/http/writer/HttpWriterTest.java b/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/http/writer/HttpWriterTest.java
index 52b632c6eb8..68fbab28b6b 100644
--- a/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/http/writer/HttpWriterTest.java
+++ b/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/communication/http/writer/HttpWriterTest.java
@@ -4,18 +4,18 @@ package com.yahoo.vespa.clustercontroller.utils.communication.http.writer;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
public class HttpWriterTest {
- private static String defaultTitle = "My Title";
- private static String defaultHeader = "<html>\n"
+ private static final String defaultTitle = "My Title";
+ private static final String defaultHeader = "<html>\n"
+ " <head>\n"
+ " <title>My Title</title>\n"
+ " </head>\n"
+ " <body>\n"
+ " <h1>My Title</h1>\n";
- private static String defaultFooter = " </body>\n"
+ private static final String defaultFooter = " </body>\n"
+ "</html>\n";
@Test
@@ -60,12 +60,12 @@ public class HttpWriterTest {
HttpWriter writer = new HttpWriter().addTitle(defaultTitle);
writer.toString();
writer.write("foo");
- assertTrue(false);
+ fail();
} catch (IllegalStateException e) {
}
try {
new HttpWriter().write("foo").addTitle("bar");
- assertTrue(false);
+ fail();
} catch (IllegalStateException e) {
}
}
diff --git a/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/DummyBackend.java b/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/DummyBackend.java
index b1ea3b99ac3..98b39dd0480 100644
--- a/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/DummyBackend.java
+++ b/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/DummyBackend.java
@@ -6,26 +6,26 @@ import java.util.Map;
public class DummyBackend {
public static class Cluster {
- public String id;
- public Map<String, Node> nodes = new LinkedHashMap<>();
+ public final String id;
+ public final Map<String, Node> nodes = new LinkedHashMap<>();
public Cluster(String id) { this.id = id; }
public Cluster addNode(Node n) { nodes.put(n.id, n); n.clusterId = id; return this; }
}
public static class Node {
public String clusterId;
- public String id;
+ public final String id;
public int docCount = 0;
public String state = "up";
public String reason = "";
- public String group = "mygroup";
+ public final String group = "mygroup";
public Node(String id) { this.id = id; }
public Node setDocCount(int count) { docCount = count; return this; }
public Node setState(String state) { this.state = state; return this; }
}
- private Map<String, Cluster> clusters = new LinkedHashMap<>();
+ private final Map<String, Cluster> clusters = new LinkedHashMap<>();
public Map<String, Cluster> getClusters() { return clusters; }
diff --git a/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/StateRestAPITest.java b/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/StateRestAPITest.java
index 29e33b7906a..4e70e51505a 100644
--- a/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/StateRestAPITest.java
+++ b/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/staterestapi/StateRestAPITest.java
@@ -26,6 +26,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertNull;
import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
public class StateRestAPITest {
@@ -87,7 +88,7 @@ public class StateRestAPITest {
}
@Test
- void testTopLevelList() throws Exception {
+ void testTopLevelList() {
setupDummyStateApi();
HttpResult result = execute(new HttpRequest().setPath("/cluster/v2"));
assertEquals(200, result.getHttpReturnCode(), result.toString(true));
@@ -107,7 +108,7 @@ public class StateRestAPITest {
}
@Test
- void testClusterState() throws Exception {
+ void testClusterState() {
setupDummyStateApi();
HttpResult result = execute(new HttpRequest().setPath("/cluster/v2/foo"));
assertEquals(200, result.getHttpReturnCode(), result.toString(true));
@@ -127,7 +128,7 @@ public class StateRestAPITest {
}
@Test
- void testNodeState() throws Exception {
+ void testNodeState() {
setupDummyStateApi();
HttpResult result = execute(new HttpRequest().setPath("/cluster/v2/foo/3"));
assertEquals(200, result.getHttpReturnCode(), result.toString(true));
@@ -151,7 +152,7 @@ public class StateRestAPITest {
}
@Test
- void testRecursiveMode() throws Exception {
+ void testRecursiveMode() {
setupDummyStateApi();
{
JsonNode json = executeOkJsonRequest(
@@ -291,7 +292,7 @@ public class StateRestAPITest {
}
}
- private String retireAndExpectHttp200Response(Optional<String> responseWait) throws Exception {
+ private String retireAndExpectHttp200Response(Optional<String> responseWait) {
ObjectNode json = new ObjectNode(mapper.getNodeFactory());
json.putObject("state").putObject("current").put("state", "retired").put("reason", "No reason");
json.put("condition", "FORCE");
@@ -305,7 +306,7 @@ public class StateRestAPITest {
}
@Test
- void testSetNodeState() throws Exception {
+ void testSetNodeState() {
setupDummyStateApi();
{
ObjectNode json = new ObjectNode(mapper.getNodeFactory());
@@ -362,7 +363,7 @@ public class StateRestAPITest {
}
@Test
- void set_node_state_response_wait_type_is_propagated_to_handler() throws Exception {
+ void set_node_state_response_wait_type_is_propagated_to_handler() {
setupDummyStateApi();
{
String result = retireAndExpectHttp200Response(Optional.of("wait-until-cluster-acked"));
@@ -385,7 +386,7 @@ public class StateRestAPITest {
}
@Test
- void set_node_state_response_wait_type_is_cluster_acked_by_default() throws Exception {
+ void set_node_state_response_wait_type_is_cluster_acked_by_default() {
setupDummyStateApi();
String result = retireAndExpectHttp200Response(Optional.empty());
assertEquals("""
@@ -397,7 +398,7 @@ public class StateRestAPITest {
}
@Test
- void testMissingUnits() throws Exception {
+ void testMissingUnits() {
setupDummyStateApi();
{
HttpResult result = execute(new HttpRequest().setPath("/cluster/v2/unknown"));
@@ -416,7 +417,7 @@ public class StateRestAPITest {
}
@Test
- void testUnknownMaster() throws Exception {
+ void testUnknownMaster() {
setupDummyStateApi();
stateApi.induceException(new UnknownMasterException());
HttpResult result = execute(new HttpRequest().setPath("/cluster/v2"));
@@ -429,7 +430,7 @@ public class StateRestAPITest {
}
@Test
- void testOtherMaster() throws Exception {
+ void testOtherMaster() {
setupDummyStateApi();
{
stateApi.induceException(new OtherMasterException("example.com", 80));
@@ -454,7 +455,7 @@ public class StateRestAPITest {
}
@Test
- void testRuntimeException() throws Exception {
+ void testRuntimeException() {
setupDummyStateApi();
stateApi.induceException(new RuntimeException("Moahaha"));
HttpResult result = execute(new HttpRequest().setPath("/cluster/v2"));
@@ -466,7 +467,7 @@ public class StateRestAPITest {
}
@Test
- void testClientFailures() throws Exception {
+ void testClientFailures() {
setupDummyStateApi();
{
stateApi.induceException(new InvalidContentException("Foo bar"));
@@ -498,7 +499,7 @@ public class StateRestAPITest {
}
@Test
- void testInternalFailure() throws Exception {
+ void testInternalFailure() {
setupDummyStateApi();
{
stateApi.induceException(new InternalFailure("Foo"));
@@ -512,7 +513,7 @@ public class StateRestAPITest {
}
@Test
- void testInvalidRecursiveValues() throws Exception {
+ void testInvalidRecursiveValues() {
setupDummyStateApi();
{
HttpResult result = execute(new HttpRequest().setPath("/cluster/v2").addUrlOption("recursive", "-5"));
@@ -533,7 +534,7 @@ public class StateRestAPITest {
}
@Test
- void testInvalidJsonInSetStateRequest() throws Exception {
+ void testInvalidJsonInSetStateRequest() {
setupDummyStateApi();
{
ObjectNode json = new ObjectNode(mapper.getNodeFactory());
@@ -596,7 +597,7 @@ public class StateRestAPITest {
}
}
- private String retireAndExpectHttp400Response(String condition, String responseWait) throws Exception {
+ private String retireAndExpectHttp400Response(String condition, String responseWait) {
ObjectNode json = new ObjectNode(mapper.getNodeFactory());
json.putObject("state").putObject("current").put("state", "retired").put("reason", "No reason");
json.put("condition", condition);
@@ -610,7 +611,7 @@ public class StateRestAPITest {
}
@Test
- void testInvalidPathPrefix() throws Exception {
+ void testInvalidPathPrefix() {
DummyBackend backend = new DummyBackend();
stateApi = new DummyStateApi(backend);
populateDummyBackend(backend);
@@ -618,13 +619,13 @@ public class StateRestAPITest {
RestApiHandler handler = new RestApiHandler(stateApi);
try {
handler.setDefaultPathPrefix("cluster/v2");
- assertTrue(false);
+ fail();
} catch (IllegalArgumentException e) {
}
}
@Test
- void deadline_exceeded_exception_returns_http_504_error() throws Exception {
+ void deadline_exceeded_exception_returns_http_504_error() {
setupDummyStateApi();
stateApi.induceException(new DeadlineExceededException("argh!"));
HttpResult result = execute(new HttpRequest().setPath("/cluster/v2"));
diff --git a/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/test/TestTransport.java b/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/test/TestTransport.java
index 7a334ae3e34..f964ef8096f 100644
--- a/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/test/TestTransport.java
+++ b/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/test/TestTransport.java
@@ -25,8 +25,8 @@ public class TestTransport {
private static final Logger log = Logger.getLogger(TestTransport.class.getName());
private static class Handler {
- HttpRequestHandler handler;
- String pathPrefix;
+ final HttpRequestHandler handler;
+ final String pathPrefix;
Handler(HttpRequestHandler h, String prefix) { this.handler = h; this.pathPrefix = prefix; }
}
private static class Socket {
@@ -39,8 +39,7 @@ public class TestTransport {
}
@Override
public boolean equals(Object o) {
- if (!(o instanceof Socket)) return false;
- Socket other = (Socket) o;
+ if (!(o instanceof Socket other)) return false;
return (hostname.equals(other.hostname) && port == other.port);
}
@Override
@@ -171,17 +170,4 @@ public class TestTransport {
}
}
- public void removeServer(HttpRequestHandler server, String hostname, int port, String pathPrefix) {
- Socket socket = new Socket(hostname, port);
- synchronized (this) {
- List<Handler> shandlers = handlers.get(socket);
- if (shandlers == null) return;
- for (Handler h : shandlers) {
- if (h.handler == server && h.pathPrefix.equals(pathPrefix)) {
- shandlers.remove(h);
- }
- }
- }
- }
-
}
diff --git a/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/util/MetricReporterTest.java b/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/util/MetricReporterTest.java
index 33164aaf53e..6805b1b014e 100644
--- a/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/util/MetricReporterTest.java
+++ b/clustercontroller-utils/src/test/java/com/yahoo/vespa/clustercontroller/utils/util/MetricReporterTest.java
@@ -11,7 +11,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
public class MetricReporterTest {
static class MetricReporterMock implements MetricReporter {
- StringBuilder sb = new StringBuilder();
+ final StringBuilder sb = new StringBuilder();
@Override
public void set(String s, Number number, Context context) {