class org.eclipse.jetty.server.HttpConnection$SendCallback extends org.eclipse.jetty.util.IteratingCallback
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.eclipse.jetty.server.HttpConnection$SendCallback
  super_class: org.eclipse.jetty.util.IteratingCallback
{
  private org.eclipse.jetty.http.MetaData$Response _info;
    descriptor: Lorg/eclipse/jetty/http/MetaData$Response;
    flags: (0x0002) ACC_PRIVATE

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

  private java.nio.ByteBuffer _content;
    descriptor: Ljava/nio/ByteBuffer;
    flags: (0x0002) ACC_PRIVATE

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

  private org.eclipse.jetty.util.Callback _callback;
    descriptor: Lorg/eclipse/jetty/util/Callback;
    flags: (0x0002) ACC_PRIVATE

  private java.nio.ByteBuffer _header;
    descriptor: Ljava/nio/ByteBuffer;
    flags: (0x0002) ACC_PRIVATE

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

  final org.eclipse.jetty.server.HttpConnection this$0;
    descriptor: Lorg/eclipse/jetty/server/HttpConnection;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$org$eclipse$jetty$http$HttpGenerator$Result;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  private void <init>(org.eclipse.jetty.server.HttpConnection);
    descriptor: (Lorg/eclipse/jetty/server/HttpConnection;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jetty.server.HttpConnection$SendCallback this
         0: .line 699
            aload 0 /* this */
            aload 1
            putfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
         1: .line 700
            aload 0 /* this */
            iconst_1
            invokespecial org.eclipse.jetty.util.IteratingCallback.<init>:(Z)V
         2: .line 701
            return
        end local 0 // org.eclipse.jetty.server.HttpConnection$SendCallback this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/jetty/server/HttpConnection$SendCallback;
    MethodParameters:
        Name  Flags
      this$0  final

  public org.eclipse.jetty.util.thread.Invocable$InvocationType getInvocationType();
    descriptor: ()Lorg/eclipse/jetty/util/thread/Invocable$InvocationType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jetty.server.HttpConnection$SendCallback this
         0: .line 706
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._callback:Lorg/eclipse/jetty/util/Callback;
            invokeinterface org.eclipse.jetty.util.Callback.getInvocationType:()Lorg/eclipse/jetty/util/thread/Invocable$InvocationType;
            areturn
        end local 0 // org.eclipse.jetty.server.HttpConnection$SendCallback this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jetty/server/HttpConnection$SendCallback;

  private boolean reset(org.eclipse.jetty.http.MetaData$Response, boolean, java.nio.ByteBuffer, boolean, org.eclipse.jetty.util.Callback);
    descriptor: (Lorg/eclipse/jetty/http/MetaData$Response;ZLjava/nio/ByteBuffer;ZLorg/eclipse/jetty/util/Callback;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=6
        start local 0 // org.eclipse.jetty.server.HttpConnection$SendCallback this
        start local 1 // org.eclipse.jetty.http.MetaData$Response info
        start local 2 // boolean head
        start local 3 // java.nio.ByteBuffer content
        start local 4 // boolean last
        start local 5 // org.eclipse.jetty.util.Callback callback
         0: .line 711
            aload 0 /* this */
            invokevirtual org.eclipse.jetty.server.HttpConnection$SendCallback.reset:()Z
            ifeq 11
         1: .line 713
            aload 0 /* this */
            aload 1 /* info */
            putfield org.eclipse.jetty.server.HttpConnection$SendCallback._info:Lorg/eclipse/jetty/http/MetaData$Response;
         2: .line 714
            aload 0 /* this */
            iload 2 /* head */
            putfield org.eclipse.jetty.server.HttpConnection$SendCallback._head:Z
         3: .line 715
            aload 0 /* this */
            aload 3 /* content */
            putfield org.eclipse.jetty.server.HttpConnection$SendCallback._content:Ljava/nio/ByteBuffer;
         4: .line 716
            aload 0 /* this */
            iload 4 /* last */
            putfield org.eclipse.jetty.server.HttpConnection$SendCallback._lastContent:Z
         5: .line 717
            aload 0 /* this */
            aload 5 /* callback */
            putfield org.eclipse.jetty.server.HttpConnection$SendCallback._callback:Lorg/eclipse/jetty/util/Callback;
         6: .line 718
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jetty.server.HttpConnection$SendCallback._header:Ljava/nio/ByteBuffer;
         7: .line 719
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jetty.server.HttpConnection$SendCallback._shutdownOut:Z
         8: .line 721
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            invokevirtual org.eclipse.jetty.server.HttpConnection.getConnector:()Lorg/eclipse/jetty/server/Connector;
            invokeinterface org.eclipse.jetty.server.Connector.isShutdown:()Z
            ifeq 10
         9: .line 722
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._generator:Lorg/eclipse/jetty/http/HttpGenerator;
            iconst_0
            invokevirtual org.eclipse.jetty.http.HttpGenerator.setPersistent:(Z)V
        10: .line 724
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        11: .line 727
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jetty.server.HttpConnection$SendCallback.isClosed:()Z
            ifeq 13
        12: .line 728
            aload 5 /* callback */
            new org.eclipse.jetty.io.EofException
            dup
            invokespecial org.eclipse.jetty.io.EofException.<init>:()V
            invokeinterface org.eclipse.jetty.util.Callback.failed:(Ljava/lang/Throwable;)V
            goto 14
        13: .line 730
      StackMap locals:
      StackMap stack:
            aload 5 /* callback */
            new java.nio.channels.WritePendingException
            dup
            invokespecial java.nio.channels.WritePendingException.<init>:()V
            invokeinterface org.eclipse.jetty.util.Callback.failed:(Ljava/lang/Throwable;)V
        14: .line 731
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 5 // org.eclipse.jetty.util.Callback callback
        end local 4 // boolean last
        end local 3 // java.nio.ByteBuffer content
        end local 2 // boolean head
        end local 1 // org.eclipse.jetty.http.MetaData$Response info
        end local 0 // org.eclipse.jetty.server.HttpConnection$SendCallback this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lorg/eclipse/jetty/server/HttpConnection$SendCallback;
            0   15     1      info  Lorg/eclipse/jetty/http/MetaData$Response;
            0   15     2      head  Z
            0   15     3   content  Ljava/nio/ByteBuffer;
            0   15     4      last  Z
            0   15     5  callback  Lorg/eclipse/jetty/util/Callback;
    MethodParameters:
          Name  Flags
      info      
      head      
      content   
      last      
      callback  

  public org.eclipse.jetty.util.IteratingCallback$Action process();
    descriptor: ()Lorg/eclipse/jetty/util/IteratingCallback$Action;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=1
        start local 0 // org.eclipse.jetty.server.HttpConnection$SendCallback this
         0: .line 737
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._callback:Lorg/eclipse/jetty/util/Callback;
            ifnonnull 2
         1: .line 738
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         2: .line 740
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._chunk:Ljava/nio/ByteBuffer;
            astore 1 /* chunk */
        start local 1 // java.nio.ByteBuffer chunk
         3: .line 743
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._generator:Lorg/eclipse/jetty/http/HttpGenerator;
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._info:Lorg/eclipse/jetty/http/MetaData$Response;
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._head:Z
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._header:Ljava/nio/ByteBuffer;
            aload 1 /* chunk */
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._content:Ljava/nio/ByteBuffer;
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._lastContent:Z
            invokevirtual org.eclipse.jetty.http.HttpGenerator.generateResponse:(Lorg/eclipse/jetty/http/MetaData$Response;ZLjava/nio/ByteBuffer;Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;Z)Lorg/eclipse/jetty/http/HttpGenerator$Result;
            astore 2 /* result */
        start local 2 // org.eclipse.jetty.http.HttpGenerator$Result result
         4: .line 744
            getstatic org.eclipse.jetty.server.HttpConnection.LOG:Lorg/eclipse/jetty/util/log/Logger;
            invokeinterface org.eclipse.jetty.util.log.Logger.isDebugEnabled:()Z
            ifeq 13
         5: .line 745
            getstatic org.eclipse.jetty.server.HttpConnection.LOG:Lorg/eclipse/jetty/util/log/Logger;
            ldc "{} generate: {} ({},{},{})@{}"
            bipush 6
            anewarray java.lang.Object
            dup
            iconst_0
         6: .line 746
            aload 0 /* this */
            aastore
            dup
            iconst_1
         7: .line 747
            aload 2 /* result */
            aastore
            dup
            iconst_2
         8: .line 748
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._header:Ljava/nio/ByteBuffer;
            invokestatic org.eclipse.jetty.util.BufferUtil.toSummaryString:(Ljava/nio/ByteBuffer;)Ljava/lang/String;
            aastore
            dup
            iconst_3
         9: .line 749
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._content:Ljava/nio/ByteBuffer;
            invokestatic org.eclipse.jetty.util.BufferUtil.toSummaryString:(Ljava/nio/ByteBuffer;)Ljava/lang/String;
            aastore
            dup
            iconst_4
        10: .line 750
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._lastContent:Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aastore
            dup
            iconst_5
        11: .line 751
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._generator:Lorg/eclipse/jetty/http/HttpGenerator;
            invokevirtual org.eclipse.jetty.http.HttpGenerator.getState:()Lorg/eclipse/jetty/http/HttpGenerator$State;
            aastore
        12: .line 745
            invokeinterface org.eclipse.jetty.util.log.Logger.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        13: .line 753
      StackMap locals: org.eclipse.jetty.http.HttpGenerator$Result
      StackMap stack:
            invokestatic org.eclipse.jetty.server.HttpConnection$SendCallback.$SWITCH_TABLE$org$eclipse$jetty$http$HttpGenerator$Result:()[I
            aload 2 /* result */
            invokevirtual org.eclipse.jetty.http.HttpGenerator$Result.ordinal:()I
            iaload
            tableswitch { // 1 - 8
                    1: 17
                    2: 14
                    3: 15
                    4: 19
                    5: 23
                    6: 60
                    7: 55
                    8: 57
              default: 61
          }
        14: .line 756
      StackMap locals:
      StackMap stack:
            new org.eclipse.jetty.io.EofException
            dup
            ldc "request lifecycle violation"
            invokespecial org.eclipse.jetty.io.EofException.<init>:(Ljava/lang/String;)V
            athrow
        15: .line 760
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._bufferPool:Lorg/eclipse/jetty/io/ByteBufferPool;
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._config:Lorg/eclipse/jetty/server/HttpConfiguration;
            invokevirtual org.eclipse.jetty.server.HttpConfiguration.getResponseHeaderSize:()I
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._config:Lorg/eclipse/jetty/server/HttpConfiguration;
            invokevirtual org.eclipse.jetty.server.HttpConfiguration.isUseDirectByteBuffers:()Z
            invokeinterface org.eclipse.jetty.io.ByteBufferPool.acquire:(IZ)Ljava/nio/ByteBuffer;
            putfield org.eclipse.jetty.server.HttpConnection$SendCallback._header:Ljava/nio/ByteBuffer;
        16: .line 761
            goto 3
        17: .line 765
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._bufferPool:Lorg/eclipse/jetty/io/ByteBufferPool;
            bipush 12
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._config:Lorg/eclipse/jetty/server/HttpConfiguration;
            invokevirtual org.eclipse.jetty.server.HttpConfiguration.isUseDirectByteBuffers:()Z
            invokeinterface org.eclipse.jetty.io.ByteBufferPool.acquire:(IZ)Ljava/nio/ByteBuffer;
            dup_x1
            putfield org.eclipse.jetty.server.HttpConnection._chunk:Ljava/nio/ByteBuffer;
            astore 1 /* chunk */
        18: .line 766
            goto 3
        19: .line 770
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._chunk:Ljava/nio/ByteBuffer;
            ifnull 21
        20: .line 771
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._bufferPool:Lorg/eclipse/jetty/io/ByteBufferPool;
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._chunk:Ljava/nio/ByteBuffer;
            invokeinterface org.eclipse.jetty.io.ByteBufferPool.release:(Ljava/nio/ByteBuffer;)V
        21: .line 772
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._bufferPool:Lorg/eclipse/jetty/io/ByteBufferPool;
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._config:Lorg/eclipse/jetty/server/HttpConfiguration;
            invokevirtual org.eclipse.jetty.server.HttpConfiguration.getResponseHeaderSize:()I
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._config:Lorg/eclipse/jetty/server/HttpConfiguration;
            invokevirtual org.eclipse.jetty.server.HttpConfiguration.isUseDirectByteBuffers:()Z
            invokeinterface org.eclipse.jetty.io.ByteBufferPool.acquire:(IZ)Ljava/nio/ByteBuffer;
            dup_x1
            putfield org.eclipse.jetty.server.HttpConnection._chunk:Ljava/nio/ByteBuffer;
            astore 1 /* chunk */
        22: .line 773
            goto 3
        23: .line 778
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._head:Z
            ifne 24
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._generator:Lorg/eclipse/jetty/http/HttpGenerator;
            invokevirtual org.eclipse.jetty.http.HttpGenerator.isNoContent:()Z
            ifeq 26
        24: .line 780
      StackMap locals:
      StackMap stack:
            aload 1 /* chunk */
            invokestatic org.eclipse.jetty.util.BufferUtil.clear:(Ljava/nio/ByteBuffer;)V
        25: .line 781
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._content:Ljava/nio/ByteBuffer;
            invokestatic org.eclipse.jetty.util.BufferUtil.clear:(Ljava/nio/ByteBuffer;)V
        26: .line 784
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* gatherWrite */
        start local 3 // byte gatherWrite
        27: .line 785
            lconst_0
            lstore 4 /* bytes */
        start local 4 // long bytes
        28: .line 786
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._header:Ljava/nio/ByteBuffer;
            invokestatic org.eclipse.jetty.util.BufferUtil.hasContent:(Ljava/nio/ByteBuffer;)Z
            ifeq 31
        29: .line 788
            iload 3 /* gatherWrite */
            iconst_4
            iadd
            i2b
            istore 3 /* gatherWrite */
        30: .line 789
            lload 4 /* bytes */
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._header:Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.remaining:()I
            i2l
            ladd
            lstore 4 /* bytes */
        31: .line 791
      StackMap locals: int long
      StackMap stack:
            aload 1 /* chunk */
            invokestatic org.eclipse.jetty.util.BufferUtil.hasContent:(Ljava/nio/ByteBuffer;)Z
            ifeq 34
        32: .line 793
            iload 3 /* gatherWrite */
            iconst_2
            iadd
            i2b
            istore 3 /* gatherWrite */
        33: .line 794
            lload 4 /* bytes */
            aload 1 /* chunk */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            i2l
            ladd
            lstore 4 /* bytes */
        34: .line 796
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._content:Ljava/nio/ByteBuffer;
            invokestatic org.eclipse.jetty.util.BufferUtil.hasContent:(Ljava/nio/ByteBuffer;)Z
            ifeq 37
        35: .line 798
            iload 3 /* gatherWrite */
            iconst_1
            iadd
            i2b
            istore 3 /* gatherWrite */
        36: .line 799
            lload 4 /* bytes */
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._content:Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.remaining:()I
            i2l
            ladd
            lstore 4 /* bytes */
        37: .line 801
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection.bytesOut:Ljava/util/concurrent/atomic/LongAdder;
            lload 4 /* bytes */
            invokevirtual java.util.concurrent.atomic.LongAdder.add:(J)V
        38: .line 802
            iload 3 /* gatherWrite */
            tableswitch { // 1 - 7
                    1: 51
                    2: 49
                    3: 47
                    4: 45
                    5: 43
                    6: 41
                    7: 39
              default: 53
          }
        39: .line 805
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            invokevirtual org.eclipse.jetty.server.HttpConnection.getEndPoint:()Lorg/eclipse/jetty/io/EndPoint;
            aload 0 /* this */
            iconst_3
            anewarray java.nio.ByteBuffer
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._header:Ljava/nio/ByteBuffer;
            aastore
            dup
            iconst_1
            aload 1 /* chunk */
            aastore
            dup
            iconst_2
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._content:Ljava/nio/ByteBuffer;
            aastore
            invokeinterface org.eclipse.jetty.io.EndPoint.write:(Lorg/eclipse/jetty/util/Callback;[Ljava/nio/ByteBuffer;)V
        40: .line 806
            goto 54
        41: .line 808
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            invokevirtual org.eclipse.jetty.server.HttpConnection.getEndPoint:()Lorg/eclipse/jetty/io/EndPoint;
            aload 0 /* this */
            iconst_2
            anewarray java.nio.ByteBuffer
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._header:Ljava/nio/ByteBuffer;
            aastore
            dup
            iconst_1
            aload 1 /* chunk */
            aastore
            invokeinterface org.eclipse.jetty.io.EndPoint.write:(Lorg/eclipse/jetty/util/Callback;[Ljava/nio/ByteBuffer;)V
        42: .line 809
            goto 54
        43: .line 811
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            invokevirtual org.eclipse.jetty.server.HttpConnection.getEndPoint:()Lorg/eclipse/jetty/io/EndPoint;
            aload 0 /* this */
            iconst_2
            anewarray java.nio.ByteBuffer
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._header:Ljava/nio/ByteBuffer;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._content:Ljava/nio/ByteBuffer;
            aastore
            invokeinterface org.eclipse.jetty.io.EndPoint.write:(Lorg/eclipse/jetty/util/Callback;[Ljava/nio/ByteBuffer;)V
        44: .line 812
            goto 54
        45: .line 814
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            invokevirtual org.eclipse.jetty.server.HttpConnection.getEndPoint:()Lorg/eclipse/jetty/io/EndPoint;
            aload 0 /* this */
            iconst_1
            anewarray java.nio.ByteBuffer
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._header:Ljava/nio/ByteBuffer;
            aastore
            invokeinterface org.eclipse.jetty.io.EndPoint.write:(Lorg/eclipse/jetty/util/Callback;[Ljava/nio/ByteBuffer;)V
        46: .line 815
            goto 54
        47: .line 817
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            invokevirtual org.eclipse.jetty.server.HttpConnection.getEndPoint:()Lorg/eclipse/jetty/io/EndPoint;
            aload 0 /* this */
            iconst_2
            anewarray java.nio.ByteBuffer
            dup
            iconst_0
            aload 1 /* chunk */
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._content:Ljava/nio/ByteBuffer;
            aastore
            invokeinterface org.eclipse.jetty.io.EndPoint.write:(Lorg/eclipse/jetty/util/Callback;[Ljava/nio/ByteBuffer;)V
        48: .line 818
            goto 54
        49: .line 820
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            invokevirtual org.eclipse.jetty.server.HttpConnection.getEndPoint:()Lorg/eclipse/jetty/io/EndPoint;
            aload 0 /* this */
            iconst_1
            anewarray java.nio.ByteBuffer
            dup
            iconst_0
            aload 1 /* chunk */
            aastore
            invokeinterface org.eclipse.jetty.io.EndPoint.write:(Lorg/eclipse/jetty/util/Callback;[Ljava/nio/ByteBuffer;)V
        50: .line 821
            goto 54
        51: .line 823
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            invokevirtual org.eclipse.jetty.server.HttpConnection.getEndPoint:()Lorg/eclipse/jetty/io/EndPoint;
            aload 0 /* this */
            iconst_1
            anewarray java.nio.ByteBuffer
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._content:Ljava/nio/ByteBuffer;
            aastore
            invokeinterface org.eclipse.jetty.io.EndPoint.write:(Lorg/eclipse/jetty/util/Callback;[Ljava/nio/ByteBuffer;)V
        52: .line 824
            goto 54
        53: .line 826
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jetty.server.HttpConnection$SendCallback.succeeded:()V
        54: .line 829
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jetty.util.IteratingCallback$Action.SCHEDULED:Lorg/eclipse/jetty/util/IteratingCallback$Action;
            areturn
        end local 4 // long bytes
        end local 3 // byte gatherWrite
        55: .line 833
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jetty.server.HttpConnection$SendCallback._shutdownOut:Z
        56: .line 834
            goto 3
        57: .line 839
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            invokevirtual org.eclipse.jetty.server.HttpConnection.getConnector:()Lorg/eclipse/jetty/server/Connector;
            invokeinterface org.eclipse.jetty.server.Connector.isShutdown:()Z
            ifeq 59
        58: .line 840
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jetty.server.HttpConnection$SendCallback._shutdownOut:Z
        59: .line 842
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jetty.util.IteratingCallback$Action.SUCCEEDED:Lorg/eclipse/jetty/util/IteratingCallback$Action;
            areturn
        60: .line 846
      StackMap locals:
      StackMap stack:
            goto 3
        61: .line 850
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "generateResponse="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* result */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // org.eclipse.jetty.http.HttpGenerator$Result result
        end local 1 // java.nio.ByteBuffer chunk
        end local 0 // org.eclipse.jetty.server.HttpConnection$SendCallback this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   62     0         this  Lorg/eclipse/jetty/server/HttpConnection$SendCallback;
            3   62     1        chunk  Ljava/nio/ByteBuffer;
            4   62     2       result  Lorg/eclipse/jetty/http/HttpGenerator$Result;
           27   55     3  gatherWrite  B
           28   55     4        bytes  J
    Exceptions:
      throws java.lang.Exception

  private void releaseHeader();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.eclipse.jetty.server.HttpConnection$SendCallback this
         0: .line 858
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._header:Ljava/nio/ByteBuffer;
            astore 1 /* h */
        start local 1 // java.nio.ByteBuffer h
         1: .line 859
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jetty.server.HttpConnection$SendCallback._header:Ljava/nio/ByteBuffer;
         2: .line 860
            aload 1 /* h */
            ifnull 4
         3: .line 861
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            getfield org.eclipse.jetty.server.HttpConnection._bufferPool:Lorg/eclipse/jetty/io/ByteBufferPool;
            aload 1 /* h */
            invokeinterface org.eclipse.jetty.io.ByteBufferPool.release:(Ljava/nio/ByteBuffer;)V
         4: .line 862
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            return
        end local 1 // java.nio.ByteBuffer h
        end local 0 // org.eclipse.jetty.server.HttpConnection$SendCallback this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/eclipse/jetty/server/HttpConnection$SendCallback;
            1    5     1     h  Ljava/nio/ByteBuffer;

  protected void onCompleteSuccess();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jetty.server.HttpConnection$SendCallback this
         0: .line 867
            aload 0 /* this */
            invokevirtual org.eclipse.jetty.server.HttpConnection$SendCallback.releaseHeader:()V
         1: .line 868
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._callback:Lorg/eclipse/jetty/util/Callback;
            invokeinterface org.eclipse.jetty.util.Callback.succeeded:()V
         2: .line 869
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._shutdownOut:Z
            ifeq 4
         3: .line 870
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            invokevirtual org.eclipse.jetty.server.HttpConnection.getEndPoint:()Lorg/eclipse/jetty/io/EndPoint;
            invokeinterface org.eclipse.jetty.io.EndPoint.shutdownOutput:()V
         4: .line 871
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.eclipse.jetty.server.HttpConnection$SendCallback this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/eclipse/jetty/server/HttpConnection$SendCallback;

  public void onCompleteFailure(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.jetty.server.HttpConnection$SendCallback this
        start local 1 // java.lang.Throwable x
         0: .line 876
            aload 0 /* this */
            invokevirtual org.eclipse.jetty.server.HttpConnection$SendCallback.releaseHeader:()V
         1: .line 877
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._callback:Lorg/eclipse/jetty/util/Callback;
            aload 1 /* x */
            invokestatic org.eclipse.jetty.server.HttpConnection.access$0:(Lorg/eclipse/jetty/server/HttpConnection;Lorg/eclipse/jetty/util/Callback;Ljava/lang/Throwable;)V
         2: .line 878
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._shutdownOut:Z
            ifeq 4
         3: .line 879
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback.this$0:Lorg/eclipse/jetty/server/HttpConnection;
            invokevirtual org.eclipse.jetty.server.HttpConnection.getEndPoint:()Lorg/eclipse/jetty/io/EndPoint;
            invokeinterface org.eclipse.jetty.io.EndPoint.shutdownOutput:()V
         4: .line 880
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Throwable x
        end local 0 // org.eclipse.jetty.server.HttpConnection$SendCallback this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/eclipse/jetty/server/HttpConnection$SendCallback;
            0    5     1     x  Ljava/lang/Throwable;
    MethodParameters:
      Name  Flags
      x     final

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.eclipse.jetty.server.HttpConnection$SendCallback this
         0: .line 885
            ldc "%s[i=%s,cb=%s]"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            invokespecial org.eclipse.jetty.util.IteratingCallback.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._info:Lorg/eclipse/jetty/http/MetaData$Response;
            aastore
            dup
            iconst_2
            aload 0 /* this */
            getfield org.eclipse.jetty.server.HttpConnection$SendCallback._callback:Lorg/eclipse/jetty/util/Callback;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 0 // org.eclipse.jetty.server.HttpConnection$SendCallback this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jetty/server/HttpConnection$SendCallback;

  static int[] $SWITCH_TABLE$org$eclipse$jetty$http$HttpGenerator$Result();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 688
            getstatic org.eclipse.jetty.server.HttpConnection$SendCallback.$SWITCH_TABLE$org$eclipse$jetty$http$HttpGenerator$Result:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.eclipse.jetty.http.HttpGenerator$Result.values:()[Lorg/eclipse/jetty/http/HttpGenerator$Result;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.eclipse.jetty.http.HttpGenerator$Result.CONTINUE:Lorg/eclipse/jetty/http/HttpGenerator$Result;
            invokevirtual org.eclipse.jetty.http.HttpGenerator$Result.ordinal:()I
            bipush 6
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.eclipse.jetty.http.HttpGenerator$Result.DONE:Lorg/eclipse/jetty/http/HttpGenerator$Result;
            invokevirtual org.eclipse.jetty.http.HttpGenerator$Result.ordinal:()I
            bipush 8
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.eclipse.jetty.http.HttpGenerator$Result.FLUSH:Lorg/eclipse/jetty/http/HttpGenerator$Result;
            invokevirtual org.eclipse.jetty.http.HttpGenerator$Result.ordinal:()I
            iconst_5
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.eclipse.jetty.http.HttpGenerator$Result.NEED_CHUNK:Lorg/eclipse/jetty/http/HttpGenerator$Result;
            invokevirtual org.eclipse.jetty.http.HttpGenerator$Result.ordinal:()I
            iconst_1
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic org.eclipse.jetty.http.HttpGenerator$Result.NEED_CHUNK_TRAILER:Lorg/eclipse/jetty/http/HttpGenerator$Result;
            invokevirtual org.eclipse.jetty.http.HttpGenerator$Result.ordinal:()I
            iconst_4
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic org.eclipse.jetty.http.HttpGenerator$Result.NEED_HEADER:Lorg/eclipse/jetty/http/HttpGenerator$Result;
            invokevirtual org.eclipse.jetty.http.HttpGenerator$Result.ordinal:()I
            iconst_3
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic org.eclipse.jetty.http.HttpGenerator$Result.NEED_INFO:Lorg/eclipse/jetty/http/HttpGenerator$Result;
            invokevirtual org.eclipse.jetty.http.HttpGenerator$Result.ordinal:()I
            iconst_2
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic org.eclipse.jetty.http.HttpGenerator$Result.SHUTDOWN_OUT:Lorg/eclipse/jetty/http/HttpGenerator$Result;
            invokevirtual org.eclipse.jetty.http.HttpGenerator$Result.ordinal:()I
            bipush 7
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            dup
            putstatic org.eclipse.jetty.server.HttpConnection$SendCallback.$SWITCH_TABLE$org$eclipse$jetty$http$HttpGenerator$Result:[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
}
SourceFile: "HttpConnection.java"
NestHost: org.eclipse.jetty.server.HttpConnection
InnerClasses:
  public final Result = org.eclipse.jetty.http.HttpGenerator$Result of org.eclipse.jetty.http.HttpGenerator
  public final State = org.eclipse.jetty.http.HttpGenerator$State of org.eclipse.jetty.http.HttpGenerator
  public Response = org.eclipse.jetty.http.MetaData$Response of org.eclipse.jetty.http.MetaData
  private SendCallback = org.eclipse.jetty.server.HttpConnection$SendCallback of org.eclipse.jetty.server.HttpConnection
  protected final Action = org.eclipse.jetty.util.IteratingCallback$Action of org.eclipse.jetty.util.IteratingCallback
  public final InvocationType = org.eclipse.jetty.util.thread.Invocable$InvocationType of org.eclipse.jetty.util.thread.Invocable