From fbaee267c45005bfe4fdf5f037b38957c8142d29 Mon Sep 17 00:00:00 2001 From: Harald Musum Date: Fri, 3 Dec 2021 09:21:52 +0100 Subject: MInor cleanup of ConfigSource in subscriptions --- .../yahoo/config/subscription/impl/ConfigSubscription.java | 2 +- .../config/subscription/impl/GenericConfigSubscriber.java | 13 ++++++------- .../subscription/impl/GenericJRTConfigSubscription.java | 11 +++++++---- .../config/subscription/impl/JRTConfigSubscription.java | 11 ++++------- .../vespa/config/protocol/JRTConfigRequestFactoryTest.java | 6 +++--- .../yahoo/vespa/config/protocol/JRTConfigRequestV3Test.java | 7 +++++-- 6 files changed, 26 insertions(+), 24 deletions(-) (limited to 'config') diff --git a/config/src/main/java/com/yahoo/config/subscription/impl/ConfigSubscription.java b/config/src/main/java/com/yahoo/config/subscription/impl/ConfigSubscription.java index fd8398afdfc..780556e93fa 100644 --- a/config/src/main/java/com/yahoo/config/subscription/impl/ConfigSubscription.java +++ b/config/src/main/java/com/yahoo/config/subscription/impl/ConfigSubscription.java @@ -122,7 +122,7 @@ public abstract class ConfigSubscription { if (source instanceof DirSource || configId.startsWith("dir:")) return getDirFileSub(key, source); if (source instanceof JarSource || configId.startsWith("jar:")) return getJarSub(key, source); if (source instanceof ConfigSet) return new ConfigSetSubscription<>(key, source); - if (source instanceof ConfigSourceSet) return new JRTConfigSubscription<>(key, subscriber, source, timingValues); + if (source instanceof ConfigSourceSet) return new JRTConfigSubscription<>(key, subscriber, (ConfigSourceSet) source, timingValues); throw new IllegalArgumentException("Unknown source type: " + source); } diff --git a/config/src/main/java/com/yahoo/config/subscription/impl/GenericConfigSubscriber.java b/config/src/main/java/com/yahoo/config/subscription/impl/GenericConfigSubscriber.java index 7fb2c59d832..6dc18137639 100644 --- a/config/src/main/java/com/yahoo/config/subscription/impl/GenericConfigSubscriber.java +++ b/config/src/main/java/com/yahoo/config/subscription/impl/GenericConfigSubscriber.java @@ -1,20 +1,19 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.subscription.impl; -import java.util.List; -import java.util.Map; - import com.yahoo.config.ConfigInstance; import com.yahoo.config.subscription.ConfigHandle; -import com.yahoo.config.subscription.ConfigSource; import com.yahoo.config.subscription.ConfigSourceSet; import com.yahoo.config.subscription.ConfigSubscriber; import com.yahoo.vespa.config.ConfigKey; import com.yahoo.vespa.config.RawConfig; import com.yahoo.vespa.config.TimingValues; +import java.util.List; +import java.util.Map; + /** - * A subscriber that can subscribe without the class. Used by configproxy. + * A subscriber that can subscribe without the class. Used by config proxy. * * @author Vegard Havdal */ @@ -22,7 +21,7 @@ public class GenericConfigSubscriber extends ConfigSubscriber { /** * Constructs a new subscriber using the given pool of requesters (JRTConfigRequester holds 1 connection which in - * turn is subject to failover across the elems in the source set.) + * turn is subject to failover across the elements in the source set.) * The behaviour is undefined if the map key is different from the source set the requester was built with. * See also {@link JRTConfigRequester#JRTConfigRequester(com.yahoo.vespa.config.ConnectionPool, com.yahoo.vespa.config.TimingValues)} * @@ -41,7 +40,7 @@ public class GenericConfigSubscriber extends ConfigSubscriber { * @param timingValues {@link TimingValues} * @return generic handle */ - public GenericConfigHandle subscribe(ConfigKey key, List defContent, ConfigSource source, TimingValues timingValues) { + public GenericConfigHandle subscribe(ConfigKey key, List defContent, ConfigSourceSet source, TimingValues timingValues) { checkStateBeforeSubscribe(); GenericJRTConfigSubscription sub = new GenericJRTConfigSubscription(key, defContent, this, source, timingValues); GenericConfigHandle handle = new GenericConfigHandle(sub); diff --git a/config/src/main/java/com/yahoo/config/subscription/impl/GenericJRTConfigSubscription.java b/config/src/main/java/com/yahoo/config/subscription/impl/GenericJRTConfigSubscription.java index 354489ea946..737ca64b075 100644 --- a/config/src/main/java/com/yahoo/config/subscription/impl/GenericJRTConfigSubscription.java +++ b/config/src/main/java/com/yahoo/config/subscription/impl/GenericJRTConfigSubscription.java @@ -1,7 +1,7 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.subscription.impl; -import com.yahoo.config.subscription.ConfigSource; +import com.yahoo.config.subscription.ConfigSourceSet; import com.yahoo.config.subscription.ConfigSubscriber; import com.yahoo.vespa.config.ConfigKey; import com.yahoo.vespa.config.RawConfig; @@ -23,9 +23,11 @@ public class GenericJRTConfigSubscription extends JRTConfigSubscription defContent; - public GenericJRTConfigSubscription(ConfigKey key, List defContent, ConfigSubscriber subscriber, - ConfigSource source, TimingValues timingValues) - { + public GenericJRTConfigSubscription(ConfigKey key, + List defContent, + ConfigSubscriber subscriber, + ConfigSourceSet source, + TimingValues timingValues) { super(key, subscriber, source, timingValues); this.defContent = defContent; } @@ -84,4 +86,5 @@ public class GenericJRTConfigSubscription extends JRTConfigSubscription extends ConfigSubsc * but has not yet been handled. */ private BlockingQueue reqQueue = new LinkedBlockingQueue<>(); - private ConfigSourceSet sources; + private final ConfigSourceSet sources; - public JRTConfigSubscription(ConfigKey key, ConfigSubscriber subscriber, ConfigSource source, TimingValues timingValues) { + public JRTConfigSubscription(ConfigKey key, ConfigSubscriber subscriber, ConfigSourceSet source, TimingValues timingValues) { super(key); this.timingValues = timingValues; this.subscriber = subscriber; - if (source instanceof ConfigSourceSet) { - this.sources = (ConfigSourceSet) source; - } + this.sources = source; } @Override diff --git a/config/src/test/java/com/yahoo/vespa/config/protocol/JRTConfigRequestFactoryTest.java b/config/src/test/java/com/yahoo/vespa/config/protocol/JRTConfigRequestFactoryTest.java index 76af5610bc0..4f7b1df5a43 100644 --- a/config/src/test/java/com/yahoo/vespa/config/protocol/JRTConfigRequestFactoryTest.java +++ b/config/src/test/java/com/yahoo/vespa/config/protocol/JRTConfigRequestFactoryTest.java @@ -1,10 +1,10 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.config.protocol; -import com.yahoo.foo.FunctionTestConfig; -import com.yahoo.config.subscription.ConfigSet; +import com.yahoo.config.subscription.ConfigSourceSet; import com.yahoo.config.subscription.ConfigSubscriber; import com.yahoo.config.subscription.impl.JRTConfigSubscription; +import com.yahoo.foo.FunctionTestConfig; import com.yahoo.vespa.config.ConfigKey; import com.yahoo.vespa.config.RawConfig; import com.yahoo.vespa.config.TimingValues; @@ -46,7 +46,7 @@ public class JRTConfigRequestFactoryTest { Class clazz = FunctionTestConfig.class; final String configId = "foo"; JRTConfigSubscription sub = new JRTConfigSubscription<>( - new ConfigKey<>(clazz, configId), subscriber, new ConfigSet(), new TimingValues()); + new ConfigKey<>(clazz, configId), subscriber, new ConfigSourceSet(), new TimingValues()); JRTClientConfigRequest request = JRTConfigRequestFactory.createFromSub(sub); assertThat(request.getVespaVersion().get(), is(defaultVespaVersion)); diff --git a/config/src/test/java/com/yahoo/vespa/config/protocol/JRTConfigRequestV3Test.java b/config/src/test/java/com/yahoo/vespa/config/protocol/JRTConfigRequestV3Test.java index 5a29e494d81..5f2a5c73fa5 100644 --- a/config/src/test/java/com/yahoo/vespa/config/protocol/JRTConfigRequestV3Test.java +++ b/config/src/test/java/com/yahoo/vespa/config/protocol/JRTConfigRequestV3Test.java @@ -1,7 +1,6 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.config.protocol; -import com.yahoo.config.subscription.ConfigSet; import com.yahoo.config.subscription.ConfigSourceSet; import com.yahoo.config.subscription.ConfigSubscriber; import com.yahoo.config.subscription.impl.GenericConfigSubscriber; @@ -192,7 +191,11 @@ public class JRTConfigRequestV3Test { @Test public void created_from_subscription() { ConfigSubscriber subscriber = new ConfigSubscriber(); - JRTConfigSubscription sub = new JRTConfigSubscription<>(new ConfigKey<>(SimpletypesConfig.class, configId), subscriber, new ConfigSet(), new TimingValues()); + JRTConfigSubscription sub = + new JRTConfigSubscription<>(new ConfigKey<>(SimpletypesConfig.class, configId), + subscriber, + new ConfigSourceSet(), + new TimingValues()); JRTClientConfigRequest request = createReq(sub, Trace.createNew(9)); assertThat(request.getConfigKey().getName(), is(SimpletypesConfig.CONFIG_DEF_NAME)); JRTServerConfigRequest serverRequest = createReq(request.getRequest()); -- cgit v1.2.3