TestHandler Class — netty Architecture
Architecture documentation for the TestHandler class in SocketSslClientRenegotiateTest.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD a7362f2c_3eb0_7dff_8cce_215badc0aad4["TestHandler"] 500bc459_e062_3134_53ae_67c8ad4b6bba["SocketSslClientRenegotiateTest.java"] a7362f2c_3eb0_7dff_8cce_215badc0aad4 -->|defined in| 500bc459_e062_3134_53ae_67c8ad4b6bba 6b523457_481e_f266_13d5_2913de5fc08d["TestHandler()"] a7362f2c_3eb0_7dff_8cce_215badc0aad4 -->|method| 6b523457_481e_f266_13d5_2913de5fc08d 5bb23fb3_1b20_c819_a629_c6c133172694["channelReadComplete()"] a7362f2c_3eb0_7dff_8cce_215badc0aad4 -->|method| 5bb23fb3_1b20_c819_a629_c6c133172694 e0e3a288_50d7_412a_4ca4_c5c4dc8a7d77["exceptionCaught()"] a7362f2c_3eb0_7dff_8cce_215badc0aad4 -->|method| e0e3a288_50d7_412a_4ca4_c5c4dc8a7d77 4931b92d_3c95_cc9f_c625_ad43b0a6af89["userEventTriggered()"] a7362f2c_3eb0_7dff_8cce_215badc0aad4 -->|method| 4931b92d_3c95_cc9f_c625_ad43b0a6af89 543c6d43_e7a6_aef3_2b91_342bafba3f64["channelRead0()"] a7362f2c_3eb0_7dff_8cce_215badc0aad4 -->|method| 543c6d43_e7a6_aef3_2b91_342bafba3f64
Relationship Graph
Source Code
testsuite/src/main/java/io/netty/testsuite/transport/socket/SocketSslClientRenegotiateTest.java lines 226–267
@Sharable
private static final class TestHandler extends SimpleChannelInboundHandler<ByteBuf> {
protected final AtomicReference<Throwable> exception;
private int handshakeCounter;
TestHandler(AtomicReference<Throwable> exception) {
this.exception = exception;
}
@Override
public void channelReadComplete(ChannelHandlerContext ctx) throws Exception {
ctx.flush();
}
@Override
public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) throws Exception {
exception.compareAndSet(null, cause);
ctx.close();
}
@Override
public void userEventTriggered(ChannelHandlerContext ctx, Object evt) throws Exception {
if (evt instanceof SslHandshakeCompletionEvent) {
SslHandshakeCompletionEvent handshakeEvt = (SslHandshakeCompletionEvent) evt;
if (handshakeCounter == 0) {
handshakeCounter++;
if (handshakeEvt.cause() != null) {
logger.warn("Handshake failed:", handshakeEvt.cause());
}
assertSame(SslHandshakeCompletionEvent.SUCCESS, evt);
} else {
if (ctx.channel().parent() == null) {
assertTrue(handshakeEvt.cause() instanceof ClosedChannelException);
}
}
}
}
@Override
public void channelRead0(ChannelHandlerContext ctx, ByteBuf in) throws Exception { }
}
Defined In
Source
Frequently Asked Questions
What is the TestHandler class?
TestHandler is a class in the netty codebase, defined in testsuite/src/main/java/io/netty/testsuite/transport/socket/SocketSslClientRenegotiateTest.java.
Where is TestHandler defined?
TestHandler is defined in testsuite/src/main/java/io/netty/testsuite/transport/socket/SocketSslClientRenegotiateTest.java at line 226.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free