OpenJDK / amber / amber
changeset 22976:90ec9fec7c7f
8031661: java/net/Authenticator/B4769350.java failed intermittently
Reviewed-by: michaelm
Contributed-by: amanda.jiang@oracle.com
author | michaelm |
---|---|
date | Mon, 17 Feb 2014 11:27:18 +0000 |
parents | 1a8002758a3d |
children | 947ce5082adf |
files | jdk/test/java/net/Authenticator/B4769350.java |
diffstat | 1 files changed, 11 insertions(+), 33 deletions(-) [+] |
line wrap: on
line diff
--- a/jdk/test/java/net/Authenticator/B4769350.java Mon Feb 17 09:43:12 2014 +0100 +++ b/jdk/test/java/net/Authenticator/B4769350.java Mon Feb 17 11:27:18 2014 +0000 @@ -66,14 +66,15 @@ this.allowerror = allowerror; } + @Override public void run () { try { URI u = new URI ("http", authority, path, null, null); URL url = u.toURL(); URLConnection urlc = url.openConnection(); - InputStream is = urlc.getInputStream(); - read (is); - is.close(); + try (InputStream is = urlc.getInputStream()) { + read (is); + } } catch (URISyntaxException e) { System.out.println (e); error = true; @@ -91,8 +92,6 @@ class Server implements AutoCloseable { HttpServer server; Executor executor; - CyclicBarrier t1Cond1; - CyclicBarrier t1Cond2; public String getAddress() { return server.getAddress().getHostName(); @@ -126,8 +125,7 @@ new AuthenticationHandlerT3bc()); server.createContext("/test/realm4/t3c", new AuthenticationHandlerT3bc()); - t1Cond1 = new CyclicBarrier(2); - t1Cond2 = new CyclicBarrier(2); + t1Cond1 = new CyclicBarrier(3); server.start(); } @@ -135,6 +133,7 @@ return server.getAddress().getPort(); } + @Override public void close() { if (executor != null) ((ExecutorService)executor).shutdownNow(); @@ -163,7 +162,6 @@ break; case 1: t1Cond1.await(); - t1cond2latch.await(); AuthenticationHandler.okReply(exchange); break; default: @@ -192,8 +190,6 @@ break; case 1: t1Cond1.await(); - t1cond1latch.countDown(); - t1cond2latch.await(); AuthenticationHandler.okReply(exchange); break; default: @@ -216,13 +212,6 @@ case 0: AuthenticationHandler.errorReply(exchange, "Basic realm=\"realm1\""); - try { - t1Cond2.await(); - } catch (InterruptedException | - BrokenBarrierException e) - { - throw new RuntimeException(e); - } break; case 1: AuthenticationHandler.okReply(exchange); @@ -244,14 +233,6 @@ case 0: AuthenticationHandler.errorReply(exchange, "Basic realm=\"realm2\""); - try { - t1Cond2.await(); - } catch (InterruptedException | - BrokenBarrierException e) - { - throw new RuntimeException(e); - } - t1cond2latch.countDown(); break; case 1: AuthenticationHandler.okReply(exchange); @@ -377,9 +358,9 @@ exchange.getResponseHeaders().add("Connection", "close"); String response = "Hello ."; exchange.sendResponseHeaders(200, response.getBytes().length); - OutputStream os = exchange.getResponseBody(); - os.write(response.getBytes()); - os.close(); + try (OutputStream os = exchange.getResponseBody()) { + os.write(response.getBytes()); + } exchange.close(); } } @@ -391,10 +372,9 @@ static Client c1,c2,c3,c4,c5,c6,c7,c8,c9; - static CountDownLatch t1cond1latch; - static CountDownLatch t1cond2latch; static CountDownLatch t2condlatch; static CountDownLatch t3cond1; + static CyclicBarrier t1Cond1; static void doServerTests (String authority, Server server) throws Exception { @@ -404,10 +384,8 @@ c2 = new Client (authority, "/test/realm2/t1b", false); c3 = new Client (authority, "/test/realm1/t1c", false); c4 = new Client (authority, "/test/realm2/t1d", false); - t1cond1latch = new CountDownLatch(1); - t1cond2latch = new CountDownLatch(1); c1.start(); c2.start(); - t1cond1latch.await(); + t1Cond1.await(); c3.start(); c4.start(); c1.join(); c2.join(); c3.join(); c4.join();