--- a/test/jdk/java/net/httpclient/CustomResponseSubscriber.java Tue Apr 17 15:39:20 2018 +0200
+++ b/test/jdk/java/net/httpclient/CustomResponseSubscriber.java Tue Apr 17 08:54:17 2018 -0700
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -27,14 +27,15 @@
* @library /lib/testlibrary http2/server
* @build jdk.testlibrary.SimpleSSLContext
* @modules java.base/sun.net.www.http
- * jdk.incubator.httpclient/jdk.incubator.http.internal.common
- * jdk.incubator.httpclient/jdk.incubator.http.internal.frame
- * jdk.incubator.httpclient/jdk.incubator.http.internal.hpack
+ * java.net.http/jdk.internal.net.http.common
+ * java.net.http/jdk.internal.net.http.frame
+ * java.net.http/jdk.internal.net.http.hpack
* @run testng/othervm CustomResponseSubscriber
*/
import java.io.IOException;
import java.io.InputStream;
+import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.URI;
import java.nio.ByteBuffer;
@@ -48,12 +49,13 @@
import com.sun.net.httpserver.HttpServer;
import com.sun.net.httpserver.HttpsConfigurator;
import com.sun.net.httpserver.HttpsServer;
-import jdk.incubator.http.HttpClient;
-import jdk.incubator.http.HttpHeaders;
-import jdk.incubator.http.HttpRequest;
-import jdk.incubator.http.HttpResponse;
-import jdk.incubator.http.HttpResponse.BodyHandler;
-import jdk.incubator.http.HttpResponse.BodySubscriber;
+import java.net.http.HttpClient;
+import java.net.http.HttpHeaders;
+import java.net.http.HttpRequest;
+import java.net.http.HttpResponse;
+import java.net.http.HttpResponse.BodyHandler;
+import java.net.http.HttpResponse.BodySubscriber;
+import java.net.http.HttpResponse.BodySubscribers;
import javax.net.ssl.SSLContext;
import jdk.testlibrary.SimpleSSLContext;
import org.testng.annotations.AfterTest;
@@ -62,7 +64,6 @@
import org.testng.annotations.Test;
import static java.lang.System.out;
import static java.nio.charset.StandardCharsets.UTF_8;
-import static jdk.incubator.http.HttpResponse.BodySubscriber.asString;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertTrue;
@@ -134,50 +135,54 @@
static class CRSBodyHandler implements BodyHandler<String> {
@Override
- public BodySubscriber<String> apply(int statusCode, HttpHeaders responseHeaders) {
- assertEquals(statusCode, 200);
+ public BodySubscriber<String> apply(HttpResponse.ResponseInfo rinfo) {
+ assertEquals(rinfo.statusCode(), 200);
return new CRSBodySubscriber();
}
}
static class CRSBodySubscriber implements BodySubscriber<String> {
- private final BodySubscriber<String> asString = asString(UTF_8);
+ private final BodySubscriber<String> ofString = BodySubscribers.ofString(UTF_8);
volatile boolean onSubscribeCalled;
@Override
public void onSubscribe(Flow.Subscription subscription) {
//out.println("onSubscribe ");
onSubscribeCalled = true;
- asString.onSubscribe(subscription);
+ ofString.onSubscribe(subscription);
}
@Override
public void onNext(List<ByteBuffer> item) {
// out.println("onNext " + item);
assertTrue(onSubscribeCalled);
- asString.onNext(item);
+ ofString.onNext(item);
}
@Override
public void onError(Throwable throwable) {
//out.println("onError");
assertTrue(onSubscribeCalled);
- asString.onError(throwable);
+ ofString.onError(throwable);
}
@Override
public void onComplete() {
//out.println("onComplete");
assertTrue(onSubscribeCalled, "onComplete called before onSubscribe");
- asString.onComplete();
+ ofString.onComplete();
}
@Override
public CompletionStage<String> getBody() {
- return asString.getBody();
+ return ofString.getBody();
}
}
+ static String serverAuthority(HttpServer server) {
+ return InetAddress.getLoopbackAddress().getHostName() + ":"
+ + server.getAddress().getPort();
+ }
@BeforeTest
public void setup() throws Exception {
@@ -188,37 +193,35 @@
// HTTP/1.1
HttpHandler h1_fixedLengthHandler = new HTTP1_FixedLengthHandler();
HttpHandler h1_chunkHandler = new HTTP1_ChunkedHandler();
- InetSocketAddress sa = new InetSocketAddress("localhost", 0);
+ InetSocketAddress sa = new InetSocketAddress(InetAddress.getLoopbackAddress(), 0);
httpTestServer = HttpServer.create(sa, 0);
httpTestServer.createContext("/http1/fixed", h1_fixedLengthHandler);
httpTestServer.createContext("/http1/chunk", h1_chunkHandler);
- httpURI_fixed = "http://127.0.0.1:" + httpTestServer.getAddress().getPort() + "/http1/fixed";
- httpURI_chunk = "http://127.0.0.1:" + httpTestServer.getAddress().getPort() + "/http1/chunk";
+ httpURI_fixed = "http://" + serverAuthority(httpTestServer) + "/http1/fixed";
+ httpURI_chunk = "http://" + serverAuthority(httpTestServer) + "/http1/chunk";
httpsTestServer = HttpsServer.create(sa, 0);
httpsTestServer.setHttpsConfigurator(new HttpsConfigurator(sslContext));
httpsTestServer.createContext("/https1/fixed", h1_fixedLengthHandler);
httpsTestServer.createContext("/https1/chunk", h1_chunkHandler);
- httpsURI_fixed = "https://127.0.0.1:" + httpsTestServer.getAddress().getPort() + "/https1/fixed";
- httpsURI_chunk = "https://127.0.0.1:" + httpsTestServer.getAddress().getPort() + "/https1/chunk";
+ httpsURI_fixed = "https://" + serverAuthority(httpsTestServer) + "/https1/fixed";
+ httpsURI_chunk = "https://" + serverAuthority(httpsTestServer) + "/https1/chunk";
// HTTP/2
Http2Handler h2_fixedLengthHandler = new HTTP2_FixedLengthHandler();
Http2Handler h2_chunkedHandler = new HTTP2_VariableHandler();
- http2TestServer = new Http2TestServer("127.0.0.1", false, 0);
+ http2TestServer = new Http2TestServer("localhost", false, 0);
http2TestServer.addHandler(h2_fixedLengthHandler, "/http2/fixed");
http2TestServer.addHandler(h2_chunkedHandler, "/http2/chunk");
- int port = http2TestServer.getAddress().getPort();
- http2URI_fixed = "http://127.0.0.1:" + port + "/http2/fixed";
- http2URI_chunk = "http://127.0.0.1:" + port + "/http2/chunk";
+ http2URI_fixed = "http://" + http2TestServer.serverAuthority() + "/http2/fixed";
+ http2URI_chunk = "http://" + http2TestServer.serverAuthority() + "/http2/chunk";
- https2TestServer = new Http2TestServer("127.0.0.1", true, 0);
+ https2TestServer = new Http2TestServer("localhost", true, 0);
https2TestServer.addHandler(h2_fixedLengthHandler, "/https2/fixed");
https2TestServer.addHandler(h2_chunkedHandler, "/https2/chunk");
- port = https2TestServer.getAddress().getPort();
- https2URI_fixed = "https://127.0.0.1:" + port + "/https2/fixed";
- https2URI_chunk = "https://127.0.0.1:" + port + "/https2/chunk";
+ https2URI_fixed = "https://" + https2TestServer.serverAuthority() + "/https2/fixed";
+ https2URI_chunk = "https://" + https2TestServer.serverAuthority() + "/https2/chunk";
httpTestServer.start();
httpsTestServer.start();