From 739b75485fde7e5595d2d286b25d0e9c751cb982 Mon Sep 17 00:00:00 2001 From: Harald Musum Date: Fri, 21 Feb 2020 14:37:31 +0100 Subject: Add delayedResponses() to interface --- .../java/com/yahoo/vespa/config/proxy/ConfigProxyRpcServer.java | 6 +++--- .../main/java/com/yahoo/vespa/config/proxy/ConfigSourceClient.java | 2 ++ .../java/com/yahoo/vespa/config/proxy/MemoryCacheConfigClient.java | 6 ++++++ .../src/main/java/com/yahoo/vespa/config/proxy/ProxyServer.java | 4 ++++ .../java/com/yahoo/vespa/config/proxy/RpcConfigSourceClient.java | 5 +++++ .../java/com/yahoo/vespa/config/proxy/MockConfigSourceClient.java | 7 +++++-- .../com/yahoo/vespa/config/proxy/RpcConfigSourceClientTest.java | 6 ++---- 7 files changed, 27 insertions(+), 9 deletions(-) (limited to 'config-proxy') diff --git a/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/ConfigProxyRpcServer.java b/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/ConfigProxyRpcServer.java index 9d33824e0be..b73cf89d1b4 100644 --- a/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/ConfigProxyRpcServer.java +++ b/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/ConfigProxyRpcServer.java @@ -162,9 +162,9 @@ public class ConfigProxyRpcServer implements Runnable, TargetWatcher, RpcServer dispatchRpcRequest(req, () -> { StringBuilder sb = new StringBuilder(); sb.append("\nDelayed responses queue size: "); - sb.append(proxyServer.delayedResponses.size()); + sb.append(proxyServer.delayedResponses().size()); sb.append("\nContents: "); - for (DelayedResponse delayed : proxyServer.delayedResponses.responses()) { + for (DelayedResponse delayed : proxyServer.delayedResponses().responses()) { sb.append(delayed.getRequest().toString()).append("\n"); } @@ -357,7 +357,7 @@ public class ConfigProxyRpcServer implements Runnable, TargetWatcher, RpcServer @Override public void notifyTargetInvalid(Target target) { log.log(LogLevel.DEBUG, () -> "Target invalid " + target); - for (Iterator it = proxyServer.delayedResponses.responses().iterator(); it.hasNext(); ) { + for (Iterator it = proxyServer.delayedResponses().responses().iterator(); it.hasNext(); ) { DelayedResponse delayed = it.next(); JRTServerConfigRequest request = delayed.getRequest(); if (request.getRequest().target().equals(target)) { diff --git a/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/ConfigSourceClient.java b/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/ConfigSourceClient.java index 2f8a1b463e3..9fb78e7e812 100644 --- a/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/ConfigSourceClient.java +++ b/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/ConfigSourceClient.java @@ -26,4 +26,6 @@ interface ConfigSourceClient { void updateSubscribers(RawConfig config); + DelayedResponses delayedResponses(); + } diff --git a/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/MemoryCacheConfigClient.java b/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/MemoryCacheConfigClient.java index f9f5c475723..51446882025 100644 --- a/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/MemoryCacheConfigClient.java +++ b/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/MemoryCacheConfigClient.java @@ -18,6 +18,7 @@ class MemoryCacheConfigClient implements ConfigSourceClient { private final static Logger log = Logger.getLogger(MemoryCacheConfigClient.class.getName()); private final MemoryCache cache; + private final DelayedResponses delayedResponses = new DelayedResponses(); MemoryCacheConfigClient(MemoryCache cache) { this.cache = cache; @@ -61,4 +62,9 @@ class MemoryCacheConfigClient implements ConfigSourceClient { @Override public void updateSubscribers(RawConfig config) {} + @Override + public DelayedResponses delayedResponses() { + return delayedResponses; + } + } diff --git a/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/ProxyServer.java b/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/ProxyServer.java index fc1c7f62048..545b962f6ff 100644 --- a/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/ProxyServer.java +++ b/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/ProxyServer.java @@ -197,4 +197,8 @@ public class ProxyServer implements Runnable { configClient = createRpcClient(rpcServer, configSource, memoryCache); } + DelayedResponses delayedResponses() { + return configClient.delayedResponses(); + } + } diff --git a/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/RpcConfigSourceClient.java b/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/RpcConfigSourceClient.java index 94d491b964d..2a33e8c6928 100644 --- a/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/RpcConfigSourceClient.java +++ b/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/RpcConfigSourceClient.java @@ -245,4 +245,9 @@ class RpcConfigSourceClient implements ConfigSourceClient { log.log(LogLevel.DEBUG, () -> "Finished updating config for " + config.getKey() + "," + config.getGeneration()); } + @Override + public DelayedResponses delayedResponses() { + return delayedResponses; + } + } diff --git a/config-proxy/src/test/java/com/yahoo/vespa/config/proxy/MockConfigSourceClient.java b/config-proxy/src/test/java/com/yahoo/vespa/config/proxy/MockConfigSourceClient.java index 963c922d5b5..06e55eef4fa 100644 --- a/config-proxy/src/test/java/com/yahoo/vespa/config/proxy/MockConfigSourceClient.java +++ b/config-proxy/src/test/java/com/yahoo/vespa/config/proxy/MockConfigSourceClient.java @@ -16,6 +16,7 @@ import java.util.List; public class MockConfigSourceClient implements ConfigSourceClient{ private final MockConfigSource configSource; private final MemoryCache memoryCache; + private final DelayedResponses delayedResponses = new DelayedResponses(); MockConfigSourceClient(MockConfigSource configSource, MemoryCache memoryCache) { this.configSource = configSource; @@ -53,7 +54,9 @@ public class MockConfigSourceClient implements ConfigSourceClient{ } @Override - public void updateSubscribers(RawConfig config) { + public void updateSubscribers(RawConfig config) { } + + @Override + public DelayedResponses delayedResponses() { return delayedResponses; } - } } diff --git a/config-proxy/src/test/java/com/yahoo/vespa/config/proxy/RpcConfigSourceClientTest.java b/config-proxy/src/test/java/com/yahoo/vespa/config/proxy/RpcConfigSourceClientTest.java index f3e79f8118d..8510b23bbd2 100644 --- a/config-proxy/src/test/java/com/yahoo/vespa/config/proxy/RpcConfigSourceClientTest.java +++ b/config-proxy/src/test/java/com/yahoo/vespa/config/proxy/RpcConfigSourceClientTest.java @@ -18,7 +18,6 @@ import static org.junit.Assert.assertEquals; public class RpcConfigSourceClientTest { private MockRpcServer rpcServer; - private DelayedResponses delayedResponses; private RpcConfigSourceClient rpcConfigSourceClient; @Rule @@ -28,8 +27,7 @@ public class RpcConfigSourceClientTest { @Before public void setup() { rpcServer = new MockRpcServer(); - delayedResponses = new DelayedResponses(); - rpcConfigSourceClient = new RpcConfigSourceClient(rpcServer, new MockConfigSource(), new MemoryCache(), delayedResponses); + rpcConfigSourceClient = new RpcConfigSourceClient(rpcServer, new MockConfigSource(), new MemoryCache()); } @Test @@ -96,7 +94,7 @@ public class RpcConfigSourceClientTest { } private void simulateClientRequestingConfig(RawConfig config) { - delayedResponses.add(new DelayedResponse(JRTServerConfigRequestV3.createFromRequest(JRTConfigRequestFactory.createFromRaw(config, -10L).getRequest()))); + rpcConfigSourceClient.delayedResponses().add(new DelayedResponse(JRTServerConfigRequestV3.createFromRequest(JRTConfigRequestFactory.createFromRaw(config, -10L).getRequest()))); } private void configUpdatedSendResponse(RawConfig config) { -- cgit v1.2.3