public final class org.apache.cassandra.transport.Message$ExceptionHandler extends io.netty.channel.ChannelInboundHandlerAdapter
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.apache.cassandra.transport.Message$ExceptionHandler
  super_class: io.netty.channel.ChannelInboundHandlerAdapter
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.transport.Message$ExceptionHandler this
         0: .line 746
            aload 0 /* this */
            invokespecial io.netty.channel.ChannelInboundHandlerAdapter.<init>:()V
            return
        end local 0 // org.apache.cassandra.transport.Message$ExceptionHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/transport/Message$ExceptionHandler;

  public void exceptionCaught(io.netty.channel.ChannelHandlerContext, java.lang.Throwable);
    descriptor: (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Throwable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // org.apache.cassandra.transport.Message$ExceptionHandler this
        start local 1 // io.netty.channel.ChannelHandlerContext ctx
        start local 2 // java.lang.Throwable cause
         0: .line 753
            new org.apache.cassandra.transport.Message$UnexpectedChannelExceptionHandler
            dup
            aload 1 /* ctx */
            invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
            iconst_0
            invokespecial org.apache.cassandra.transport.Message$UnexpectedChannelExceptionHandler.<init>:(Lio/netty/channel/Channel;Z)V
            astore 3 /* handler */
        start local 3 // org.apache.cassandra.transport.Message$UnexpectedChannelExceptionHandler handler
         1: .line 754
            aload 2 /* cause */
            aload 3 /* handler */
            invokestatic org.apache.cassandra.transport.messages.ErrorMessage.fromException:(Ljava/lang/Throwable;Lcom/google/common/base/Predicate;)Lorg/apache/cassandra/transport/messages/ErrorMessage;
            astore 4 /* errorMessage */
        start local 4 // org.apache.cassandra.transport.messages.ErrorMessage errorMessage
         2: .line 755
            aload 1 /* ctx */
            invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
            invokeinterface io.netty.channel.Channel.isOpen:()Z
            ifeq 6
         3: .line 757
            aload 1 /* ctx */
            aload 4 /* errorMessage */
            invokeinterface io.netty.channel.ChannelHandlerContext.writeAndFlush:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
            astore 5 /* future */
        start local 5 // io.netty.channel.ChannelFuture future
         4: .line 759
            aload 2 /* cause */
            instanceof org.apache.cassandra.transport.ProtocolException
            ifeq 6
         5: .line 761
            aload 5 /* future */
            new org.apache.cassandra.transport.Message$ExceptionHandler$1
            dup
            aload 0 /* this */
            aload 1 /* ctx */
            invokespecial org.apache.cassandra.transport.Message$ExceptionHandler$1.<init>:(Lorg/apache/cassandra/transport/Message$ExceptionHandler;Lio/netty/channel/ChannelHandlerContext;)V
            invokeinterface io.netty.channel.ChannelFuture.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelFuture;
            pop
        end local 5 // io.netty.channel.ChannelFuture future
         6: .line 770
      StackMap locals: org.apache.cassandra.transport.Message$UnexpectedChannelExceptionHandler org.apache.cassandra.transport.messages.ErrorMessage
      StackMap stack:
            return
        end local 4 // org.apache.cassandra.transport.messages.ErrorMessage errorMessage
        end local 3 // org.apache.cassandra.transport.Message$UnexpectedChannelExceptionHandler handler
        end local 2 // java.lang.Throwable cause
        end local 1 // io.netty.channel.ChannelHandlerContext ctx
        end local 0 // org.apache.cassandra.transport.Message$ExceptionHandler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0          this  Lorg/apache/cassandra/transport/Message$ExceptionHandler;
            0    7     1           ctx  Lio/netty/channel/ChannelHandlerContext;
            0    7     2         cause  Ljava/lang/Throwable;
            1    7     3       handler  Lorg/apache/cassandra/transport/Message$UnexpectedChannelExceptionHandler;
            2    7     4  errorMessage  Lorg/apache/cassandra/transport/messages/ErrorMessage;
            4    6     5        future  Lio/netty/channel/ChannelFuture;
    MethodParameters:
       Name  Flags
      ctx    final
      cause  
}
SourceFile: "Message.java"
NestHost: org.apache.cassandra.transport.Message
InnerClasses:
  public abstract Sharable = io.netty.channel.ChannelHandler$Sharable of io.netty.channel.ChannelHandler
  public final ExceptionHandler = org.apache.cassandra.transport.Message$ExceptionHandler of org.apache.cassandra.transport.Message
  org.apache.cassandra.transport.Message$ExceptionHandler$1
  final UnexpectedChannelExceptionHandler = org.apache.cassandra.transport.Message$UnexpectedChannelExceptionHandler of org.apache.cassandra.transport.Message
    RuntimeVisibleAnnotations: 
      io.netty.channel.ChannelHandler$Sharable()