From 18aea796c8c0544d1911e6441b43c0ed3b3ebdf7 Mon Sep 17 00:00:00 2001 From: Rolando Manrique Date: Mon, 12 Nov 2018 14:05:37 -0800 Subject: [PATCH 1/2] expose SSLSession to AsyncHandler.onTlsHandshakeSuccess --- client/src/main/java/org/asynchttpclient/AsyncHandler.java | 3 ++- .../asynchttpclient/netty/channel/NettyConnectListener.java | 2 +- .../java/org/asynchttpclient/test/EventCollectingHandler.java | 3 ++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/client/src/main/java/org/asynchttpclient/AsyncHandler.java b/client/src/main/java/org/asynchttpclient/AsyncHandler.java index a6fab9b369..6733c94711 100644 --- a/client/src/main/java/org/asynchttpclient/AsyncHandler.java +++ b/client/src/main/java/org/asynchttpclient/AsyncHandler.java @@ -19,6 +19,7 @@ import io.netty.handler.codec.http.HttpHeaders; import org.asynchttpclient.netty.request.NettyRequest; +import javax.net.ssl.SSLSession; import java.net.InetSocketAddress; import java.util.List; @@ -186,7 +187,7 @@ default void onTlsHandshakeAttempt() { /** * Notify the callback after the TLS was successful */ - default void onTlsHandshakeSuccess() { + default void onTlsHandshakeSuccess(SSLSession sslSession) { } /** diff --git a/client/src/main/java/org/asynchttpclient/netty/channel/NettyConnectListener.java b/client/src/main/java/org/asynchttpclient/netty/channel/NettyConnectListener.java index 76bd652a44..4a6f4dce20 100755 --- a/client/src/main/java/org/asynchttpclient/netty/channel/NettyConnectListener.java +++ b/client/src/main/java/org/asynchttpclient/netty/channel/NettyConnectListener.java @@ -130,7 +130,7 @@ public void onSuccess(Channel channel, InetSocketAddress remoteAddress) { @Override protected void onSuccess(Channel value) { try { - asyncHandler.onTlsHandshakeSuccess(); + asyncHandler.onTlsHandshakeSuccess(sslHandler.engine().getSession()); } catch (Exception e) { LOGGER.error("onTlsHandshakeSuccess crashed", e); NettyConnectListener.this.onFailure(channel, e); diff --git a/client/src/test/java/org/asynchttpclient/test/EventCollectingHandler.java b/client/src/test/java/org/asynchttpclient/test/EventCollectingHandler.java index 252de41913..9a7ad628ae 100644 --- a/client/src/test/java/org/asynchttpclient/test/EventCollectingHandler.java +++ b/client/src/test/java/org/asynchttpclient/test/EventCollectingHandler.java @@ -20,6 +20,7 @@ import org.asynchttpclient.netty.request.NettyRequest; import org.testng.Assert; +import javax.net.ssl.SSLSession; import java.net.InetSocketAddress; import java.util.List; import java.util.Queue; @@ -128,7 +129,7 @@ public void onTlsHandshakeAttempt() { } @Override - public void onTlsHandshakeSuccess() { + public void onTlsHandshakeSuccess(SSLSession sslSession) { firedEvents.add(TLS_HANDSHAKE_SUCCESS_EVENT); } From 39df342f1a133fa9e8c2840e756ba51e044956cc Mon Sep 17 00:00:00 2001 From: Rolando Manrique Date: Tue, 13 Nov 2018 10:16:17 -0800 Subject: [PATCH 2/2] assertNotNull sslSession onTlsHandshakeSuccess test --- .../java/org/asynchttpclient/test/EventCollectingHandler.java | 1 + 1 file changed, 1 insertion(+) diff --git a/client/src/test/java/org/asynchttpclient/test/EventCollectingHandler.java b/client/src/test/java/org/asynchttpclient/test/EventCollectingHandler.java index 9a7ad628ae..8047c5f843 100644 --- a/client/src/test/java/org/asynchttpclient/test/EventCollectingHandler.java +++ b/client/src/test/java/org/asynchttpclient/test/EventCollectingHandler.java @@ -130,6 +130,7 @@ public void onTlsHandshakeAttempt() { @Override public void onTlsHandshakeSuccess(SSLSession sslSession) { + Assert.assertNotNull(sslSession); firedEvents.add(TLS_HANDSHAKE_SUCCESS_EVENT); }