summaryrefslogtreecommitdiffstats
path: root/container-core/src/main/java/com/yahoo/container
diff options
context:
space:
mode:
authorgjoranv <gv@verizonmedia.com>2021-10-08 19:50:33 +0200
committergjoranv <gv@verizonmedia.com>2021-10-08 19:50:33 +0200
commitbe5fc1c7a88efc0aaad2f945acaa79a1f4206b54 (patch)
treef64239c2b2936e2637a5e52f336da79553eb7fff /container-core/src/main/java/com/yahoo/container
parentb3733a0d0b08377601edee806459cb9eec1024d0 (diff)
Simplify by taking a SubscriberFactory instead of a Function.
Diffstat (limited to 'container-core/src/main/java/com/yahoo/container')
-rw-r--r--container-core/src/main/java/com/yahoo/container/di/ConfigRetriever.java14
-rw-r--r--container-core/src/main/java/com/yahoo/container/di/Container.java2
2 files changed, 8 insertions, 8 deletions
diff --git a/container-core/src/main/java/com/yahoo/container/di/ConfigRetriever.java b/container-core/src/main/java/com/yahoo/container/di/ConfigRetriever.java
index 200b963bcad..88167c73198 100644
--- a/container-core/src/main/java/com/yahoo/container/di/ConfigRetriever.java
+++ b/container-core/src/main/java/com/yahoo/container/di/ConfigRetriever.java
@@ -5,6 +5,7 @@ import com.google.common.collect.Sets;
import com.yahoo.config.ConfigInstance;
import com.yahoo.container.di.componentgraph.core.Keys;
import com.yahoo.container.di.config.Subscriber;
+import com.yahoo.container.di.config.SubscriberFactory;
import com.yahoo.vespa.config.ConfigKey;
import java.util.Collections;
@@ -31,18 +32,17 @@ public final class ConfigRetriever {
private Set<ConfigKey<? extends ConfigInstance>> componentSubscriberKeys;
private final Subscriber bootstrapSubscriber;
private Subscriber componentSubscriber;
- private final Function<Set<ConfigKey<? extends ConfigInstance>>, Subscriber> subscribe;
+ private final SubscriberFactory subscriberFactory;
- public ConfigRetriever(Set<ConfigKey<? extends ConfigInstance>> bootstrapKeys,
- Function<Set<ConfigKey<? extends ConfigInstance>>, Subscriber> subscribe) {
+ public ConfigRetriever(Set<ConfigKey<? extends ConfigInstance>> bootstrapKeys, SubscriberFactory subscriberFactory) {
this.bootstrapKeys = bootstrapKeys;
this.componentSubscriberKeys = new HashSet<>();
- this.subscribe = subscribe;
+ this.subscriberFactory = subscriberFactory;
if (bootstrapKeys.isEmpty()) {
throw new IllegalArgumentException("Bootstrap key set is empty");
}
- this.bootstrapSubscriber = subscribe.apply(bootstrapKeys);
- this.componentSubscriber = subscribe.apply(componentSubscriberKeys);
+ this.bootstrapSubscriber = this.subscriberFactory.getSubscriber(bootstrapKeys);
+ this.componentSubscriber = this.subscriberFactory.getSubscriber(componentSubscriberKeys);
}
public ConfigSnapshot getConfigs(Set<ConfigKey<? extends ConfigInstance>> componentConfigKeys,
@@ -133,7 +133,7 @@ public final class ConfigRetriever {
componentSubscriberKeys = keys;
try {
log.log(FINE, () -> "Setting up new component subscriber for keys: " + keys);
- componentSubscriber = subscribe.apply(keys);
+ componentSubscriber = subscriberFactory.getSubscriber(keys);
} catch (Throwable e) {
log.log(Level.WARNING, "Failed setting up subscriptions for component configs: " + e.getMessage());
log.log(Level.WARNING, "Config keys: " + keys);
diff --git a/container-core/src/main/java/com/yahoo/container/di/Container.java b/container-core/src/main/java/com/yahoo/container/di/Container.java
index 626f97dd25c..aaab1a11712 100644
--- a/container-core/src/main/java/com/yahoo/container/di/Container.java
+++ b/container-core/src/main/java/com/yahoo/container/di/Container.java
@@ -62,7 +62,7 @@ public class Container {
platformBundlesConfigKey = new ConfigKey<>(PlatformBundlesConfig.class, configId);
componentsConfigKey = new ConfigKey<>(ComponentsConfig.class, configId);
var bootstrapKeys = Set.of(applicationBundlesConfigKey, platformBundlesConfigKey, componentsConfigKey);
- this.configurer = new ConfigRetriever(bootstrapKeys, subscriberFactory::getSubscriber);
+ this.configurer = new ConfigRetriever(bootstrapKeys, subscriberFactory);
}
public Container(SubscriberFactory subscriberFactory, String configId, ComponentDeconstructor componentDeconstructor) {