class org.xnio.nio.NioTcpServer$1 implements org.xnio.management.XnioServerMXBean
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.xnio.nio.NioTcpServer$1
  super_class: java.lang.Object
{
  final org.xnio.nio.NioTcpServer this$0;
    descriptor: Lorg/xnio/nio/NioTcpServer;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private final org.xnio.nio.NioXnioWorker val$worker;
    descriptor: Lorg/xnio/nio/NioXnioWorker;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final org.xnio.nio.NioTcpServerHandle[] val$handles;
    descriptor: [Lorg/xnio/nio/NioTcpServerHandle;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  void <init>(org.xnio.nio.NioTcpServer, org.xnio.nio.NioXnioWorker, org.xnio.nio.NioTcpServerHandle[]);
    descriptor: (Lorg/xnio/nio/NioTcpServer;Lorg/xnio/nio/NioXnioWorker;[Lorg/xnio/nio/NioTcpServerHandle;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.xnio.nio.NioTcpServer$1 this
         0: .line 193
            aload 0 /* this */
            aload 1
            putfield org.xnio.nio.NioTcpServer$1.this$0:Lorg/xnio/nio/NioTcpServer;
            aload 0 /* this */
            aload 2
            putfield org.xnio.nio.NioTcpServer$1.val$worker:Lorg/xnio/nio/NioXnioWorker;
            aload 0 /* this */
            aload 3
            putfield org.xnio.nio.NioTcpServer$1.val$handles:[Lorg/xnio/nio/NioTcpServerHandle;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.xnio.nio.NioTcpServer$1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/xnio/nio/NioTcpServer$1;
    MethodParameters:
             Name  Flags
      this$0       final
      val$worker   final
      val$handles  final

  public java.lang.String getProviderName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.xnio.nio.NioTcpServer$1 this
         0: .line 195
            ldc "nio"
            areturn
        end local 0 // org.xnio.nio.NioTcpServer$1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/xnio/nio/NioTcpServer$1;

  public java.lang.String getWorkerName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.xnio.nio.NioTcpServer$1 this
         0: .line 199
            aload 0 /* this */
            getfield org.xnio.nio.NioTcpServer$1.val$worker:Lorg/xnio/nio/NioXnioWorker;
            invokevirtual org.xnio.nio.NioXnioWorker.getName:()Ljava/lang/String;
            areturn
        end local 0 // org.xnio.nio.NioTcpServer$1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/xnio/nio/NioTcpServer$1;

  public java.lang.String getBindAddress();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.xnio.nio.NioTcpServer$1 this
         0: .line 203
            aload 0 /* this */
            getfield org.xnio.nio.NioTcpServer$1.this$0:Lorg/xnio/nio/NioTcpServer;
            invokevirtual org.xnio.nio.NioTcpServer.getLocalAddress:()Ljava/net/SocketAddress;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 0 // org.xnio.nio.NioTcpServer$1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/xnio/nio/NioTcpServer$1;

  public int getConnectionCount();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // org.xnio.nio.NioTcpServer$1 this
         0: .line 207
            new java.util.concurrent.atomic.AtomicInteger
            dup
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
            astore 1 /* counter */
        start local 1 // java.util.concurrent.atomic.AtomicInteger counter
         1: .line 208
            new java.util.concurrent.CountDownLatch
            dup
            aload 0 /* this */
            getfield org.xnio.nio.NioTcpServer$1.val$handles:[Lorg/xnio/nio/NioTcpServerHandle;
            arraylength
            invokespecial java.util.concurrent.CountDownLatch.<init>:(I)V
            astore 2 /* latch */
        start local 2 // java.util.concurrent.CountDownLatch latch
         2: .line 209
            aload 0 /* this */
            getfield org.xnio.nio.NioTcpServer$1.val$handles:[Lorg/xnio/nio/NioTcpServerHandle;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 6
      StackMap locals: org.xnio.nio.NioTcpServer$1 java.util.concurrent.atomic.AtomicInteger java.util.concurrent.CountDownLatch top int int org.xnio.nio.NioTcpServerHandle[]
      StackMap stack:
         3: aload 6
            iload 4
            aaload
            astore 3 /* handle */
        start local 3 // org.xnio.nio.NioTcpServerHandle handle
         4: .line 210
            aload 3 /* handle */
            invokevirtual org.xnio.nio.NioTcpServerHandle.getWorkerThread:()Lorg/xnio/nio/WorkerThread;
            aload 1 /* counter */
            aload 3 /* handle */
            aload 2 /* latch */
            invokedynamic run(Ljava/util/concurrent/atomic/AtomicInteger;Lorg/xnio/nio/NioTcpServerHandle;Ljava/util/concurrent/CountDownLatch;)Ljava/lang/Runnable;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()V
                  org/xnio/nio/NioTcpServer$1.lambda$0(Ljava/util/concurrent/atomic/AtomicInteger;Lorg/xnio/nio/NioTcpServerHandle;Ljava/util/concurrent/CountDownLatch;)V (6)
                  ()V
            invokevirtual org.xnio.nio.WorkerThread.execute:(Ljava/lang/Runnable;)V
        end local 3 // org.xnio.nio.NioTcpServerHandle handle
         5: .line 209
            iinc 4 1
      StackMap locals:
      StackMap stack:
         6: iload 4
            iload 5
            if_icmplt 3
         7: .line 216
            aload 2 /* latch */
            invokevirtual java.util.concurrent.CountDownLatch.await:()V
         8: .line 217
            goto 11
      StackMap locals: org.xnio.nio.NioTcpServer$1 java.util.concurrent.atomic.AtomicInteger java.util.concurrent.CountDownLatch
      StackMap stack: java.lang.InterruptedException
         9: pop
        10: .line 218
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.interrupt:()V
        11: .line 220
      StackMap locals:
      StackMap stack:
            aload 1 /* counter */
            invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
            ireturn
        end local 2 // java.util.concurrent.CountDownLatch latch
        end local 1 // java.util.concurrent.atomic.AtomicInteger counter
        end local 0 // org.xnio.nio.NioTcpServer$1 this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lorg/xnio/nio/NioTcpServer$1;
            1   12     1  counter  Ljava/util/concurrent/atomic/AtomicInteger;
            2   12     2    latch  Ljava/util/concurrent/CountDownLatch;
            4    5     3   handle  Lorg/xnio/nio/NioTcpServerHandle;
      Exception table:
        from    to  target  type
           7     8       9  Class java.lang.InterruptedException

  public int getConnectionLimitHighWater();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.xnio.nio.NioTcpServer$1 this
         0: .line 224
            aload 0 /* this */
            getfield org.xnio.nio.NioTcpServer$1.this$0:Lorg/xnio/nio/NioTcpServer;
            getfield org.xnio.nio.NioTcpServer.connectionStatus:J
            invokestatic org.xnio.nio.NioTcpServer.getHighWater:(J)I
            ireturn
        end local 0 // org.xnio.nio.NioTcpServer$1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/xnio/nio/NioTcpServer$1;

  public int getConnectionLimitLowWater();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.xnio.nio.NioTcpServer$1 this
         0: .line 228
            aload 0 /* this */
            getfield org.xnio.nio.NioTcpServer$1.this$0:Lorg/xnio/nio/NioTcpServer;
            getfield org.xnio.nio.NioTcpServer.connectionStatus:J
            invokestatic org.xnio.nio.NioTcpServer.getLowWater:(J)I
            ireturn
        end local 0 // org.xnio.nio.NioTcpServer$1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/xnio/nio/NioTcpServer$1;

  private static void lambda$0(java.util.concurrent.atomic.AtomicInteger, org.xnio.nio.NioTcpServerHandle, java.util.concurrent.CountDownLatch);
    descriptor: (Ljava/util/concurrent/atomic/AtomicInteger;Lorg/xnio/nio/NioTcpServerHandle;Ljava/util/concurrent/CountDownLatch;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
         0: .line 211
            aload 0
            aload 1
            invokevirtual org.xnio.nio.NioTcpServerHandle.getConnectionCount:()I
            invokevirtual java.util.concurrent.atomic.AtomicInteger.getAndAdd:(I)I
            pop
         1: .line 212
            aload 2
            invokevirtual java.util.concurrent.CountDownLatch.countDown:()V
         2: .line 213
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "NioTcpServer.java"
EnclosingMethod: org.xnio.nio.NioTcpServer.<init>:(Lorg/xnio/nio/NioXnioWorker;Ljava/nio/channels/ServerSocketChannel;Lorg/xnio/OptionMap;)V
NestHost: org.xnio.nio.NioTcpServer
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  org.xnio.nio.NioTcpServer$1