diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2017-04-21 22:50:15 +0200 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2017-04-22 18:46:50 +0000 |
commit | 92b9274feb28c1dc7dce7949a89ae86a45fe2f0f (patch) | |
tree | 6a4d8a7ec5f183f00105b51e29ee20da1ed22b88 /jdisc_http_service/src | |
parent | c578fc671bc2983b2979919108b1b38c772641b5 (diff) |
ning 1.9.40
Diffstat (limited to 'jdisc_http_service/src')
6 files changed, 30 insertions, 33 deletions
diff --git a/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/client/ChunkedRequest.java b/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/client/ChunkedRequest.java index 6da40f3c443..862074d4b15 100644 --- a/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/client/ChunkedRequest.java +++ b/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/client/ChunkedRequest.java @@ -26,11 +26,7 @@ final class ChunkedRequest { RequestBuilder builder = RequestBuilderFactory.newInstance(request, method); ChunkedRequestContent content = new ChunkedRequestContent(request); builder.setBody(content); - try { - ningClient.executeRequest(builder.build(), new AsyncResponseHandler(request, handler, metric, ctx)); - } catch (IOException e) { - throw new RuntimeException(e); - } + ningClient.executeRequest(builder.build(), new AsyncResponseHandler(request, handler, metric, ctx)); return content; } } diff --git a/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/client/EmptyResponse.java b/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/client/EmptyResponse.java index 19e9190a32b..5529aa62f5f 100644 --- a/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/client/EmptyResponse.java +++ b/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/client/EmptyResponse.java @@ -1,9 +1,10 @@ // Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.jdisc.http.client; -import com.ning.http.client.Cookie; +import com.ning.http.client.cookie.Cookie; import com.ning.http.client.FluentCaseInsensitiveStringsMap; import com.ning.http.client.Response; +import com.ning.http.client.uri.Uri; import java.io.IOException; import java.io.InputStream; @@ -70,7 +71,7 @@ final class EmptyResponse implements Response { } @Override - public URI getUri() throws MalformedURLException { + public Uri getUri() { return null; } diff --git a/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/client/HttpClient.java b/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/client/HttpClient.java index 5480e8fca87..f0027364baa 100644 --- a/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/client/HttpClient.java +++ b/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/client/HttpClient.java @@ -188,38 +188,34 @@ public class HttpClient extends AbstractClientProvider { HostnameVerifier hostnameVerifier, SSLContext sslContext, List<ResponseFilter> responseFilters) { AsyncHttpClientConfig.Builder builder = new AsyncHttpClientConfig.Builder(); - builder.setAllowPoolingConnection(config.connectionPoolEnabled()); - builder.setAllowSslConnectionPool(config.sslConnectionPoolEnabled()); - builder.setCompressionEnabled(config.compressionEnabled()); - builder.setConnectionTimeoutInMs((int)(config.connectionTimeout() * 1000)); + builder.setAllowPoolingConnections(config.connectionPoolEnabled()); + builder.setAllowPoolingSslConnections(config.sslConnectionPoolEnabled()); + builder.setCompressionEnforced(config.compressionEnabled()); + builder.setConnectTimeout((int)(config.connectionTimeout() * 1000)); builder.setExecutorService(Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors() * 2, threadFactory)); - builder.setFollowRedirects(config.followRedirects()); + builder.setFollowRedirect(config.followRedirects()); builder.setHostnameVerifier(hostnameVerifier); builder.setIOThreadMultiplier(2); - builder.setIdleConnectionInPoolTimeoutInMs((int)(config.idleConnectionInPoolTimeout() * 1000)); - builder.setIdleConnectionTimeoutInMs((int)(config.idleConnectionTimeout() * 1000)); + builder.setPooledConnectionIdleTimeout((int)(config.idleConnectionInPoolTimeout() * 1000)); builder.setMaxRequestRetry(config.chunkedEncodingEnabled() ? 0 : config.maxNumRetries()); - builder.setMaximumConnectionsPerHost(config.maxNumConnectionsPerHost()); - builder.setMaximumConnectionsTotal(config.maxNumConnections()); - builder.setMaximumNumberOfRedirects(config.maxNumRedirects()); + builder.setMaxConnectionsPerHost(config.maxNumConnectionsPerHost()); + builder.setMaxConnections(config.maxNumConnections()); + builder.setMaxRedirects(config.maxNumRedirects()); if (!config.proxyServer().isEmpty()) { builder.setProxyServer(ProxyServerFactory.newInstance(URI.create(config.proxyServer()))); } - builder.setRemoveQueryParamsOnRedirect(config.removeQueryParamsOnRedirect()); - builder.setRequestCompressionLevel(config.compressionLevel()); - builder.setRequestTimeoutInMs((int)(config.requestTimeout() * 1000)); + builder.setRequestTimeout((int)(config.requestTimeout() * 1000)); builder.setSSLContext(sslContext); builder.setUseProxyProperties(config.useProxyProperties()); - builder.setUseRawUrl(config.useRawUri()); builder.setUserAgent(config.userAgent()); - builder.setWebSocketIdleTimeoutInMs((int)(config.idleWebSocketTimeout() * 1000)); + builder.setWebSocketTimeout((int)(config.idleWebSocketTimeout() * 1000)); for (final ResponseFilter responseFilter : responseFilters) { builder.addResponseFilter(new com.ning.http.client.filter.ResponseFilter() { @Override @SuppressWarnings("rawtypes") - public FilterContext filter(FilterContext filterContext) throws FilterException { + public <T> FilterContext<T> filter(FilterContext<T> filterContext) throws FilterException { /* * TODO: returned ResponseFilterContext is ignored right now. * For now, we return the input filterContext until there is a need for custom filterContext diff --git a/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/client/filter/core/ResponseFilterBridge.java b/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/client/filter/core/ResponseFilterBridge.java index 6d895ad0f93..8754dc150b7 100644 --- a/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/client/filter/core/ResponseFilterBridge.java +++ b/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/client/filter/core/ResponseFilterBridge.java @@ -5,6 +5,7 @@ import com.ning.http.client.filter.FilterContext; import com.yahoo.jdisc.Request; import com.yahoo.jdisc.http.client.filter.ResponseFilterContext; +import java.net.URISyntaxException; import java.util.Collections; /** @@ -13,12 +14,16 @@ import java.util.Collections; public class ResponseFilterBridge { public static ResponseFilterContext toResponseFilterContext(FilterContext<?> filterContext, Request request) { - return new ResponseFilterContext.Builder() - .uri(filterContext.getRequest().getURI()) - .statusCode(filterContext.getResponseStatus().getStatusCode()) - .headers(filterContext.getResponseHeaders().getHeaders()) - .requestContext(request == null ? Collections.<String, Object>emptyMap() : request.context()) - .build(); + try { + return new ResponseFilterContext.Builder() + .uri(filterContext.getRequest().getUri().toJavaNetURI()) + .statusCode(filterContext.getResponseStatus().getStatusCode()) + .headers(filterContext.getResponseHeaders().getHeaders()) + .requestContext(request == null ? Collections.<String, Object>emptyMap() : request.context()) + .build(); + } catch (URISyntaxException e) { + throw new RuntimeException("Bad URI", e); + } } } diff --git a/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/test/ClientTestDriver.java b/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/test/ClientTestDriver.java index 1a5553fb608..f3b7b595227 100644 --- a/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/test/ClientTestDriver.java +++ b/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/test/ClientTestDriver.java @@ -4,8 +4,7 @@ package com.yahoo.jdisc.http.test; import com.google.inject.AbstractModule; import com.google.inject.Module; import com.google.inject.TypeLiteral; -import com.google.inject.name.Names; -import com.ning.http.util.AllowAllHostnameVerifier; +import com.ning.http.util.DefaultHostnameVerifier; import com.yahoo.jdisc.application.ContainerBuilder; import com.yahoo.jdisc.http.client.HttpClient; import com.yahoo.jdisc.http.client.HttpClientConfig; @@ -91,7 +90,7 @@ public class ClientTestDriver { @Override protected void configure() { - bind(HostnameVerifier.class).to(AllowAllHostnameVerifier.class); + bind(HostnameVerifier.class).to(DefaultHostnameVerifier.class); bind(new TypeLiteral<List<ResponseFilter>>() { }).toInstance(Collections.<ResponseFilter>emptyList()); } }; diff --git a/jdisc_http_service/src/test/java/com/yahoo/jdisc/http/client/filter/core/ResponseFilterBridgeTestCase.java b/jdisc_http_service/src/test/java/com/yahoo/jdisc/http/client/filter/core/ResponseFilterBridgeTestCase.java index b2154349549..8930c429a89 100644 --- a/jdisc_http_service/src/test/java/com/yahoo/jdisc/http/client/filter/core/ResponseFilterBridgeTestCase.java +++ b/jdisc_http_service/src/test/java/com/yahoo/jdisc/http/client/filter/core/ResponseFilterBridgeTestCase.java @@ -59,7 +59,7 @@ public class ResponseFilterBridgeTestCase { URL url = new URL("http://localhost:8080/echo"); URI reqURI = new URI(url.getProtocol(), url.getUserInfo(), url.getHost(), url.getPort(), url.getPath(), url.getQuery(), url.getRef()); - when(request.getURI()).thenReturn(reqURI); + when(request.getUri().toJavaNetURI()).thenReturn(reqURI); HttpResponseStatus responseStatus = mock(HttpResponseStatus.class); when(responseStatus.getStatusCode()).thenReturn(200); |