diff options
Diffstat (limited to 'container-core/src/test/java/com/yahoo/jdisc/http/guiceModules/ConnectorFactoryRegistryModule.java')
-rw-r--r-- | container-core/src/test/java/com/yahoo/jdisc/http/guiceModules/ConnectorFactoryRegistryModule.java | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/guiceModules/ConnectorFactoryRegistryModule.java b/container-core/src/test/java/com/yahoo/jdisc/http/guiceModules/ConnectorFactoryRegistryModule.java new file mode 100644 index 00000000000..cc2a00c08c6 --- /dev/null +++ b/container-core/src/test/java/com/yahoo/jdisc/http/guiceModules/ConnectorFactoryRegistryModule.java @@ -0,0 +1,54 @@ +// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.jdisc.http.guiceModules; + +import com.google.inject.Binder; +import com.google.inject.Module; +import com.google.inject.Provides; +import com.yahoo.component.ComponentId; +import com.yahoo.component.provider.ComponentRegistry; +import com.yahoo.jdisc.http.ConnectorConfig; +import com.yahoo.jdisc.http.ConnectorConfig.Builder; + +import com.yahoo.jdisc.http.server.jetty.ConnectorFactory; +import com.yahoo.jdisc.http.ssl.impl.ConfiguredSslContextFactoryProvider; + +/** + * Guice module for test ConnectorFactories + * + * @author Tony Vaagenes + */ +public class ConnectorFactoryRegistryModule implements Module { + + private final Builder connectorConfigBuilder; + + public ConnectorFactoryRegistryModule(Builder connectorConfigBuilder) { + this.connectorConfigBuilder = connectorConfigBuilder; + } + + public ConnectorFactoryRegistryModule() { + this(new Builder()); + } + + @Provides + public ComponentRegistry<ConnectorFactory> connectorFactoryComponentRegistry() { + ComponentRegistry<ConnectorFactory> registry = new ComponentRegistry<>(); + registry.register(ComponentId.createAnonymousComponentId("connector-factory"), + new StaticKeyDbConnectorFactory(new ConnectorConfig(connectorConfigBuilder))); + + registry.freeze(); + return registry; + } + + @Override + public void configure(Binder binder) { + } + + private static class StaticKeyDbConnectorFactory extends ConnectorFactory { + + public StaticKeyDbConnectorFactory(ConnectorConfig connectorConfig) { + super(connectorConfig, new ConfiguredSslContextFactoryProvider(connectorConfig)); + } + + } + +} |