class org.apache.catalina.core.AsyncContextImpl$RunnableWrapper implements java.lang.Runnable
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.apache.catalina.core.AsyncContextImpl$RunnableWrapper
  super_class: java.lang.Object
{
  private final java.lang.Runnable wrapped;
    descriptor: Ljava/lang/Runnable;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.catalina.Context context;
    descriptor: Lorg/apache/catalina/Context;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  public void <init>(java.lang.Runnable, org.apache.catalina.Context, org.apache.coyote.Request);
    descriptor: (Ljava/lang/Runnable;Lorg/apache/catalina/Context;Lorg/apache/coyote/Request;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.apache.catalina.core.AsyncContextImpl$RunnableWrapper this
        start local 1 // java.lang.Runnable wrapped
        start local 2 // org.apache.catalina.Context ctxt
        start local 3 // org.apache.coyote.Request coyoteRequest
         0: .line 537
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 539
            aload 0 /* this */
            aload 1 /* wrapped */
            putfield org.apache.catalina.core.AsyncContextImpl$RunnableWrapper.wrapped:Ljava/lang/Runnable;
         2: .line 540
            aload 0 /* this */
            aload 2 /* ctxt */
            putfield org.apache.catalina.core.AsyncContextImpl$RunnableWrapper.context:Lorg/apache/catalina/Context;
         3: .line 541
            aload 0 /* this */
            aload 3 /* coyoteRequest */
            putfield org.apache.catalina.core.AsyncContextImpl$RunnableWrapper.coyoteRequest:Lorg/apache/coyote/Request;
         4: .line 542
            return
        end local 3 // org.apache.coyote.Request coyoteRequest
        end local 2 // org.apache.catalina.Context ctxt
        end local 1 // java.lang.Runnable wrapped
        end local 0 // org.apache.catalina.core.AsyncContextImpl$RunnableWrapper this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0           this  Lorg/apache/catalina/core/AsyncContextImpl$RunnableWrapper;
            0    5     1        wrapped  Ljava/lang/Runnable;
            0    5     2           ctxt  Lorg/apache/catalina/Context;
            0    5     3  coyoteRequest  Lorg/apache/coyote/Request;
    MethodParameters:
               Name  Flags
      wrapped        
      ctxt           
      coyoteRequest  

  public void run();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // org.apache.catalina.core.AsyncContextImpl$RunnableWrapper this
         0: .line 546
            aload 0 /* this */
            getfield org.apache.catalina.core.AsyncContextImpl$RunnableWrapper.context:Lorg/apache/catalina/Context;
            getstatic org.apache.catalina.Globals.IS_SECURITY_ENABLED:Z
            aconst_null
            invokeinterface org.apache.catalina.Context.bind:(ZLjava/lang/ClassLoader;)Ljava/lang/ClassLoader;
            astore 1 /* oldCL */
        start local 1 // java.lang.ClassLoader oldCL
         1: .line 548
            aload 0 /* this */
            getfield org.apache.catalina.core.AsyncContextImpl$RunnableWrapper.wrapped:Ljava/lang/Runnable;
            invokeinterface java.lang.Runnable.run:()V
         2: .line 549
            goto 14
      StackMap locals: org.apache.catalina.core.AsyncContextImpl$RunnableWrapper java.lang.ClassLoader
      StackMap stack: java.lang.Throwable
         3: astore 2 /* t */
        start local 2 // java.lang.Throwable t
         4: .line 550
            aload 2 /* t */
            invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
         5: .line 551
            aload 0 /* this */
            getfield org.apache.catalina.core.AsyncContextImpl$RunnableWrapper.context:Lorg/apache/catalina/Context;
            invokeinterface org.apache.catalina.Context.getLogger:()Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.core.AsyncContextImpl.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "asyncContextImpl.asyncRunnableError"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            aload 2 /* t */
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
         6: .line 552
            aload 0 /* this */
            getfield org.apache.catalina.core.AsyncContextImpl$RunnableWrapper.coyoteRequest:Lorg/apache/coyote/Request;
            ldc "jakarta.servlet.error.exception"
            aload 2 /* t */
            invokevirtual org.apache.coyote.Request.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
         7: .line 553
            aload 0 /* this */
            getfield org.apache.catalina.core.AsyncContextImpl$RunnableWrapper.coyoteRequest:Lorg/apache/coyote/Request;
            invokevirtual org.apache.coyote.Request.getResponse:()Lorg/apache/coyote/Response;
            astore 3 /* coyoteResponse */
        start local 3 // org.apache.coyote.Response coyoteResponse
         8: .line 554
            aload 3 /* coyoteResponse */
            sipush 500
            invokevirtual org.apache.coyote.Response.setStatus:(I)V
         9: .line 555
            aload 3 /* coyoteResponse */
            invokevirtual org.apache.coyote.Response.setError:()Z
            pop
        end local 3 // org.apache.coyote.Response coyoteResponse
        end local 2 // java.lang.Throwable t
        10: .line 557
            aload 0 /* this */
            getfield org.apache.catalina.core.AsyncContextImpl$RunnableWrapper.context:Lorg/apache/catalina/Context;
            getstatic org.apache.catalina.Globals.IS_SECURITY_ENABLED:Z
            aload 1 /* oldCL */
            invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
            goto 15
        11: .line 556
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        12: .line 557
            aload 0 /* this */
            getfield org.apache.catalina.core.AsyncContextImpl$RunnableWrapper.context:Lorg/apache/catalina/Context;
            getstatic org.apache.catalina.Globals.IS_SECURITY_ENABLED:Z
            aload 1 /* oldCL */
            invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
        13: .line 558
            aload 4
            athrow
        14: .line 557
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.AsyncContextImpl$RunnableWrapper.context:Lorg/apache/catalina/Context;
            getstatic org.apache.catalina.Globals.IS_SECURITY_ENABLED:Z
            aload 1 /* oldCL */
            invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
        15: .line 563
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.AsyncContextImpl$RunnableWrapper.coyoteRequest:Lorg/apache/coyote/Request;
            getstatic org.apache.coyote.ActionCode.DISPATCH_EXECUTE:Lorg/apache/coyote/ActionCode;
            aconst_null
            invokevirtual org.apache.coyote.Request.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
        16: .line 564
            return
        end local 1 // java.lang.ClassLoader oldCL
        end local 0 // org.apache.catalina.core.AsyncContextImpl$RunnableWrapper this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   17     0            this  Lorg/apache/catalina/core/AsyncContextImpl$RunnableWrapper;
            1   17     1           oldCL  Ljava/lang/ClassLoader;
            4   10     2               t  Ljava/lang/Throwable;
            8   10     3  coyoteResponse  Lorg/apache/coyote/Response;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.Throwable
           1    10      11  any
}
SourceFile: "AsyncContextImpl.java"
NestHost: org.apache.catalina.core.AsyncContextImpl
InnerClasses:
  private RunnableWrapper = org.apache.catalina.core.AsyncContextImpl$RunnableWrapper of org.apache.catalina.core.AsyncContextImpl