class io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor extends io.netty.channel.ChannelInboundHandlerAdapter
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor
  super_class: io.netty.channel.ChannelInboundHandlerAdapter
{
  private final io.netty.channel.EventLoopGroup childGroup;
    descriptor: Lio/netty/channel/EventLoopGroup;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.netty.channel.ChannelHandler childHandler;
    descriptor: Lio/netty/channel/ChannelHandler;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Map$Entry<io.netty.channel.ChannelOption<?>, java.lang.Object>[] childOptions;
    descriptor: [Ljava/util/Map$Entry;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: [Ljava/util/Map$Entry<Lio/netty/channel/ChannelOption<*>;Ljava/lang/Object;>;

  private final java.util.Map$Entry<io.netty.util.AttributeKey<?>, java.lang.Object>[] childAttrs;
    descriptor: [Ljava/util/Map$Entry;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: [Ljava/util/Map$Entry<Lio/netty/util/AttributeKey<*>;Ljava/lang/Object;>;

  private final java.lang.Runnable enableAutoReadTask;
    descriptor: Ljava/lang/Runnable;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  void <init>(io.netty.channel.Channel, io.netty.channel.EventLoopGroup, io.netty.channel.ChannelHandler, java.util.Map$Entry<io.netty.channel.ChannelOption<?>, java.lang.Object>[], java.util.Map$Entry<io.netty.util.AttributeKey<?>, java.lang.Object>[]);
    descriptor: (Lio/netty/channel/Channel;Lio/netty/channel/EventLoopGroup;Lio/netty/channel/ChannelHandler;[Ljava/util/Map$Entry;[Ljava/util/Map$Entry;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=6, args_size=6
        start local 0 // io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor this
        start local 1 // io.netty.channel.Channel channel
        start local 2 // io.netty.channel.EventLoopGroup childGroup
        start local 3 // io.netty.channel.ChannelHandler childHandler
        start local 4 // java.util.Map$Entry[] childOptions
        start local 5 // java.util.Map$Entry[] childAttrs
         0: .line 220
            aload 0 /* this */
            invokespecial io.netty.channel.ChannelInboundHandlerAdapter.<init>:()V
         1: .line 223
            aload 0 /* this */
            aload 2 /* childGroup */
            putfield io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor.childGroup:Lio/netty/channel/EventLoopGroup;
         2: .line 224
            aload 0 /* this */
            aload 3 /* childHandler */
            putfield io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor.childHandler:Lio/netty/channel/ChannelHandler;
         3: .line 225
            aload 0 /* this */
            aload 4 /* childOptions */
            putfield io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor.childOptions:[Ljava/util/Map$Entry;
         4: .line 226
            aload 0 /* this */
            aload 5 /* childAttrs */
            putfield io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor.childAttrs:[Ljava/util/Map$Entry;
         5: .line 233
            aload 0 /* this */
            new io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1
            dup
            aload 0 /* this */
            aload 1 /* channel */
            invokespecial io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1.<init>:(Lio/netty/bootstrap/ServerBootstrap$ServerBootstrapAcceptor;Lio/netty/channel/Channel;)V
            putfield io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor.enableAutoReadTask:Ljava/lang/Runnable;
         6: .line 239
            return
        end local 5 // java.util.Map$Entry[] childAttrs
        end local 4 // java.util.Map$Entry[] childOptions
        end local 3 // io.netty.channel.ChannelHandler childHandler
        end local 2 // io.netty.channel.EventLoopGroup childGroup
        end local 1 // io.netty.channel.Channel channel
        end local 0 // io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0          this  Lio/netty/bootstrap/ServerBootstrap$ServerBootstrapAcceptor;
            0    7     1       channel  Lio/netty/channel/Channel;
            0    7     2    childGroup  Lio/netty/channel/EventLoopGroup;
            0    7     3  childHandler  Lio/netty/channel/ChannelHandler;
            0    7     4  childOptions  [Ljava/util/Map$Entry;
            0    7     5    childAttrs  [Ljava/util/Map$Entry;
    Signature: (Lio/netty/channel/Channel;Lio/netty/channel/EventLoopGroup;Lio/netty/channel/ChannelHandler;[Ljava/util/Map$Entry<Lio/netty/channel/ChannelOption<*>;Ljava/lang/Object;>;[Ljava/util/Map$Entry<Lio/netty/util/AttributeKey<*>;Ljava/lang/Object;>;)V
    MethodParameters:
              Name  Flags
      channel       final
      childGroup    
      childHandler  
      childOptions  
      childAttrs    

  public void channelRead(io.netty.channel.ChannelHandlerContext, java.lang.Object);
    descriptor: (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor this
        start local 1 // io.netty.channel.ChannelHandlerContext ctx
        start local 2 // java.lang.Object msg
         0: .line 244
            aload 2 /* msg */
            checkcast io.netty.channel.Channel
            astore 3 /* child */
        start local 3 // io.netty.channel.Channel child
         1: .line 246
            aload 3 /* child */
            invokeinterface io.netty.channel.Channel.pipeline:()Lio/netty/channel/ChannelPipeline;
            iconst_1
            anewarray io.netty.channel.ChannelHandler
            dup
            iconst_0
            aload 0 /* this */
            getfield io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor.childHandler:Lio/netty/channel/ChannelHandler;
            aastore
            invokeinterface io.netty.channel.ChannelPipeline.addLast:([Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
            pop
         2: .line 248
            aload 3 /* child */
            aload 0 /* this */
            getfield io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor.childOptions:[Ljava/util/Map$Entry;
            getstatic io.netty.bootstrap.ServerBootstrap.logger:Lio/netty/util/internal/logging/InternalLogger;
            invokestatic io.netty.bootstrap.ServerBootstrap.setChannelOptions:(Lio/netty/channel/Channel;[Ljava/util/Map$Entry;Lio/netty/util/internal/logging/InternalLogger;)V
         3: .line 250
            aload 0 /* this */
            getfield io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor.childAttrs:[Ljava/util/Map$Entry;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 7
      StackMap locals: io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor io.netty.channel.ChannelHandlerContext java.lang.Object io.netty.channel.Channel top int int java.util.Map$Entry[]
      StackMap stack:
         4: aload 7
            iload 5
            aaload
            astore 4 /* e */
        start local 4 // java.util.Map$Entry e
         5: .line 251
            aload 3 /* child */
            aload 4 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast io.netty.util.AttributeKey
            invokeinterface io.netty.channel.Channel.attr:(Lio/netty/util/AttributeKey;)Lio/netty/util/Attribute;
            aload 4 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            invokeinterface io.netty.util.Attribute.set:(Ljava/lang/Object;)V
        end local 4 // java.util.Map$Entry e
         6: .line 250
            iinc 5 1
      StackMap locals:
      StackMap stack:
         7: iload 5
            iload 6
            if_icmplt 4
         8: .line 255
            aload 0 /* this */
            getfield io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor.childGroup:Lio/netty/channel/EventLoopGroup;
            aload 3 /* child */
            invokeinterface io.netty.channel.EventLoopGroup.register:(Lio/netty/channel/Channel;)Lio/netty/channel/ChannelFuture;
            new io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$2
            dup
            aload 0 /* this */
            aload 3 /* child */
            invokespecial io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$2.<init>:(Lio/netty/bootstrap/ServerBootstrap$ServerBootstrapAcceptor;Lio/netty/channel/Channel;)V
            invokeinterface io.netty.channel.ChannelFuture.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelFuture;
            pop
         9: .line 263
            goto 12
      StackMap locals: io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor io.netty.channel.ChannelHandlerContext java.lang.Object io.netty.channel.Channel
      StackMap stack: java.lang.Throwable
        10: astore 4 /* t */
        start local 4 // java.lang.Throwable t
        11: .line 264
            aload 3 /* child */
            aload 4 /* t */
            invokestatic io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor.forceClose:(Lio/netty/channel/Channel;Ljava/lang/Throwable;)V
        end local 4 // java.lang.Throwable t
        12: .line 266
      StackMap locals:
      StackMap stack:
            return
        end local 3 // io.netty.channel.Channel child
        end local 2 // java.lang.Object msg
        end local 1 // io.netty.channel.ChannelHandlerContext ctx
        end local 0 // io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   13     0   this  Lio/netty/bootstrap/ServerBootstrap$ServerBootstrapAcceptor;
            0   13     1    ctx  Lio/netty/channel/ChannelHandlerContext;
            0   13     2    msg  Ljava/lang/Object;
            1   13     3  child  Lio/netty/channel/Channel;
            5    6     4      e  Ljava/util/Map$Entry<Lio/netty/util/AttributeKey<*>;Ljava/lang/Object;>;
           11   12     4      t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           8     9      10  Class java.lang.Throwable
    MethodParameters:
      Name  Flags
      ctx   
      msg   

  private static void forceClose(io.netty.channel.Channel, java.lang.Throwable);
    descriptor: (Lio/netty/channel/Channel;Ljava/lang/Throwable;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // io.netty.channel.Channel child
        start local 1 // java.lang.Throwable t
         0: .line 269
            aload 0 /* child */
            invokeinterface io.netty.channel.Channel.unsafe:()Lio/netty/channel/Channel$Unsafe;
            invokeinterface io.netty.channel.Channel$Unsafe.closeForcibly:()V
         1: .line 270
            getstatic io.netty.bootstrap.ServerBootstrap.logger:Lio/netty/util/internal/logging/InternalLogger;
            ldc "Failed to register an accepted channel: {}"
            aload 0 /* child */
            aload 1 /* t */
            invokeinterface io.netty.util.internal.logging.InternalLogger.warn:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 271
            return
        end local 1 // java.lang.Throwable t
        end local 0 // io.netty.channel.Channel child
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  child  Lio/netty/channel/Channel;
            0    3     1      t  Ljava/lang/Throwable;
    MethodParameters:
       Name  Flags
      child  
      t      

  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=4, args_size=3
        start local 0 // io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor this
        start local 1 // io.netty.channel.ChannelHandlerContext ctx
        start local 2 // java.lang.Throwable cause
         0: .line 275
            aload 1 /* ctx */
            invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
            invokeinterface io.netty.channel.Channel.config:()Lio/netty/channel/ChannelConfig;
            astore 3 /* config */
        start local 3 // io.netty.channel.ChannelConfig config
         1: .line 276
            aload 3 /* config */
            invokeinterface io.netty.channel.ChannelConfig.isAutoRead:()Z
            ifeq 4
         2: .line 279
            aload 3 /* config */
            iconst_0
            invokeinterface io.netty.channel.ChannelConfig.setAutoRead:(Z)Lio/netty/channel/ChannelConfig;
            pop
         3: .line 280
            aload 1 /* ctx */
            invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
            invokeinterface io.netty.channel.Channel.eventLoop:()Lio/netty/channel/EventLoop;
            aload 0 /* this */
            getfield io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor.enableAutoReadTask:Ljava/lang/Runnable;
            lconst_1
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
            invokeinterface io.netty.channel.EventLoop.schedule:(Ljava/lang/Runnable;JLjava/util/concurrent/TimeUnit;)Lio/netty/util/concurrent/ScheduledFuture;
            pop
         4: .line 284
      StackMap locals: io.netty.channel.ChannelConfig
      StackMap stack:
            aload 1 /* ctx */
            aload 2 /* cause */
            invokeinterface io.netty.channel.ChannelHandlerContext.fireExceptionCaught:(Ljava/lang/Throwable;)Lio/netty/channel/ChannelHandlerContext;
            pop
         5: .line 285
            return
        end local 3 // io.netty.channel.ChannelConfig config
        end local 2 // java.lang.Throwable cause
        end local 1 // io.netty.channel.ChannelHandlerContext ctx
        end local 0 // io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lio/netty/bootstrap/ServerBootstrap$ServerBootstrapAcceptor;
            0    6     1     ctx  Lio/netty/channel/ChannelHandlerContext;
            0    6     2   cause  Ljava/lang/Throwable;
            1    6     3  config  Lio/netty/channel/ChannelConfig;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
       Name  Flags
      ctx    
      cause  
}
SourceFile: "ServerBootstrap.java"
NestHost: io.netty.bootstrap.ServerBootstrap
InnerClasses:
  private ServerBootstrapAcceptor = io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor of io.netty.bootstrap.ServerBootstrap
  io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1
  io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$2
  public abstract Unsafe = io.netty.channel.Channel$Unsafe of io.netty.channel.Channel
  public abstract Entry = java.util.Map$Entry of java.util.Map