/** {@inheritDoc} */ @Override public DefaultHttpClientConfigurator configure(Config httpClientConfig) { Optional<HttpHost> proxy = getProxyAddr(httpClientConfig); if (proxy.isPresent()) { getBuilder().setProxy(proxy.get()); } return this; }
/** {@inheritDoc} */ @Override public DefaultHttpClientConfigurator configure(State state) { Config cfg = stateToConfig(state); return configure(cfg); }
@Test public void testConfigureFromState() { { State state = new State(); state.setProp(ConfigurationKeys.SOURCE_CONN_USE_PROXY_URL, "localhost"); state.setProp(ConfigurationKeys.SOURCE_CONN_USE_PROXY_PORT, "11111"); DefaultHttpClientConfigurator configurator = new DefaultHttpClientConfigurator(); Config cfg = configurator.setStatePropertiesPrefix("source.conn.").stateToConfig(state); Assert.assertEquals(cfg.getString(DefaultHttpClientConfigurator.PROXY_URL_KEY), "localhost"); Assert.assertEquals(cfg.getInt(DefaultHttpClientConfigurator.PROXY_PORT_KEY), 11111); } { State state = new State(); state.setProp(ConfigurationKeys.SOURCE_CONN_USE_PROXY_URL, "localhost"); DefaultHttpClientConfigurator configurator = new DefaultHttpClientConfigurator(); Config cfg = configurator.setStatePropertiesPrefix("source.conn.").stateToConfig(state); Assert.assertEquals(cfg.getString(DefaultHttpClientConfigurator.PROXY_URL_KEY), "localhost"); Assert.assertFalse(cfg.hasPath(DefaultHttpClientConfigurator.PROXY_PORT_KEY)); } { State state = new State(); state.setProp(DefaultHttpClientConfigurator.PROXY_HOSTPORT_KEY, "localhost:22222"); DefaultHttpClientConfigurator configurator = new DefaultHttpClientConfigurator(); Config cfg = configurator.stateToConfig(state); Assert.assertEquals(cfg.getString(DefaultHttpClientConfigurator.PROXY_HOSTPORT_KEY), "localhost:22222"); } }
ConfigFactory.empty().withValue(DefaultHttpClientConfigurator.PROXY_HOSTPORT_KEY, ConfigValueFactory.fromAnyRef("localhost:12345")); Optional<HttpHost> proxyHost = DefaultHttpClientConfigurator.getProxyAddr(cfg); Assert.assertTrue(proxyHost.isPresent()); Assert.assertEquals(proxyHost.get(), new HttpHost("localhost", 12345)); ConfigFactory.empty().withValue(DefaultHttpClientConfigurator.PROXY_HOSTPORT_KEY, ConfigValueFactory.fromAnyRef("localhost")); Optional<HttpHost> proxyHost = DefaultHttpClientConfigurator.getProxyAddr(cfg); Assert.assertTrue(proxyHost.isPresent()); Assert.assertEquals(proxyHost.get(), new HttpHost("localhost", ConfigFactory.empty().withValue(DefaultHttpClientConfigurator.PROXY_URL_KEY, ConfigValueFactory.fromAnyRef("host123")); Optional<HttpHost> proxyHost = DefaultHttpClientConfigurator.getProxyAddr(cfg); Assert.assertTrue(proxyHost.isPresent()); Assert.assertEquals(proxyHost.get(), new HttpHost("host123", .withValue(DefaultHttpClientConfigurator.PROXY_PORT_KEY, ConfigValueFactory.fromAnyRef(54321)); Optional<HttpHost> proxyHost = DefaultHttpClientConfigurator.getProxyAddr(cfg); Assert.assertTrue(proxyHost.isPresent()); Assert.assertEquals(proxyHost.get(), new HttpHost("host123",54321)); Optional<HttpHost> proxyHost = DefaultHttpClientConfigurator.getProxyAddr(cfg); Assert.assertFalse(proxyHost.isPresent());
protected Config stateToConfig(State state) { String proxyUrlKey = getPrefixedPropertyName(PROXY_URL_KEY); String proxyPortKey = getPrefixedPropertyName(PROXY_PORT_KEY); String proxyHostportKey = getPrefixedPropertyName(PROXY_HOSTPORT_KEY); Config cfg = ConfigFactory.empty(); if (state.contains(proxyUrlKey)) { cfg = cfg.withValue(PROXY_URL_KEY, ConfigValueFactory.fromAnyRef(state.getProp(proxyUrlKey))); } if (state.contains(proxyPortKey)) { cfg = cfg.withValue(PROXY_PORT_KEY, ConfigValueFactory.fromAnyRef(state.getPropAsInt(proxyPortKey))); } if (state.contains(proxyHostportKey)) { cfg = cfg.withValue(PROXY_HOSTPORT_KEY, ConfigValueFactory.fromAnyRef(state.getProp(proxyHostportKey))); } return cfg; }
protected Config stateToConfig(State state) { String proxyUrlKey = getPrefixedPropertyName(PROXY_URL_KEY); String proxyPortKey = getPrefixedPropertyName(PROXY_PORT_KEY); String proxyHostportKey = getPrefixedPropertyName(PROXY_HOSTPORT_KEY); Config cfg = ConfigFactory.empty(); if (state.contains(proxyUrlKey)) { cfg = cfg.withValue(PROXY_URL_KEY, ConfigValueFactory.fromAnyRef(state.getProp(proxyUrlKey))); } if (state.contains(proxyPortKey)) { cfg = cfg.withValue(PROXY_PORT_KEY, ConfigValueFactory.fromAnyRef(state.getPropAsInt(proxyPortKey))); } if (state.contains(proxyHostportKey)) { cfg = cfg.withValue(PROXY_HOSTPORT_KEY, ConfigValueFactory.fromAnyRef(state.getProp(proxyHostportKey))); } return cfg; }
/** {@inheritDoc} */ @Override public DefaultHttpClientConfigurator configure(Config httpClientConfig) { Optional<HttpHost> proxy = getProxyAddr(httpClientConfig); if (proxy.isPresent()) { getBuilder().setProxy(proxy.get()); } return this; }
/** {@inheritDoc} */ @Override public DefaultHttpClientConfigurator configure(State state) { Config cfg = stateToConfig(state); return configure(cfg); }