public abstract class org.glassfish.grizzly.nio.NIOConnection implements org.glassfish.grizzly.Connection<java.net.SocketAddress>
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.glassfish.grizzly.nio.NIOConnection
  super_class: java.lang.Object
{
  protected static final java.lang.Object NOTIFICATION_INITIALIZED;
    descriptor: Ljava/lang/Object;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL

  protected static final java.lang.Object NOTIFICATION_CLOSED_COMPLETE;
    descriptor: Ljava/lang/Object;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL

  private static final boolean WIN32;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.logging.Logger LOGGER;
    descriptor: Ljava/util/logging/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final short MAX_ZERO_READ_COUNT;
    descriptor: S
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 100

  private boolean isInitialReadRequired;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  protected final org.glassfish.grizzly.nio.NIOTransport transport;
    descriptor: Lorg/glassfish/grizzly/nio/NIOTransport;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected volatile int maxAsyncWriteQueueSize;
    descriptor: I
    flags: (0x0044) ACC_PROTECTED, ACC_VOLATILE

  protected volatile long readTimeoutMillis;
    descriptor: J
    flags: (0x0044) ACC_PROTECTED, ACC_VOLATILE

  protected volatile long writeTimeoutMillis;
    descriptor: J
    flags: (0x0044) ACC_PROTECTED, ACC_VOLATILE

  protected volatile java.nio.channels.SelectableChannel channel;
    descriptor: Ljava/nio/channels/SelectableChannel;
    flags: (0x0044) ACC_PROTECTED, ACC_VOLATILE

  protected volatile java.nio.channels.SelectionKey selectionKey;
    descriptor: Ljava/nio/channels/SelectionKey;
    flags: (0x0044) ACC_PROTECTED, ACC_VOLATILE

  protected volatile org.glassfish.grizzly.nio.SelectorRunner selectorRunner;
    descriptor: Lorg/glassfish/grizzly/nio/SelectorRunner;
    flags: (0x0044) ACC_PROTECTED, ACC_VOLATILE

  protected volatile org.glassfish.grizzly.Processor processor;
    descriptor: Lorg/glassfish/grizzly/Processor;
    flags: (0x0044) ACC_PROTECTED, ACC_VOLATILE

  protected volatile org.glassfish.grizzly.ProcessorSelector processorSelector;
    descriptor: Lorg/glassfish/grizzly/ProcessorSelector;
    flags: (0x0044) ACC_PROTECTED, ACC_VOLATILE

  protected final org.glassfish.grizzly.attributes.AttributeHolder attributes;
    descriptor: Lorg/glassfish/grizzly/attributes/AttributeHolder;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  private volatile org.glassfish.grizzly.asyncqueue.TaskQueue<org.glassfish.grizzly.asyncqueue.AsyncReadQueueRecord> asyncReadQueue;
    descriptor: Lorg/glassfish/grizzly/asyncqueue/TaskQueue;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
    Signature: Lorg/glassfish/grizzly/asyncqueue/TaskQueue<Lorg/glassfish/grizzly/asyncqueue/AsyncReadQueueRecord;>;

  private final org.glassfish.grizzly.asyncqueue.TaskQueue<org.glassfish.grizzly.asyncqueue.AsyncWriteQueueRecord> asyncWriteQueue;
    descriptor: Lorg/glassfish/grizzly/asyncqueue/TaskQueue;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lorg/glassfish/grizzly/asyncqueue/TaskQueue<Lorg/glassfish/grizzly/asyncqueue/AsyncWriteQueueRecord;>;

  protected static final java.util.concurrent.atomic.AtomicReferenceFieldUpdater<org.glassfish.grizzly.nio.NIOConnection, java.lang.Object> connectCloseSemaphoreUpdater;
    descriptor: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<Lorg/glassfish/grizzly/nio/NIOConnection;Ljava/lang/Object;>;

  private volatile java.lang.Object connectCloseSemaphore;
    descriptor: Ljava/lang/Object;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private final java.util.concurrent.atomic.AtomicBoolean isCloseScheduled;
    descriptor: Ljava/util/concurrent/atomic/AtomicBoolean;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final java.util.concurrent.atomic.AtomicReferenceFieldUpdater<org.glassfish.grizzly.nio.NIOConnection, org.glassfish.grizzly.CloseReason> closeReasonUpdater;
    descriptor: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<Lorg/glassfish/grizzly/nio/NIOConnection;Lorg/glassfish/grizzly/CloseReason;>;

  private volatile org.glassfish.grizzly.CloseReason closeReason;
    descriptor: Lorg/glassfish/grizzly/CloseReason;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private volatile org.glassfish.grizzly.GrizzlyFuture<org.glassfish.grizzly.CloseReason> closeFuture;
    descriptor: Lorg/glassfish/grizzly/GrizzlyFuture;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
    Signature: Lorg/glassfish/grizzly/GrizzlyFuture<Lorg/glassfish/grizzly/CloseReason;>;

  protected volatile boolean isBlocking;
    descriptor: Z
    flags: (0x0044) ACC_PROTECTED, ACC_VOLATILE

  protected volatile boolean isStandalone;
    descriptor: Z
    flags: (0x0044) ACC_PROTECTED, ACC_VOLATILE

  protected short zeroByteReadCount;
    descriptor: S
    flags: (0x0004) ACC_PROTECTED

  private final java.util.List<org.glassfish.grizzly.CloseListener> closeListeners;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lorg/glassfish/grizzly/CloseListener;>;

  private final org.glassfish.grizzly.nio.NIOConnection$ProcessorStatesMap processorStateStorage;
    descriptor: Lorg/glassfish/grizzly/nio/NIOConnection$ProcessorStatesMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected final org.glassfish.grizzly.monitoring.DefaultMonitoringConfig<org.glassfish.grizzly.ConnectionProbe> monitoringConfig;
    descriptor: Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig<Lorg/glassfish/grizzly/ConnectionProbe;>;

  private final org.glassfish.grizzly.nio.SelectorHandler$Task writeSimulatorRunnable;
    descriptor: Lorg/glassfish/grizzly/nio/SelectorHandler$Task;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.glassfish.grizzly.nio.SelectorHandler$Task readSimulatorRunnable;
    descriptor: Lorg/glassfish/grizzly/nio/SelectorHandler$Task;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$org$glassfish$grizzly$IOEvent;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 75
            ldc Lorg/glassfish/grizzly/nio/NIOConnection;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.glassfish.grizzly.nio.NIOConnection.$assertionsDisabled:Z
         3: .line 76
            getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
            putstatic org.glassfish.grizzly.nio.NIOConnection.NOTIFICATION_INITIALIZED:Ljava/lang/Object;
         4: .line 77
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            putstatic org.glassfish.grizzly.nio.NIOConnection.NOTIFICATION_CLOSED_COMPLETE:Ljava/lang/Object;
         5: .line 79
            ldc "\\"
            ldc "file.separator"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            putstatic org.glassfish.grizzly.nio.NIOConnection.WIN32:Z
         6: .line 80
            ldc Lorg/glassfish/grizzly/nio/NIOConnection;
            invokestatic org.glassfish.grizzly.Grizzly.logger:(Ljava/lang/Class;)Ljava/util/logging/Logger;
            putstatic org.glassfish.grizzly.nio.NIOConnection.LOGGER:Ljava/util/logging/Logger;
         7: .line 105
            ldc Lorg/glassfish/grizzly/nio/NIOConnection;
         8: .line 106
            ldc Ljava/lang/Object;
            ldc "connectCloseSemaphore"
         9: .line 105
            invokestatic java.util.concurrent.atomic.AtomicReferenceFieldUpdater.newUpdater:(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
        10: .line 104
            putstatic org.glassfish.grizzly.nio.NIOConnection.connectCloseSemaphoreUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
        11: .line 114
            ldc Lorg/glassfish/grizzly/nio/NIOConnection;
        12: .line 115
            ldc Lorg/glassfish/grizzly/CloseReason;
            ldc "closeReason"
        13: .line 114
            invokestatic java.util.concurrent.atomic.AtomicReferenceFieldUpdater.newUpdater:(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
        14: .line 113
            putstatic org.glassfish.grizzly.nio.NIOConnection.closeReasonUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
        15: .line 115
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.glassfish.grizzly.nio.NIOTransport);
    descriptor: (Lorg/glassfish/grizzly/nio/NIOTransport;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.nio.NIOTransport transport
         0: .line 137
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 86
            aload 0 /* this */
            iconst_1
            putfield org.glassfish.grizzly.nio.NIOConnection.isInitialReadRequired:Z
         2: .line 90
            aload 0 /* this */
            ldc 30000
            putfield org.glassfish.grizzly.nio.NIOConnection.readTimeoutMillis:J
         3: .line 91
            aload 0 /* this */
            ldc 30000
            putfield org.glassfish.grizzly.nio.NIOConnection.writeTimeoutMillis:J
         4: .line 111
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicBoolean
            dup
            invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:()V
            putfield org.glassfish.grizzly.nio.NIOConnection.isCloseScheduled:Ljava/util/concurrent/atomic/AtomicBoolean;
         5: .line 122
            aload 0 /* this */
         6: .line 123
            new java.util.LinkedList
            dup
            invokespecial java.util.LinkedList.<init>:()V
            invokestatic java.util.Collections.synchronizedList:(Ljava/util/List;)Ljava/util/List;
            putfield org.glassfish.grizzly.nio.NIOConnection.closeListeners:Ljava/util/List;
         7: .line 128
            aload 0 /* this */
         8: .line 129
            new org.glassfish.grizzly.nio.NIOConnection$ProcessorStatesMap
            dup
            invokespecial org.glassfish.grizzly.nio.NIOConnection$ProcessorStatesMap.<init>:()V
            putfield org.glassfish.grizzly.nio.NIOConnection.processorStateStorage:Lorg/glassfish/grizzly/nio/NIOConnection$ProcessorStatesMap;
         9: .line 134
            aload 0 /* this */
        10: .line 135
            new org.glassfish.grizzly.monitoring.DefaultMonitoringConfig
            dup
            ldc Lorg/glassfish/grizzly/ConnectionProbe;
            invokespecial org.glassfish.grizzly.monitoring.DefaultMonitoringConfig.<init>:(Ljava/lang/Class;)V
            putfield org.glassfish.grizzly.nio.NIOConnection.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
        11: .line 939
            aload 0 /* this */
        12: .line 940
            new org.glassfish.grizzly.nio.NIOConnection$1
            dup
            aload 0 /* this */
            invokespecial org.glassfish.grizzly.nio.NIOConnection$1.<init>:(Lorg/glassfish/grizzly/nio/NIOConnection;)V
            putfield org.glassfish.grizzly.nio.NIOConnection.writeSimulatorRunnable:Lorg/glassfish/grizzly/nio/SelectorHandler$Task;
        13: .line 949
            aload 0 /* this */
        14: .line 950
            new org.glassfish.grizzly.nio.NIOConnection$2
            dup
            aload 0 /* this */
            invokespecial org.glassfish.grizzly.nio.NIOConnection$2.<init>:(Lorg/glassfish/grizzly/nio/NIOConnection;)V
            putfield org.glassfish.grizzly.nio.NIOConnection.readSimulatorRunnable:Lorg/glassfish/grizzly/nio/SelectorHandler$Task;
        15: .line 138
            aload 0 /* this */
            aload 1 /* transport */
            putfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
        16: .line 139
            aload 0 /* this */
        17: .line 140
            new org.glassfish.grizzly.nio.NIOConnection$3
            dup
            aload 0 /* this */
            invokespecial org.glassfish.grizzly.nio.NIOConnection$3.<init>:(Lorg/glassfish/grizzly/nio/NIOConnection;)V
        18: .line 139
            invokestatic org.glassfish.grizzly.asyncqueue.TaskQueue.createTaskQueue:(Lorg/glassfish/grizzly/asyncqueue/TaskQueue$MutableMaxQueueSize;)Lorg/glassfish/grizzly/asyncqueue/TaskQueue;
            putfield org.glassfish.grizzly.nio.NIOConnection.asyncWriteQueue:Lorg/glassfish/grizzly/asyncqueue/TaskQueue;
        19: .line 148
            aload 0 /* this */
            aload 1 /* transport */
            invokevirtual org.glassfish.grizzly.nio.NIOTransport.getAttributeBuilder:()Lorg/glassfish/grizzly/attributes/AttributeBuilder;
            invokeinterface org.glassfish.grizzly.attributes.AttributeBuilder.createSafeAttributeHolder:()Lorg/glassfish/grizzly/attributes/AttributeHolder;
            putfield org.glassfish.grizzly.nio.NIOConnection.attributes:Lorg/glassfish/grizzly/attributes/AttributeHolder;
        20: .line 149
            return
        end local 1 // org.glassfish.grizzly.nio.NIOTransport transport
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   21     0       this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0   21     1  transport  Lorg/glassfish/grizzly/nio/NIOTransport;
    MethodParameters:
           Name  Flags
      transport  final

  public void configureBlocking(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // boolean isBlocking
         0: .line 153
            aload 0 /* this */
            iload 1 /* isBlocking */
            putfield org.glassfish.grizzly.nio.NIOConnection.isBlocking:Z
         1: .line 154
            return
        end local 1 // boolean isBlocking
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    2     1  isBlocking  Z
    MethodParameters:
            Name  Flags
      isBlocking  

  public boolean isBlocking();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 158
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.isBlocking:Z
            ireturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;

  public org.glassfish.grizzly.memory.MemoryManager<?> getMemoryManager();
    descriptor: ()Lorg/glassfish/grizzly/memory/MemoryManager;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 163
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
            invokevirtual org.glassfish.grizzly.nio.NIOTransport.getMemoryManager:()Lorg/glassfish/grizzly/memory/MemoryManager;
            areturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;
    Signature: ()Lorg/glassfish/grizzly/memory/MemoryManager<*>;

  public synchronized void configureStandalone(boolean);
    descriptor: (Z)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // boolean isStandalone
         0: .line 168
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.isStandalone:Z
            iload 1 /* isStandalone */
            if_icmpeq 8
         1: .line 169
            aload 0 /* this */
            iload 1 /* isStandalone */
            putfield org.glassfish.grizzly.nio.NIOConnection.isStandalone:Z
         2: .line 170
            iload 1 /* isStandalone */
            ifeq 6
         3: .line 171
            aload 0 /* this */
            getstatic org.glassfish.grizzly.StandaloneProcessor.INSTANCE:Lorg/glassfish/grizzly/StandaloneProcessor;
            putfield org.glassfish.grizzly.nio.NIOConnection.processor:Lorg/glassfish/grizzly/Processor;
         4: .line 172
            aload 0 /* this */
            getstatic org.glassfish.grizzly.StandaloneProcessorSelector.INSTANCE:Lorg/glassfish/grizzly/StandaloneProcessorSelector;
            putfield org.glassfish.grizzly.nio.NIOConnection.processorSelector:Lorg/glassfish/grizzly/ProcessorSelector;
         5: .line 173
            goto 8
         6: .line 174
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
            invokevirtual org.glassfish.grizzly.nio.NIOTransport.getProcessor:()Lorg/glassfish/grizzly/Processor;
            putfield org.glassfish.grizzly.nio.NIOConnection.processor:Lorg/glassfish/grizzly/Processor;
         7: .line 175
            aload 0 /* this */
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
            invokevirtual org.glassfish.grizzly.nio.NIOTransport.getProcessorSelector:()Lorg/glassfish/grizzly/ProcessorSelector;
            putfield org.glassfish.grizzly.nio.NIOConnection.processorSelector:Lorg/glassfish/grizzly/ProcessorSelector;
         8: .line 178
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean isStandalone
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0          this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    9     1  isStandalone  Z
    MethodParameters:
              Name  Flags
      isStandalone  

  public boolean isStandalone();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 182
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.isStandalone:Z
            ireturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;

  public org.glassfish.grizzly.Transport getTransport();
    descriptor: ()Lorg/glassfish/grizzly/Transport;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 187
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
            areturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;

  public int getMaxAsyncWriteQueueSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 195
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.maxAsyncWriteQueueSize:I
            ireturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;

  public void setMaxAsyncWriteQueueSize(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // int maxAsyncWriteQueueSize
         0: .line 203
            aload 0 /* this */
            iload 1 /* maxAsyncWriteQueueSize */
            putfield org.glassfish.grizzly.nio.NIOConnection.maxAsyncWriteQueueSize:I
         1: .line 204
            return
        end local 1 // int maxAsyncWriteQueueSize
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    2     0                    this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    2     1  maxAsyncWriteQueueSize  I
    MethodParameters:
                        Name  Flags
      maxAsyncWriteQueueSize  

  public long getReadTimeout(java.util.concurrent.TimeUnit);
    descriptor: (Ljava/util/concurrent/TimeUnit;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // java.util.concurrent.TimeUnit timeUnit
         0: .line 208
            aload 1 /* timeUnit */
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.readTimeoutMillis:J
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
            invokevirtual java.util.concurrent.TimeUnit.convert:(JLjava/util/concurrent/TimeUnit;)J
            lreturn
        end local 1 // java.util.concurrent.TimeUnit timeUnit
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    1     1  timeUnit  Ljava/util/concurrent/TimeUnit;
    MethodParameters:
          Name  Flags
      timeUnit  

  public void setReadTimeout(long, java.util.concurrent.TimeUnit);
    descriptor: (JLjava/util/concurrent/TimeUnit;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // long timeout
        start local 3 // java.util.concurrent.TimeUnit timeUnit
         0: .line 213
            aload 0 /* this */
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
            lload 1 /* timeout */
            aload 3 /* timeUnit */
            invokevirtual java.util.concurrent.TimeUnit.convert:(JLjava/util/concurrent/TimeUnit;)J
            putfield org.glassfish.grizzly.nio.NIOConnection.readTimeoutMillis:J
         1: .line 214
            return
        end local 3 // java.util.concurrent.TimeUnit timeUnit
        end local 1 // long timeout
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    2     1   timeout  J
            0    2     3  timeUnit  Ljava/util/concurrent/TimeUnit;
    MethodParameters:
          Name  Flags
      timeout   
      timeUnit  

  public long getWriteTimeout(java.util.concurrent.TimeUnit);
    descriptor: (Ljava/util/concurrent/TimeUnit;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // java.util.concurrent.TimeUnit timeUnit
         0: .line 218
            aload 1 /* timeUnit */
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.writeTimeoutMillis:J
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
            invokevirtual java.util.concurrent.TimeUnit.convert:(JLjava/util/concurrent/TimeUnit;)J
            lreturn
        end local 1 // java.util.concurrent.TimeUnit timeUnit
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    1     1  timeUnit  Ljava/util/concurrent/TimeUnit;
    MethodParameters:
          Name  Flags
      timeUnit  

  public void setWriteTimeout(long, java.util.concurrent.TimeUnit);
    descriptor: (JLjava/util/concurrent/TimeUnit;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // long timeout
        start local 3 // java.util.concurrent.TimeUnit timeUnit
         0: .line 223
            aload 0 /* this */
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
            lload 1 /* timeout */
            aload 3 /* timeUnit */
            invokevirtual java.util.concurrent.TimeUnit.convert:(JLjava/util/concurrent/TimeUnit;)J
            putfield org.glassfish.grizzly.nio.NIOConnection.writeTimeoutMillis:J
         1: .line 224
            return
        end local 3 // java.util.concurrent.TimeUnit timeUnit
        end local 1 // long timeout
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    2     1   timeout  J
            0    2     3  timeUnit  Ljava/util/concurrent/TimeUnit;
    MethodParameters:
          Name  Flags
      timeout   
      timeUnit  

  public org.glassfish.grizzly.nio.SelectorRunner getSelectorRunner();
    descriptor: ()Lorg/glassfish/grizzly/nio/SelectorRunner;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 227
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.selectorRunner:Lorg/glassfish/grizzly/nio/SelectorRunner;
            areturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;

  protected void setSelectorRunner(org.glassfish.grizzly.nio.SelectorRunner);
    descriptor: (Lorg/glassfish/grizzly/nio/SelectorRunner;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.nio.SelectorRunner selectorRunner
         0: .line 231
            aload 0 /* this */
            aload 1 /* selectorRunner */
            putfield org.glassfish.grizzly.nio.NIOConnection.selectorRunner:Lorg/glassfish/grizzly/nio/SelectorRunner;
         1: .line 232
            return
        end local 1 // org.glassfish.grizzly.nio.SelectorRunner selectorRunner
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    2     1  selectorRunner  Lorg/glassfish/grizzly/nio/SelectorRunner;
    MethodParameters:
                Name  Flags
      selectorRunner  

  public void attachToSelectorRunner(org.glassfish.grizzly.nio.SelectorRunner);
    descriptor: (Lorg/glassfish/grizzly/nio/SelectorRunner;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.nio.SelectorRunner selectorRunner
         0: .line 236
            aload 0 /* this */
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.detachSelectorRunner:()V
         1: .line 237
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
            invokevirtual org.glassfish.grizzly.nio.NIOTransport.getSelectorHandler:()Lorg/glassfish/grizzly/nio/SelectorHandler;
            astore 2 /* selectorHandler */
        start local 2 // org.glassfish.grizzly.nio.SelectorHandler selectorHandler
         2: .line 240
            invokestatic org.glassfish.grizzly.utils.Futures.createSafeFuture:()Lorg/glassfish/grizzly/impl/FutureImpl;
         3: .line 239
            astore 3 /* future */
        start local 3 // org.glassfish.grizzly.impl.FutureImpl future
         4: .line 242
            aload 2 /* selectorHandler */
         5: .line 243
            aload 1 /* selectorRunner */
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.channel:Ljava/nio/channels/SelectableChannel;
            iconst_0
            aload 0 /* this */
            aload 3 /* future */
            invokestatic org.glassfish.grizzly.utils.Futures.toCompletionHandler:(Lorg/glassfish/grizzly/impl/FutureImpl;)Lorg/glassfish/grizzly/CompletionHandler;
         6: .line 242
            invokeinterface org.glassfish.grizzly.nio.SelectorHandler.registerChannelAsync:(Lorg/glassfish/grizzly/nio/SelectorRunner;Ljava/nio/channels/SelectableChannel;ILjava/lang/Object;Lorg/glassfish/grizzly/CompletionHandler;)V
         7: .line 246
            aload 3 /* future */
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.readTimeoutMillis:J
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
            invokeinterface org.glassfish.grizzly.impl.FutureImpl.get:(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
            checkcast org.glassfish.grizzly.nio.RegisterChannelResult
         8: .line 245
            astore 4 /* result */
        start local 4 // org.glassfish.grizzly.nio.RegisterChannelResult result
         9: .line 247
            aload 0 /* this */
            aload 1 /* selectorRunner */
            putfield org.glassfish.grizzly.nio.NIOConnection.selectorRunner:Lorg/glassfish/grizzly/nio/SelectorRunner;
        10: .line 248
            aload 0 /* this */
            aload 4 /* result */
            invokevirtual org.glassfish.grizzly.nio.RegisterChannelResult.getSelectionKey:()Ljava/nio/channels/SelectionKey;
            putfield org.glassfish.grizzly.nio.NIOConnection.selectionKey:Ljava/nio/channels/SelectionKey;
        end local 4 // org.glassfish.grizzly.nio.RegisterChannelResult result
        11: .line 249
            goto 16
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.nio.SelectorRunner org.glassfish.grizzly.nio.SelectorHandler org.glassfish.grizzly.impl.FutureImpl
      StackMap stack: java.lang.Exception
        12: astore 4 /* e */
        start local 4 // java.lang.Exception e
        13: .line 250
            new java.io.IOException
            dup
            ldc ""
            aload 4 /* e */
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.lang.Exception e
        14: .line 251
      StackMap locals:
      StackMap stack: java.util.concurrent.ExecutionException
            astore 4 /* e */
        start local 4 // java.util.concurrent.ExecutionException e
        15: .line 252
            new java.io.IOException
            dup
            ldc ""
            aload 4 /* e */
            invokevirtual java.util.concurrent.ExecutionException.getCause:()Ljava/lang/Throwable;
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.util.concurrent.ExecutionException e
        16: .line 256
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.glassfish.grizzly.impl.FutureImpl future
        end local 2 // org.glassfish.grizzly.nio.SelectorHandler selectorHandler
        end local 1 // org.glassfish.grizzly.nio.SelectorRunner selectorRunner
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   17     0             this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0   17     1   selectorRunner  Lorg/glassfish/grizzly/nio/SelectorRunner;
            2   17     2  selectorHandler  Lorg/glassfish/grizzly/nio/SelectorHandler;
            4   17     3           future  Lorg/glassfish/grizzly/impl/FutureImpl<Lorg/glassfish/grizzly/nio/RegisterChannelResult;>;
            9   11     4           result  Lorg/glassfish/grizzly/nio/RegisterChannelResult;
           13   14     4                e  Ljava/lang/Exception;
           15   16     4                e  Ljava/util/concurrent/ExecutionException;
      Exception table:
        from    to  target  type
           7    11      12  Class java.lang.InterruptedException
           7    11      12  Class java.util.concurrent.TimeoutException
           7    11      14  Class java.util.concurrent.ExecutionException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                Name  Flags
      selectorRunner  final

  public void detachSelectorRunner();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 259
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.selectorRunner:Lorg/glassfish/grizzly/nio/SelectorRunner;
            astore 1 /* selectorRunnerLocal */
        start local 1 // org.glassfish.grizzly.nio.SelectorRunner selectorRunnerLocal
         1: .line 260
            aload 0 /* this */
            aconst_null
            putfield org.glassfish.grizzly.nio.NIOConnection.selectionKey:Ljava/nio/channels/SelectionKey;
         2: .line 261
            aload 0 /* this */
            aconst_null
            putfield org.glassfish.grizzly.nio.NIOConnection.selectorRunner:Lorg/glassfish/grizzly/nio/SelectorRunner;
         3: .line 262
            aload 1 /* selectorRunnerLocal */
            ifnull 7
         4: .line 263
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
            invokevirtual org.glassfish.grizzly.nio.NIOTransport.getSelectorHandler:()Lorg/glassfish/grizzly/nio/SelectorHandler;
            aload 1 /* selectorRunnerLocal */
         5: .line 264
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.channel:Ljava/nio/channels/SelectableChannel;
         6: .line 263
            invokeinterface org.glassfish.grizzly.nio.SelectorHandler.deregisterChannel:(Lorg/glassfish/grizzly/nio/SelectorRunner;Ljava/nio/channels/SelectableChannel;)V
         7: .line 266
      StackMap locals: org.glassfish.grizzly.nio.SelectorRunner
      StackMap stack:
            return
        end local 1 // org.glassfish.grizzly.nio.SelectorRunner selectorRunnerLocal
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    8     0                 this  Lorg/glassfish/grizzly/nio/NIOConnection;
            1    8     1  selectorRunnerLocal  Lorg/glassfish/grizzly/nio/SelectorRunner;
    Exceptions:
      throws java.io.IOException

  public java.nio.channels.SelectableChannel getChannel();
    descriptor: ()Ljava/nio/channels/SelectableChannel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 269
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.channel:Ljava/nio/channels/SelectableChannel;
            areturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;

  protected void setChannel(java.nio.channels.SelectableChannel);
    descriptor: (Ljava/nio/channels/SelectableChannel;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // java.nio.channels.SelectableChannel channel
         0: .line 273
            aload 0 /* this */
            aload 1 /* channel */
            putfield org.glassfish.grizzly.nio.NIOConnection.channel:Ljava/nio/channels/SelectableChannel;
         1: .line 274
            return
        end local 1 // java.nio.channels.SelectableChannel channel
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    2     1  channel  Ljava/nio/channels/SelectableChannel;
    MethodParameters:
         Name  Flags
      channel  

  public java.nio.channels.SelectionKey getSelectionKey();
    descriptor: ()Ljava/nio/channels/SelectionKey;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 277
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.selectionKey:Ljava/nio/channels/SelectionKey;
            areturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;

  protected void setSelectionKey(java.nio.channels.SelectionKey);
    descriptor: (Ljava/nio/channels/SelectionKey;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // java.nio.channels.SelectionKey selectionKey
         0: .line 281
            aload 0 /* this */
            aload 1 /* selectionKey */
            putfield org.glassfish.grizzly.nio.NIOConnection.selectionKey:Ljava/nio/channels/SelectionKey;
         1: .line 282
            aload 0 /* this */
            aload 1 /* selectionKey */
            invokevirtual java.nio.channels.SelectionKey.channel:()Ljava/nio/channels/SelectableChannel;
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.setChannel:(Ljava/nio/channels/SelectableChannel;)V
         2: .line 283
            return
        end local 1 // java.nio.channels.SelectionKey selectionKey
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    3     1  selectionKey  Ljava/nio/channels/SelectionKey;
    MethodParameters:
              Name  Flags
      selectionKey  

  public org.glassfish.grizzly.Processor obtainProcessor(org.glassfish.grizzly.IOEvent);
    descriptor: (Lorg/glassfish/grizzly/IOEvent;)Lorg/glassfish/grizzly/Processor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.IOEvent ioEvent
         0: .line 287
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.processor:Lorg/glassfish/grizzly/Processor;
            ifnonnull 2
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.processorSelector:Lorg/glassfish/grizzly/ProcessorSelector;
            ifnonnull 2
         1: .line 288
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
            aload 1 /* ioEvent */
            aload 0 /* this */
            invokevirtual org.glassfish.grizzly.nio.NIOTransport.obtainProcessor:(Lorg/glassfish/grizzly/IOEvent;Lorg/glassfish/grizzly/Connection;)Lorg/glassfish/grizzly/Processor;
            areturn
         2: .line 290
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.processor:Lorg/glassfish/grizzly/Processor;
            ifnull 4
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.processor:Lorg/glassfish/grizzly/Processor;
            aload 1 /* ioEvent */
            invokeinterface org.glassfish.grizzly.Processor.isInterested:(Lorg/glassfish/grizzly/IOEvent;)Z
            ifeq 4
         3: .line 291
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.processor:Lorg/glassfish/grizzly/Processor;
            areturn
         4: .line 292
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.processorSelector:Lorg/glassfish/grizzly/ProcessorSelector;
            ifnull 9
         5: .line 294
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.processorSelector:Lorg/glassfish/grizzly/ProcessorSelector;
            aload 1 /* ioEvent */
            aload 0 /* this */
            invokeinterface org.glassfish.grizzly.ProcessorSelector.select:(Lorg/glassfish/grizzly/IOEvent;Lorg/glassfish/grizzly/Connection;)Lorg/glassfish/grizzly/Processor;
         6: .line 293
            astore 2 /* selectedProcessor */
        start local 2 // org.glassfish.grizzly.Processor selectedProcessor
         7: .line 295
            aload 2 /* selectedProcessor */
            ifnull 9
         8: .line 296
            aload 2 /* selectedProcessor */
            areturn
        end local 2 // org.glassfish.grizzly.Processor selectedProcessor
         9: .line 299
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // org.glassfish.grizzly.IOEvent ioEvent
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   10     0               this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0   10     1            ioEvent  Lorg/glassfish/grizzly/IOEvent;
            7    9     2  selectedProcessor  Lorg/glassfish/grizzly/Processor;
    MethodParameters:
         Name  Flags
      ioEvent  

  public org.glassfish.grizzly.Processor getProcessor();
    descriptor: ()Lorg/glassfish/grizzly/Processor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 304
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.processor:Lorg/glassfish/grizzly/Processor;
            areturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;

  public void setProcessor(org.glassfish.grizzly.Processor);
    descriptor: (Lorg/glassfish/grizzly/Processor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.Processor preferableProcessor
         0: .line 310
            aload 0 /* this */
            aload 1 /* preferableProcessor */
            putfield org.glassfish.grizzly.nio.NIOConnection.processor:Lorg/glassfish/grizzly/Processor;
         1: .line 311
            return
        end local 1 // org.glassfish.grizzly.Processor preferableProcessor
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    2     0                 this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    2     1  preferableProcessor  Lorg/glassfish/grizzly/Processor;
    MethodParameters:
                     Name  Flags
      preferableProcessor  

  public org.glassfish.grizzly.ProcessorSelector getProcessorSelector();
    descriptor: ()Lorg/glassfish/grizzly/ProcessorSelector;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 315
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.processorSelector:Lorg/glassfish/grizzly/ProcessorSelector;
            areturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;

  public void setProcessorSelector(org.glassfish.grizzly.ProcessorSelector);
    descriptor: (Lorg/glassfish/grizzly/ProcessorSelector;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.ProcessorSelector preferableProcessorSelector
         0: .line 321
            aload 0 /* this */
            aload 1 /* preferableProcessorSelector */
            putfield org.glassfish.grizzly.nio.NIOConnection.processorSelector:Lorg/glassfish/grizzly/ProcessorSelector;
         1: .line 322
            return
        end local 1 // org.glassfish.grizzly.ProcessorSelector preferableProcessorSelector
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot                         Name  Signature
            0    2     0                         this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    2     1  preferableProcessorSelector  Lorg/glassfish/grizzly/ProcessorSelector;
    MethodParameters:
                             Name  Flags
      preferableProcessorSelector  final

  public <E> E obtainProcessorState(org.glassfish.grizzly.Processor, org.glassfish.grizzly.utils.NullaryFunction<E>);
    descriptor: (Lorg/glassfish/grizzly/Processor;Lorg/glassfish/grizzly/utils/NullaryFunction;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.Processor processor
        start local 2 // org.glassfish.grizzly.utils.NullaryFunction factory
         0: .line 327
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.processorStateStorage:Lorg/glassfish/grizzly/nio/NIOConnection$ProcessorStatesMap;
            aload 1 /* processor */
            aload 2 /* factory */
            invokevirtual org.glassfish.grizzly.nio.NIOConnection$ProcessorStatesMap.getState:(Lorg/glassfish/grizzly/Processor;Lorg/glassfish/grizzly/utils/NullaryFunction;)Ljava/lang/Object;
            areturn
        end local 2 // org.glassfish.grizzly.utils.NullaryFunction factory
        end local 1 // org.glassfish.grizzly.Processor processor
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    1     1  processor  Lorg/glassfish/grizzly/Processor;
            0    1     2    factory  Lorg/glassfish/grizzly/utils/NullaryFunction<TE;>;
    Signature: <E:Ljava/lang/Object;>(Lorg/glassfish/grizzly/Processor;Lorg/glassfish/grizzly/utils/NullaryFunction<TE;>;)TE;
    MethodParameters:
           Name  Flags
      processor  final
      factory    final

  public void executeInEventThread(org.glassfish.grizzly.IOEvent, java.lang.Runnable);
    descriptor: (Lorg/glassfish/grizzly/IOEvent;Ljava/lang/Runnable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.IOEvent event
        start local 2 // java.lang.Runnable runnable
         0: .line 332
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
            invokevirtual org.glassfish.grizzly.nio.NIOTransport.getIOStrategy:()Lorg/glassfish/grizzly/IOStrategy;
         1: .line 333
            aload 0 /* this */
            aload 1 /* event */
            invokeinterface org.glassfish.grizzly.IOStrategy.getThreadPoolFor:(Lorg/glassfish/grizzly/Connection;Lorg/glassfish/grizzly/IOEvent;)Ljava/util/concurrent/Executor;
         2: .line 332
            astore 3 /* threadPool */
        start local 3 // java.util.concurrent.Executor threadPool
         3: .line 334
            aload 3 /* threadPool */
            ifnonnull 9
         4: .line 335
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
            invokevirtual org.glassfish.grizzly.nio.NIOTransport.getSelectorHandler:()Lorg/glassfish/grizzly/nio/SelectorHandler;
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.selectorRunner:Lorg/glassfish/grizzly/nio/SelectorRunner;
         5: .line 336
            new org.glassfish.grizzly.nio.NIOConnection$4
            dup
            aload 0 /* this */
            aload 2 /* runnable */
            invokespecial org.glassfish.grizzly.nio.NIOConnection$4.<init>:(Lorg/glassfish/grizzly/nio/NIOConnection;Ljava/lang/Runnable;)V
         6: .line 343
            aconst_null
         7: .line 335
            invokeinterface org.glassfish.grizzly.nio.SelectorHandler.enque:(Lorg/glassfish/grizzly/nio/SelectorRunner;Lorg/glassfish/grizzly/nio/SelectorHandler$Task;Lorg/glassfish/grizzly/CompletionHandler;)V
         8: .line 344
            goto 10
         9: .line 345
      StackMap locals: java.util.concurrent.Executor
      StackMap stack:
            aload 3 /* threadPool */
            aload 2 /* runnable */
            invokeinterface java.util.concurrent.Executor.execute:(Ljava/lang/Runnable;)V
        10: .line 347
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.util.concurrent.Executor threadPool
        end local 2 // java.lang.Runnable runnable
        end local 1 // org.glassfish.grizzly.IOEvent event
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0   11     1       event  Lorg/glassfish/grizzly/IOEvent;
            0   11     2    runnable  Ljava/lang/Runnable;
            3   11     3  threadPool  Ljava/util/concurrent/Executor;
    MethodParameters:
          Name  Flags
      event     final
      runnable  final

  public org.glassfish.grizzly.asyncqueue.TaskQueue<org.glassfish.grizzly.asyncqueue.AsyncReadQueueRecord> getAsyncReadQueue();
    descriptor: ()Lorg/glassfish/grizzly/asyncqueue/TaskQueue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 350
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.asyncReadQueue:Lorg/glassfish/grizzly/asyncqueue/TaskQueue;
            ifnonnull 8
         1: .line 351
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         2: .line 352
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.asyncReadQueue:Lorg/glassfish/grizzly/asyncqueue/TaskQueue;
            ifnonnull 4
         3: .line 353
            aload 0 /* this */
            aconst_null
            invokestatic org.glassfish.grizzly.asyncqueue.TaskQueue.createTaskQueue:(Lorg/glassfish/grizzly/asyncqueue/TaskQueue$MutableMaxQueueSize;)Lorg/glassfish/grizzly/asyncqueue/TaskQueue;
            putfield org.glassfish.grizzly.nio.NIOConnection.asyncReadQueue:Lorg/glassfish/grizzly/asyncqueue/TaskQueue;
         4: .line 351
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection
      StackMap stack:
            aload 1
            monitorexit
         5: goto 8
      StackMap locals:
      StackMap stack: java.lang.Throwable
         6: aload 1
            monitorexit
         7: athrow
         8: .line 358
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.asyncReadQueue:Lorg/glassfish/grizzly/asyncqueue/TaskQueue;
            areturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;
      Exception table:
        from    to  target  type
           2     5       6  any
           6     7       6  any
    Signature: ()Lorg/glassfish/grizzly/asyncqueue/TaskQueue<Lorg/glassfish/grizzly/asyncqueue/AsyncReadQueueRecord;>;

  public org.glassfish.grizzly.asyncqueue.TaskQueue<org.glassfish.grizzly.asyncqueue.AsyncWriteQueueRecord> getAsyncWriteQueue();
    descriptor: ()Lorg/glassfish/grizzly/asyncqueue/TaskQueue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 362
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.asyncWriteQueue:Lorg/glassfish/grizzly/asyncqueue/TaskQueue;
            areturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;
    Signature: ()Lorg/glassfish/grizzly/asyncqueue/TaskQueue<Lorg/glassfish/grizzly/asyncqueue/AsyncWriteQueueRecord;>;

  public org.glassfish.grizzly.attributes.AttributeHolder getAttributes();
    descriptor: ()Lorg/glassfish/grizzly/attributes/AttributeHolder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 367
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.attributes:Lorg/glassfish/grizzly/attributes/AttributeHolder;
            areturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;

  public <M> org.glassfish.grizzly.GrizzlyFuture<org.glassfish.grizzly.ReadResult<M, java.net.SocketAddress>> read();
    descriptor: ()Lorg/glassfish/grizzly/GrizzlyFuture;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 373
            invokestatic org.glassfish.grizzly.utils.Futures.createSafeFuture:()Lorg/glassfish/grizzly/impl/FutureImpl;
         1: .line 372
            astore 1 /* future */
        start local 1 // org.glassfish.grizzly.impl.FutureImpl future
         2: .line 374
            aload 0 /* this */
            aload 1 /* future */
            invokestatic org.glassfish.grizzly.utils.Futures.toCompletionHandler:(Lorg/glassfish/grizzly/impl/FutureImpl;)Lorg/glassfish/grizzly/CompletionHandler;
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.read:(Lorg/glassfish/grizzly/CompletionHandler;)V
         3: .line 376
            aload 1 /* future */
            areturn
        end local 1 // org.glassfish.grizzly.impl.FutureImpl future
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/glassfish/grizzly/nio/NIOConnection;
            2    4     1  future  Lorg/glassfish/grizzly/impl/FutureImpl<Lorg/glassfish/grizzly/ReadResult<TM;Ljava/net/SocketAddress;>;>;
    Signature: <M:Ljava/lang/Object;>()Lorg/glassfish/grizzly/GrizzlyFuture<Lorg/glassfish/grizzly/ReadResult<TM;Ljava/net/SocketAddress;>;>;

  public <M> void read(org.glassfish.grizzly.CompletionHandler<org.glassfish.grizzly.ReadResult<M, java.net.SocketAddress>>);
    descriptor: (Lorg/glassfish/grizzly/CompletionHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.CompletionHandler completionHandler
         0: .line 383
            aload 0 /* this */
            getstatic org.glassfish.grizzly.IOEvent.READ:Lorg/glassfish/grizzly/IOEvent;
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.obtainProcessor:(Lorg/glassfish/grizzly/IOEvent;)Lorg/glassfish/grizzly/Processor;
            astore 2 /* obtainedProcessor */
        start local 2 // org.glassfish.grizzly.Processor obtainedProcessor
         1: .line 384
            aload 2 /* obtainedProcessor */
            aload 0 /* this */
            aload 1 /* completionHandler */
            invokeinterface org.glassfish.grizzly.Processor.read:(Lorg/glassfish/grizzly/Connection;Lorg/glassfish/grizzly/CompletionHandler;)V
         2: .line 385
            return
        end local 2 // org.glassfish.grizzly.Processor obtainedProcessor
        end local 1 // org.glassfish.grizzly.CompletionHandler completionHandler
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0               this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    3     1  completionHandler  Lorg/glassfish/grizzly/CompletionHandler<Lorg/glassfish/grizzly/ReadResult<TM;Ljava/net/SocketAddress;>;>;
            1    3     2  obtainedProcessor  Lorg/glassfish/grizzly/Processor;
    Signature: <M:Ljava/lang/Object;>(Lorg/glassfish/grizzly/CompletionHandler<Lorg/glassfish/grizzly/ReadResult<TM;Ljava/net/SocketAddress;>;>;)V
    MethodParameters:
                   Name  Flags
      completionHandler  final

  public <M> org.glassfish.grizzly.GrizzlyFuture<org.glassfish.grizzly.WriteResult<M, java.net.SocketAddress>> write(M);
    descriptor: (Ljava/lang/Object;)Lorg/glassfish/grizzly/GrizzlyFuture;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // java.lang.Object message
         0: .line 390
            invokestatic org.glassfish.grizzly.utils.Futures.createSafeFuture:()Lorg/glassfish/grizzly/impl/FutureImpl;
         1: .line 389
            astore 2 /* future */
        start local 2 // org.glassfish.grizzly.impl.FutureImpl future
         2: .line 391
            aload 0 /* this */
            aconst_null
            aload 1 /* message */
            aload 2 /* future */
            invokestatic org.glassfish.grizzly.utils.Futures.toCompletionHandler:(Lorg/glassfish/grizzly/impl/FutureImpl;)Lorg/glassfish/grizzly/CompletionHandler;
            aconst_null
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.write:(Ljava/net/SocketAddress;Ljava/lang/Object;Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/asyncqueue/PushBackHandler;)V
         3: .line 393
            aload 2 /* future */
            areturn
        end local 2 // org.glassfish.grizzly.impl.FutureImpl future
        end local 1 // java.lang.Object message
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    4     1  message  TM;
            2    4     2   future  Lorg/glassfish/grizzly/impl/FutureImpl<Lorg/glassfish/grizzly/WriteResult<TM;Ljava/net/SocketAddress;>;>;
    Signature: <M:Ljava/lang/Object;>(TM;)Lorg/glassfish/grizzly/GrizzlyFuture<Lorg/glassfish/grizzly/WriteResult<TM;Ljava/net/SocketAddress;>;>;
    MethodParameters:
         Name  Flags
      message  final

  public <M> void write(M, org.glassfish.grizzly.CompletionHandler<org.glassfish.grizzly.WriteResult<M, java.net.SocketAddress>>);
    descriptor: (Ljava/lang/Object;Lorg/glassfish/grizzly/CompletionHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // java.lang.Object message
        start local 2 // org.glassfish.grizzly.CompletionHandler completionHandler
         0: .line 401
            aload 0 /* this */
            aconst_null
            aload 1 /* message */
            aload 2 /* completionHandler */
            aconst_null
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.write:(Ljava/net/SocketAddress;Ljava/lang/Object;Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/asyncqueue/PushBackHandler;)V
         1: .line 402
            return
        end local 2 // org.glassfish.grizzly.CompletionHandler completionHandler
        end local 1 // java.lang.Object message
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    2     1            message  TM;
            0    2     2  completionHandler  Lorg/glassfish/grizzly/CompletionHandler<Lorg/glassfish/grizzly/WriteResult<TM;Ljava/net/SocketAddress;>;>;
    Signature: <M:Ljava/lang/Object;>(TM;Lorg/glassfish/grizzly/CompletionHandler<Lorg/glassfish/grizzly/WriteResult<TM;Ljava/net/SocketAddress;>;>;)V
    MethodParameters:
                   Name  Flags
      message            final
      completionHandler  final

  public <M> void write(M, org.glassfish.grizzly.CompletionHandler<org.glassfish.grizzly.WriteResult<M, java.net.SocketAddress>>, org.glassfish.grizzly.asyncqueue.PushBackHandler);
    descriptor: (Ljava/lang/Object;Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/asyncqueue/PushBackHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // java.lang.Object message
        start local 2 // org.glassfish.grizzly.CompletionHandler completionHandler
        start local 3 // org.glassfish.grizzly.asyncqueue.PushBackHandler pushbackHandler
         0: .line 409
            aload 0 /* this */
            aconst_null
            aload 1 /* message */
            aload 2 /* completionHandler */
            aload 3 /* pushbackHandler */
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.write:(Ljava/net/SocketAddress;Ljava/lang/Object;Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/asyncqueue/PushBackHandler;)V
         1: .line 410
            return
        end local 3 // org.glassfish.grizzly.asyncqueue.PushBackHandler pushbackHandler
        end local 2 // org.glassfish.grizzly.CompletionHandler completionHandler
        end local 1 // java.lang.Object message
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    2     1            message  TM;
            0    2     2  completionHandler  Lorg/glassfish/grizzly/CompletionHandler<Lorg/glassfish/grizzly/WriteResult<TM;Ljava/net/SocketAddress;>;>;
            0    2     3    pushbackHandler  Lorg/glassfish/grizzly/asyncqueue/PushBackHandler;
    Signature: <M:Ljava/lang/Object;>(TM;Lorg/glassfish/grizzly/CompletionHandler<Lorg/glassfish/grizzly/WriteResult<TM;Ljava/net/SocketAddress;>;>;Lorg/glassfish/grizzly/asyncqueue/PushBackHandler;)V
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                   Name  Flags
      message            final
      completionHandler  
      pushbackHandler    

  public <M> void write(java.net.SocketAddress, M, org.glassfish.grizzly.CompletionHandler<org.glassfish.grizzly.WriteResult<M, java.net.SocketAddress>>);
    descriptor: (Ljava/net/SocketAddress;Ljava/lang/Object;Lorg/glassfish/grizzly/CompletionHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // java.net.SocketAddress dstAddress
        start local 2 // java.lang.Object message
        start local 3 // org.glassfish.grizzly.CompletionHandler completionHandler
         0: .line 415
            aload 0 /* this */
            aload 1 /* dstAddress */
            aload 2 /* message */
            aload 3 /* completionHandler */
            aconst_null
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.write:(Ljava/net/SocketAddress;Ljava/lang/Object;Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/asyncqueue/PushBackHandler;)V
         1: .line 416
            return
        end local 3 // org.glassfish.grizzly.CompletionHandler completionHandler
        end local 2 // java.lang.Object message
        end local 1 // java.net.SocketAddress dstAddress
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    2     1         dstAddress  Ljava/net/SocketAddress;
            0    2     2            message  TM;
            0    2     3  completionHandler  Lorg/glassfish/grizzly/CompletionHandler<Lorg/glassfish/grizzly/WriteResult<TM;Ljava/net/SocketAddress;>;>;
    Signature: <M:Ljava/lang/Object;>(Ljava/net/SocketAddress;TM;Lorg/glassfish/grizzly/CompletionHandler<Lorg/glassfish/grizzly/WriteResult<TM;Ljava/net/SocketAddress;>;>;)V
    MethodParameters:
                   Name  Flags
      dstAddress         final
      message            final
      completionHandler  final

  public <M> void write(java.net.SocketAddress, M, org.glassfish.grizzly.CompletionHandler<org.glassfish.grizzly.WriteResult<M, java.net.SocketAddress>>, org.glassfish.grizzly.asyncqueue.PushBackHandler);
    descriptor: (Ljava/net/SocketAddress;Ljava/lang/Object;Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/asyncqueue/PushBackHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=5
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // java.net.SocketAddress dstAddress
        start local 2 // java.lang.Object message
        start local 3 // org.glassfish.grizzly.CompletionHandler completionHandler
        start local 4 // org.glassfish.grizzly.asyncqueue.PushBackHandler pushbackHandler
         0: .line 426
            aload 0 /* this */
            getstatic org.glassfish.grizzly.IOEvent.WRITE:Lorg/glassfish/grizzly/IOEvent;
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.obtainProcessor:(Lorg/glassfish/grizzly/IOEvent;)Lorg/glassfish/grizzly/Processor;
            astore 5 /* obtainedProcessor */
        start local 5 // org.glassfish.grizzly.Processor obtainedProcessor
         1: .line 427
            aload 5 /* obtainedProcessor */
            aload 0 /* this */
            aload 1 /* dstAddress */
            aload 2 /* message */
         2: .line 428
            aload 3 /* completionHandler */
            aload 4 /* pushbackHandler */
         3: .line 427
            invokeinterface org.glassfish.grizzly.Processor.write:(Lorg/glassfish/grizzly/Connection;Ljava/lang/Object;Ljava/lang/Object;Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/asyncqueue/PushBackHandler;)V
         4: .line 429
            return
        end local 5 // org.glassfish.grizzly.Processor obtainedProcessor
        end local 4 // org.glassfish.grizzly.asyncqueue.PushBackHandler pushbackHandler
        end local 3 // org.glassfish.grizzly.CompletionHandler completionHandler
        end local 2 // java.lang.Object message
        end local 1 // java.net.SocketAddress dstAddress
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    5     0               this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    5     1         dstAddress  Ljava/net/SocketAddress;
            0    5     2            message  TM;
            0    5     3  completionHandler  Lorg/glassfish/grizzly/CompletionHandler<Lorg/glassfish/grizzly/WriteResult<TM;Ljava/net/SocketAddress;>;>;
            0    5     4    pushbackHandler  Lorg/glassfish/grizzly/asyncqueue/PushBackHandler;
            1    5     5  obtainedProcessor  Lorg/glassfish/grizzly/Processor;
    Signature: <M:Ljava/lang/Object;>(Ljava/net/SocketAddress;TM;Lorg/glassfish/grizzly/CompletionHandler<Lorg/glassfish/grizzly/WriteResult<TM;Ljava/net/SocketAddress;>;>;Lorg/glassfish/grizzly/asyncqueue/PushBackHandler;)V
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                   Name  Flags
      dstAddress         final
      message            final
      completionHandler  final
      pushbackHandler    final

  public boolean isOpen();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 434
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.channel:Ljava/nio/channels/SelectableChannel;
            ifnull 1
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.channel:Ljava/nio/channels/SelectableChannel;
            invokevirtual java.nio.channels.SelectableChannel.isOpen:()Z
            ifeq 1
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.closeReason:Lorg/glassfish/grizzly/CloseReason;
            ifnonnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;

  public void assertOpen();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 439
            aload 0 /* this */
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.getCloseReason:()Lorg/glassfish/grizzly/CloseReason;
            astore 1 /* reason */
        start local 1 // org.glassfish.grizzly.CloseReason reason
         1: .line 440
            aload 1 /* reason */
            ifnull 3
         2: .line 441
            new java.io.IOException
            dup
            ldc "Connection is closed"
            aload 1 /* reason */
            invokevirtual org.glassfish.grizzly.CloseReason.getCause:()Ljava/io/IOException;
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
         3: .line 443
      StackMap locals: org.glassfish.grizzly.CloseReason
      StackMap stack:
            return
        end local 1 // org.glassfish.grizzly.CloseReason reason
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/glassfish/grizzly/nio/NIOConnection;
            1    4     1  reason  Lorg/glassfish/grizzly/CloseReason;
    Exceptions:
      throws java.io.IOException

  public boolean isClosed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 446
            aload 0 /* this */
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.isOpen:()Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;

  public org.glassfish.grizzly.CloseReason getCloseReason();
    descriptor: ()Lorg/glassfish/grizzly/CloseReason;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 451
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.closeReason:Lorg/glassfish/grizzly/CloseReason;
            astore 1 /* cr */
        start local 1 // org.glassfish.grizzly.CloseReason cr
         1: .line 452
            aload 1 /* cr */
            ifnull 3
         2: .line 453
            aload 1 /* cr */
            areturn
         3: .line 454
      StackMap locals: org.glassfish.grizzly.CloseReason
      StackMap stack:
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.channel:Ljava/nio/channels/SelectableChannel;
            ifnull 4
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.channel:Ljava/nio/channels/SelectableChannel;
            invokevirtual java.nio.channels.SelectableChannel.isOpen:()Z
            ifne 5
         4: .line 455
      StackMap locals:
      StackMap stack:
            getstatic org.glassfish.grizzly.CloseReason.LOCALLY_CLOSED_REASON:Lorg/glassfish/grizzly/CloseReason;
            areturn
         5: .line 458
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // org.glassfish.grizzly.CloseReason cr
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;
            1    6     1    cr  Lorg/glassfish/grizzly/CloseReason;

  public void terminateSilently();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 463
            aload 0 /* this */
            aconst_null
            getstatic org.glassfish.grizzly.CloseReason.LOCALLY_CLOSED_REASON:Lorg/glassfish/grizzly/CloseReason;
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.terminate0:(Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/CloseReason;)V
         1: .line 464
            return
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;

  public org.glassfish.grizzly.GrizzlyFuture<org.glassfish.grizzly.Closeable> terminate();
    descriptor: ()Lorg/glassfish/grizzly/GrizzlyFuture;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 468
            invokestatic org.glassfish.grizzly.utils.Futures.createSafeFuture:()Lorg/glassfish/grizzly/impl/FutureImpl;
            astore 1 /* future */
        start local 1 // org.glassfish.grizzly.impl.FutureImpl future
         1: .line 469
            aload 0 /* this */
            aload 1 /* future */
            invokestatic org.glassfish.grizzly.utils.Futures.toCompletionHandler:(Lorg/glassfish/grizzly/impl/FutureImpl;)Lorg/glassfish/grizzly/CompletionHandler;
         2: .line 470
            getstatic org.glassfish.grizzly.CloseReason.LOCALLY_CLOSED_REASON:Lorg/glassfish/grizzly/CloseReason;
         3: .line 469
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.terminate0:(Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/CloseReason;)V
         4: .line 472
            aload 1 /* future */
            areturn
        end local 1 // org.glassfish.grizzly.impl.FutureImpl future
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/glassfish/grizzly/nio/NIOConnection;
            1    5     1  future  Lorg/glassfish/grizzly/impl/FutureImpl<Lorg/glassfish/grizzly/Closeable;>;
    Signature: ()Lorg/glassfish/grizzly/GrizzlyFuture<Lorg/glassfish/grizzly/Closeable;>;

  public void terminateWithReason(java.io.IOException);
    descriptor: (Ljava/io/IOException;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // java.io.IOException reason
         0: .line 477
            aload 0 /* this */
            aconst_null
            new org.glassfish.grizzly.CloseReason
            dup
         1: .line 478
            getstatic org.glassfish.grizzly.CloseType.LOCALLY:Lorg/glassfish/grizzly/CloseType;
            aload 1 /* reason */
            invokespecial org.glassfish.grizzly.CloseReason.<init>:(Lorg/glassfish/grizzly/CloseType;Ljava/io/IOException;)V
         2: .line 477
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.terminate0:(Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/CloseReason;)V
         3: .line 479
            return
        end local 1 // java.io.IOException reason
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    4     1  reason  Ljava/io/IOException;
    MethodParameters:
        Name  Flags
      reason  final

  public org.glassfish.grizzly.GrizzlyFuture<org.glassfish.grizzly.Closeable> close();
    descriptor: ()Lorg/glassfish/grizzly/GrizzlyFuture;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 484
            invokestatic org.glassfish.grizzly.utils.Futures.createSafeFuture:()Lorg/glassfish/grizzly/impl/FutureImpl;
            astore 1 /* future */
        start local 1 // org.glassfish.grizzly.impl.FutureImpl future
         1: .line 485
            aload 0 /* this */
            aload 1 /* future */
            invokestatic org.glassfish.grizzly.utils.Futures.toCompletionHandler:(Lorg/glassfish/grizzly/impl/FutureImpl;)Lorg/glassfish/grizzly/CompletionHandler;
         2: .line 486
            getstatic org.glassfish.grizzly.CloseReason.LOCALLY_CLOSED_REASON:Lorg/glassfish/grizzly/CloseReason;
         3: .line 485
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.closeGracefully0:(Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/CloseReason;)V
         4: .line 488
            aload 1 /* future */
            areturn
        end local 1 // org.glassfish.grizzly.impl.FutureImpl future
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/glassfish/grizzly/nio/NIOConnection;
            1    5     1  future  Lorg/glassfish/grizzly/impl/FutureImpl<Lorg/glassfish/grizzly/Closeable;>;
    Signature: ()Lorg/glassfish/grizzly/GrizzlyFuture<Lorg/glassfish/grizzly/Closeable;>;

  public void close(org.glassfish.grizzly.CompletionHandler<org.glassfish.grizzly.Closeable>);
    descriptor: (Lorg/glassfish/grizzly/CompletionHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.CompletionHandler completionHandler
         0: .line 498
            aload 0 /* this */
            aload 1 /* completionHandler */
            getstatic org.glassfish.grizzly.CloseReason.LOCALLY_CLOSED_REASON:Lorg/glassfish/grizzly/CloseReason;
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.closeGracefully0:(Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/CloseReason;)V
         1: .line 499
            return
        end local 1 // org.glassfish.grizzly.CompletionHandler completionHandler
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    2     1  completionHandler  Lorg/glassfish/grizzly/CompletionHandler<Lorg/glassfish/grizzly/Closeable;>;
    Signature: (Lorg/glassfish/grizzly/CompletionHandler<Lorg/glassfish/grizzly/Closeable;>;)V
    MethodParameters:
                   Name  Flags
      completionHandler  final

  public final void closeSilently();
    descriptor: ()V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 504
            aload 0 /* this */
            aconst_null
            getstatic org.glassfish.grizzly.CloseReason.LOCALLY_CLOSED_REASON:Lorg/glassfish/grizzly/CloseReason;
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.closeGracefully0:(Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/CloseReason;)V
         1: .line 505
            return
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;

  public void closeWithReason(java.io.IOException);
    descriptor: (Ljava/io/IOException;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // java.io.IOException reason
         0: .line 509
            aload 0 /* this */
            aconst_null
            new org.glassfish.grizzly.CloseReason
            dup
         1: .line 510
            getstatic org.glassfish.grizzly.CloseType.LOCALLY:Lorg/glassfish/grizzly/CloseType;
            aload 1 /* reason */
            invokespecial org.glassfish.grizzly.CloseReason.<init>:(Lorg/glassfish/grizzly/CloseType;Ljava/io/IOException;)V
         2: .line 509
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.closeGracefully0:(Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/CloseReason;)V
         3: .line 511
            return
        end local 1 // java.io.IOException reason
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    4     1  reason  Ljava/io/IOException;
    MethodParameters:
        Name  Flags
      reason  final

  public org.glassfish.grizzly.GrizzlyFuture<org.glassfish.grizzly.CloseReason> closeFuture();
    descriptor: ()Lorg/glassfish/grizzly/GrizzlyFuture;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 515
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.closeFuture:Lorg/glassfish/grizzly/GrizzlyFuture;
            ifnonnull 15
         1: .line 516
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         2: .line 517
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.closeFuture:Lorg/glassfish/grizzly/GrizzlyFuture;
            ifnonnull 11
         3: .line 518
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.closeReason:Lorg/glassfish/grizzly/CloseReason;
            astore 2 /* cr */
        start local 2 // org.glassfish.grizzly.CloseReason cr
         4: .line 519
            aload 2 /* cr */
            ifnonnull 10
         5: .line 521
            invokestatic org.glassfish.grizzly.utils.Futures.createSafeFuture:()Lorg/glassfish/grizzly/impl/FutureImpl;
         6: .line 520
            astore 3 /* f */
        start local 3 // org.glassfish.grizzly.impl.FutureImpl f
         7: .line 522
            aload 0 /* this */
            new org.glassfish.grizzly.nio.NIOConnection$5
            dup
            aload 0 /* this */
            aload 3 /* f */
            invokespecial org.glassfish.grizzly.nio.NIOConnection$5.<init>:(Lorg/glassfish/grizzly/nio/NIOConnection;Lorg/glassfish/grizzly/impl/FutureImpl;)V
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.addCloseListener:(Lorg/glassfish/grizzly/CloseListener;)V
         8: .line 532
            aload 0 /* this */
            aload 3 /* f */
            putfield org.glassfish.grizzly.nio.NIOConnection.closeFuture:Lorg/glassfish/grizzly/GrizzlyFuture;
        end local 3 // org.glassfish.grizzly.impl.FutureImpl f
         9: .line 533
            goto 11
        10: .line 534
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.CloseReason
      StackMap stack:
            aload 0 /* this */
            aload 2 /* cr */
            invokestatic org.glassfish.grizzly.utils.Futures.createReadyFuture:(Ljava/lang/Object;)Lorg/glassfish/grizzly/GrizzlyFuture;
            putfield org.glassfish.grizzly.nio.NIOConnection.closeFuture:Lorg/glassfish/grizzly/GrizzlyFuture;
        end local 2 // org.glassfish.grizzly.CloseReason cr
        11: .line 516
      StackMap locals:
      StackMap stack:
            aload 1
            monitorexit
        12: goto 15
      StackMap locals:
      StackMap stack: java.lang.Throwable
        13: aload 1
            monitorexit
        14: athrow
        15: .line 540
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.closeFuture:Lorg/glassfish/grizzly/GrizzlyFuture;
            areturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;
            4   11     2    cr  Lorg/glassfish/grizzly/CloseReason;
            7    9     3     f  Lorg/glassfish/grizzly/impl/FutureImpl<Lorg/glassfish/grizzly/CloseReason;>;
      Exception table:
        from    to  target  type
           2    12      13  any
          13    14      13  any
    Signature: ()Lorg/glassfish/grizzly/GrizzlyFuture<Lorg/glassfish/grizzly/CloseReason;>;

  protected void closeGracefully0(org.glassfish.grizzly.CompletionHandler<org.glassfish.grizzly.Closeable>, org.glassfish.grizzly.CloseReason);
    descriptor: (Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/CloseReason;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=4, args_size=3
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.CompletionHandler completionHandler
        start local 2 // org.glassfish.grizzly.CloseReason closeReason
         0: .line 547
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.isCloseScheduled:Ljava/util/concurrent/atomic/AtomicBoolean;
            iconst_0
            iconst_1
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.compareAndSet:(ZZ)Z
            ifeq 12
         1: .line 549
            getstatic org.glassfish.grizzly.nio.NIOConnection.LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 7
         2: .line 551
            new org.glassfish.grizzly.CloseReason
            dup
            aload 2 /* closeReason */
            invokevirtual org.glassfish.grizzly.CloseReason.getType:()Lorg/glassfish/grizzly/CloseType;
         3: .line 552
            new java.io.IOException
            dup
            ldc "Connection is closed at"
         4: .line 553
            aload 2 /* closeReason */
            invokevirtual org.glassfish.grizzly.CloseReason.getCause:()Ljava/io/IOException;
         5: .line 552
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
         6: .line 551
            invokespecial org.glassfish.grizzly.CloseReason.<init>:(Lorg/glassfish/grizzly/CloseType;Ljava/io/IOException;)V
            astore 2 /* closeReason */
         7: .line 556
      StackMap locals:
      StackMap stack:
            aload 2 /* closeReason */
            astore 3 /* finalReason */
        start local 3 // org.glassfish.grizzly.CloseReason finalReason
         8: .line 558
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
            aload 0 /* this */
            invokevirtual org.glassfish.grizzly.nio.NIOTransport.getWriter:(Lorg/glassfish/grizzly/Connection;)Lorg/glassfish/grizzly/Writer;
            aload 0 /* this */
            getstatic org.glassfish.grizzly.memory.Buffers.EMPTY_BUFFER:Lorg/glassfish/grizzly/Buffer;
         9: .line 559
            new org.glassfish.grizzly.nio.NIOConnection$6
            dup
            aload 0 /* this */
            aload 1 /* completionHandler */
            aload 3 /* finalReason */
            invokespecial org.glassfish.grizzly.nio.NIOConnection$6.<init>:(Lorg/glassfish/grizzly/nio/NIOConnection;Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/CloseReason;)V
        10: .line 558
            invokeinterface org.glassfish.grizzly.Writer.write:(Lorg/glassfish/grizzly/Connection;Lorg/glassfish/grizzly/asyncqueue/WritableMessage;Lorg/glassfish/grizzly/CompletionHandler;)V
        end local 3 // org.glassfish.grizzly.CloseReason finalReason
        11: .line 572
            goto 14
        12: .line 573
      StackMap locals:
      StackMap stack:
            aload 1 /* completionHandler */
            ifnull 14
        13: .line 574
            aload 0 /* this */
            new org.glassfish.grizzly.nio.NIOConnection$7
            dup
            aload 0 /* this */
            aload 1 /* completionHandler */
            invokespecial org.glassfish.grizzly.nio.NIOConnection$7.<init>:(Lorg/glassfish/grizzly/nio/NIOConnection;Lorg/glassfish/grizzly/CompletionHandler;)V
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.addCloseListener:(Lorg/glassfish/grizzly/CloseListener;)V
        14: .line 584
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.glassfish.grizzly.CloseReason closeReason
        end local 1 // org.glassfish.grizzly.CompletionHandler completionHandler
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   15     0               this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0   15     1  completionHandler  Lorg/glassfish/grizzly/CompletionHandler<Lorg/glassfish/grizzly/Closeable;>;
            0   15     2        closeReason  Lorg/glassfish/grizzly/CloseReason;
            8   11     3        finalReason  Lorg/glassfish/grizzly/CloseReason;
    Signature: (Lorg/glassfish/grizzly/CompletionHandler<Lorg/glassfish/grizzly/Closeable;>;Lorg/glassfish/grizzly/CloseReason;)V
    MethodParameters:
                   Name  Flags
      completionHandler  final
      closeReason        

  protected void terminate0(org.glassfish.grizzly.CompletionHandler<org.glassfish.grizzly.Closeable>, org.glassfish.grizzly.CloseReason);
    descriptor: (Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/CloseReason;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=3, args_size=3
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.CompletionHandler completionHandler
        start local 2 // org.glassfish.grizzly.CloseReason reason
         0: .line 589
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.isCloseScheduled:Ljava/util/concurrent/atomic/AtomicBoolean;
            iconst_1
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
         1: .line 590
            getstatic org.glassfish.grizzly.nio.NIOConnection.closeReasonUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
            aload 0 /* this */
            aconst_null
            aload 2 /* reason */
            invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 18
         2: .line 592
            getstatic org.glassfish.grizzly.nio.NIOConnection.LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 8
         3: .line 594
            aload 0 /* this */
            new org.glassfish.grizzly.CloseReason
            dup
            aload 2 /* reason */
            invokevirtual org.glassfish.grizzly.CloseReason.getType:()Lorg/glassfish/grizzly/CloseType;
         4: .line 595
            new java.io.IOException
            dup
            ldc "Connection is closed at"
         5: .line 596
            aload 2 /* reason */
            invokevirtual org.glassfish.grizzly.CloseReason.getCause:()Ljava/io/IOException;
         6: .line 595
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            invokespecial org.glassfish.grizzly.CloseReason.<init>:(Lorg/glassfish/grizzly/CloseType;Ljava/io/IOException;)V
         7: .line 594
            putfield org.glassfish.grizzly.nio.NIOConnection.closeReason:Lorg/glassfish/grizzly/CloseReason;
         8: .line 599
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.preClose:()V
         9: .line 600
            aload 0 /* this */
            aload 2 /* reason */
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.notifyCloseListeners:(Lorg/glassfish/grizzly/CloseReason;)V
        10: .line 601
            aload 0 /* this */
            invokestatic org.glassfish.grizzly.nio.NIOConnection.notifyProbesClose:(Lorg/glassfish/grizzly/nio/NIOConnection;)V
        11: .line 603
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
            invokevirtual org.glassfish.grizzly.nio.NIOTransport.getSelectorHandler:()Lorg/glassfish/grizzly/nio/SelectorHandler;
        12: .line 604
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.selectorRunner:Lorg/glassfish/grizzly/nio/SelectorRunner;
            new org.glassfish.grizzly.nio.NIOConnection$8
            dup
            aload 0 /* this */
            invokespecial org.glassfish.grizzly.nio.NIOConnection$8.<init>:(Lorg/glassfish/grizzly/nio/NIOConnection;)V
        13: .line 616
            new org.glassfish.grizzly.nio.NIOConnection$9
            dup
            aload 0 /* this */
        14: .line 617
            aconst_null
            aload 1 /* completionHandler */
        15: .line 616
            invokespecial org.glassfish.grizzly.nio.NIOConnection$9.<init>:(Lorg/glassfish/grizzly/nio/NIOConnection;Lorg/glassfish/grizzly/impl/FutureImpl;Lorg/glassfish/grizzly/CompletionHandler;)V
        16: .line 603
            invokeinterface org.glassfish.grizzly.nio.SelectorHandler.execute:(Lorg/glassfish/grizzly/nio/SelectorRunner;Lorg/glassfish/grizzly/nio/SelectorHandler$Task;Lorg/glassfish/grizzly/CompletionHandler;)V
        17: .line 634
            goto 19
        18: .line 635
      StackMap locals:
      StackMap stack:
            aconst_null
            aload 1 /* completionHandler */
            aload 0 /* this */
            invokestatic org.glassfish.grizzly.utils.Futures.notifyResult:(Lorg/glassfish/grizzly/impl/FutureImpl;Lorg/glassfish/grizzly/CompletionHandler;Ljava/lang/Object;)V
        19: .line 637
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.glassfish.grizzly.CloseReason reason
        end local 1 // org.glassfish.grizzly.CompletionHandler completionHandler
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   20     0               this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0   20     1  completionHandler  Lorg/glassfish/grizzly/CompletionHandler<Lorg/glassfish/grizzly/Closeable;>;
            0   20     2             reason  Lorg/glassfish/grizzly/CloseReason;
    Signature: (Lorg/glassfish/grizzly/CompletionHandler<Lorg/glassfish/grizzly/Closeable;>;Lorg/glassfish/grizzly/CloseReason;)V
    MethodParameters:
                   Name  Flags
      completionHandler  final
      reason             final

  protected void doClose();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 643
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
            aload 0 /* this */
            invokevirtual org.glassfish.grizzly.nio.NIOTransport.closeConnection:(Lorg/glassfish/grizzly/Connection;)V
         1: .line 644
            return
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;
    Exceptions:
      throws java.io.IOException

  public void addCloseListener(org.glassfish.grizzly.CloseListener);
    descriptor: (Lorg/glassfish/grizzly/CloseListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.CloseListener closeListener
         0: .line 651
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.closeReason:Lorg/glassfish/grizzly/CloseReason;
            astore 2 /* reason */
        start local 2 // org.glassfish.grizzly.CloseReason reason
         1: .line 654
            aload 2 /* reason */
            ifnonnull 7
         2: .line 656
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.closeListeners:Ljava/util/List;
            aload 1 /* closeListener */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 658
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.closeReason:Lorg/glassfish/grizzly/CloseReason;
            astore 2 /* reason */
         4: .line 659
            aload 2 /* reason */
            ifnull 8
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.closeListeners:Ljava/util/List;
            aload 1 /* closeListener */
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            ifeq 8
         5: .line 661
            aload 0 /* this */
            aload 1 /* closeListener */
            aload 2 /* reason */
            invokevirtual org.glassfish.grizzly.CloseReason.getType:()Lorg/glassfish/grizzly/CloseType;
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.invokeCloseListener:(Lorg/glassfish/grizzly/CloseListener;Lorg/glassfish/grizzly/CloseType;)V
         6: .line 663
            goto 8
         7: .line 664
      StackMap locals: org.glassfish.grizzly.CloseReason
      StackMap stack:
            aload 0 /* this */
            aload 1 /* closeListener */
            aload 2 /* reason */
            invokevirtual org.glassfish.grizzly.CloseReason.getType:()Lorg/glassfish/grizzly/CloseType;
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.invokeCloseListener:(Lorg/glassfish/grizzly/CloseListener;Lorg/glassfish/grizzly/CloseType;)V
         8: .line 666
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.glassfish.grizzly.CloseReason reason
        end local 1 // org.glassfish.grizzly.CloseListener closeListener
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    9     0           this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    9     1  closeListener  Lorg/glassfish/grizzly/CloseListener;
            1    9     2         reason  Lorg/glassfish/grizzly/CloseReason;
    MethodParameters:
               Name  Flags
      closeListener  final

  public boolean removeCloseListener(org.glassfish.grizzly.CloseListener);
    descriptor: (Lorg/glassfish/grizzly/CloseListener;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.CloseListener closeListener
         0: .line 673
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.closeListeners:Ljava/util/List;
            aload 1 /* closeListener */
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // org.glassfish.grizzly.CloseListener closeListener
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    1     1  closeListener  Lorg/glassfish/grizzly/CloseListener;
    MethodParameters:
               Name  Flags
      closeListener  final

  public void addCloseListener(org.glassfish.grizzly.Connection$CloseListener);
    descriptor: (Lorg/glassfish/grizzly/Connection$CloseListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.Connection$CloseListener closeListener
         0: .line 678
            aload 0 /* this */
            aload 1 /* closeListener */
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.addCloseListener:(Lorg/glassfish/grizzly/CloseListener;)V
         1: .line 679
            return
        end local 1 // org.glassfish.grizzly.Connection$CloseListener closeListener
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    2     1  closeListener  Lorg/glassfish/grizzly/Connection$CloseListener;
    MethodParameters:
               Name  Flags
      closeListener  

  public boolean removeCloseListener(org.glassfish.grizzly.Connection$CloseListener);
    descriptor: (Lorg/glassfish/grizzly/Connection$CloseListener;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.Connection$CloseListener closeListener
         0: .line 683
            aload 0 /* this */
            aload 1 /* closeListener */
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.removeCloseListener:(Lorg/glassfish/grizzly/CloseListener;)Z
            ireturn
        end local 1 // org.glassfish.grizzly.Connection$CloseListener closeListener
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    1     1  closeListener  Lorg/glassfish/grizzly/Connection$CloseListener;
    MethodParameters:
               Name  Flags
      closeListener  

  public void notifyConnectionError(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // java.lang.Throwable error
         0: .line 691
            aload 0 /* this */
            aload 1 /* error */
            invokestatic org.glassfish.grizzly.nio.NIOConnection.notifyProbesError:(Lorg/glassfish/grizzly/nio/NIOConnection;Ljava/lang/Throwable;)V
         1: .line 692
            return
        end local 1 // java.lang.Throwable error
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    2     1  error  Ljava/lang/Throwable;
    MethodParameters:
       Name  Flags
      error  

  public final org.glassfish.grizzly.monitoring.MonitoringConfig<org.glassfish.grizzly.ConnectionProbe> getMonitoringConfig();
    descriptor: ()Lorg/glassfish/grizzly/monitoring/MonitoringConfig;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 699
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            areturn
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;
    Signature: ()Lorg/glassfish/grizzly/monitoring/MonitoringConfig<Lorg/glassfish/grizzly/ConnectionProbe;>;

  protected static void notifyProbesBind(org.glassfish.grizzly.nio.NIOConnection);
    descriptor: (Lorg/glassfish/grizzly/nio/NIOConnection;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection connection
         0: .line 708
            aload 0 /* connection */
            getfield org.glassfish.grizzly.nio.NIOConnection.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            invokevirtual org.glassfish.grizzly.monitoring.DefaultMonitoringConfig.getProbesUnsafe:()[Ljava/lang/Object;
            checkcast org.glassfish.grizzly.ConnectionProbe[]
            astore 1 /* probes */
        start local 1 // org.glassfish.grizzly.ConnectionProbe[] probes
         1: .line 709
            aload 1 /* probes */
            ifnull 7
         2: .line 710
            aload 1 /* probes */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 6
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.ConnectionProbe[] top int int org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
         3: aload 5
            iload 3
            aaload
            astore 2 /* probe */
        start local 2 // org.glassfish.grizzly.ConnectionProbe probe
         4: .line 711
            aload 2 /* probe */
            aload 0 /* connection */
            invokeinterface org.glassfish.grizzly.ConnectionProbe.onBindEvent:(Lorg/glassfish/grizzly/Connection;)V
        end local 2 // org.glassfish.grizzly.ConnectionProbe probe
         5: .line 710
            iinc 3 1
      StackMap locals:
      StackMap stack:
         6: iload 3
            iload 4
            if_icmplt 3
         7: .line 714
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
            return
        end local 1 // org.glassfish.grizzly.ConnectionProbe[] probes
        end local 0 // org.glassfish.grizzly.nio.NIOConnection connection
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0  connection  Lorg/glassfish/grizzly/nio/NIOConnection;
            1    8     1      probes  [Lorg/glassfish/grizzly/ConnectionProbe;
            4    5     2       probe  Lorg/glassfish/grizzly/ConnectionProbe;
    MethodParameters:
            Name  Flags
      connection  

  protected static void notifyProbesAccept(org.glassfish.grizzly.nio.NIOConnection, org.glassfish.grizzly.nio.NIOConnection);
    descriptor: (Lorg/glassfish/grizzly/nio/NIOConnection;Lorg/glassfish/grizzly/nio/NIOConnection;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection serverConnection
        start local 1 // org.glassfish.grizzly.nio.NIOConnection clientConnection
         0: .line 725
            aload 0 /* serverConnection */
            getfield org.glassfish.grizzly.nio.NIOConnection.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            invokevirtual org.glassfish.grizzly.monitoring.DefaultMonitoringConfig.getProbesUnsafe:()[Ljava/lang/Object;
            checkcast org.glassfish.grizzly.ConnectionProbe[]
         1: .line 724
            astore 2 /* probes */
        start local 2 // org.glassfish.grizzly.ConnectionProbe[] probes
         2: .line 726
            aload 2 /* probes */
            ifnull 8
         3: .line 727
            aload 2 /* probes */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 7
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.ConnectionProbe[] top int int org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
         4: aload 6
            iload 4
            aaload
            astore 3 /* probe */
        start local 3 // org.glassfish.grizzly.ConnectionProbe probe
         5: .line 728
            aload 3 /* probe */
            aload 0 /* serverConnection */
            aload 1 /* clientConnection */
            invokeinterface org.glassfish.grizzly.ConnectionProbe.onAcceptEvent:(Lorg/glassfish/grizzly/Connection;Lorg/glassfish/grizzly/Connection;)V
        end local 3 // org.glassfish.grizzly.ConnectionProbe probe
         6: .line 727
            iinc 4 1
      StackMap locals:
      StackMap stack:
         7: iload 4
            iload 5
            if_icmplt 4
         8: .line 731
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
            return
        end local 2 // org.glassfish.grizzly.ConnectionProbe[] probes
        end local 1 // org.glassfish.grizzly.nio.NIOConnection clientConnection
        end local 0 // org.glassfish.grizzly.nio.NIOConnection serverConnection
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    9     0  serverConnection  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    9     1  clientConnection  Lorg/glassfish/grizzly/nio/NIOConnection;
            2    9     2            probes  [Lorg/glassfish/grizzly/ConnectionProbe;
            5    6     3             probe  Lorg/glassfish/grizzly/ConnectionProbe;
    MethodParameters:
                  Name  Flags
      serverConnection  final
      clientConnection  final

  protected static void notifyProbesConnect(org.glassfish.grizzly.nio.NIOConnection);
    descriptor: (Lorg/glassfish/grizzly/nio/NIOConnection;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection connection
         0: .line 740
            aload 0 /* connection */
            getfield org.glassfish.grizzly.nio.NIOConnection.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            invokevirtual org.glassfish.grizzly.monitoring.DefaultMonitoringConfig.getProbesUnsafe:()[Ljava/lang/Object;
            checkcast org.glassfish.grizzly.ConnectionProbe[]
         1: .line 739
            astore 1 /* probes */
        start local 1 // org.glassfish.grizzly.ConnectionProbe[] probes
         2: .line 741
            aload 1 /* probes */
            ifnull 8
         3: .line 742
            aload 1 /* probes */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 7
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.ConnectionProbe[] top int int org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
         4: aload 5
            iload 3
            aaload
            astore 2 /* probe */
        start local 2 // org.glassfish.grizzly.ConnectionProbe probe
         5: .line 743
            aload 2 /* probe */
            aload 0 /* connection */
            invokeinterface org.glassfish.grizzly.ConnectionProbe.onConnectEvent:(Lorg/glassfish/grizzly/Connection;)V
        end local 2 // org.glassfish.grizzly.ConnectionProbe probe
         6: .line 742
            iinc 3 1
      StackMap locals:
      StackMap stack:
         7: iload 3
            iload 4
            if_icmplt 4
         8: .line 746
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
            return
        end local 1 // org.glassfish.grizzly.ConnectionProbe[] probes
        end local 0 // org.glassfish.grizzly.nio.NIOConnection connection
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0  connection  Lorg/glassfish/grizzly/nio/NIOConnection;
            2    9     1      probes  [Lorg/glassfish/grizzly/ConnectionProbe;
            5    6     2       probe  Lorg/glassfish/grizzly/ConnectionProbe;
    MethodParameters:
            Name  Flags
      connection  

  protected static void notifyProbesRead(org.glassfish.grizzly.nio.NIOConnection, org.glassfish.grizzly.Buffer, int);
    descriptor: (Lorg/glassfish/grizzly/nio/NIOConnection;Lorg/glassfish/grizzly/Buffer;I)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // org.glassfish.grizzly.nio.NIOConnection connection
        start local 1 // org.glassfish.grizzly.Buffer data
        start local 2 // int size
         0: .line 754
            aload 0 /* connection */
            getfield org.glassfish.grizzly.nio.NIOConnection.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            invokevirtual org.glassfish.grizzly.monitoring.DefaultMonitoringConfig.getProbesUnsafe:()[Ljava/lang/Object;
            checkcast org.glassfish.grizzly.ConnectionProbe[]
         1: .line 753
            astore 3 /* probes */
        start local 3 // org.glassfish.grizzly.ConnectionProbe[] probes
         2: .line 755
            aload 3 /* probes */
            ifnull 8
         3: .line 756
            aload 3 /* probes */
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 7
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.Buffer int org.glassfish.grizzly.ConnectionProbe[] top int int org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
         4: aload 7
            iload 5
            aaload
            astore 4 /* probe */
        start local 4 // org.glassfish.grizzly.ConnectionProbe probe
         5: .line 757
            aload 4 /* probe */
            aload 0 /* connection */
            aload 1 /* data */
            iload 2 /* size */
            invokeinterface org.glassfish.grizzly.ConnectionProbe.onReadEvent:(Lorg/glassfish/grizzly/Connection;Lorg/glassfish/grizzly/Buffer;I)V
        end local 4 // org.glassfish.grizzly.ConnectionProbe probe
         6: .line 756
            iinc 5 1
      StackMap locals:
      StackMap stack:
         7: iload 5
            iload 6
            if_icmplt 4
         8: .line 760
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.Buffer int org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
            return
        end local 3 // org.glassfish.grizzly.ConnectionProbe[] probes
        end local 2 // int size
        end local 1 // org.glassfish.grizzly.Buffer data
        end local 0 // org.glassfish.grizzly.nio.NIOConnection connection
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0  connection  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    9     1        data  Lorg/glassfish/grizzly/Buffer;
            0    9     2        size  I
            2    9     3      probes  [Lorg/glassfish/grizzly/ConnectionProbe;
            5    6     4       probe  Lorg/glassfish/grizzly/ConnectionProbe;
    MethodParameters:
            Name  Flags
      connection  
      data        
      size        

  protected static void notifyProbesWrite(org.glassfish.grizzly.nio.NIOConnection, org.glassfish.grizzly.Buffer, long);
    descriptor: (Lorg/glassfish/grizzly/nio/NIOConnection;Lorg/glassfish/grizzly/Buffer;J)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=5, locals=9, args_size=3
        start local 0 // org.glassfish.grizzly.nio.NIOConnection connection
        start local 1 // org.glassfish.grizzly.Buffer data
        start local 2 // long size
         0: .line 768
            aload 0 /* connection */
            getfield org.glassfish.grizzly.nio.NIOConnection.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            invokevirtual org.glassfish.grizzly.monitoring.DefaultMonitoringConfig.getProbesUnsafe:()[Ljava/lang/Object;
            checkcast org.glassfish.grizzly.ConnectionProbe[]
         1: .line 767
            astore 4 /* probes */
        start local 4 // org.glassfish.grizzly.ConnectionProbe[] probes
         2: .line 769
            aload 4 /* probes */
            ifnull 8
         3: .line 770
            aload 4 /* probes */
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 7
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.Buffer long org.glassfish.grizzly.ConnectionProbe[] top int int org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
         4: aload 8
            iload 6
            aaload
            astore 5 /* probe */
        start local 5 // org.glassfish.grizzly.ConnectionProbe probe
         5: .line 771
            aload 5 /* probe */
            aload 0 /* connection */
            aload 1 /* data */
            lload 2 /* size */
            invokeinterface org.glassfish.grizzly.ConnectionProbe.onWriteEvent:(Lorg/glassfish/grizzly/Connection;Lorg/glassfish/grizzly/Buffer;J)V
        end local 5 // org.glassfish.grizzly.ConnectionProbe probe
         6: .line 770
            iinc 6 1
      StackMap locals:
      StackMap stack:
         7: iload 6
            iload 7
            if_icmplt 4
         8: .line 774
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.Buffer long org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
            return
        end local 4 // org.glassfish.grizzly.ConnectionProbe[] probes
        end local 2 // long size
        end local 1 // org.glassfish.grizzly.Buffer data
        end local 0 // org.glassfish.grizzly.nio.NIOConnection connection
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0  connection  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    9     1        data  Lorg/glassfish/grizzly/Buffer;
            0    9     2        size  J
            2    9     4      probes  [Lorg/glassfish/grizzly/ConnectionProbe;
            5    6     5       probe  Lorg/glassfish/grizzly/ConnectionProbe;
    MethodParameters:
            Name  Flags
      connection  
      data        
      size        

  protected static void notifyIOEventReady(org.glassfish.grizzly.nio.NIOConnection, org.glassfish.grizzly.IOEvent);
    descriptor: (Lorg/glassfish/grizzly/nio/NIOConnection;Lorg/glassfish/grizzly/IOEvent;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection connection
        start local 1 // org.glassfish.grizzly.IOEvent ioEvent
         0: .line 785
            aload 0 /* connection */
            getfield org.glassfish.grizzly.nio.NIOConnection.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            invokevirtual org.glassfish.grizzly.monitoring.DefaultMonitoringConfig.getProbesUnsafe:()[Ljava/lang/Object;
            checkcast org.glassfish.grizzly.ConnectionProbe[]
         1: .line 784
            astore 2 /* probes */
        start local 2 // org.glassfish.grizzly.ConnectionProbe[] probes
         2: .line 786
            aload 2 /* probes */
            ifnull 8
         3: .line 787
            aload 2 /* probes */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 7
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.IOEvent org.glassfish.grizzly.ConnectionProbe[] top int int org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
         4: aload 6
            iload 4
            aaload
            astore 3 /* probe */
        start local 3 // org.glassfish.grizzly.ConnectionProbe probe
         5: .line 788
            aload 3 /* probe */
            aload 0 /* connection */
            aload 1 /* ioEvent */
            invokeinterface org.glassfish.grizzly.ConnectionProbe.onIOEventReadyEvent:(Lorg/glassfish/grizzly/Connection;Lorg/glassfish/grizzly/IOEvent;)V
        end local 3 // org.glassfish.grizzly.ConnectionProbe probe
         6: .line 787
            iinc 4 1
      StackMap locals:
      StackMap stack:
         7: iload 4
            iload 5
            if_icmplt 4
         8: .line 791
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.IOEvent org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
            return
        end local 2 // org.glassfish.grizzly.ConnectionProbe[] probes
        end local 1 // org.glassfish.grizzly.IOEvent ioEvent
        end local 0 // org.glassfish.grizzly.nio.NIOConnection connection
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0  connection  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    9     1     ioEvent  Lorg/glassfish/grizzly/IOEvent;
            2    9     2      probes  [Lorg/glassfish/grizzly/ConnectionProbe;
            5    6     3       probe  Lorg/glassfish/grizzly/ConnectionProbe;
    MethodParameters:
            Name  Flags
      connection  
      ioEvent     

  protected static void notifyIOEventEnabled(org.glassfish.grizzly.nio.NIOConnection, org.glassfish.grizzly.IOEvent);
    descriptor: (Lorg/glassfish/grizzly/nio/NIOConnection;Lorg/glassfish/grizzly/IOEvent;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection connection
        start local 1 // org.glassfish.grizzly.IOEvent ioEvent
         0: .line 802
            aload 0 /* connection */
            getfield org.glassfish.grizzly.nio.NIOConnection.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            invokevirtual org.glassfish.grizzly.monitoring.DefaultMonitoringConfig.getProbesUnsafe:()[Ljava/lang/Object;
            checkcast org.glassfish.grizzly.ConnectionProbe[]
         1: .line 801
            astore 2 /* probes */
        start local 2 // org.glassfish.grizzly.ConnectionProbe[] probes
         2: .line 803
            aload 2 /* probes */
            ifnull 8
         3: .line 804
            aload 2 /* probes */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 7
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.IOEvent org.glassfish.grizzly.ConnectionProbe[] top int int org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
         4: aload 6
            iload 4
            aaload
            astore 3 /* probe */
        start local 3 // org.glassfish.grizzly.ConnectionProbe probe
         5: .line 805
            aload 3 /* probe */
            aload 0 /* connection */
            aload 1 /* ioEvent */
            invokeinterface org.glassfish.grizzly.ConnectionProbe.onIOEventEnableEvent:(Lorg/glassfish/grizzly/Connection;Lorg/glassfish/grizzly/IOEvent;)V
        end local 3 // org.glassfish.grizzly.ConnectionProbe probe
         6: .line 804
            iinc 4 1
      StackMap locals:
      StackMap stack:
         7: iload 4
            iload 5
            if_icmplt 4
         8: .line 808
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.IOEvent org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
            return
        end local 2 // org.glassfish.grizzly.ConnectionProbe[] probes
        end local 1 // org.glassfish.grizzly.IOEvent ioEvent
        end local 0 // org.glassfish.grizzly.nio.NIOConnection connection
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0  connection  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    9     1     ioEvent  Lorg/glassfish/grizzly/IOEvent;
            2    9     2      probes  [Lorg/glassfish/grizzly/ConnectionProbe;
            5    6     3       probe  Lorg/glassfish/grizzly/ConnectionProbe;
    MethodParameters:
            Name  Flags
      connection  
      ioEvent     

  protected static void notifyIOEventDisabled(org.glassfish.grizzly.nio.NIOConnection, org.glassfish.grizzly.IOEvent);
    descriptor: (Lorg/glassfish/grizzly/nio/NIOConnection;Lorg/glassfish/grizzly/IOEvent;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection connection
        start local 1 // org.glassfish.grizzly.IOEvent ioEvent
         0: .line 819
            aload 0 /* connection */
            getfield org.glassfish.grizzly.nio.NIOConnection.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            invokevirtual org.glassfish.grizzly.monitoring.DefaultMonitoringConfig.getProbesUnsafe:()[Ljava/lang/Object;
            checkcast org.glassfish.grizzly.ConnectionProbe[]
         1: .line 818
            astore 2 /* probes */
        start local 2 // org.glassfish.grizzly.ConnectionProbe[] probes
         2: .line 820
            aload 2 /* probes */
            ifnull 8
         3: .line 821
            aload 2 /* probes */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 7
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.IOEvent org.glassfish.grizzly.ConnectionProbe[] top int int org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
         4: aload 6
            iload 4
            aaload
            astore 3 /* probe */
        start local 3 // org.glassfish.grizzly.ConnectionProbe probe
         5: .line 822
            aload 3 /* probe */
            aload 0 /* connection */
            aload 1 /* ioEvent */
            invokeinterface org.glassfish.grizzly.ConnectionProbe.onIOEventDisableEvent:(Lorg/glassfish/grizzly/Connection;Lorg/glassfish/grizzly/IOEvent;)V
        end local 3 // org.glassfish.grizzly.ConnectionProbe probe
         6: .line 821
            iinc 4 1
      StackMap locals:
      StackMap stack:
         7: iload 4
            iload 5
            if_icmplt 4
         8: .line 825
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.IOEvent org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
            return
        end local 2 // org.glassfish.grizzly.ConnectionProbe[] probes
        end local 1 // org.glassfish.grizzly.IOEvent ioEvent
        end local 0 // org.glassfish.grizzly.nio.NIOConnection connection
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0  connection  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    9     1     ioEvent  Lorg/glassfish/grizzly/IOEvent;
            2    9     2      probes  [Lorg/glassfish/grizzly/ConnectionProbe;
            5    6     3       probe  Lorg/glassfish/grizzly/ConnectionProbe;
    MethodParameters:
            Name  Flags
      connection  
      ioEvent     

  protected static void notifyProbesClose(org.glassfish.grizzly.nio.NIOConnection);
    descriptor: (Lorg/glassfish/grizzly/nio/NIOConnection;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection connection
         0: .line 834
            aload 0 /* connection */
            getfield org.glassfish.grizzly.nio.NIOConnection.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            invokevirtual org.glassfish.grizzly.monitoring.DefaultMonitoringConfig.getProbesUnsafe:()[Ljava/lang/Object;
            checkcast org.glassfish.grizzly.ConnectionProbe[]
         1: .line 833
            astore 1 /* probes */
        start local 1 // org.glassfish.grizzly.ConnectionProbe[] probes
         2: .line 835
            aload 1 /* probes */
            ifnull 8
         3: .line 836
            aload 1 /* probes */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 7
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.ConnectionProbe[] top int int org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
         4: aload 5
            iload 3
            aaload
            astore 2 /* probe */
        start local 2 // org.glassfish.grizzly.ConnectionProbe probe
         5: .line 837
            aload 2 /* probe */
            aload 0 /* connection */
            invokeinterface org.glassfish.grizzly.ConnectionProbe.onCloseEvent:(Lorg/glassfish/grizzly/Connection;)V
        end local 2 // org.glassfish.grizzly.ConnectionProbe probe
         6: .line 836
            iinc 3 1
      StackMap locals:
      StackMap stack:
         7: iload 3
            iload 4
            if_icmplt 4
         8: .line 840
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
            return
        end local 1 // org.glassfish.grizzly.ConnectionProbe[] probes
        end local 0 // org.glassfish.grizzly.nio.NIOConnection connection
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0  connection  Lorg/glassfish/grizzly/nio/NIOConnection;
            2    9     1      probes  [Lorg/glassfish/grizzly/ConnectionProbe;
            5    6     2       probe  Lorg/glassfish/grizzly/ConnectionProbe;
    MethodParameters:
            Name  Flags
      connection  

  protected static void notifyProbesError(org.glassfish.grizzly.nio.NIOConnection, java.lang.Throwable);
    descriptor: (Lorg/glassfish/grizzly/nio/NIOConnection;Ljava/lang/Throwable;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection connection
        start local 1 // java.lang.Throwable error
         0: .line 850
            aload 0 /* connection */
            getfield org.glassfish.grizzly.nio.NIOConnection.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            invokevirtual org.glassfish.grizzly.monitoring.DefaultMonitoringConfig.getProbesUnsafe:()[Ljava/lang/Object;
            checkcast org.glassfish.grizzly.ConnectionProbe[]
         1: .line 849
            astore 2 /* probes */
        start local 2 // org.glassfish.grizzly.ConnectionProbe[] probes
         2: .line 851
            aload 2 /* probes */
            ifnull 8
         3: .line 852
            aload 2 /* probes */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 7
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection java.lang.Throwable org.glassfish.grizzly.ConnectionProbe[] top int int org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
         4: aload 6
            iload 4
            aaload
            astore 3 /* probe */
        start local 3 // org.glassfish.grizzly.ConnectionProbe probe
         5: .line 853
            aload 3 /* probe */
            aload 0 /* connection */
            aload 1 /* error */
            invokeinterface org.glassfish.grizzly.ConnectionProbe.onErrorEvent:(Lorg/glassfish/grizzly/Connection;Ljava/lang/Throwable;)V
        end local 3 // org.glassfish.grizzly.ConnectionProbe probe
         6: .line 852
            iinc 4 1
      StackMap locals:
      StackMap stack:
         7: iload 4
            iload 5
            if_icmplt 4
         8: .line 856
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection java.lang.Throwable org.glassfish.grizzly.ConnectionProbe[]
      StackMap stack:
            return
        end local 2 // org.glassfish.grizzly.ConnectionProbe[] probes
        end local 1 // java.lang.Throwable error
        end local 0 // org.glassfish.grizzly.nio.NIOConnection connection
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0  connection  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    9     1       error  Ljava/lang/Throwable;
            2    9     2      probes  [Lorg/glassfish/grizzly/ConnectionProbe;
            5    6     3       probe  Lorg/glassfish/grizzly/ConnectionProbe;
    MethodParameters:
            Name  Flags
      connection  
      error       

  private void notifyCloseListeners(org.glassfish.grizzly.CloseReason);
    descriptor: (Lorg/glassfish/grizzly/CloseReason;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.CloseReason closeReason
         0: .line 862
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.closeListeners:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 14
         1: .line 864
            aload 1 /* closeReason */
            invokevirtual org.glassfish.grizzly.CloseReason.getType:()Lorg/glassfish/grizzly/CloseType;
         2: .line 863
            astore 2 /* closeType */
        start local 2 // org.glassfish.grizzly.CloseType closeType
         3: .line 867
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.closeListeners:Ljava/util/List;
            dup
            astore 4
            monitorenter
         4: .line 868
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.closeListeners:Ljava/util/List;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            astore 3 /* copiedCloseListeners */
        start local 3 // java.util.List copiedCloseListeners
         5: .line 869
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.closeListeners:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
         6: .line 867
            aload 4
            monitorexit
         7: goto 10
        end local 3 // java.util.List copiedCloseListeners
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.CloseReason org.glassfish.grizzly.CloseType top java.util.List
      StackMap stack: java.lang.Throwable
         8: aload 4
            monitorexit
         9: athrow
        start local 3 // java.util.List copiedCloseListeners
        10: .line 871
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.CloseReason org.glassfish.grizzly.CloseType java.util.List
      StackMap stack:
            aload 3 /* copiedCloseListeners */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 13
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.CloseReason org.glassfish.grizzly.CloseType java.util.List top java.util.Iterator
      StackMap stack:
        11: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.glassfish.grizzly.CloseListener
            astore 4 /* closeListener */
        start local 4 // org.glassfish.grizzly.CloseListener closeListener
        12: .line 872
            aload 0 /* this */
            aload 4 /* closeListener */
            aload 2 /* closeType */
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.invokeCloseListener:(Lorg/glassfish/grizzly/CloseListener;Lorg/glassfish/grizzly/CloseType;)V
        end local 4 // org.glassfish.grizzly.CloseListener closeListener
        13: .line 871
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        end local 3 // java.util.List copiedCloseListeners
        end local 2 // org.glassfish.grizzly.CloseType closeType
        14: .line 875
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.CloseReason
      StackMap stack:
            return
        end local 1 // org.glassfish.grizzly.CloseReason closeReason
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   15     0                  this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0   15     1           closeReason  Lorg/glassfish/grizzly/CloseReason;
            3   14     2             closeType  Lorg/glassfish/grizzly/CloseType;
            5    8     3  copiedCloseListeners  Ljava/util/List<Lorg/glassfish/grizzly/CloseListener;>;
           10   14     3  copiedCloseListeners  Ljava/util/List<Lorg/glassfish/grizzly/CloseListener;>;
           12   13     4         closeListener  Lorg/glassfish/grizzly/CloseListener;
      Exception table:
        from    to  target  type
           4     7       8  any
           8     9       8  any
    MethodParameters:
             Name  Flags
      closeReason  final

  protected void preClose();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 879
            getstatic org.glassfish.grizzly.nio.NIOConnection.connectCloseSemaphoreUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
            aload 0 /* this */
            getstatic org.glassfish.grizzly.nio.NIOConnection.NOTIFICATION_CLOSED_COMPLETE:Ljava/lang/Object;
            invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.getAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
         1: .line 880
            getstatic org.glassfish.grizzly.nio.NIOConnection.NOTIFICATION_INITIALIZED:Ljava/lang/Object;
         2: .line 879
            if_acmpne 4
         3: .line 881
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
            getstatic org.glassfish.grizzly.IOEvent.CLOSED:Lorg/glassfish/grizzly/IOEvent;
            aload 0 /* this */
            aconst_null
            invokevirtual org.glassfish.grizzly.nio.NIOTransport.fireIOEvent:(Lorg/glassfish/grizzly/IOEvent;Lorg/glassfish/grizzly/Connection;Lorg/glassfish/grizzly/IOEventLifeCycleListener;)V
         4: .line 883
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;

  protected void enableInitialOpRead();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
         0: .line 891
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.isInitialReadRequired:Z
            ifeq 2
         1: .line 893
            aload 0 /* this */
            getstatic org.glassfish.grizzly.IOEvent.READ:Lorg/glassfish/grizzly/IOEvent;
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.enableIOEvent:(Lorg/glassfish/grizzly/IOEvent;)V
         2: .line 895
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/glassfish/grizzly/nio/NIOConnection;
    Exceptions:
      throws java.io.IOException

  public void simulateIOEvent(org.glassfish.grizzly.IOEvent);
    descriptor: (Lorg/glassfish/grizzly/IOEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.IOEvent ioEvent
         0: .line 899
            aload 0 /* this */
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.isOpen:()Z
            ifne 2
         1: .line 901
            return
         2: .line 904
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
            invokevirtual org.glassfish.grizzly.nio.NIOTransport.getSelectorHandler:()Lorg/glassfish/grizzly/nio/SelectorHandler;
            astore 2 /* selectorHandler */
        start local 2 // org.glassfish.grizzly.nio.SelectorHandler selectorHandler
         3: .line 905
            invokestatic org.glassfish.grizzly.nio.NIOConnection.$SWITCH_TABLE$org$glassfish$grizzly$IOEvent:()[I
            aload 1 /* ioEvent */
            invokevirtual org.glassfish.grizzly.IOEvent.ordinal:()I
            iaload
            tableswitch { // 2 - 3
                    2: 6
                    3: 4
              default: 8
          }
         4: .line 907
      StackMap locals: org.glassfish.grizzly.nio.SelectorHandler
      StackMap stack:
            aload 2 /* selectorHandler */
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.selectorRunner:Lorg/glassfish/grizzly/nio/SelectorRunner;
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.writeSimulatorRunnable:Lorg/glassfish/grizzly/nio/SelectorHandler$Task;
            aconst_null
            invokeinterface org.glassfish.grizzly.nio.SelectorHandler.enque:(Lorg/glassfish/grizzly/nio/SelectorRunner;Lorg/glassfish/grizzly/nio/SelectorHandler$Task;Lorg/glassfish/grizzly/CompletionHandler;)V
         5: .line 908
            goto 9
         6: .line 910
      StackMap locals:
      StackMap stack:
            aload 2 /* selectorHandler */
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.selectorRunner:Lorg/glassfish/grizzly/nio/SelectorRunner;
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.readSimulatorRunnable:Lorg/glassfish/grizzly/nio/SelectorHandler$Task;
            aconst_null
            invokeinterface org.glassfish.grizzly.nio.SelectorHandler.enque:(Lorg/glassfish/grizzly/nio/SelectorRunner;Lorg/glassfish/grizzly/nio/SelectorHandler$Task;Lorg/glassfish/grizzly/CompletionHandler;)V
         7: .line 911
            goto 9
         8: .line 913
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "We support only READ and WRITE events. Got "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* ioEvent */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 915
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.glassfish.grizzly.nio.SelectorHandler selectorHandler
        end local 1 // org.glassfish.grizzly.IOEvent ioEvent
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0             this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0   10     1          ioEvent  Lorg/glassfish/grizzly/IOEvent;
            3   10     2  selectorHandler  Lorg/glassfish/grizzly/nio/SelectorHandler;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      ioEvent  final

  public final void enableIOEvent(org.glassfish.grizzly.IOEvent);
    descriptor: (Lorg/glassfish/grizzly/IOEvent;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.IOEvent ioEvent
         0: .line 919
            aload 1 /* ioEvent */
            getstatic org.glassfish.grizzly.IOEvent.READ:Lorg/glassfish/grizzly/IOEvent;
            if_acmpne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 2 /* isOpRead */
        start local 2 // boolean isOpRead
         3: .line 920
            aload 1 /* ioEvent */
            invokevirtual org.glassfish.grizzly.IOEvent.getSelectionKeyInterest:()I
            istore 3 /* interest */
        start local 3 // int interest
         4: .line 921
            iload 3 /* interest */
            ifeq 7
         5: .line 923
            iload 2 /* isOpRead */
            ifeq 6
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.isCloseScheduled:Ljava/util/concurrent/atomic/AtomicBoolean;
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
            ifne 7
         6: .line 925
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.closeReason:Lorg/glassfish/grizzly/CloseReason;
            ifnull 8
         7: .line 926
      StackMap locals:
      StackMap stack:
            return
         8: .line 929
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* ioEvent */
            invokestatic org.glassfish.grizzly.nio.NIOConnection.notifyIOEventEnabled:(Lorg/glassfish/grizzly/nio/NIOConnection;Lorg/glassfish/grizzly/IOEvent;)V
         9: .line 932
            aload 0 /* this */
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.isInitialReadRequired:Z
            ifeq 10
            iload 2 /* isOpRead */
            ifne 10
            iconst_1
            goto 11
      StackMap locals:
      StackMap stack: org.glassfish.grizzly.nio.NIOConnection
        10: iconst_0
      StackMap locals: org.glassfish.grizzly.nio.NIOConnection org.glassfish.grizzly.IOEvent int int
      StackMap stack: org.glassfish.grizzly.nio.NIOConnection int
        11: putfield org.glassfish.grizzly.nio.NIOConnection.isInitialReadRequired:Z
        12: .line 934
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
            invokevirtual org.glassfish.grizzly.nio.NIOTransport.getSelectorHandler:()Lorg/glassfish/grizzly/nio/SelectorHandler;
            astore 4 /* selectorHandler */
        start local 4 // org.glassfish.grizzly.nio.SelectorHandler selectorHandler
        13: .line 935
            aload 4 /* selectorHandler */
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.selectorRunner:Lorg/glassfish/grizzly/nio/SelectorRunner;
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.selectionKey:Ljava/nio/channels/SelectionKey;
        14: .line 936
            iload 3 /* interest */
        15: .line 935
            invokeinterface org.glassfish.grizzly.nio.SelectorHandler.registerKeyInterest:(Lorg/glassfish/grizzly/nio/SelectorRunner;Ljava/nio/channels/SelectionKey;I)V
        16: .line 937
            return
        end local 4 // org.glassfish.grizzly.nio.SelectorHandler selectorHandler
        end local 3 // int interest
        end local 2 // boolean isOpRead
        end local 1 // org.glassfish.grizzly.IOEvent ioEvent
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   17     0             this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0   17     1          ioEvent  Lorg/glassfish/grizzly/IOEvent;
            3   17     2         isOpRead  Z
            4   17     3         interest  I
           13   17     4  selectorHandler  Lorg/glassfish/grizzly/nio/SelectorHandler;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      ioEvent  final

  public final void disableIOEvent(org.glassfish.grizzly.IOEvent);
    descriptor: (Lorg/glassfish/grizzly/IOEvent;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.IOEvent ioEvent
         0: .line 961
            aload 1 /* ioEvent */
            invokevirtual org.glassfish.grizzly.IOEvent.getSelectionKeyInterest:()I
            istore 2 /* interest */
        start local 2 // int interest
         1: .line 962
            iload 2 /* interest */
            ifne 3
         2: .line 963
            return
         3: .line 966
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* ioEvent */
            invokestatic org.glassfish.grizzly.nio.NIOConnection.notifyIOEventDisabled:(Lorg/glassfish/grizzly/nio/NIOConnection;Lorg/glassfish/grizzly/IOEvent;)V
         4: .line 968
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.transport:Lorg/glassfish/grizzly/nio/NIOTransport;
            invokevirtual org.glassfish.grizzly.nio.NIOTransport.getSelectorHandler:()Lorg/glassfish/grizzly/nio/SelectorHandler;
            astore 3 /* selectorHandler */
        start local 3 // org.glassfish.grizzly.nio.SelectorHandler selectorHandler
         5: .line 969
            aload 3 /* selectorHandler */
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.selectorRunner:Lorg/glassfish/grizzly/nio/SelectorRunner;
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.selectionKey:Ljava/nio/channels/SelectionKey;
            iload 2 /* interest */
            invokeinterface org.glassfish.grizzly.nio.SelectorHandler.deregisterKeyInterest:(Lorg/glassfish/grizzly/nio/SelectorRunner;Ljava/nio/channels/SelectionKey;I)V
         6: .line 970
            return
        end local 3 // org.glassfish.grizzly.nio.SelectorHandler selectorHandler
        end local 2 // int interest
        end local 1 // org.glassfish.grizzly.IOEvent ioEvent
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    7     0             this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    7     1          ioEvent  Lorg/glassfish/grizzly/IOEvent;
            1    7     2         interest  I
            5    7     3  selectorHandler  Lorg/glassfish/grizzly/nio/SelectorHandler;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      ioEvent  final

  protected final void checkEmptyRead(int);
    descriptor: (I)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // int size
         0: .line 973
            getstatic org.glassfish.grizzly.nio.NIOConnection.WIN32:Z
            ifeq 7
         1: .line 974
            iload 1 /* size */
            ifne 6
         2: .line 975
            aload 0 /* this */
            dup
            getfield org.glassfish.grizzly.nio.NIOConnection.zeroByteReadCount:S
            iconst_1
            iadd
            i2s
            dup_x1
            putfield org.glassfish.grizzly.nio.NIOConnection.zeroByteReadCount:S
            istore 2 /* count */
        start local 2 // short count
         3: .line 976
            iload 2 /* count */
            bipush 100
            if_icmplt 7
         4: .line 977
            aload 0 /* this */
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.closeSilently:()V
        end local 2 // short count
         5: .line 979
            goto 7
         6: .line 980
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.glassfish.grizzly.nio.NIOConnection.zeroByteReadCount:S
         7: .line 983
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int size
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    8     1   size  I
            3    5     2  count  S
    MethodParameters:
      Name  Flags
      size  final

  final void onSelectionKeyUpdated(java.nio.channels.SelectionKey);
    descriptor: (Ljava/nio/channels/SelectionKey;)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // java.nio.channels.SelectionKey newSelectionKey
         0: .line 986
            aload 0 /* this */
            aload 1 /* newSelectionKey */
            putfield org.glassfish.grizzly.nio.NIOConnection.selectionKey:Ljava/nio/channels/SelectionKey;
         1: .line 987
            return
        end local 1 // java.nio.channels.SelectionKey newSelectionKey
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    2     1  newSelectionKey  Ljava/nio/channels/SelectionKey;
    MethodParameters:
                 Name  Flags
      newSelectionKey  final

  private void invokeCloseListener(org.glassfish.grizzly.CloseListener, org.glassfish.grizzly.CloseType);
    descriptor: (Lorg/glassfish/grizzly/CloseListener;Lorg/glassfish/grizzly/CloseType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.CloseListener closeListener
        start local 2 // org.glassfish.grizzly.CloseType closeType
         0: .line 994
            aload 1 /* closeListener */
            instanceof org.glassfish.grizzly.Connection$CloseListener
            ifeq 7
         1: .line 996
            aload 2 /* closeType */
            getstatic org.glassfish.grizzly.CloseType.LOCALLY:Lorg/glassfish/grizzly/CloseType;
            if_acmpne 4
         2: .line 997
            getstatic org.glassfish.grizzly.Connection$CloseType.LOCALLY:Lorg/glassfish/grizzly/Connection$CloseType;
            astore 3 /* closeLocal */
        start local 3 // org.glassfish.grizzly.Connection$CloseType closeLocal
         3: .line 998
            goto 5
        end local 3 // org.glassfish.grizzly.Connection$CloseType closeLocal
         4: .line 999
      StackMap locals:
      StackMap stack:
            getstatic org.glassfish.grizzly.Connection$CloseType.REMOTELY:Lorg/glassfish/grizzly/Connection$CloseType;
            astore 3 /* closeLocal */
        start local 3 // org.glassfish.grizzly.Connection$CloseType closeLocal
         5: .line 1001
      StackMap locals: org.glassfish.grizzly.Connection$CloseType
      StackMap stack:
            aload 1 /* closeListener */
            checkcast org.glassfish.grizzly.Connection$CloseListener
            aload 0 /* this */
            aload 3 /* closeLocal */
            invokeinterface org.glassfish.grizzly.Connection$CloseListener.onClosed:(Lorg/glassfish/grizzly/Connection;Lorg/glassfish/grizzly/Connection$CloseType;)V
        end local 3 // org.glassfish.grizzly.Connection$CloseType closeLocal
         6: .line 1002
            goto 10
         7: .line 1003
      StackMap locals:
      StackMap stack:
            aload 1 /* closeListener */
            aload 0 /* this */
            aload 2 /* closeType */
            invokeinterface org.glassfish.grizzly.CloseListener.onClosed:(Lorg/glassfish/grizzly/Closeable;Lorg/glassfish/grizzly/ICloseType;)V
         8: .line 1005
            goto 10
      StackMap locals:
      StackMap stack: java.lang.Exception
         9: pop
        10: .line 1007
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.glassfish.grizzly.CloseType closeType
        end local 1 // org.glassfish.grizzly.CloseListener closeListener
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0           this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0   11     1  closeListener  Lorg/glassfish/grizzly/CloseListener;
            0   11     2      closeType  Lorg/glassfish/grizzly/CloseType;
            3    4     3     closeLocal  Lorg/glassfish/grizzly/Connection$CloseType;
            5    6     3     closeLocal  Lorg/glassfish/grizzly/Connection$CloseType;
      Exception table:
        from    to  target  type
           0     8       9  Class java.lang.Exception
    MethodParameters:
               Name  Flags
      closeListener  final
      closeType      final

  void setMonitoringProbes(org.glassfish.grizzly.ConnectionProbe[]);
    descriptor: ([Lorg/glassfish/grizzly/ConnectionProbe;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.nio.NIOConnection this
        start local 1 // org.glassfish.grizzly.ConnectionProbe[] monitoringProbes
         0: .line 1014
            aload 0 /* this */
            getfield org.glassfish.grizzly.nio.NIOConnection.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            aload 1 /* monitoringProbes */
            invokevirtual org.glassfish.grizzly.monitoring.DefaultMonitoringConfig.addProbes:([Ljava/lang/Object;)V
         1: .line 1015
            return
        end local 1 // org.glassfish.grizzly.ConnectionProbe[] monitoringProbes
        end local 0 // org.glassfish.grizzly.nio.NIOConnection this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/glassfish/grizzly/nio/NIOConnection;
            0    2     1  monitoringProbes  [Lorg/glassfish/grizzly/ConnectionProbe;
    MethodParameters:
                  Name  Flags
      monitoringProbes  final

  public void write(java.lang.Object, java.lang.Object, org.glassfish.grizzly.CompletionHandler, org.glassfish.grizzly.asyncqueue.PushBackHandler);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/asyncqueue/PushBackHandler;)V
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=5, locals=5, args_size=5
         0: .line 1
            aload 0
            aload 1
            checkcast java.net.SocketAddress
            aload 2
            checkcast java.lang.Object
            aload 3
            checkcast org.glassfish.grizzly.CompletionHandler
            aload 4
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.write:(Ljava/net/SocketAddress;Ljava/lang/Object;Lorg/glassfish/grizzly/CompletionHandler;Lorg/glassfish/grizzly/asyncqueue/PushBackHandler;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void write(java.lang.Object, java.lang.Object, org.glassfish.grizzly.CompletionHandler);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Lorg/glassfish/grizzly/CompletionHandler;)V
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=4
         0: .line 1
            aload 0
            aload 1
            checkcast java.net.SocketAddress
            aload 2
            checkcast java.lang.Object
            aload 3
            checkcast org.glassfish.grizzly.CompletionHandler
            invokevirtual org.glassfish.grizzly.nio.NIOConnection.write:(Ljava/net/SocketAddress;Ljava/lang/Object;Lorg/glassfish/grizzly/CompletionHandler;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static int[] $SWITCH_TABLE$org$glassfish$grizzly$IOEvent();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 75
            getstatic org.glassfish.grizzly.nio.NIOConnection.$SWITCH_TABLE$org$glassfish$grizzly$IOEvent:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.glassfish.grizzly.IOEvent.values:()[Lorg/glassfish/grizzly/IOEvent;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.glassfish.grizzly.IOEvent.ACCEPTED:Lorg/glassfish/grizzly/IOEvent;
            invokevirtual org.glassfish.grizzly.IOEvent.ordinal:()I
            iconst_5
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.glassfish.grizzly.IOEvent.CLIENT_CONNECTED:Lorg/glassfish/grizzly/IOEvent;
            invokevirtual org.glassfish.grizzly.IOEvent.ordinal:()I
            bipush 6
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.glassfish.grizzly.IOEvent.CLOSED:Lorg/glassfish/grizzly/IOEvent;
            invokevirtual org.glassfish.grizzly.IOEvent.ordinal:()I
            bipush 8
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.glassfish.grizzly.IOEvent.CONNECTED:Lorg/glassfish/grizzly/IOEvent;
            invokevirtual org.glassfish.grizzly.IOEvent.ordinal:()I
            bipush 7
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic org.glassfish.grizzly.IOEvent.NONE:Lorg/glassfish/grizzly/IOEvent;
            invokevirtual org.glassfish.grizzly.IOEvent.ordinal:()I
            iconst_1
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic org.glassfish.grizzly.IOEvent.READ:Lorg/glassfish/grizzly/IOEvent;
            invokevirtual org.glassfish.grizzly.IOEvent.ordinal:()I
            iconst_2
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic org.glassfish.grizzly.IOEvent.SERVER_ACCEPT:Lorg/glassfish/grizzly/IOEvent;
            invokevirtual org.glassfish.grizzly.IOEvent.ordinal:()I
            iconst_4
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic org.glassfish.grizzly.IOEvent.WRITE:Lorg/glassfish/grizzly/IOEvent;
            invokevirtual org.glassfish.grizzly.IOEvent.ordinal:()I
            iconst_3
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            dup
            putstatic org.glassfish.grizzly.nio.NIOConnection.$SWITCH_TABLE$org$glassfish$grizzly$IOEvent:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
}
Signature: Ljava/lang/Object;Lorg/glassfish/grizzly/Connection<Ljava/net/SocketAddress;>;
SourceFile: "NIOConnection.java"
NestMembers:
  org.glassfish.grizzly.nio.NIOConnection$1  org.glassfish.grizzly.nio.NIOConnection$2  org.glassfish.grizzly.nio.NIOConnection$3  org.glassfish.grizzly.nio.NIOConnection$4  org.glassfish.grizzly.nio.NIOConnection$5  org.glassfish.grizzly.nio.NIOConnection$6  org.glassfish.grizzly.nio.NIOConnection$7  org.glassfish.grizzly.nio.NIOConnection$8  org.glassfish.grizzly.nio.NIOConnection$9  org.glassfish.grizzly.nio.NIOConnection$ProcessorStatesMap  org.glassfish.grizzly.nio.NIOConnection$ProcessorStatesMap$ProcessorState  org.glassfish.grizzly.nio.NIOConnection$ProcessorStatesMap$StaticMapAccessor
InnerClasses:
  public abstract CloseListener = org.glassfish.grizzly.Connection$CloseListener of org.glassfish.grizzly.Connection
  public final CloseType = org.glassfish.grizzly.Connection$CloseType of org.glassfish.grizzly.Connection
  public abstract MutableMaxQueueSize = org.glassfish.grizzly.asyncqueue.TaskQueue$MutableMaxQueueSize of org.glassfish.grizzly.asyncqueue.TaskQueue
  org.glassfish.grizzly.nio.NIOConnection$1
  org.glassfish.grizzly.nio.NIOConnection$2
  org.glassfish.grizzly.nio.NIOConnection$3
  org.glassfish.grizzly.nio.NIOConnection$4
  org.glassfish.grizzly.nio.NIOConnection$5
  org.glassfish.grizzly.nio.NIOConnection$6
  org.glassfish.grizzly.nio.NIOConnection$7
  org.glassfish.grizzly.nio.NIOConnection$8
  org.glassfish.grizzly.nio.NIOConnection$9
  private final ProcessorStatesMap = org.glassfish.grizzly.nio.NIOConnection$ProcessorStatesMap of org.glassfish.grizzly.nio.NIOConnection
  public abstract Task = org.glassfish.grizzly.nio.SelectorHandler$Task of org.glassfish.grizzly.nio.SelectorHandler