public final class org.apache.coyote.Request
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.apache.coyote.Request
  super_class: java.lang.Object
{
  private static final org.apache.tomcat.util.res.StringManager sm;
    descriptor: Lorg/apache/tomcat/util/res/StringManager;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int INITIAL_COOKIE_SIZE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

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

  private final org.apache.tomcat.util.buf.MessageBytes serverNameMB;
    descriptor: Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

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

  private final org.apache.tomcat.util.buf.MessageBytes schemeMB;
    descriptor: Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.tomcat.util.buf.MessageBytes methodMB;
    descriptor: Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.tomcat.util.buf.MessageBytes uriMB;
    descriptor: Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.tomcat.util.buf.MessageBytes decodedUriMB;
    descriptor: Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.tomcat.util.buf.MessageBytes queryMB;
    descriptor: Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.tomcat.util.buf.MessageBytes protoMB;
    descriptor: Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.tomcat.util.buf.MessageBytes remoteAddrMB;
    descriptor: Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.tomcat.util.buf.MessageBytes localNameMB;
    descriptor: Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.tomcat.util.buf.MessageBytes remoteHostMB;
    descriptor: Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.tomcat.util.buf.MessageBytes localAddrMB;
    descriptor: Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private final java.util.Map<java.lang.String, java.lang.String> trailerFields;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;

  private final java.util.Map<java.lang.String, java.lang.String> pathParameters;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;

  private final java.lang.Object[] notes;
    descriptor: [Ljava/lang/Object;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private org.apache.coyote.InputBuffer inputBuffer;
    descriptor: Lorg/apache/coyote/InputBuffer;
    flags: (0x0002) ACC_PRIVATE

  private final org.apache.tomcat.util.buf.UDecoder urlDecoder;
    descriptor: Lorg/apache/tomcat/util/buf/UDecoder;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private long contentLength;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private org.apache.tomcat.util.buf.MessageBytes contentTypeMB;
    descriptor: Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0002) ACC_PRIVATE

  private java.nio.charset.Charset charset;
    descriptor: Ljava/nio/charset/Charset;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String characterEncoding;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

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

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

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

  private final org.apache.tomcat.util.buf.MessageBytes remoteUser;
    descriptor: Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private final org.apache.tomcat.util.buf.MessageBytes authType;
    descriptor: Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.HashMap<java.lang.String, java.lang.Object> attributes;
    descriptor: Ljava/util/HashMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Object;>;

  private org.apache.coyote.Response response;
    descriptor: Lorg/apache/coyote/Response;
    flags: (0x0002) ACC_PRIVATE

  private volatile org.apache.coyote.ActionHook hook;
    descriptor: Lorg/apache/coyote/ActionHook;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private long bytesRead;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private long startTimeNanos;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

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

  private final org.apache.coyote.RequestInfo reqProcessorMX;
    descriptor: Lorg/apache/coyote/RequestInfo;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  volatile jakarta.servlet.ReadListener listener;
    descriptor: Ljakarta/servlet/ReadListener;
    flags: (0x0040) ACC_VOLATILE

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 67
            ldc Lorg/apache/coyote/Request;
            invokestatic org.apache.tomcat.util.res.StringManager.getManager:(Ljava/lang/Class;)Lorg/apache/tomcat/util/res/StringManager;
            putstatic org.apache.coyote.Request.sm:Lorg/apache/tomcat/util/res/StringManager;
         1: .line 70
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 74
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 82
            aload 0 /* this */
            iconst_m1
            putfield org.apache.coyote.Request.serverPort:I
         2: .line 83
            aload 0 /* this */
            invokestatic org.apache.tomcat.util.buf.MessageBytes.newInstance:()Lorg/apache/tomcat/util/buf/MessageBytes;
            putfield org.apache.coyote.Request.serverNameMB:Lorg/apache/tomcat/util/buf/MessageBytes;
         3: .line 88
            aload 0 /* this */
            invokestatic org.apache.tomcat.util.buf.MessageBytes.newInstance:()Lorg/apache/tomcat/util/buf/MessageBytes;
            putfield org.apache.coyote.Request.schemeMB:Lorg/apache/tomcat/util/buf/MessageBytes;
         4: .line 90
            aload 0 /* this */
            invokestatic org.apache.tomcat.util.buf.MessageBytes.newInstance:()Lorg/apache/tomcat/util/buf/MessageBytes;
            putfield org.apache.coyote.Request.methodMB:Lorg/apache/tomcat/util/buf/MessageBytes;
         5: .line 91
            aload 0 /* this */
            invokestatic org.apache.tomcat.util.buf.MessageBytes.newInstance:()Lorg/apache/tomcat/util/buf/MessageBytes;
            putfield org.apache.coyote.Request.uriMB:Lorg/apache/tomcat/util/buf/MessageBytes;
         6: .line 92
            aload 0 /* this */
            invokestatic org.apache.tomcat.util.buf.MessageBytes.newInstance:()Lorg/apache/tomcat/util/buf/MessageBytes;
            putfield org.apache.coyote.Request.decodedUriMB:Lorg/apache/tomcat/util/buf/MessageBytes;
         7: .line 93
            aload 0 /* this */
            invokestatic org.apache.tomcat.util.buf.MessageBytes.newInstance:()Lorg/apache/tomcat/util/buf/MessageBytes;
            putfield org.apache.coyote.Request.queryMB:Lorg/apache/tomcat/util/buf/MessageBytes;
         8: .line 94
            aload 0 /* this */
            invokestatic org.apache.tomcat.util.buf.MessageBytes.newInstance:()Lorg/apache/tomcat/util/buf/MessageBytes;
            putfield org.apache.coyote.Request.protoMB:Lorg/apache/tomcat/util/buf/MessageBytes;
         9: .line 97
            aload 0 /* this */
            invokestatic org.apache.tomcat.util.buf.MessageBytes.newInstance:()Lorg/apache/tomcat/util/buf/MessageBytes;
            putfield org.apache.coyote.Request.remoteAddrMB:Lorg/apache/tomcat/util/buf/MessageBytes;
        10: .line 98
            aload 0 /* this */
            invokestatic org.apache.tomcat.util.buf.MessageBytes.newInstance:()Lorg/apache/tomcat/util/buf/MessageBytes;
            putfield org.apache.coyote.Request.localNameMB:Lorg/apache/tomcat/util/buf/MessageBytes;
        11: .line 99
            aload 0 /* this */
            invokestatic org.apache.tomcat.util.buf.MessageBytes.newInstance:()Lorg/apache/tomcat/util/buf/MessageBytes;
            putfield org.apache.coyote.Request.remoteHostMB:Lorg/apache/tomcat/util/buf/MessageBytes;
        12: .line 100
            aload 0 /* this */
            invokestatic org.apache.tomcat.util.buf.MessageBytes.newInstance:()Lorg/apache/tomcat/util/buf/MessageBytes;
            putfield org.apache.coyote.Request.localAddrMB:Lorg/apache/tomcat/util/buf/MessageBytes;
        13: .line 102
            aload 0 /* this */
            new org.apache.tomcat.util.http.MimeHeaders
            dup
            invokespecial org.apache.tomcat.util.http.MimeHeaders.<init>:()V
            putfield org.apache.coyote.Request.headers:Lorg/apache/tomcat/util/http/MimeHeaders;
        14: .line 103
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield org.apache.coyote.Request.trailerFields:Ljava/util/Map;
        15: .line 109
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield org.apache.coyote.Request.pathParameters:Ljava/util/Map;
        16: .line 114
            aload 0 /* this */
            bipush 32
            anewarray java.lang.Object
            putfield org.apache.coyote.Request.notes:[Ljava/lang/Object;
        17: .line 120
            aload 0 /* this */
            aconst_null
            putfield org.apache.coyote.Request.inputBuffer:Lorg/apache/coyote/InputBuffer;
        18: .line 126
            aload 0 /* this */
            new org.apache.tomcat.util.buf.UDecoder
            dup
            invokespecial org.apache.tomcat.util.buf.UDecoder.<init>:()V
            putfield org.apache.coyote.Request.urlDecoder:Lorg/apache/tomcat/util/buf/UDecoder;
        19: .line 132
            aload 0 /* this */
            ldc -1
            putfield org.apache.coyote.Request.contentLength:J
        20: .line 133
            aload 0 /* this */
            aconst_null
            putfield org.apache.coyote.Request.contentTypeMB:Lorg/apache/tomcat/util/buf/MessageBytes;
        21: .line 134
            aload 0 /* this */
            aconst_null
            putfield org.apache.coyote.Request.charset:Ljava/nio/charset/Charset;
        22: .line 137
            aload 0 /* this */
            aconst_null
            putfield org.apache.coyote.Request.characterEncoding:Ljava/lang/String;
        23: .line 142
            aload 0 /* this */
            iconst_0
            putfield org.apache.coyote.Request.expectation:Z
        24: .line 144
            aload 0 /* this */
            new org.apache.tomcat.util.http.ServerCookies
            dup
            iconst_4
            invokespecial org.apache.tomcat.util.http.ServerCookies.<init>:(I)V
            putfield org.apache.coyote.Request.serverCookies:Lorg/apache/tomcat/util/http/ServerCookies;
        25: .line 145
            aload 0 /* this */
            new org.apache.tomcat.util.http.Parameters
            dup
            invokespecial org.apache.tomcat.util.http.Parameters.<init>:()V
            putfield org.apache.coyote.Request.parameters:Lorg/apache/tomcat/util/http/Parameters;
        26: .line 147
            aload 0 /* this */
            invokestatic org.apache.tomcat.util.buf.MessageBytes.newInstance:()Lorg/apache/tomcat/util/buf/MessageBytes;
            putfield org.apache.coyote.Request.remoteUser:Lorg/apache/tomcat/util/buf/MessageBytes;
        27: .line 148
            aload 0 /* this */
            iconst_0
            putfield org.apache.coyote.Request.remoteUserNeedsAuthorization:Z
        28: .line 149
            aload 0 /* this */
            invokestatic org.apache.tomcat.util.buf.MessageBytes.newInstance:()Lorg/apache/tomcat/util/buf/MessageBytes;
            putfield org.apache.coyote.Request.authType:Lorg/apache/tomcat/util/buf/MessageBytes;
        29: .line 150
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield org.apache.coyote.Request.attributes:Ljava/util/HashMap;
        30: .line 155
            aload 0 /* this */
            lconst_0
            putfield org.apache.coyote.Request.bytesRead:J
        31: .line 157
            aload 0 /* this */
            ldc -1
            putfield org.apache.coyote.Request.startTimeNanos:J
        32: .line 158
            aload 0 /* this */
            iconst_0
            putfield org.apache.coyote.Request.available:I
        33: .line 160
            aload 0 /* this */
            new org.apache.coyote.RequestInfo
            dup
            aload 0 /* this */
            invokespecial org.apache.coyote.RequestInfo.<init>:(Lorg/apache/coyote/Request;)V
            putfield org.apache.coyote.Request.reqProcessorMX:Lorg/apache/coyote/RequestInfo;
        34: .line 162
            aload 0 /* this */
            iconst_1
            putfield org.apache.coyote.Request.sendfile:Z
        35: .line 191
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicBoolean
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
            putfield org.apache.coyote.Request.allDataReadEventSent:Ljava/util/concurrent/atomic/AtomicBoolean;
        36: .line 75
            aload 0 /* this */
            getfield org.apache.coyote.Request.parameters:Lorg/apache/tomcat/util/http/Parameters;
            aload 0 /* this */
            getfield org.apache.coyote.Request.queryMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.http.Parameters.setQuery:(Lorg/apache/tomcat/util/buf/MessageBytes;)V
        37: .line 76
            aload 0 /* this */
            getfield org.apache.coyote.Request.parameters:Lorg/apache/tomcat/util/http/Parameters;
            aload 0 /* this */
            getfield org.apache.coyote.Request.urlDecoder:Lorg/apache/tomcat/util/buf/UDecoder;
            invokevirtual org.apache.tomcat.util.http.Parameters.setURLDecoder:(Lorg/apache/tomcat/util/buf/UDecoder;)V
        38: .line 77
            return
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   39     0  this  Lorg/apache/coyote/Request;

  public jakarta.servlet.ReadListener getReadListener();
    descriptor: ()Ljakarta/servlet/ReadListener;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 167
            aload 0 /* this */
            getfield org.apache.coyote.Request.listener:Ljakarta/servlet/ReadListener;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public void setReadListener(jakarta.servlet.ReadListener);
    descriptor: (Ljakarta/servlet/ReadListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // jakarta.servlet.ReadListener listener
         0: .line 171
            aload 1 /* listener */
            ifnonnull 4
         1: .line 172
            new java.lang.NullPointerException
            dup
         2: .line 173
            getstatic org.apache.coyote.Request.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "request.nullReadListener"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
         3: .line 172
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 175
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.coyote.Request.getReadListener:()Ljakarta/servlet/ReadListener;
            ifnull 8
         5: .line 176
            new java.lang.IllegalStateException
            dup
         6: .line 177
            getstatic org.apache.coyote.Request.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "request.readListenerSet"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
         7: .line 176
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 181
      StackMap locals:
      StackMap stack:
            new java.util.concurrent.atomic.AtomicBoolean
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
            astore 2 /* result */
        start local 2 // java.util.concurrent.atomic.AtomicBoolean result
         9: .line 182
            aload 0 /* this */
            getstatic org.apache.coyote.ActionCode.ASYNC_IS_ASYNC:Lorg/apache/coyote/ActionCode;
            aload 2 /* result */
            invokevirtual org.apache.coyote.Request.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
        10: .line 183
            aload 2 /* result */
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
            ifne 14
        11: .line 184
            new java.lang.IllegalStateException
            dup
        12: .line 185
            getstatic org.apache.coyote.Request.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "request.notAsync"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
        13: .line 184
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        14: .line 188
      StackMap locals: java.util.concurrent.atomic.AtomicBoolean
      StackMap stack:
            aload 0 /* this */
            aload 1 /* listener */
            putfield org.apache.coyote.Request.listener:Ljakarta/servlet/ReadListener;
        15: .line 189
            return
        end local 2 // java.util.concurrent.atomic.AtomicBoolean result
        end local 1 // jakarta.servlet.ReadListener listener
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   16     0      this  Lorg/apache/coyote/Request;
            0   16     1  listener  Ljakarta/servlet/ReadListener;
            9   16     2    result  Ljava/util/concurrent/atomic/AtomicBoolean;
    MethodParameters:
          Name  Flags
      listener  

  public boolean sendAllDataReadEvent();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 194
            aload 0 /* this */
            getfield org.apache.coyote.Request.allDataReadEventSent:Ljava/util/concurrent/atomic/AtomicBoolean;
            iconst_0
            iconst_1
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.compareAndSet:(ZZ)Z
            ireturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public org.apache.tomcat.util.http.MimeHeaders getMimeHeaders();
    descriptor: ()Lorg/apache/tomcat/util/http/MimeHeaders;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 201
            aload 0 /* this */
            getfield org.apache.coyote.Request.headers:Lorg/apache/tomcat/util/http/MimeHeaders;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public boolean isTrailerFieldsReady();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 206
            new java.util.concurrent.atomic.AtomicBoolean
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
            astore 1 /* result */
        start local 1 // java.util.concurrent.atomic.AtomicBoolean result
         1: .line 207
            aload 0 /* this */
            getstatic org.apache.coyote.ActionCode.IS_TRAILER_FIELDS_READY:Lorg/apache/coyote/ActionCode;
            aload 1 /* result */
            invokevirtual org.apache.coyote.Request.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
         2: .line 208
            aload 1 /* result */
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
            ireturn
        end local 1 // java.util.concurrent.atomic.AtomicBoolean result
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/apache/coyote/Request;
            1    3     1  result  Ljava/util/concurrent/atomic/AtomicBoolean;

  public java.util.Map<java.lang.String, java.lang.String> getTrailerFields();
    descriptor: ()Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 213
            aload 0 /* this */
            getfield org.apache.coyote.Request.trailerFields:Ljava/util/Map;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;
    Signature: ()Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;

  public org.apache.tomcat.util.buf.UDecoder getURLDecoder();
    descriptor: ()Lorg/apache/tomcat/util/buf/UDecoder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 218
            aload 0 /* this */
            getfield org.apache.coyote.Request.urlDecoder:Lorg/apache/tomcat/util/buf/UDecoder;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public org.apache.tomcat.util.buf.MessageBytes scheme();
    descriptor: ()Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 225
            aload 0 /* this */
            getfield org.apache.coyote.Request.schemeMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public org.apache.tomcat.util.buf.MessageBytes method();
    descriptor: ()Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 229
            aload 0 /* this */
            getfield org.apache.coyote.Request.methodMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public org.apache.tomcat.util.buf.MessageBytes requestURI();
    descriptor: ()Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 233
            aload 0 /* this */
            getfield org.apache.coyote.Request.uriMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public org.apache.tomcat.util.buf.MessageBytes decodedURI();
    descriptor: ()Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 237
            aload 0 /* this */
            getfield org.apache.coyote.Request.decodedUriMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public org.apache.tomcat.util.buf.MessageBytes queryString();
    descriptor: ()Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 241
            aload 0 /* this */
            getfield org.apache.coyote.Request.queryMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public org.apache.tomcat.util.buf.MessageBytes protocol();
    descriptor: ()Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 245
            aload 0 /* this */
            getfield org.apache.coyote.Request.protoMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public org.apache.tomcat.util.buf.MessageBytes serverName();
    descriptor: ()Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 256
            aload 0 /* this */
            getfield org.apache.coyote.Request.serverNameMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public int getServerPort();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 260
            aload 0 /* this */
            getfield org.apache.coyote.Request.serverPort:I
            ireturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public void setServerPort(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // int serverPort
         0: .line 264
            aload 0 /* this */
            iload 1 /* serverPort */
            putfield org.apache.coyote.Request.serverPort:I
         1: .line 265
            return
        end local 1 // int serverPort
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/apache/coyote/Request;
            0    2     1  serverPort  I
    MethodParameters:
            Name  Flags
      serverPort  

  public org.apache.tomcat.util.buf.MessageBytes remoteAddr();
    descriptor: ()Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 268
            aload 0 /* this */
            getfield org.apache.coyote.Request.remoteAddrMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public org.apache.tomcat.util.buf.MessageBytes remoteHost();
    descriptor: ()Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 272
            aload 0 /* this */
            getfield org.apache.coyote.Request.remoteHostMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public org.apache.tomcat.util.buf.MessageBytes localName();
    descriptor: ()Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 276
            aload 0 /* this */
            getfield org.apache.coyote.Request.localNameMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public org.apache.tomcat.util.buf.MessageBytes localAddr();
    descriptor: ()Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 280
            aload 0 /* this */
            getfield org.apache.coyote.Request.localAddrMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public int getRemotePort();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 284
            aload 0 /* this */
            getfield org.apache.coyote.Request.remotePort:I
            ireturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public void setRemotePort(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // int port
         0: .line 288
            aload 0 /* this */
            iload 1 /* port */
            putfield org.apache.coyote.Request.remotePort:I
         1: .line 289
            return
        end local 1 // int port
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/coyote/Request;
            0    2     1  port  I
    MethodParameters:
      Name  Flags
      port  

  public int getLocalPort();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 292
            aload 0 /* this */
            getfield org.apache.coyote.Request.localPort:I
            ireturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public void setLocalPort(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // int port
         0: .line 296
            aload 0 /* this */
            iload 1 /* port */
            putfield org.apache.coyote.Request.localPort:I
         1: .line 297
            return
        end local 1 // int port
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/coyote/Request;
            0    2     1  port  I
    MethodParameters:
      Name  Flags
      port  

  public java.lang.String getCharacterEncoding();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 310
            aload 0 /* this */
            getfield org.apache.coyote.Request.characterEncoding:Ljava/lang/String;
            ifnonnull 2
         1: .line 311
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.apache.coyote.Request.getContentType:()Ljava/lang/String;
            invokestatic org.apache.coyote.Request.getCharsetFromContentType:(Ljava/lang/String;)Ljava/lang/String;
            putfield org.apache.coyote.Request.characterEncoding:Ljava/lang/String;
         2: .line 314
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.coyote.Request.characterEncoding:Ljava/lang/String;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/coyote/Request;

  public java.nio.charset.Charset getCharset();
    descriptor: ()Ljava/nio/charset/Charset;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 329
            aload 0 /* this */
            getfield org.apache.coyote.Request.charset:Ljava/nio/charset/Charset;
            ifnonnull 4
         1: .line 330
            aload 0 /* this */
            invokevirtual org.apache.coyote.Request.getCharacterEncoding:()Ljava/lang/String;
            pop
         2: .line 331
            aload 0 /* this */
            getfield org.apache.coyote.Request.characterEncoding:Ljava/lang/String;
            ifnull 4
         3: .line 332
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.coyote.Request.characterEncoding:Ljava/lang/String;
            invokestatic org.apache.tomcat.util.buf.B2CConverter.getCharset:(Ljava/lang/String;)Ljava/nio/charset/Charset;
            putfield org.apache.coyote.Request.charset:Ljava/nio/charset/Charset;
         4: .line 336
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.coyote.Request.charset:Ljava/nio/charset/Charset;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/coyote/Request;
    Exceptions:
      throws java.io.UnsupportedEncodingException

  public void setCharset(java.nio.charset.Charset);
    descriptor: (Ljava/nio/charset/Charset;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // java.nio.charset.Charset charset
         0: .line 341
            aload 0 /* this */
            aload 1 /* charset */
            putfield org.apache.coyote.Request.charset:Ljava/nio/charset/Charset;
         1: .line 342
            aload 0 /* this */
            aload 1 /* charset */
            invokevirtual java.nio.charset.Charset.name:()Ljava/lang/String;
            putfield org.apache.coyote.Request.characterEncoding:Ljava/lang/String;
         2: .line 343
            return
        end local 1 // java.nio.charset.Charset charset
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/apache/coyote/Request;
            0    3     1  charset  Ljava/nio/charset/Charset;
    MethodParameters:
         Name  Flags
      charset  

  public void setContentLength(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // long len
         0: .line 347
            aload 0 /* this */
            lload 1 /* len */
            putfield org.apache.coyote.Request.contentLength:J
         1: .line 348
            return
        end local 1 // long len
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/coyote/Request;
            0    2     1   len  J
    MethodParameters:
      Name  Flags
      len   

  public int getContentLength();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 352
            aload 0 /* this */
            invokevirtual org.apache.coyote.Request.getContentLengthLong:()J
            lstore 1 /* length */
        start local 1 // long length
         1: .line 354
            lload 1 /* length */
            ldc 2147483647
            lcmp
            ifge 3
         2: .line 355
            lload 1 /* length */
            l2i
            ireturn
         3: .line 357
      StackMap locals: long
      StackMap stack:
            iconst_m1
            ireturn
        end local 1 // long length
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/apache/coyote/Request;
            1    4     1  length  J

  public long getContentLengthLong();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 361
            aload 0 /* this */
            getfield org.apache.coyote.Request.contentLength:J
            ldc -1
            lcmp
            ifle 2
         1: .line 362
            aload 0 /* this */
            getfield org.apache.coyote.Request.contentLength:J
            lreturn
         2: .line 365
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.coyote.Request.headers:Lorg/apache/tomcat/util/http/MimeHeaders;
            ldc "content-length"
            invokevirtual org.apache.tomcat.util.http.MimeHeaders.getUniqueValue:(Ljava/lang/String;)Lorg/apache/tomcat/util/buf/MessageBytes;
            astore 1 /* clB */
        start local 1 // org.apache.tomcat.util.buf.MessageBytes clB
         3: .line 366
            aload 0 /* this */
            aload 1 /* clB */
            ifnull 4
            aload 1 /* clB */
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.isNull:()Z
            ifeq 5
      StackMap locals: org.apache.coyote.Request org.apache.tomcat.util.buf.MessageBytes
      StackMap stack: org.apache.coyote.Request
         4: ldc -1
            goto 6
      StackMap locals:
      StackMap stack: org.apache.coyote.Request
         5: aload 1 /* clB */
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.getLong:()J
      StackMap locals: org.apache.coyote.Request org.apache.tomcat.util.buf.MessageBytes
      StackMap stack: org.apache.coyote.Request long
         6: putfield org.apache.coyote.Request.contentLength:J
         7: .line 368
            aload 0 /* this */
            getfield org.apache.coyote.Request.contentLength:J
            lreturn
        end local 1 // org.apache.tomcat.util.buf.MessageBytes clB
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/apache/coyote/Request;
            3    8     1   clB  Lorg/apache/tomcat/util/buf/MessageBytes;

  public java.lang.String getContentType();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 372
            aload 0 /* this */
            invokevirtual org.apache.coyote.Request.contentType:()Lorg/apache/tomcat/util/buf/MessageBytes;
            pop
         1: .line 373
            aload 0 /* this */
            getfield org.apache.coyote.Request.contentTypeMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            ifnull 2
            aload 0 /* this */
            getfield org.apache.coyote.Request.contentTypeMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.isNull:()Z
            ifeq 3
         2: .line 374
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
         3: .line 376
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.coyote.Request.contentTypeMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/coyote/Request;

  public void setContentType(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // java.lang.String type
         0: .line 381
            aload 0 /* this */
            getfield org.apache.coyote.Request.contentTypeMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            aload 1 /* type */
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.setString:(Ljava/lang/String;)V
         1: .line 382
            return
        end local 1 // java.lang.String type
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/coyote/Request;
            0    2     1  type  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      type  

  public org.apache.tomcat.util.buf.MessageBytes contentType();
    descriptor: ()Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 386
            aload 0 /* this */
            getfield org.apache.coyote.Request.contentTypeMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            ifnonnull 2
         1: .line 387
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.coyote.Request.headers:Lorg/apache/tomcat/util/http/MimeHeaders;
            ldc "content-type"
            invokevirtual org.apache.tomcat.util.http.MimeHeaders.getValue:(Ljava/lang/String;)Lorg/apache/tomcat/util/buf/MessageBytes;
            putfield org.apache.coyote.Request.contentTypeMB:Lorg/apache/tomcat/util/buf/MessageBytes;
         2: .line 389
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.coyote.Request.contentTypeMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/coyote/Request;

  public void setContentType(org.apache.tomcat.util.buf.MessageBytes);
    descriptor: (Lorg/apache/tomcat/util/buf/MessageBytes;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // org.apache.tomcat.util.buf.MessageBytes mb
         0: .line 394
            aload 0 /* this */
            aload 1 /* mb */
            putfield org.apache.coyote.Request.contentTypeMB:Lorg/apache/tomcat/util/buf/MessageBytes;
         1: .line 395
            return
        end local 1 // org.apache.tomcat.util.buf.MessageBytes mb
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/coyote/Request;
            0    2     1    mb  Lorg/apache/tomcat/util/buf/MessageBytes;
    MethodParameters:
      Name  Flags
      mb    

  public java.lang.String getHeader(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // java.lang.String name
         0: .line 399
            aload 0 /* this */
            getfield org.apache.coyote.Request.headers:Lorg/apache/tomcat/util/http/MimeHeaders;
            aload 1 /* name */
            invokevirtual org.apache.tomcat.util.http.MimeHeaders.getHeader:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public void setExpectation(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // boolean expectation
         0: .line 404
            aload 0 /* this */
            iload 1 /* expectation */
            putfield org.apache.coyote.Request.expectation:Z
         1: .line 405
            return
        end local 1 // boolean expectation
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/apache/coyote/Request;
            0    2     1  expectation  Z
    MethodParameters:
             Name  Flags
      expectation  

  public boolean hasExpectation();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 409
            aload 0 /* this */
            getfield org.apache.coyote.Request.expectation:Z
            ireturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public org.apache.coyote.Response getResponse();
    descriptor: ()Lorg/apache/coyote/Response;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 416
            aload 0 /* this */
            getfield org.apache.coyote.Request.response:Lorg/apache/coyote/Response;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public void setResponse(org.apache.coyote.Response);
    descriptor: (Lorg/apache/coyote/Response;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // org.apache.coyote.Response response
         0: .line 420
            aload 0 /* this */
            aload 1 /* response */
            putfield org.apache.coyote.Request.response:Lorg/apache/coyote/Response;
         1: .line 421
            aload 1 /* response */
            aload 0 /* this */
            invokevirtual org.apache.coyote.Response.setRequest:(Lorg/apache/coyote/Request;)V
         2: .line 422
            return
        end local 1 // org.apache.coyote.Response response
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/apache/coyote/Request;
            0    3     1  response  Lorg/apache/coyote/Response;
    MethodParameters:
          Name  Flags
      response  

  protected void setHook(org.apache.coyote.ActionHook);
    descriptor: (Lorg/apache/coyote/ActionHook;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // org.apache.coyote.ActionHook hook
         0: .line 425
            aload 0 /* this */
            aload 1 /* hook */
            putfield org.apache.coyote.Request.hook:Lorg/apache/coyote/ActionHook;
         1: .line 426
            return
        end local 1 // org.apache.coyote.ActionHook hook
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/coyote/Request;
            0    2     1  hook  Lorg/apache/coyote/ActionHook;
    MethodParameters:
      Name  Flags
      hook  

  public void action(org.apache.coyote.ActionCode, java.lang.Object);
    descriptor: (Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.coyote.Request this
        start local 1 // org.apache.coyote.ActionCode actionCode
        start local 2 // java.lang.Object param
         0: .line 429
            aload 0 /* this */
            getfield org.apache.coyote.Request.hook:Lorg/apache/coyote/ActionHook;
            ifnull 5
         1: .line 430
            aload 2 /* param */
            ifnonnull 4
         2: .line 431
            aload 0 /* this */
            getfield org.apache.coyote.Request.hook:Lorg/apache/coyote/ActionHook;
            aload 1 /* actionCode */
            aload 0 /* this */
            invokeinterface org.apache.coyote.ActionHook.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
         3: .line 432
            goto 5
         4: .line 433
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.coyote.Request.hook:Lorg/apache/coyote/ActionHook;
            aload 1 /* actionCode */
            aload 2 /* param */
            invokeinterface org.apache.coyote.ActionHook.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
         5: .line 436
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Object param
        end local 1 // org.apache.coyote.ActionCode actionCode
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/apache/coyote/Request;
            0    6     1  actionCode  Lorg/apache/coyote/ActionCode;
            0    6     2       param  Ljava/lang/Object;
    MethodParameters:
            Name  Flags
      actionCode  
      param       

  public org.apache.tomcat.util.http.ServerCookies getCookies();
    descriptor: ()Lorg/apache/tomcat/util/http/ServerCookies;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 442
            aload 0 /* this */
            getfield org.apache.coyote.Request.serverCookies:Lorg/apache/tomcat/util/http/ServerCookies;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public org.apache.tomcat.util.http.Parameters getParameters();
    descriptor: ()Lorg/apache/tomcat/util/http/Parameters;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 449
            aload 0 /* this */
            getfield org.apache.coyote.Request.parameters:Lorg/apache/tomcat/util/http/Parameters;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public void addPathParameter(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.coyote.Request this
        start local 1 // java.lang.String name
        start local 2 // java.lang.String value
         0: .line 454
            aload 0 /* this */
            getfield org.apache.coyote.Request.pathParameters:Ljava/util/Map;
            aload 1 /* name */
            aload 2 /* value */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 455
            return
        end local 2 // java.lang.String value
        end local 1 // java.lang.String name
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/apache/coyote/Request;
            0    2     1   name  Ljava/lang/String;
            0    2     2  value  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      name   
      value  

  public java.lang.String getPathParameter(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // java.lang.String name
         0: .line 458
            aload 0 /* this */
            getfield org.apache.coyote.Request.pathParameters:Ljava/util/Map;
            aload 1 /* name */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public void setAttribute(java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.coyote.Request this
        start local 1 // java.lang.String name
        start local 2 // java.lang.Object o
         0: .line 466
            aload 0 /* this */
            getfield org.apache.coyote.Request.attributes:Ljava/util/HashMap;
            aload 1 /* name */
            aload 2 /* o */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 467
            return
        end local 2 // java.lang.Object o
        end local 1 // java.lang.String name
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/coyote/Request;
            0    2     1  name  Ljava/lang/String;
            0    2     2     o  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      name  
      o     

  public java.util.HashMap<java.lang.String, java.lang.Object> getAttributes();
    descriptor: ()Ljava/util/HashMap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 470
            aload 0 /* this */
            getfield org.apache.coyote.Request.attributes:Ljava/util/HashMap;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;
    Signature: ()Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Object;>;

  public java.lang.Object getAttribute(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // java.lang.String name
         0: .line 474
            aload 0 /* this */
            getfield org.apache.coyote.Request.attributes:Ljava/util/HashMap;
            aload 1 /* name */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public org.apache.tomcat.util.buf.MessageBytes getRemoteUser();
    descriptor: ()Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 478
            aload 0 /* this */
            getfield org.apache.coyote.Request.remoteUser:Lorg/apache/tomcat/util/buf/MessageBytes;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public boolean getRemoteUserNeedsAuthorization();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 482
            aload 0 /* this */
            getfield org.apache.coyote.Request.remoteUserNeedsAuthorization:Z
            ireturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public void setRemoteUserNeedsAuthorization(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // boolean remoteUserNeedsAuthorization
         0: .line 486
            aload 0 /* this */
            iload 1 /* remoteUserNeedsAuthorization */
            putfield org.apache.coyote.Request.remoteUserNeedsAuthorization:Z
         1: .line 487
            return
        end local 1 // boolean remoteUserNeedsAuthorization
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot                          Name  Signature
            0    2     0                          this  Lorg/apache/coyote/Request;
            0    2     1  remoteUserNeedsAuthorization  Z
    MethodParameters:
                              Name  Flags
      remoteUserNeedsAuthorization  

  public org.apache.tomcat.util.buf.MessageBytes getAuthType();
    descriptor: ()Lorg/apache/tomcat/util/buf/MessageBytes;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 490
            aload 0 /* this */
            getfield org.apache.coyote.Request.authType:Lorg/apache/tomcat/util/buf/MessageBytes;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public int getAvailable();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 494
            aload 0 /* this */
            getfield org.apache.coyote.Request.available:I
            ireturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public void setAvailable(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // int available
         0: .line 498
            aload 0 /* this */
            iload 1 /* available */
            putfield org.apache.coyote.Request.available:I
         1: .line 499
            return
        end local 1 // int available
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/apache/coyote/Request;
            0    2     1  available  I
    MethodParameters:
           Name  Flags
      available  

  public boolean getSendfile();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 502
            aload 0 /* this */
            getfield org.apache.coyote.Request.sendfile:Z
            ireturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public void setSendfile(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // boolean sendfile
         0: .line 506
            aload 0 /* this */
            iload 1 /* sendfile */
            putfield org.apache.coyote.Request.sendfile:Z
         1: .line 507
            return
        end local 1 // boolean sendfile
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/coyote/Request;
            0    2     1  sendfile  Z
    MethodParameters:
          Name  Flags
      sendfile  

  public boolean isFinished();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 510
            new java.util.concurrent.atomic.AtomicBoolean
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
            astore 1 /* result */
        start local 1 // java.util.concurrent.atomic.AtomicBoolean result
         1: .line 511
            aload 0 /* this */
            getstatic org.apache.coyote.ActionCode.REQUEST_BODY_FULLY_READ:Lorg/apache/coyote/ActionCode;
            aload 1 /* result */
            invokevirtual org.apache.coyote.Request.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
         2: .line 512
            aload 1 /* result */
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
            ireturn
        end local 1 // java.util.concurrent.atomic.AtomicBoolean result
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/apache/coyote/Request;
            1    3     1  result  Ljava/util/concurrent/atomic/AtomicBoolean;

  public boolean getSupportsRelativeRedirects();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 516
            aload 0 /* this */
            invokevirtual org.apache.coyote.Request.protocol:()Lorg/apache/tomcat/util/buf/MessageBytes;
            ldc ""
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.equals:(Ljava/lang/String;)Z
            ifne 1
            aload 0 /* this */
            invokevirtual org.apache.coyote.Request.protocol:()Lorg/apache/tomcat/util/buf/MessageBytes;
            ldc "HTTP/1.0"
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.equals:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 517
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 519
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/coyote/Request;

  public org.apache.coyote.InputBuffer getInputBuffer();
    descriptor: ()Lorg/apache/coyote/InputBuffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 526
            aload 0 /* this */
            getfield org.apache.coyote.Request.inputBuffer:Lorg/apache/coyote/InputBuffer;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public void setInputBuffer(org.apache.coyote.InputBuffer);
    descriptor: (Lorg/apache/coyote/InputBuffer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // org.apache.coyote.InputBuffer inputBuffer
         0: .line 531
            aload 0 /* this */
            aload 1 /* inputBuffer */
            putfield org.apache.coyote.Request.inputBuffer:Lorg/apache/coyote/InputBuffer;
         1: .line 532
            return
        end local 1 // org.apache.coyote.InputBuffer inputBuffer
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/apache/coyote/Request;
            0    2     1  inputBuffer  Lorg/apache/coyote/InputBuffer;
    MethodParameters:
             Name  Flags
      inputBuffer  

  public int doRead(org.apache.tomcat.util.net.ApplicationBufferHandler);
    descriptor: (Lorg/apache/tomcat/util/net/ApplicationBufferHandler;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // org.apache.tomcat.util.net.ApplicationBufferHandler handler
         0: .line 552
            aload 0 /* this */
            invokevirtual org.apache.coyote.Request.getBytesRead:()J
            lconst_0
            lcmp
            ifne 2
            aload 0 /* this */
            getfield org.apache.coyote.Request.response:Lorg/apache/coyote/Response;
            invokevirtual org.apache.coyote.Response.isCommitted:()Z
            ifne 2
         1: .line 553
            aload 0 /* this */
            getstatic org.apache.coyote.ActionCode.ACK:Lorg/apache/coyote/ActionCode;
            getstatic org.apache.coyote.ContinueResponseTiming.ON_REQUEST_BODY_READ:Lorg/apache/coyote/ContinueResponseTiming;
            invokevirtual org.apache.coyote.Request.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
         2: .line 556
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.coyote.Request.inputBuffer:Lorg/apache/coyote/InputBuffer;
            aload 1 /* handler */
            invokeinterface org.apache.coyote.InputBuffer.doRead:(Lorg/apache/tomcat/util/net/ApplicationBufferHandler;)I
            istore 2 /* n */
        start local 2 // int n
         3: .line 557
            iload 2 /* n */
            ifle 5
         4: .line 558
            aload 0 /* this */
            dup
            getfield org.apache.coyote.Request.bytesRead:J
            iload 2 /* n */
            i2l
            ladd
            putfield org.apache.coyote.Request.bytesRead:J
         5: .line 560
      StackMap locals: int
      StackMap stack:
            iload 2 /* n */
            ireturn
        end local 2 // int n
        end local 1 // org.apache.tomcat.util.net.ApplicationBufferHandler handler
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/apache/coyote/Request;
            0    6     1  handler  Lorg/apache/tomcat/util/net/ApplicationBufferHandler;
            3    6     2        n  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      handler  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 568
            new java.lang.StringBuilder
            dup
            ldc "R( "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.apache.coyote.Request.requestURI:()Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public long getStartTime();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 572
            invokestatic java.lang.System.currentTimeMillis:()J
            getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
            invokestatic java.lang.System.nanoTime:()J
            aload 0 /* this */
            getfield org.apache.coyote.Request.startTimeNanos:J
            lsub
            invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
            lsub
            lreturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public void setStartTime(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // long startTime
         0: .line 582
            return
        end local 1 // long startTime
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/apache/coyote/Request;
            0    1     1  startTime  J
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
           Name  Flags
      startTime  

  public long getStartTimeNanos();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 585
            aload 0 /* this */
            getfield org.apache.coyote.Request.startTimeNanos:J
            lreturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public void setStartTimeNanos(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // long startTimeNanos
         0: .line 589
            aload 0 /* this */
            lload 1 /* startTimeNanos */
            putfield org.apache.coyote.Request.startTimeNanos:J
         1: .line 590
            return
        end local 1 // long startTimeNanos
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/apache/coyote/Request;
            0    2     1  startTimeNanos  J
    MethodParameters:
                Name  Flags
      startTimeNanos  

  public final void setNote(int, java.lang.Object);
    descriptor: (ILjava/lang/Object;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.coyote.Request this
        start local 1 // int pos
        start local 2 // java.lang.Object value
         0: .line 614
            aload 0 /* this */
            getfield org.apache.coyote.Request.notes:[Ljava/lang/Object;
            iload 1 /* pos */
            aload 2 /* value */
            aastore
         1: .line 615
            return
        end local 2 // java.lang.Object value
        end local 1 // int pos
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/apache/coyote/Request;
            0    2     1    pos  I
            0    2     2  value  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      pos    
      value  

  public final java.lang.Object getNote(int);
    descriptor: (I)Ljava/lang/Object;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.coyote.Request this
        start local 1 // int pos
         0: .line 619
            aload 0 /* this */
            getfield org.apache.coyote.Request.notes:[Ljava/lang/Object;
            iload 1 /* pos */
            aaload
            areturn
        end local 1 // int pos
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;
            0    1     1   pos  I
    MethodParameters:
      Name  Flags
      pos   

  public void recycle();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 627
            aload 0 /* this */
            lconst_0
            putfield org.apache.coyote.Request.bytesRead:J
         1: .line 629
            aload 0 /* this */
            ldc -1
            putfield org.apache.coyote.Request.contentLength:J
         2: .line 630
            aload 0 /* this */
            aconst_null
            putfield org.apache.coyote.Request.contentTypeMB:Lorg/apache/tomcat/util/buf/MessageBytes;
         3: .line 631
            aload 0 /* this */
            aconst_null
            putfield org.apache.coyote.Request.charset:Ljava/nio/charset/Charset;
         4: .line 632
            aload 0 /* this */
            aconst_null
            putfield org.apache.coyote.Request.characterEncoding:Ljava/lang/String;
         5: .line 633
            aload 0 /* this */
            iconst_0
            putfield org.apache.coyote.Request.expectation:Z
         6: .line 634
            aload 0 /* this */
            getfield org.apache.coyote.Request.headers:Lorg/apache/tomcat/util/http/MimeHeaders;
            invokevirtual org.apache.tomcat.util.http.MimeHeaders.recycle:()V
         7: .line 635
            aload 0 /* this */
            getfield org.apache.coyote.Request.trailerFields:Ljava/util/Map;
            invokeinterface java.util.Map.clear:()V
         8: .line 636
            aload 0 /* this */
            getfield org.apache.coyote.Request.serverNameMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.recycle:()V
         9: .line 637
            aload 0 /* this */
            iconst_m1
            putfield org.apache.coyote.Request.serverPort:I
        10: .line 638
            aload 0 /* this */
            getfield org.apache.coyote.Request.localAddrMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.recycle:()V
        11: .line 639
            aload 0 /* this */
            getfield org.apache.coyote.Request.localNameMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.recycle:()V
        12: .line 640
            aload 0 /* this */
            iconst_m1
            putfield org.apache.coyote.Request.localPort:I
        13: .line 641
            aload 0 /* this */
            getfield org.apache.coyote.Request.remoteAddrMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.recycle:()V
        14: .line 642
            aload 0 /* this */
            getfield org.apache.coyote.Request.remoteHostMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.recycle:()V
        15: .line 643
            aload 0 /* this */
            iconst_m1
            putfield org.apache.coyote.Request.remotePort:I
        16: .line 644
            aload 0 /* this */
            iconst_0
            putfield org.apache.coyote.Request.available:I
        17: .line 645
            aload 0 /* this */
            iconst_1
            putfield org.apache.coyote.Request.sendfile:Z
        18: .line 647
            aload 0 /* this */
            getfield org.apache.coyote.Request.serverCookies:Lorg/apache/tomcat/util/http/ServerCookies;
            invokevirtual org.apache.tomcat.util.http.ServerCookies.recycle:()V
        19: .line 648
            aload 0 /* this */
            getfield org.apache.coyote.Request.parameters:Lorg/apache/tomcat/util/http/Parameters;
            invokevirtual org.apache.tomcat.util.http.Parameters.recycle:()V
        20: .line 649
            aload 0 /* this */
            getfield org.apache.coyote.Request.pathParameters:Ljava/util/Map;
            invokeinterface java.util.Map.clear:()V
        21: .line 651
            aload 0 /* this */
            getfield org.apache.coyote.Request.uriMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.recycle:()V
        22: .line 652
            aload 0 /* this */
            getfield org.apache.coyote.Request.decodedUriMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.recycle:()V
        23: .line 653
            aload 0 /* this */
            getfield org.apache.coyote.Request.queryMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.recycle:()V
        24: .line 654
            aload 0 /* this */
            getfield org.apache.coyote.Request.methodMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.recycle:()V
        25: .line 655
            aload 0 /* this */
            getfield org.apache.coyote.Request.protoMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.recycle:()V
        26: .line 657
            aload 0 /* this */
            getfield org.apache.coyote.Request.schemeMB:Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.recycle:()V
        27: .line 659
            aload 0 /* this */
            getfield org.apache.coyote.Request.remoteUser:Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.recycle:()V
        28: .line 660
            aload 0 /* this */
            iconst_0
            putfield org.apache.coyote.Request.remoteUserNeedsAuthorization:Z
        29: .line 661
            aload 0 /* this */
            getfield org.apache.coyote.Request.authType:Lorg/apache/tomcat/util/buf/MessageBytes;
            invokevirtual org.apache.tomcat.util.buf.MessageBytes.recycle:()V
        30: .line 662
            aload 0 /* this */
            getfield org.apache.coyote.Request.attributes:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.clear:()V
        31: .line 664
            aload 0 /* this */
            aconst_null
            putfield org.apache.coyote.Request.listener:Ljakarta/servlet/ReadListener;
        32: .line 665
            aload 0 /* this */
            getfield org.apache.coyote.Request.allDataReadEventSent:Ljava/util/concurrent/atomic/AtomicBoolean;
            iconst_0
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
        33: .line 667
            aload 0 /* this */
            ldc -1
            putfield org.apache.coyote.Request.startTimeNanos:J
        34: .line 668
            return
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   35     0  this  Lorg/apache/coyote/Request;

  public void updateCounters();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 672
            aload 0 /* this */
            getfield org.apache.coyote.Request.reqProcessorMX:Lorg/apache/coyote/RequestInfo;
            invokevirtual org.apache.coyote.RequestInfo.updateCounters:()V
         1: .line 673
            return
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/coyote/Request;

  public org.apache.coyote.RequestInfo getRequestProcessor();
    descriptor: ()Lorg/apache/coyote/RequestInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 676
            aload 0 /* this */
            getfield org.apache.coyote.Request.reqProcessorMX:Lorg/apache/coyote/RequestInfo;
            areturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public long getBytesRead();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 680
            aload 0 /* this */
            getfield org.apache.coyote.Request.bytesRead:J
            lreturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/coyote/Request;

  public boolean isProcessing();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.coyote.Request this
         0: .line 684
            aload 0 /* this */
            getfield org.apache.coyote.Request.reqProcessorMX:Lorg/apache/coyote/RequestInfo;
            invokevirtual org.apache.coyote.RequestInfo.getStage:()I
            iconst_3
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.apache.coyote.Request this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/coyote/Request;

  private static java.lang.String getCharsetFromContentType(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // java.lang.String contentType
         0: .line 696
            aload 0 /* contentType */
            ifnonnull 2
         1: .line 697
            aconst_null
            areturn
         2: .line 699
      StackMap locals:
      StackMap stack:
            aload 0 /* contentType */
            ldc "charset="
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 1 /* start */
        start local 1 // int start
         3: .line 700
            iload 1 /* start */
            ifge 5
         4: .line 701
            aconst_null
            areturn
         5: .line 703
      StackMap locals: int
      StackMap stack:
            aload 0 /* contentType */
            iload 1 /* start */
            bipush 8
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 2 /* encoding */
        start local 2 // java.lang.String encoding
         6: .line 704
            aload 2 /* encoding */
            bipush 59
            invokevirtual java.lang.String.indexOf:(I)I
            istore 3 /* end */
        start local 3 // int end
         7: .line 705
            iload 3 /* end */
            iflt 9
         8: .line 706
            aload 2 /* encoding */
            iconst_0
            iload 3 /* end */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 2 /* encoding */
         9: .line 708
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 2 /* encoding */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 2 /* encoding */
        10: .line 709
            aload 2 /* encoding */
            invokevirtual java.lang.String.length:()I
            iconst_2
            if_icmple 13
            aload 2 /* encoding */
            ldc "\""
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 13
        11: .line 710
            aload 2 /* encoding */
            ldc "\""
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 13
        12: .line 711
            aload 2 /* encoding */
            iconst_1
            aload 2 /* encoding */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 2 /* encoding */
        13: .line 714
      StackMap locals:
      StackMap stack:
            aload 2 /* encoding */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            areturn
        end local 3 // int end
        end local 2 // java.lang.String encoding
        end local 1 // int start
        end local 0 // java.lang.String contentType
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0  contentType  Ljava/lang/String;
            3   14     1        start  I
            6   14     2     encoding  Ljava/lang/String;
            7   14     3          end  I
    MethodParameters:
             Name  Flags
      contentType  
}
SourceFile: "Request.java"