public class org.apache.http.impl.io.SessionInputBufferImpl implements org.apache.http.io.SessionInputBuffer, org.apache.http.io.BufferInfo
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.http.impl.io.SessionInputBufferImpl
  super_class: java.lang.Object
{
  private final org.apache.http.impl.io.HttpTransportMetricsImpl metrics;
    descriptor: Lorg/apache/http/impl/io/HttpTransportMetricsImpl;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final byte[] buffer;
    descriptor: [B
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.http.util.ByteArrayBuffer lineBuffer;
    descriptor: Lorg/apache/http/util/ByteArrayBuffer;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int minChunkLimit;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.http.config.MessageConstraints constraints;
    descriptor: Lorg/apache/http/config/MessageConstraints;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.nio.charset.CharsetDecoder decoder;
    descriptor: Ljava/nio/charset/CharsetDecoder;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.io.InputStream inStream;
    descriptor: Ljava/io/InputStream;
    flags: (0x0002) ACC_PRIVATE

  private int bufferPos;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int bufferLen;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private java.nio.CharBuffer cbuf;
    descriptor: Ljava/nio/CharBuffer;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(org.apache.http.impl.io.HttpTransportMetricsImpl, int, int, org.apache.http.config.MessageConstraints, java.nio.charset.CharsetDecoder);
    descriptor: (Lorg/apache/http/impl/io/HttpTransportMetricsImpl;IILorg/apache/http/config/MessageConstraints;Ljava/nio/charset/CharsetDecoder;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=6
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
        start local 1 // org.apache.http.impl.io.HttpTransportMetricsImpl metrics
        start local 2 // int bufferSize
        start local 3 // int minChunkLimit
        start local 4 // org.apache.http.config.MessageConstraints constraints
        start local 5 // java.nio.charset.CharsetDecoder charDecoder
         0: .line 88
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 94
            aload 1 /* metrics */
            ldc "HTTP transport metrcis"
            invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         2: .line 95
            iload 2 /* bufferSize */
            ldc "Buffer size"
            invokestatic org.apache.http.util.Args.positive:(ILjava/lang/String;)I
            pop
         3: .line 96
            aload 0 /* this */
            aload 1 /* metrics */
            putfield org.apache.http.impl.io.SessionInputBufferImpl.metrics:Lorg/apache/http/impl/io/HttpTransportMetricsImpl;
         4: .line 97
            aload 0 /* this */
            iload 2 /* bufferSize */
            newarray 8
            putfield org.apache.http.impl.io.SessionInputBufferImpl.buffer:[B
         5: .line 98
            aload 0 /* this */
            iconst_0
            putfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
         6: .line 99
            aload 0 /* this */
            iconst_0
            putfield org.apache.http.impl.io.SessionInputBufferImpl.bufferLen:I
         7: .line 100
            aload 0 /* this */
            iload 3 /* minChunkLimit */
            iflt 8
            iload 3 /* minChunkLimit */
            goto 9
      StackMap locals: org.apache.http.impl.io.SessionInputBufferImpl org.apache.http.impl.io.HttpTransportMetricsImpl int int org.apache.http.config.MessageConstraints java.nio.charset.CharsetDecoder
      StackMap stack: org.apache.http.impl.io.SessionInputBufferImpl
         8: sipush 512
      StackMap locals: org.apache.http.impl.io.SessionInputBufferImpl org.apache.http.impl.io.HttpTransportMetricsImpl int int org.apache.http.config.MessageConstraints java.nio.charset.CharsetDecoder
      StackMap stack: org.apache.http.impl.io.SessionInputBufferImpl int
         9: putfield org.apache.http.impl.io.SessionInputBufferImpl.minChunkLimit:I
        10: .line 101
            aload 0 /* this */
            aload 4 /* constraints */
            ifnull 11
            aload 4 /* constraints */
            goto 12
      StackMap locals:
      StackMap stack: org.apache.http.impl.io.SessionInputBufferImpl
        11: getstatic org.apache.http.config.MessageConstraints.DEFAULT:Lorg/apache/http/config/MessageConstraints;
      StackMap locals: org.apache.http.impl.io.SessionInputBufferImpl org.apache.http.impl.io.HttpTransportMetricsImpl int int org.apache.http.config.MessageConstraints java.nio.charset.CharsetDecoder
      StackMap stack: org.apache.http.impl.io.SessionInputBufferImpl org.apache.http.config.MessageConstraints
        12: putfield org.apache.http.impl.io.SessionInputBufferImpl.constraints:Lorg/apache/http/config/MessageConstraints;
        13: .line 102
            aload 0 /* this */
            new org.apache.http.util.ByteArrayBuffer
            dup
            iload 2 /* bufferSize */
            invokespecial org.apache.http.util.ByteArrayBuffer.<init>:(I)V
            putfield org.apache.http.impl.io.SessionInputBufferImpl.lineBuffer:Lorg/apache/http/util/ByteArrayBuffer;
        14: .line 103
            aload 0 /* this */
            aload 5 /* charDecoder */
            putfield org.apache.http.impl.io.SessionInputBufferImpl.decoder:Ljava/nio/charset/CharsetDecoder;
        15: .line 104
            return
        end local 5 // java.nio.charset.CharsetDecoder charDecoder
        end local 4 // org.apache.http.config.MessageConstraints constraints
        end local 3 // int minChunkLimit
        end local 2 // int bufferSize
        end local 1 // org.apache.http.impl.io.HttpTransportMetricsImpl metrics
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   16     0           this  Lorg/apache/http/impl/io/SessionInputBufferImpl;
            0   16     1        metrics  Lorg/apache/http/impl/io/HttpTransportMetricsImpl;
            0   16     2     bufferSize  I
            0   16     3  minChunkLimit  I
            0   16     4    constraints  Lorg/apache/http/config/MessageConstraints;
            0   16     5    charDecoder  Ljava/nio/charset/CharsetDecoder;
    MethodParameters:
               Name  Flags
      metrics        final
      bufferSize     final
      minChunkLimit  final
      constraints    final
      charDecoder    final

  public void <init>(org.apache.http.impl.io.HttpTransportMetricsImpl, int);
    descriptor: (Lorg/apache/http/impl/io/HttpTransportMetricsImpl;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
        start local 1 // org.apache.http.impl.io.HttpTransportMetricsImpl metrics
        start local 2 // int bufferSize
         0: .line 109
            aload 0 /* this */
            aload 1 /* metrics */
            iload 2 /* bufferSize */
            iload 2 /* bufferSize */
            aconst_null
            aconst_null
            invokespecial org.apache.http.impl.io.SessionInputBufferImpl.<init>:(Lorg/apache/http/impl/io/HttpTransportMetricsImpl;IILorg/apache/http/config/MessageConstraints;Ljava/nio/charset/CharsetDecoder;)V
         1: .line 110
            return
        end local 2 // int bufferSize
        end local 1 // org.apache.http.impl.io.HttpTransportMetricsImpl metrics
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/apache/http/impl/io/SessionInputBufferImpl;
            0    2     1     metrics  Lorg/apache/http/impl/io/HttpTransportMetricsImpl;
            0    2     2  bufferSize  I
    MethodParameters:
            Name  Flags
      metrics     final
      bufferSize  final

  public void bind(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
        start local 1 // java.io.InputStream inputStream
         0: .line 113
            aload 0 /* this */
            aload 1 /* inputStream */
            putfield org.apache.http.impl.io.SessionInputBufferImpl.inStream:Ljava/io/InputStream;
         1: .line 114
            return
        end local 1 // java.io.InputStream inputStream
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/apache/http/impl/io/SessionInputBufferImpl;
            0    2     1  inputStream  Ljava/io/InputStream;
    MethodParameters:
             Name  Flags
      inputStream  final

  public boolean isBound();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
         0: .line 117
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.inStream:Ljava/io/InputStream;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/http/impl/io/SessionInputBufferImpl;

  public int capacity();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
         0: .line 122
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.buffer:[B
            arraylength
            ireturn
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/http/impl/io/SessionInputBufferImpl;

  public int length();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
         0: .line 127
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferLen:I
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            isub
            ireturn
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/http/impl/io/SessionInputBufferImpl;

  public int available();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
         0: .line 132
            aload 0 /* this */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.capacity:()I
            aload 0 /* this */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.length:()I
            isub
            ireturn
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/http/impl/io/SessionInputBufferImpl;

  private int streamRead(byte[], int, int);
    descriptor: ([BII)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
        start local 1 // byte[] b
        start local 2 // int off
        start local 3 // int len
         0: .line 136
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.inStream:Ljava/io/InputStream;
            ldc "Input stream"
            invokestatic org.apache.http.util.Asserts.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
         1: .line 137
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.inStream:Ljava/io/InputStream;
            aload 1 /* b */
            iload 2 /* off */
            iload 3 /* len */
            invokevirtual java.io.InputStream.read:([BII)I
            ireturn
        end local 3 // int len
        end local 2 // int off
        end local 1 // byte[] b
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/http/impl/io/SessionInputBufferImpl;
            0    2     1     b  [B
            0    2     2   off  I
            0    2     3   len  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      b     final
      off   final
      len   final

  public int fillBuffer();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
         0: .line 142
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            ifle 6
         1: .line 143
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferLen:I
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            isub
            istore 1 /* len */
        start local 1 // int len
         2: .line 144
            iload 1 /* len */
            ifle 4
         3: .line 145
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.buffer:[B
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.buffer:[B
            iconst_0
            iload 1 /* len */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         4: .line 147
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
         5: .line 148
            aload 0 /* this */
            iload 1 /* len */
            putfield org.apache.http.impl.io.SessionInputBufferImpl.bufferLen:I
        end local 1 // int len
         6: .line 151
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferLen:I
            istore 2 /* off */
        start local 2 // int off
         7: .line 152
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.buffer:[B
            arraylength
            iload 2 /* off */
            isub
            istore 3 /* len */
        start local 3 // int len
         8: .line 153
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.buffer:[B
            iload 2 /* off */
            iload 3 /* len */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.streamRead:([BII)I
            istore 1 /* readLen */
        start local 1 // int readLen
         9: .line 154
            iload 1 /* readLen */
            iconst_m1
            if_icmpne 11
        10: .line 155
            iconst_m1
            ireturn
        11: .line 157
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* off */
            iload 1 /* readLen */
            iadd
            putfield org.apache.http.impl.io.SessionInputBufferImpl.bufferLen:I
        12: .line 158
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.metrics:Lorg/apache/http/impl/io/HttpTransportMetricsImpl;
            iload 1 /* readLen */
            i2l
            invokevirtual org.apache.http.impl.io.HttpTransportMetricsImpl.incrementBytesTransferred:(J)V
        13: .line 159
            iload 1 /* readLen */
            ireturn
        end local 3 // int len
        end local 2 // int off
        end local 1 // int readLen
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Lorg/apache/http/impl/io/SessionInputBufferImpl;
            2    6     1      len  I
            9   14     1  readLen  I
            7   14     2      off  I
            8   14     3      len  I
    Exceptions:
      throws java.io.IOException

  public boolean hasBufferedData();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
         0: .line 163
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferLen:I
            if_icmpge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/http/impl/io/SessionInputBufferImpl;

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
         0: .line 167
            aload 0 /* this */
            iconst_0
            putfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
         1: .line 168
            aload 0 /* this */
            iconst_0
            putfield org.apache.http.impl.io.SessionInputBufferImpl.bufferLen:I
         2: .line 169
            return
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/http/impl/io/SessionInputBufferImpl;

  public int read();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
         0: .line 174
            goto 4
         1: .line 175
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.fillBuffer:()I
            istore 1 /* noRead */
        start local 1 // int noRead
         2: .line 176
            iload 1 /* noRead */
            iconst_m1
            if_icmpne 4
         3: .line 177
            iconst_m1
            ireturn
        end local 1 // int noRead
         4: .line 174
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.hasBufferedData:()Z
            ifeq 1
         5: .line 180
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.buffer:[B
            aload 0 /* this */
            dup
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            dup_x1
            iconst_1
            iadd
            putfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            baload
            sipush 255
            iand
            ireturn
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lorg/apache/http/impl/io/SessionInputBufferImpl;
            2    4     1  noRead  I
    Exceptions:
      throws java.io.IOException

  public int read(byte[], int, int);
    descriptor: ([BII)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
        start local 1 // byte[] b
        start local 2 // int off
        start local 3 // int len
         0: .line 185
            aload 1 /* b */
            ifnonnull 2
         1: .line 186
            iconst_0
            ireturn
         2: .line 188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.hasBufferedData:()Z
            ifeq 7
         3: .line 189
            iload 3 /* len */
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferLen:I
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            isub
            invokestatic java.lang.Math.min:(II)I
            istore 4 /* chunk */
        start local 4 // int chunk
         4: .line 190
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.buffer:[B
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            aload 1 /* b */
            iload 2 /* off */
            iload 4 /* chunk */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         5: .line 191
            aload 0 /* this */
            dup
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            iload 4 /* chunk */
            iadd
            putfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
         6: .line 192
            iload 4 /* chunk */
            ireturn
        end local 4 // int chunk
         7: .line 196
      StackMap locals:
      StackMap stack:
            iload 3 /* len */
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.minChunkLimit:I
            if_icmple 15
         8: .line 197
            aload 0 /* this */
            aload 1 /* b */
            iload 2 /* off */
            iload 3 /* len */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.streamRead:([BII)I
            istore 4 /* readLen */
        start local 4 // int readLen
         9: .line 198
            iload 4 /* readLen */
            ifle 11
        10: .line 199
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.metrics:Lorg/apache/http/impl/io/HttpTransportMetricsImpl;
            iload 4 /* readLen */
            i2l
            invokevirtual org.apache.http.impl.io.HttpTransportMetricsImpl.incrementBytesTransferred:(J)V
        11: .line 201
      StackMap locals: int
      StackMap stack:
            iload 4 /* readLen */
            ireturn
        end local 4 // int readLen
        12: .line 205
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.fillBuffer:()I
            istore 4 /* noRead */
        start local 4 // int noRead
        13: .line 206
            iload 4 /* noRead */
            iconst_m1
            if_icmpne 15
        14: .line 207
            iconst_m1
            ireturn
        end local 4 // int noRead
        15: .line 204
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.hasBufferedData:()Z
            ifeq 12
        16: .line 210
            iload 3 /* len */
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferLen:I
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            isub
            invokestatic java.lang.Math.min:(II)I
            istore 4 /* chunk */
        start local 4 // int chunk
        17: .line 211
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.buffer:[B
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            aload 1 /* b */
            iload 2 /* off */
            iload 4 /* chunk */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        18: .line 212
            aload 0 /* this */
            dup
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            iload 4 /* chunk */
            iadd
            putfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
        19: .line 213
            iload 4 /* chunk */
            ireturn
        end local 4 // int chunk
        end local 3 // int len
        end local 2 // int off
        end local 1 // byte[] b
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   20     0     this  Lorg/apache/http/impl/io/SessionInputBufferImpl;
            0   20     1        b  [B
            0   20     2      off  I
            0   20     3      len  I
            4    7     4    chunk  I
            9   12     4  readLen  I
           13   15     4   noRead  I
           17   20     4    chunk  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      b     final
      off   final
      len   final

  public int read(byte[]);
    descriptor: ([B)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
        start local 1 // byte[] b
         0: .line 218
            aload 1 /* b */
            ifnonnull 2
         1: .line 219
            iconst_0
            ireturn
         2: .line 221
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* b */
            iconst_0
            aload 1 /* b */
            arraylength
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.read:([BII)I
            ireturn
        end local 1 // byte[] b
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/http/impl/io/SessionInputBufferImpl;
            0    3     1     b  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      b     final

  public int readLine(org.apache.http.util.CharArrayBuffer);
    descriptor: (Lorg/apache/http/util/CharArrayBuffer;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
        start local 1 // org.apache.http.util.CharArrayBuffer charbuffer
         0: .line 241
            aload 1 /* charbuffer */
            ldc "Char array buffer"
            invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 242
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.constraints:Lorg/apache/http/config/MessageConstraints;
            invokevirtual org.apache.http.config.MessageConstraints.getMaxLineLength:()I
            istore 2 /* maxLineLen */
        start local 2 // int maxLineLen
         2: .line 243
            iconst_0
            istore 3 /* noRead */
        start local 3 // int noRead
         3: .line 244
            iconst_1
            istore 4 /* retry */
        start local 4 // boolean retry
         4: .line 245
            goto 37
         5: .line 247
      StackMap locals: int int int
      StackMap stack:
            iconst_m1
            istore 5 /* pos */
        start local 5 // int pos
         6: .line 248
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            istore 6 /* i */
        start local 6 // int i
         7: goto 12
         8: .line 249
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.buffer:[B
            iload 6 /* i */
            baload
            bipush 10
            if_icmpne 11
         9: .line 250
            iload 6 /* i */
            istore 5 /* pos */
        10: .line 251
            goto 13
        11: .line 248
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 6 /* i */
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferLen:I
            if_icmplt 8
        end local 6 // int i
        13: .line 255
      StackMap locals:
      StackMap stack:
            iload 2 /* maxLineLen */
            ifle 22
        14: .line 256
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.lineBuffer:Lorg/apache/http/util/ByteArrayBuffer;
            invokevirtual org.apache.http.util.ByteArrayBuffer.length:()I
        15: .line 257
            iload 5 /* pos */
            iflt 16
            iload 5 /* pos */
            goto 17
      StackMap locals:
      StackMap stack: int
        16: aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferLen:I
        17: .line 256
      StackMap locals: org.apache.http.impl.io.SessionInputBufferImpl org.apache.http.util.CharArrayBuffer int int int int
      StackMap stack: int int
            iadd
        18: .line 257
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
        19: .line 256
            isub
            istore 6 /* currentLen */
        start local 6 // int currentLen
        20: .line 258
            iload 6 /* currentLen */
            iload 2 /* maxLineLen */
            if_icmplt 22
        21: .line 259
            new org.apache.http.MessageConstraintException
            dup
            ldc "Maximum line length limit exceeded"
            invokespecial org.apache.http.MessageConstraintException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // int currentLen
        22: .line 263
      StackMap locals:
      StackMap stack:
            iload 5 /* pos */
            iconst_m1
            if_icmpeq 30
        23: .line 265
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.lineBuffer:Lorg/apache/http/util/ByteArrayBuffer;
            invokevirtual org.apache.http.util.ByteArrayBuffer.isEmpty:()Z
            ifeq 25
        24: .line 267
            aload 0 /* this */
            aload 1 /* charbuffer */
            iload 5 /* pos */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.lineFromReadBuffer:(Lorg/apache/http/util/CharArrayBuffer;I)I
            ireturn
        25: .line 269
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* retry */
        26: .line 270
            iload 5 /* pos */
            iconst_1
            iadd
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            isub
            istore 6 /* len */
        start local 6 // int len
        27: .line 271
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.lineBuffer:Lorg/apache/http/util/ByteArrayBuffer;
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.buffer:[B
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            iload 6 /* len */
            invokevirtual org.apache.http.util.ByteArrayBuffer.append:([BII)V
        28: .line 272
            aload 0 /* this */
            iload 5 /* pos */
            iconst_1
            iadd
            putfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
        end local 6 // int len
        29: .line 273
            goto 37
        30: .line 275
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.hasBufferedData:()Z
            ifeq 34
        31: .line 276
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferLen:I
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            isub
            istore 6 /* len */
        start local 6 // int len
        32: .line 277
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.lineBuffer:Lorg/apache/http/util/ByteArrayBuffer;
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.buffer:[B
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            iload 6 /* len */
            invokevirtual org.apache.http.util.ByteArrayBuffer.append:([BII)V
        33: .line 278
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferLen:I
            putfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
        end local 6 // int len
        34: .line 280
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.fillBuffer:()I
            istore 3 /* noRead */
        35: .line 281
            iload 3 /* noRead */
            iconst_m1
            if_icmpne 37
        36: .line 282
            iconst_0
            istore 4 /* retry */
        end local 5 // int pos
        37: .line 245
      StackMap locals:
      StackMap stack:
            iload 4 /* retry */
            ifne 5
        38: .line 286
            iload 3 /* noRead */
            iconst_m1
            if_icmpne 40
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.lineBuffer:Lorg/apache/http/util/ByteArrayBuffer;
            invokevirtual org.apache.http.util.ByteArrayBuffer.isEmpty:()Z
            ifeq 40
        39: .line 288
            iconst_m1
            ireturn
        40: .line 290
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* charbuffer */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.lineFromLineBuffer:(Lorg/apache/http/util/CharArrayBuffer;)I
            ireturn
        end local 4 // boolean retry
        end local 3 // int noRead
        end local 2 // int maxLineLen
        end local 1 // org.apache.http.util.CharArrayBuffer charbuffer
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   41     0        this  Lorg/apache/http/impl/io/SessionInputBufferImpl;
            0   41     1  charbuffer  Lorg/apache/http/util/CharArrayBuffer;
            2   41     2  maxLineLen  I
            3   41     3      noRead  I
            4   41     4       retry  Z
            6   37     5         pos  I
            7   13     6           i  I
           20   22     6  currentLen  I
           27   29     6         len  I
           32   34     6         len  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      charbuffer  final

  private int lineFromLineBuffer(org.apache.http.util.CharArrayBuffer);
    descriptor: (Lorg/apache/http/util/CharArrayBuffer;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
        start local 1 // org.apache.http.util.CharArrayBuffer charbuffer
         0: .line 309
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.lineBuffer:Lorg/apache/http/util/ByteArrayBuffer;
            invokevirtual org.apache.http.util.ByteArrayBuffer.length:()I
            istore 2 /* len */
        start local 2 // int len
         1: .line 310
            iload 2 /* len */
            ifle 7
         2: .line 311
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.lineBuffer:Lorg/apache/http/util/ByteArrayBuffer;
            iload 2 /* len */
            iconst_1
            isub
            invokevirtual org.apache.http.util.ByteArrayBuffer.byteAt:(I)I
            bipush 10
            if_icmpne 4
         3: .line 312
            iinc 2 /* len */ -1
         4: .line 315
      StackMap locals: int
      StackMap stack:
            iload 2 /* len */
            ifle 7
         5: .line 316
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.lineBuffer:Lorg/apache/http/util/ByteArrayBuffer;
            iload 2 /* len */
            iconst_1
            isub
            invokevirtual org.apache.http.util.ByteArrayBuffer.byteAt:(I)I
            bipush 13
            if_icmpne 7
         6: .line 317
            iinc 2 /* len */ -1
         7: .line 321
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.decoder:Ljava/nio/charset/CharsetDecoder;
            ifnonnull 10
         8: .line 322
            aload 1 /* charbuffer */
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.lineBuffer:Lorg/apache/http/util/ByteArrayBuffer;
            iconst_0
            iload 2 /* len */
            invokevirtual org.apache.http.util.CharArrayBuffer.append:(Lorg/apache/http/util/ByteArrayBuffer;II)V
         9: .line 323
            goto 12
        10: .line 324
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.lineBuffer:Lorg/apache/http/util/ByteArrayBuffer;
            invokevirtual org.apache.http.util.ByteArrayBuffer.buffer:()[B
            iconst_0
            iload 2 /* len */
            invokestatic java.nio.ByteBuffer.wrap:([BII)Ljava/nio/ByteBuffer;
            astore 3 /* bbuf */
        start local 3 // java.nio.ByteBuffer bbuf
        11: .line 325
            aload 0 /* this */
            aload 1 /* charbuffer */
            aload 3 /* bbuf */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.appendDecoded:(Lorg/apache/http/util/CharArrayBuffer;Ljava/nio/ByteBuffer;)I
            istore 2 /* len */
        end local 3 // java.nio.ByteBuffer bbuf
        12: .line 327
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.lineBuffer:Lorg/apache/http/util/ByteArrayBuffer;
            invokevirtual org.apache.http.util.ByteArrayBuffer.clear:()V
        13: .line 328
            iload 2 /* len */
            ireturn
        end local 2 // int len
        end local 1 // org.apache.http.util.CharArrayBuffer charbuffer
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   14     0        this  Lorg/apache/http/impl/io/SessionInputBufferImpl;
            0   14     1  charbuffer  Lorg/apache/http/util/CharArrayBuffer;
            1   14     2         len  I
           11   12     3        bbuf  Ljava/nio/ByteBuffer;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      charbuffer  final

  private int lineFromReadBuffer(org.apache.http.util.CharArrayBuffer, int);
    descriptor: (Lorg/apache/http/util/CharArrayBuffer;I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
        start local 1 // org.apache.http.util.CharArrayBuffer charbuffer
        start local 2 // int position
         0: .line 333
            iload 2 /* position */
            istore 3 /* pos */
        start local 3 // int pos
         1: .line 334
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
            istore 4 /* off */
        start local 4 // int off
         2: .line 336
            aload 0 /* this */
            iload 3 /* pos */
            iconst_1
            iadd
            putfield org.apache.http.impl.io.SessionInputBufferImpl.bufferPos:I
         3: .line 337
            iload 3 /* pos */
            iload 4 /* off */
            if_icmple 5
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.buffer:[B
            iload 3 /* pos */
            iconst_1
            isub
            baload
            bipush 13
            if_icmpne 5
         4: .line 339
            iinc 3 /* pos */ -1
         5: .line 341
      StackMap locals: int int
      StackMap stack:
            iload 3 /* pos */
            iload 4 /* off */
            isub
            istore 5 /* len */
        start local 5 // int len
         6: .line 342
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.decoder:Ljava/nio/charset/CharsetDecoder;
            ifnonnull 9
         7: .line 343
            aload 1 /* charbuffer */
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.buffer:[B
            iload 4 /* off */
            iload 5 /* len */
            invokevirtual org.apache.http.util.CharArrayBuffer.append:([BII)V
         8: .line 344
            goto 11
         9: .line 345
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.buffer:[B
            iload 4 /* off */
            iload 5 /* len */
            invokestatic java.nio.ByteBuffer.wrap:([BII)Ljava/nio/ByteBuffer;
            astore 6 /* bbuf */
        start local 6 // java.nio.ByteBuffer bbuf
        10: .line 346
            aload 0 /* this */
            aload 1 /* charbuffer */
            aload 6 /* bbuf */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.appendDecoded:(Lorg/apache/http/util/CharArrayBuffer;Ljava/nio/ByteBuffer;)I
            istore 5 /* len */
        end local 6 // java.nio.ByteBuffer bbuf
        11: .line 348
      StackMap locals:
      StackMap stack:
            iload 5 /* len */
            ireturn
        end local 5 // int len
        end local 4 // int off
        end local 3 // int pos
        end local 2 // int position
        end local 1 // org.apache.http.util.CharArrayBuffer charbuffer
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lorg/apache/http/impl/io/SessionInputBufferImpl;
            0   12     1  charbuffer  Lorg/apache/http/util/CharArrayBuffer;
            0   12     2    position  I
            1   12     3         pos  I
            2   12     4         off  I
            6   12     5         len  I
           10   11     6        bbuf  Ljava/nio/ByteBuffer;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      charbuffer  final
      position    final

  private int appendDecoded(org.apache.http.util.CharArrayBuffer, java.nio.ByteBuffer);
    descriptor: (Lorg/apache/http/util/CharArrayBuffer;Ljava/nio/ByteBuffer;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
        start local 1 // org.apache.http.util.CharArrayBuffer charbuffer
        start local 2 // java.nio.ByteBuffer bbuf
         0: .line 353
            aload 2 /* bbuf */
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 2
         1: .line 354
            iconst_0
            ireturn
         2: .line 356
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.cbuf:Ljava/nio/CharBuffer;
            ifnonnull 4
         3: .line 357
            aload 0 /* this */
            sipush 1024
            invokestatic java.nio.CharBuffer.allocate:(I)Ljava/nio/CharBuffer;
            putfield org.apache.http.impl.io.SessionInputBufferImpl.cbuf:Ljava/nio/CharBuffer;
         4: .line 359
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.decoder:Ljava/nio/charset/CharsetDecoder;
            invokevirtual java.nio.charset.CharsetDecoder.reset:()Ljava/nio/charset/CharsetDecoder;
            pop
         5: .line 360
            iconst_0
            istore 3 /* len */
        start local 3 // int len
         6: .line 361
            goto 9
         7: .line 362
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.decoder:Ljava/nio/charset/CharsetDecoder;
            aload 2 /* bbuf */
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.cbuf:Ljava/nio/CharBuffer;
            iconst_1
            invokevirtual java.nio.charset.CharsetDecoder.decode:(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;Z)Ljava/nio/charset/CoderResult;
            astore 4 /* result */
        start local 4 // java.nio.charset.CoderResult result
         8: .line 363
            iload 3 /* len */
            aload 0 /* this */
            aload 4 /* result */
            aload 1 /* charbuffer */
            aload 2 /* bbuf */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.handleDecodingResult:(Ljava/nio/charset/CoderResult;Lorg/apache/http/util/CharArrayBuffer;Ljava/nio/ByteBuffer;)I
            iadd
            istore 3 /* len */
        end local 4 // java.nio.charset.CoderResult result
         9: .line 361
      StackMap locals:
      StackMap stack:
            aload 2 /* bbuf */
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 7
        10: .line 365
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.decoder:Ljava/nio/charset/CharsetDecoder;
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.cbuf:Ljava/nio/CharBuffer;
            invokevirtual java.nio.charset.CharsetDecoder.flush:(Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
            astore 4 /* result */
        start local 4 // java.nio.charset.CoderResult result
        11: .line 366
            iload 3 /* len */
            aload 0 /* this */
            aload 4 /* result */
            aload 1 /* charbuffer */
            aload 2 /* bbuf */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.handleDecodingResult:(Ljava/nio/charset/CoderResult;Lorg/apache/http/util/CharArrayBuffer;Ljava/nio/ByteBuffer;)I
            iadd
            istore 3 /* len */
        12: .line 367
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.cbuf:Ljava/nio/CharBuffer;
            invokevirtual java.nio.CharBuffer.clear:()Ljava/nio/Buffer;
            pop
        13: .line 368
            iload 3 /* len */
            ireturn
        end local 4 // java.nio.charset.CoderResult result
        end local 3 // int len
        end local 2 // java.nio.ByteBuffer bbuf
        end local 1 // org.apache.http.util.CharArrayBuffer charbuffer
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   14     0        this  Lorg/apache/http/impl/io/SessionInputBufferImpl;
            0   14     1  charbuffer  Lorg/apache/http/util/CharArrayBuffer;
            0   14     2        bbuf  Ljava/nio/ByteBuffer;
            6   14     3         len  I
            8    9     4      result  Ljava/nio/charset/CoderResult;
           11   14     4      result  Ljava/nio/charset/CoderResult;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      charbuffer  final
      bbuf        final

  private int handleDecodingResult(java.nio.charset.CoderResult, org.apache.http.util.CharArrayBuffer, java.nio.ByteBuffer);
    descriptor: (Ljava/nio/charset/CoderResult;Lorg/apache/http/util/CharArrayBuffer;Ljava/nio/ByteBuffer;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=4
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
        start local 1 // java.nio.charset.CoderResult result
        start local 2 // org.apache.http.util.CharArrayBuffer charbuffer
        start local 3 // java.nio.ByteBuffer bbuf
         0: .line 375
            aload 1 /* result */
            invokevirtual java.nio.charset.CoderResult.isError:()Z
            ifeq 2
         1: .line 376
            aload 1 /* result */
            invokevirtual java.nio.charset.CoderResult.throwException:()V
         2: .line 378
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.cbuf:Ljava/nio/CharBuffer;
            invokevirtual java.nio.CharBuffer.flip:()Ljava/nio/Buffer;
            pop
         3: .line 379
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.cbuf:Ljava/nio/CharBuffer;
            invokevirtual java.nio.CharBuffer.remaining:()I
            istore 4 /* len */
        start local 4 // int len
         4: .line 380
            goto 6
         5: .line 381
      StackMap locals: int
      StackMap stack:
            aload 2 /* charbuffer */
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.cbuf:Ljava/nio/CharBuffer;
            invokevirtual java.nio.CharBuffer.get:()C
            invokevirtual org.apache.http.util.CharArrayBuffer.append:(C)V
         6: .line 380
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.cbuf:Ljava/nio/CharBuffer;
            invokevirtual java.nio.CharBuffer.hasRemaining:()Z
            ifne 5
         7: .line 383
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.cbuf:Ljava/nio/CharBuffer;
            invokevirtual java.nio.CharBuffer.compact:()Ljava/nio/CharBuffer;
            pop
         8: .line 384
            iload 4 /* len */
            ireturn
        end local 4 // int len
        end local 3 // java.nio.ByteBuffer bbuf
        end local 2 // org.apache.http.util.CharArrayBuffer charbuffer
        end local 1 // java.nio.charset.CoderResult result
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lorg/apache/http/impl/io/SessionInputBufferImpl;
            0    9     1      result  Ljava/nio/charset/CoderResult;
            0    9     2  charbuffer  Lorg/apache/http/util/CharArrayBuffer;
            0    9     3        bbuf  Ljava/nio/ByteBuffer;
            4    9     4         len  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      result      final
      charbuffer  final
      bbuf        final

  public java.lang.String readLine();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
         0: .line 389
            new org.apache.http.util.CharArrayBuffer
            dup
            bipush 64
            invokespecial org.apache.http.util.CharArrayBuffer.<init>:(I)V
            astore 1 /* charbuffer */
        start local 1 // org.apache.http.util.CharArrayBuffer charbuffer
         1: .line 390
            aload 0 /* this */
            aload 1 /* charbuffer */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.readLine:(Lorg/apache/http/util/CharArrayBuffer;)I
            istore 2 /* readLen */
        start local 2 // int readLen
         2: .line 391
            iload 2 /* readLen */
            iconst_m1
            if_icmpeq 3
            aload 1 /* charbuffer */
            invokevirtual org.apache.http.util.CharArrayBuffer.toString:()Ljava/lang/String;
            goto 4
      StackMap locals: org.apache.http.util.CharArrayBuffer int
      StackMap stack:
         3: aconst_null
      StackMap locals:
      StackMap stack: java.lang.String
         4: areturn
        end local 2 // int readLen
        end local 1 // org.apache.http.util.CharArrayBuffer charbuffer
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/apache/http/impl/io/SessionInputBufferImpl;
            1    5     1  charbuffer  Lorg/apache/http/util/CharArrayBuffer;
            2    5     2     readLen  I
    Exceptions:
      throws java.io.IOException

  public boolean isDataAvailable(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
        start local 1 // int timeout
         0: .line 396
            aload 0 /* this */
            invokevirtual org.apache.http.impl.io.SessionInputBufferImpl.hasBufferedData:()Z
            ireturn
        end local 1 // int timeout
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/apache/http/impl/io/SessionInputBufferImpl;
            0    1     1  timeout  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      timeout  final

  public org.apache.http.io.HttpTransportMetrics getMetrics();
    descriptor: ()Lorg/apache/http/io/HttpTransportMetrics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
         0: .line 401
            aload 0 /* this */
            getfield org.apache.http.impl.io.SessionInputBufferImpl.metrics:Lorg/apache/http/impl/io/HttpTransportMetricsImpl;
            areturn
        end local 0 // org.apache.http.impl.io.SessionInputBufferImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/http/impl/io/SessionInputBufferImpl;
}
SourceFile: "SessionInputBufferImpl.java"