diff options
author | Jon Bratseth <bratseth@oath.com> | 2018-12-01 12:39:16 -0800 |
---|---|---|
committer | Jon Bratseth <bratseth@oath.com> | 2018-12-01 12:39:16 -0800 |
commit | d0ca691d21ea65254d4476172e1ecef5f0b43d24 (patch) | |
tree | 59d4fdbdd785a85d52786c68c540aa9c4305f72b | |
parent | 872994569344340f13519c92324bf177fc666ac9 (diff) |
Don't use config injection
3 files changed, 20 insertions, 27 deletions
diff --git a/container-disc/src/main/java/com/yahoo/container/jdisc/ConfiguredApplication.java b/container-disc/src/main/java/com/yahoo/container/jdisc/ConfiguredApplication.java index f16fd0ed2a3..8ab39ca8166 100644 --- a/container-disc/src/main/java/com/yahoo/container/jdisc/ConfiguredApplication.java +++ b/container-disc/src/main/java/com/yahoo/container/jdisc/ConfiguredApplication.java @@ -79,7 +79,6 @@ public final class ConfiguredApplication implements Application { private final ContainerDiscApplication applicationWithLegacySetup; private final OsgiFramework osgiFramework; private final com.yahoo.jdisc.Timer timerSingleton; - private final Register slobrokRegistrator; //TODO: FilterChainRepository should instead always be set up in the model. private final FilterChainRepository defaultFilterChainRepository = @@ -95,6 +94,7 @@ public final class ConfiguredApplication implements Application { private Thread reconfigurerThread; private Thread portWatcher; private QrConfig qrConfig; + private Register slobrokRegistrator = null; static { LogSetup.initVespaLogging("Container"); @@ -115,9 +115,7 @@ public final class ConfiguredApplication implements Application { public ConfiguredApplication(ContainerActivator activator, OsgiFramework osgiFramework, com.yahoo.jdisc.Timer timer, - SubscriberFactory subscriberFactory, - SlobroksConfig slobroksConfig, - QrConfig qrConfig) throws ListenFailedException { + SubscriberFactory subscriberFactory) throws ListenFailedException { this.activator = activator; this.osgiFramework = osgiFramework; this.timerSingleton = timer; @@ -127,25 +125,14 @@ public final class ConfiguredApplication implements Application { Container.get().setOsgi(new OsgiImpl(osgiFramework)); applicationWithLegacySetup = new ContainerDiscApplication(configId); - - slobrokRegistrator = registerInSlobrok(slobroksConfig, qrConfig); - } - - /** The container has no rpc methods, but we still need to register it in Slobrok to enable orchestration */ - private Register registerInSlobrok(SlobroksConfig slobrokConfig, QrConfig qrConfig) { - SlobrokList slobrokList = new SlobrokList(); - slobrokList.setup(slobrokConfig.slobrok().stream().map(SlobroksConfig.Slobrok::connectionspec).toArray(String[]::new)); - Spec mySpec = new Spec(HostName.getLocalhost(), qrConfig.rpc().port()); - Register slobrokRegistrator = new Register(new Supervisor(new Transport()), slobrokList, mySpec); - slobrokRegistrator.registerName(qrConfig.rpc().slobrokId()); - log.log(LogLevel.INFO, - "Registered name '" + qrConfig.rpc().slobrokId() + "' at " + mySpec + " with: " + slobrokList); - return slobrokRegistrator; } @Override public void start() { qrConfig = getConfig(QrConfig.class); + SlobroksConfig slobroksConfig = getConfig(SlobroksConfig.class); + slobrokRegistrator = registerInSlobrok(slobroksConfig, qrConfig); + hackToInitializeServer(qrConfig); ContainerBuilder builder = createBuilderWithGuiceBindings(); @@ -158,6 +145,18 @@ public final class ConfiguredApplication implements Application { portWatcher.start(); } + /** The container has no rpc methods, but we still need to register it in Slobrok to enable orchestration */ + private Register registerInSlobrok(SlobroksConfig slobrokConfig, QrConfig qrConfig) { + SlobrokList slobrokList = new SlobrokList(); + slobrokList.setup(slobrokConfig.slobrok().stream().map(SlobroksConfig.Slobrok::connectionspec).toArray(String[]::new)); + Spec mySpec = new Spec(HostName.getLocalhost(), qrConfig.rpc().port()); + Register slobrokRegistrator = new Register(new Supervisor(new Transport()), slobrokList, mySpec); + slobrokRegistrator.registerName(qrConfig.rpc().slobrokId()); + log.log(LogLevel.INFO, + "Registered name '" + qrConfig.rpc().slobrokId() + "' at " + mySpec + " with: " + slobrokList); + return slobrokRegistrator; + } + @SuppressWarnings("deprecation") private static void hackToInitializeServer(QrConfig config) { try { @@ -318,7 +317,9 @@ public final class ConfiguredApplication implements Application { log.info("Stop: Shutting container down"); configurer.shutdown(new Deconstructor(false)); Container.get().shutdown(); - slobrokRegistrator.shutdown(); + + if (slobrokRegistrator != null) + slobrokRegistrator.shutdown(); log.info("Stop: Finished"); } diff --git a/standalone-container/pom.xml b/standalone-container/pom.xml index 8e88a0fa21a..73d05d35df7 100644 --- a/standalone-container/pom.xml +++ b/standalone-container/pom.xml @@ -57,12 +57,6 @@ </dependency> <dependency> <groupId>com.yahoo.vespa</groupId> - <artifactId>configdefinitions</artifactId> - <version>${project.version}</version> - <scope>provided</scope> - </dependency> - <dependency> - <groupId>com.yahoo.vespa</groupId> <artifactId>zkfacade</artifactId> <version>${project.version}</version> <scope>provided</scope> diff --git a/standalone-container/src/main/java/com/yahoo/container/standalone/StandaloneContainerApplication.java b/standalone-container/src/main/java/com/yahoo/container/standalone/StandaloneContainerApplication.java index c632b9e154c..a61e9fc56b8 100644 --- a/standalone-container/src/main/java/com/yahoo/container/standalone/StandaloneContainerApplication.java +++ b/standalone-container/src/main/java/com/yahoo/container/standalone/StandaloneContainerApplication.java @@ -127,8 +127,6 @@ public class StandaloneContainerApplication implements Application { @Override public void configure() { bind(SubscriberFactory.class).toInstance(new StandaloneSubscriberFactory(modelRoot)); - bind(SlobroksConfig.class).toInstance(new SlobroksConfig(new SlobroksConfig.Builder())); - bind(QrConfig.class).toInstance(new QrConfig(new QrConfig.Builder())); } }); |