@Override public String toString() { return toURI(); }
@Override public String toString() { return toURI(); }
@Override protected HttpHost determineProxy(final HttpHost target, final HttpContext context) throws HttpException { final URI targetURI; try { targetURI = new URI(target.toURI()); } catch (final URISyntaxException ex) { throw new HttpException("Cannot convert host to URI: " + target, ex); } ProxySelector proxySelectorInstance = this.proxySelector; if (proxySelectorInstance == null) { proxySelectorInstance = ProxySelector.getDefault(); } if (proxySelectorInstance == null) { //The proxy selector can be "unset", so we must be able to deal with a null selector return null; } final List<Proxy> proxies = proxySelectorInstance.select(targetURI); final Proxy p = chooseProxy(proxies); HttpHost result = null; if (p.type() == Proxy.Type.HTTP) { // convert the socket address to an HttpHost if (!(p.address() instanceof InetSocketAddress)) { throw new HttpException("Unable to handle non-Inet proxy address: " + p.address()); } final InetSocketAddress isa = (InetSocketAddress) p.address(); // assume default scheme (http) result = new HttpHost(null, isa.getAddress(), isa.getHostString(), isa.getPort()); } return result; }
@Test public void testHttpHost() throws Exception { final HttpHost httpHost = new HttpHost("http", "example.com", 1234); final URIBuilder uribuilder = new URIBuilder(); uribuilder.setHttpHost(httpHost); final URI result = uribuilder.build(); Assert.assertEquals(URI.create(httpHost.toURI()), result); }