# HG changeset patch # User prappo # Date 1510327370 -10800 # Node ID c4307c12419d6d58085fea3eed7015e35d2a5e43 # Parent c71f52f48d97de5dfb761306687c2322f55afc1a http-client-branch: (cleanup) diff -r c71f52f48d97 -r c4307c12419d src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/AbstractAsyncSSLConnection.java --- a/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/AbstractAsyncSSLConnection.java Fri Nov 10 16:24:07 2017 +0300 +++ b/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/AbstractAsyncSSLConnection.java Fri Nov 10 18:22:50 2017 +0300 @@ -76,7 +76,7 @@ super(addr, client); this.serverName = serverName; SSLContext context = client.theSSLContext(); - sslParameters = createSSLParameters(client, context, serverName, alpn); + sslParameters = createSSLParameters(client, serverName, alpn); Log.logParams(sslParameters); engine = createEngine(context, sslParameters); } @@ -95,7 +95,6 @@ // SSLParameters sslParameters() { return sslParameters; } private static SSLParameters createSSLParameters(HttpClientImpl client, - SSLContext context, String serverName, String[] alpn) { SSLParameters sslp = client.sslParameters(); @@ -184,13 +183,10 @@ // It should be removed when RawChannelImpl moves to using asynchronous APIs. @Override DetachedConnectionChannel detachChannel() { - HttpClientImpl client = client(); - assert client != null; + assert client() != null; DetachedConnectionChannel detachedChannel = plainConnection().detachChannel(); SSLDelegate sslDelegate = new SSLDelegate(engine, - detachedChannel.channel(), - client, - serverName); + detachedChannel.channel()); return new SSLConnectionChannel(detachedChannel, sslDelegate); } diff -r c71f52f48d97 -r c4307c12419d src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/ConnectionPool.java --- a/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/ConnectionPool.java Fri Nov 10 16:24:07 2017 +0300 +++ b/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/ConnectionPool.java Fri Nov 10 18:22:50 2017 +0300 @@ -104,10 +104,6 @@ } } - ConnectionPool() { - this("ConnectionPool(?)"); - } - ConnectionPool(long clientId) { this("ConnectionPool("+clientId+")"); } diff -r c71f52f48d97 -r c4307c12419d src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Http1Exchange.java --- a/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Http1Exchange.java Fri Nov 10 16:24:07 2017 +0300 +++ b/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Http1Exchange.java Fri Nov 10 18:22:50 2017 +0300 @@ -167,7 +167,7 @@ if (connection != null) { this.connection = connection; } else { - InetSocketAddress addr = request.getAddress(client); + InetSocketAddress addr = request.getAddress(); this.connection = HttpConnection.getConnection(addr, client, request, HTTP_1_1); } this.requestAction = new Http1Request(request, this); diff -r c71f52f48d97 -r c4307c12419d src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Http2Connection.java --- a/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Http2Connection.java Fri Nov 10 16:24:07 2017 +0300 +++ b/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Http2Connection.java Fri Nov 10 18:22:50 2017 +0300 @@ -310,7 +310,7 @@ Http2ClientImpl h2client) { assert request.secure(); AbstractAsyncSSLConnection connection = (AbstractAsyncSSLConnection) - HttpConnection.getConnection(request.getAddress(h2client.client()), + HttpConnection.getConnection(request.getAddress(), h2client.client(), request, HttpClient.Version.HTTP_2); @@ -860,13 +860,13 @@ * Creates Stream with given id. */ final Stream createStream(Exchange exchange) { - Stream stream = new Stream<>(client(), this, exchange, windowController); + Stream stream = new Stream<>(this, exchange, windowController); return stream; } Stream.PushedStream createPushStream(Stream parent, Exchange pushEx) { PushGroup pg = parent.exchange.getPushGroup(); - return new Stream.PushedStream<>(pg, client(), this, parent, pushEx); + return new Stream.PushedStream<>(pg, this, pushEx); } void putStream(Stream stream, int streamid) { diff -r c71f52f48d97 -r c4307c12419d src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/HttpRequestImpl.java --- a/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/HttpRequestImpl.java Fri Nov 10 16:24:07 2017 +0300 +++ b/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/HttpRequestImpl.java Fri Nov 10 18:22:50 2017 +0300 @@ -217,16 +217,16 @@ private static Proxy retrieveProxy(ProxySelector ps, URI uri) { Proxy proxy = null; List pl = ps.select(uri); - if (pl.size() > 0) { + if (!pl.isEmpty()) { Proxy p = pl.get(0); - if (p.type().equals(Proxy.Type.HTTP)) + if (p.type() == Proxy.Type.HTTP) proxy = p; } return proxy; } InetSocketAddress proxy() { - if (proxy == null || !proxy.type().equals(Proxy.Type.HTTP) + if (proxy == null || proxy.type() != Proxy.Type.HTTP || method.equalsIgnoreCase("CONNECT")) { return null; } @@ -287,7 +287,7 @@ systemHeaders.setHeader(name, value); } - InetSocketAddress getAddress(HttpClientImpl client) { + InetSocketAddress getAddress() { URI uri = uri(); if (uri == null) { return authority(); diff -r c71f52f48d97 -r c4307c12419d src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/PushGroup.java --- a/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/PushGroup.java Fri Nov 10 16:24:07 2017 +0300 +++ b/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/PushGroup.java Fri Nov 10 18:22:50 2017 +0300 @@ -133,18 +133,11 @@ }); } - synchronized CompletableFuture> mainResponse() { - return mainResponse; - } - synchronized void addPush() { numberOfPushes++; remainingPushes++; } - synchronized int numberOfPushes() { - return numberOfPushes; - } // This is called when the main body response completes because it means // no more PUSH_PROMISEs are possible diff -r c71f52f48d97 -r c4307c12419d src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/RedirectFilter.java --- a/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/RedirectFilter.java Fri Nov 10 16:24:07 2017 +0300 +++ b/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/RedirectFilter.java Fri Nov 10 18:22:50 2017 +0300 @@ -84,9 +84,8 @@ private URI getRedirectedURI(HttpHeaders headers) { URI redirectedURI; - String ss = headers.firstValue("Location").orElse("Not present"); redirectedURI = headers.firstValue("Location") - .map((s) -> URI.create(s)) + .map(URI::create) .orElseThrow(() -> new UncheckedIOException( new IOException("Invalid redirection"))); diff -r c71f52f48d97 -r c4307c12419d src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/SSLDelegate.java --- a/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/SSLDelegate.java Fri Nov 10 16:24:07 2017 +0300 +++ b/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/SSLDelegate.java Fri Nov 10 18:22:50 2017 +0300 @@ -49,19 +49,13 @@ final SSLEngine engine; final EngineWrapper wrapper; final Lock handshaking = new ReentrantLock(); - final SSLParameters sslParameters; final SocketChannel chan; - final HttpClientImpl client; - final String serverName; - SSLDelegate(SSLEngine eng, SocketChannel chan, HttpClientImpl client, String sn) + SSLDelegate(SSLEngine eng, SocketChannel chan) { this.engine = eng; this.chan = chan; - this.client = client; this.wrapper = new EngineWrapper(chan, engine); - this.sslParameters = engine.getSSLParameters(); - this.serverName = sn; } // alpn[] may be null diff -r c71f52f48d97 -r c4307c12419d src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Stream.java --- a/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Stream.java Fri Nov 10 16:24:07 2017 +0300 +++ b/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Stream.java Fri Nov 10 18:22:50 2017 +0300 @@ -107,7 +107,6 @@ */ protected volatile int streamid; - long responseContentLen = -1; long requestContentLen; final Http2Connection connection; @@ -284,8 +283,7 @@ } @SuppressWarnings("unchecked") - Stream(HttpClientImpl client, - Http2Connection connection, + Stream(Http2Connection connection, Exchange e, WindowController windowController) { @@ -362,9 +360,11 @@ request, exchange, responseHeaders, responseCode, HttpClient.Version.HTTP_2); - this.responseContentLen = responseHeaders - .firstValueAsLong("content-length") - .orElse(-1L); + /* TODO: review if needs to be removed + the value is not used, but in case `content-length` doesn't parse as + long, there will be NumberFormatException. If left as is, make sure + code up the stack handles NFE correctly. */ + responseHeaders.firstValueAsLong("content-length"); if (Log.headers()) { StringBuilder sb = new StringBuilder("RESPONSE HEADERS:\n"); @@ -953,11 +953,11 @@ final HttpRequestImpl pushReq; HttpResponse.BodyHandler pushHandler; - PushedStream(PushGroup pushGroup, HttpClientImpl client, - Http2Connection connection, Stream parent, - Exchange pushReq) { + PushedStream(PushGroup pushGroup, + Http2Connection connection, + Exchange pushReq) { // ## no request body possible, null window controller - super(client, connection, pushReq, null); + super(connection, pushReq, null); this.pushGroup = pushGroup; this.pushReq = pushReq.request(); this.pushCF = new MinimalFuture<>(); @@ -1058,9 +1058,11 @@ pushReq, exchange, responseHeaders, responseCode, HttpClient.Version.HTTP_2); - this.responseContentLen = responseHeaders - .firstValueAsLong("content-length") - .orElse(-1L); + /* TODO: review if needs to be removed + the value is not used, but in case `content-length` doesn't parse + as long, there will be NumberFormatException. If left as is, make + sure code up the stack handles NFE correctly. */ + responseHeaders.firstValueAsLong("content-length"); if (Log.headers()) { StringBuilder sb = new StringBuilder("RESPONSE HEADERS"); diff -r c71f52f48d97 -r c4307c12419d src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/common/HttpHeadersImpl.java --- a/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/common/HttpHeadersImpl.java Fri Nov 10 16:24:07 2017 +0300 +++ b/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/common/HttpHeadersImpl.java Fri Nov 10 18:22:50 2017 +0300 @@ -53,12 +53,11 @@ public HttpHeadersImpl deepCopy() { HttpHeadersImpl h1 = new HttpHeadersImpl(); - TreeMap> headers1 = h1.headers; Set keys = headers.keySet(); for (String key : keys) { List vals = headers.get(key); List vals1 = new ArrayList<>(vals); - headers1.put(key, vals1); + h1.headers.put(key, vals1); } return h1; } @@ -73,8 +72,4 @@ values.add(value); headers.put(name, values); } - - public void clear() { - headers.clear(); - } } diff -r c71f52f48d97 -r c4307c12419d src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/common/Utils.java --- a/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/common/Utils.java Fri Nov 10 16:24:07 2017 +0300 +++ b/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/common/Utils.java Fri Nov 10 18:22:50 2017 +0300 @@ -320,23 +320,6 @@ return accumulatedBytes; } - /** - * Copy amount bytes from src to dst. at least amount must be - * available in both dst and in src - */ - public static void copy(ByteBuffer src, ByteBuffer dst, int amount) { - int excess = src.remaining() - amount; - assert excess >= 0; - if (excess > 0) { - int srclimit = src.limit(); - src.limit(srclimit - excess); - dst.put(src); - src.limit(srclimit); - } else { - dst.put(src); - } - } - public static ByteBuffer copy(ByteBuffer src) { ByteBuffer dst = ByteBuffer.allocate(src.remaining()); dst.put(src); diff -r c71f52f48d97 -r c4307c12419d src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/frame/ErrorFrame.java --- a/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/frame/ErrorFrame.java Fri Nov 10 16:24:07 2017 +0300 +++ b/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/frame/ErrorFrame.java Fri Nov 10 18:22:50 2017 +0300 @@ -88,8 +88,4 @@ public int getErrorCode() { return this.errorCode; } - - public void setErrorCode(int errorCode) { - this.errorCode = errorCode; - } } diff -r c71f52f48d97 -r c4307c12419d src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/frame/Http2Frame.java --- a/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/frame/Http2Frame.java Fri Nov 10 16:24:07 2017 +0300 +++ b/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/frame/Http2Frame.java Fri Nov 10 18:22:50 2017 +0300 @@ -49,10 +49,6 @@ flags |= flag; } - public void setFlags(int flags) { - this.flags = flags; - } - public int getFlags() { return flags; } @@ -70,7 +66,7 @@ } - public String typeAsString() { + private String typeAsString() { return asString(type()); }