public class SslHandshakeTimingHandler
extends io.netty.channel.ChannelOutboundHandlerAdapter
SslHandler is added to ChannelPipeline.
This handler is added after SslHandler, so technically this timer is started after hand shake begins,
but the difference should be negligible.| Modifier and Type | Field and Description |
|---|---|
static io.netty.util.AttributeKey<java.lang.Long> |
SSL_HANDSHAKE_START_TIME |
static java.lang.String |
SSL_HANDSHAKE_TIMING_HANDLER |
static com.linkedin.r2.message.timing.TimingKey |
TIMING_KEY |
| Constructor and Description |
|---|
SslHandshakeTimingHandler(io.netty.util.concurrent.Future<io.netty.channel.Channel> handshakeFuture) |
| Modifier and Type | Method and Description |
|---|---|
static <T> com.linkedin.r2.transport.common.bridge.common.TransportCallback<T> |
getSslTimingCallback(io.netty.channel.Channel channel,
com.linkedin.r2.message.RequestContext requestContext,
com.linkedin.r2.transport.common.bridge.common.TransportCallback<T> callback) |
void |
handlerAdded(io.netty.channel.ChannelHandlerContext ctx) |
bind, close, connect, deregister, disconnect, flush, read, writeensureNotSharable, exceptionCaught, handlerRemoved, isSharablepublic static final java.lang.String SSL_HANDSHAKE_TIMING_HANDLER
public static final io.netty.util.AttributeKey<java.lang.Long> SSL_HANDSHAKE_START_TIME
public static final com.linkedin.r2.message.timing.TimingKey TIMING_KEY
public SslHandshakeTimingHandler(io.netty.util.concurrent.Future<io.netty.channel.Channel> handshakeFuture)
public void handlerAdded(io.netty.channel.ChannelHandlerContext ctx)
throws java.lang.Exception
handlerAdded in interface io.netty.channel.ChannelHandlerhandlerAdded in class io.netty.channel.ChannelHandlerAdapterjava.lang.Exceptionpublic static <T> com.linkedin.r2.transport.common.bridge.common.TransportCallback<T> getSslTimingCallback(io.netty.channel.Channel channel,
com.linkedin.r2.message.RequestContext requestContext,
com.linkedin.r2.transport.common.bridge.common.TransportCallback<T> callback)