public class org.apache.catalina.core.AsyncContextImpl implements jakarta.servlet.AsyncContext, org.apache.coyote.AsyncContextCallback
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.catalina.core.AsyncContextImpl
super_class: java.lang.Object
{
private static final org.apache.juli.logging.Log log;
descriptor: Lorg/apache/juli/logging/Log;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
protected static final org.apache.tomcat.util.res.StringManager sm;
descriptor: Lorg/apache/tomcat/util/res/StringManager;
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
private final java.lang.Object asyncContextLock;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private volatile jakarta.servlet.ServletRequest servletRequest;
descriptor: Ljakarta/servlet/ServletRequest;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile jakarta.servlet.ServletResponse servletResponse;
descriptor: Ljakarta/servlet/ServletResponse;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private final java.util.List<org.apache.catalina.core.AsyncListenerWrapper> listeners;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lorg/apache/catalina/core/AsyncListenerWrapper;>;
private boolean hasOriginalRequestAndResponse;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private volatile java.lang.Runnable dispatch;
descriptor: Ljava/lang/Runnable;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private org.apache.catalina.Context context;
descriptor: Lorg/apache/catalina/Context;
flags: (0x0002) ACC_PRIVATE
private long timeout;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private jakarta.servlet.AsyncEvent event;
descriptor: Ljakarta/servlet/AsyncEvent;
flags: (0x0002) ACC_PRIVATE
private volatile org.apache.catalina.connector.Request request;
descriptor: Lorg/apache/catalina/connector/Request;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/apache/catalina/core/AsyncContextImpl;
invokestatic org.apache.juli.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/juli/logging/Log;
putstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
1: ldc "org.apache.catalina.core"
invokestatic org.apache.tomcat.util.res.StringManager.getManager:(Ljava/lang/String;)Lorg/apache/tomcat/util/res/StringManager;
2: putstatic org.apache.catalina.core.AsyncContextImpl.sm:Lorg/apache/tomcat/util/res/StringManager;
3: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.apache.catalina.connector.Request);
descriptor: (Lorg/apache/catalina/connector/Request;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putfield org.apache.catalina.core.AsyncContextImpl.asyncContextLock:Ljava/lang/Object;
2: aload 0
aconst_null
putfield org.apache.catalina.core.AsyncContextImpl.servletRequest:Ljakarta/servlet/ServletRequest;
3: aload 0
aconst_null
putfield org.apache.catalina.core.AsyncContextImpl.servletResponse:Ljakarta/servlet/ServletResponse;
4: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.apache.catalina.core.AsyncContextImpl.listeners:Ljava/util/List;
5: aload 0
iconst_1
putfield org.apache.catalina.core.AsyncContextImpl.hasOriginalRequestAndResponse:Z
6: aload 0
aconst_null
putfield org.apache.catalina.core.AsyncContextImpl.dispatch:Ljava/lang/Runnable;
7: aload 0
aconst_null
putfield org.apache.catalina.core.AsyncContextImpl.context:Lorg/apache/catalina/Context;
8: aload 0
ldc -1
putfield org.apache.catalina.core.AsyncContextImpl.timeout:J
9: aload 0
aconst_null
putfield org.apache.catalina.core.AsyncContextImpl.event:Ljakarta/servlet/AsyncEvent;
10: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 12
11: aload 0
ldc "Constructor"
invokevirtual org.apache.catalina.core.AsyncContextImpl.logDebug:(Ljava/lang/String;)V
12: StackMap locals: org.apache.catalina.core.AsyncContextImpl org.apache.catalina.connector.Request
StackMap stack:
aload 0
aload 1
putfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
13: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/apache/catalina/core/AsyncContextImpl;
0 14 1 request Lorg/apache/catalina/connector/Request;
MethodParameters:
Name Flags
request
public void complete();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 2
1: aload 0
ldc "complete "
invokevirtual org.apache.catalina.core.AsyncContextImpl.logDebug:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.check:()V
3: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getCoyoteRequest:()Lorg/apache/coyote/Request;
getstatic org.apache.coyote.ActionCode.ASYNC_COMPLETE:Lorg/apache/coyote/ActionCode;
aconst_null
invokevirtual org.apache.coyote.Request.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/catalina/core/AsyncContextImpl;
public void fireOnComplete();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=7, args_size=1
start local 0 0: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 2
1: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.core.AsyncContextImpl.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "asyncContextImpl.fireOnComplete"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
2: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.listeners:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 3: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.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 2
start local 2 4: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 15
StackMap locals: org.apache.catalina.core.AsyncContextImpl java.util.List java.lang.ClassLoader top java.util.Iterator
StackMap stack:
5: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.catalina.core.AsyncListenerWrapper
astore 3
start local 3 6: aload 3
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.event:Ljakarta/servlet/AsyncEvent;
invokevirtual org.apache.catalina.core.AsyncListenerWrapper.fireOnComplete:(Ljakarta/servlet/AsyncEvent;)V
7: goto 15
StackMap locals: org.apache.catalina.core.AsyncContextImpl java.util.List java.lang.ClassLoader org.apache.catalina.core.AsyncListenerWrapper java.util.Iterator
StackMap stack: java.lang.Throwable
8: astore 5
start local 5 9: aload 5
invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
10: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.core.AsyncContextImpl.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "asyncContextImpl.onCompleteError"
iconst_1
anewarray java.lang.Object
dup
iconst_0
11: aload 3
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
12: invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
13: aload 5
14: invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 5 end local 3 15: StackMap locals: org.apache.catalina.core.AsyncContextImpl java.util.List java.lang.ClassLoader top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
16: goto 22
StackMap locals: org.apache.catalina.core.AsyncContextImpl java.util.List java.lang.ClassLoader
StackMap stack: java.lang.Throwable
17: astore 6
18: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.context:Lorg/apache/catalina/Context;
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getRequest:()Ljakarta/servlet/http/HttpServletRequest;
invokeinterface org.apache.catalina.Context.fireRequestDestroyEvent:(Ljakarta/servlet/ServletRequest;)Z
pop
19: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.clearServletRequestResponse:()V
20: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.context:Lorg/apache/catalina/Context;
getstatic org.apache.catalina.Globals.IS_SECURITY_ENABLED:Z
aload 2
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
21: aload 6
athrow
22: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.context:Lorg/apache/catalina/Context;
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getRequest:()Ljakarta/servlet/http/HttpServletRequest;
invokeinterface org.apache.catalina.Context.fireRequestDestroyEvent:(Ljakarta/servlet/ServletRequest;)Z
pop
23: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.clearServletRequestResponse:()V
24: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.context:Lorg/apache/catalina/Context;
getstatic org.apache.catalina.Globals.IS_SECURITY_ENABLED:Z
aload 2
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
25: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lorg/apache/catalina/core/AsyncContextImpl;
3 26 1 listenersCopy Ljava/util/List<Lorg/apache/catalina/core/AsyncListenerWrapper;>;
4 26 2 oldCL Ljava/lang/ClassLoader;
6 15 3 listener Lorg/apache/catalina/core/AsyncListenerWrapper;
9 15 5 t Ljava/lang/Throwable;
Exception table:
from to target type
6 7 8 Class java.lang.Throwable
4 17 17 any
public boolean timeout();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=9, args_size=1
start local 0 0: new java.util.concurrent.atomic.AtomicBoolean
dup
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:()V
astore 1
start local 1 1: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getCoyoteRequest:()Lorg/apache/coyote/Request;
getstatic org.apache.coyote.ActionCode.ASYNC_TIMEOUT:Lorg/apache/coyote/ActionCode;
aload 1
invokevirtual org.apache.coyote.Request.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
2: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.context:Lorg/apache/catalina/Context;
astore 2
start local 2 3: aload 1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 28
4: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 6
5: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.core.AsyncContextImpl.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "asyncContextImpl.fireOnTimeout"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
6: StackMap locals: java.util.concurrent.atomic.AtomicBoolean org.apache.catalina.Context
StackMap stack:
aload 2
iconst_0
aconst_null
invokeinterface org.apache.catalina.Context.bind:(ZLjava/lang/ClassLoader;)Ljava/lang/ClassLoader;
astore 3
start local 3 7: new java.util.ArrayList
dup
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.listeners:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 4
start local 4 8: aload 4
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 19
StackMap locals: org.apache.catalina.core.AsyncContextImpl java.util.concurrent.atomic.AtomicBoolean org.apache.catalina.Context java.lang.ClassLoader java.util.List top java.util.Iterator
StackMap stack:
9: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.catalina.core.AsyncListenerWrapper
astore 5
start local 5 10: aload 5
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.event:Ljakarta/servlet/AsyncEvent;
invokevirtual org.apache.catalina.core.AsyncListenerWrapper.fireOnTimeout:(Ljakarta/servlet/AsyncEvent;)V
11: goto 19
StackMap locals: org.apache.catalina.core.AsyncContextImpl java.util.concurrent.atomic.AtomicBoolean org.apache.catalina.Context java.lang.ClassLoader java.util.List org.apache.catalina.core.AsyncListenerWrapper java.util.Iterator
StackMap stack: java.lang.Throwable
12: astore 7
start local 7 13: aload 7
invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
14: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.core.AsyncContextImpl.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "asyncContextImpl.onTimeoutError"
iconst_1
anewarray java.lang.Object
dup
iconst_0
15: aload 5
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
16: invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
17: aload 7
18: invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 7 end local 5 19: StackMap locals: org.apache.catalina.core.AsyncContextImpl java.util.concurrent.atomic.AtomicBoolean org.apache.catalina.Context java.lang.ClassLoader java.util.List top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
20: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getCoyoteRequest:()Lorg/apache/coyote/Request;
21: getstatic org.apache.coyote.ActionCode.ASYNC_IS_TIMINGOUT:Lorg/apache/coyote/ActionCode;
aload 1
22: invokevirtual org.apache.coyote.Request.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
end local 4 23: goto 27
StackMap locals: org.apache.catalina.core.AsyncContextImpl java.util.concurrent.atomic.AtomicBoolean org.apache.catalina.Context java.lang.ClassLoader
StackMap stack: java.lang.Throwable
24: astore 8
25: aload 2
iconst_0
aload 3
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
26: aload 8
athrow
27: StackMap locals:
StackMap stack:
aload 2
iconst_0
aload 3
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
end local 3 28: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 29
iconst_0
goto 30
StackMap locals:
StackMap stack:
29: iconst_1
StackMap locals:
StackMap stack: int
30: ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lorg/apache/catalina/core/AsyncContextImpl;
1 31 1 result Ljava/util/concurrent/atomic/AtomicBoolean;
3 31 2 context Lorg/apache/catalina/Context;
7 28 3 oldCL Ljava/lang/ClassLoader;
8 23 4 listenersCopy Ljava/util/List<Lorg/apache/catalina/core/AsyncListenerWrapper;>;
10 19 5 listener Lorg/apache/catalina/core/AsyncListenerWrapper;
13 19 7 t Ljava/lang/Throwable;
Exception table:
from to target type
10 11 12 Class java.lang.Throwable
7 24 24 any
public void dispatch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.check:()V
1: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.getRequest:()Ljakarta/servlet/ServletRequest;
astore 3
start local 3 2: aload 3
instanceof jakarta.servlet.http.HttpServletRequest
ifeq 7
3: aload 3
checkcast jakarta.servlet.http.HttpServletRequest
astore 4
start local 4 4: aload 4
invokeinterface jakarta.servlet.http.HttpServletRequest.getRequestURI:()Ljava/lang/String;
astore 1
start local 1 5: aload 4
invokeinterface jakarta.servlet.http.HttpServletRequest.getContextPath:()Ljava/lang/String;
astore 2
end local 4 start local 2 6: goto 9
end local 2 end local 1 7: StackMap locals: org.apache.catalina.core.AsyncContextImpl top top jakarta.servlet.ServletRequest
StackMap stack:
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getRequestURI:()Ljava/lang/String;
astore 1
start local 1 8: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getContextPath:()Ljava/lang/String;
astore 2
start local 2 9: StackMap locals: org.apache.catalina.core.AsyncContextImpl java.lang.String java.lang.String jakarta.servlet.ServletRequest
StackMap stack:
aload 2
invokevirtual java.lang.String.length:()I
iconst_1
if_icmple 11
10: aload 1
aload 2
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1
11: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.context:Lorg/apache/catalina/Context;
invokeinterface org.apache.catalina.Context.getDispatchersUseEncodedPaths:()Z
ifne 13
12: aload 1
getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
invokestatic org.apache.tomcat.util.buf.UDecoder.URLDecode:(Ljava/lang/String;Ljava/nio/charset/Charset;)Ljava/lang/String;
astore 1
13: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.apache.catalina.core.AsyncContextImpl.dispatch:(Ljava/lang/String;)V
14: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/apache/catalina/core/AsyncContextImpl;
5 7 1 path Ljava/lang/String;
8 15 1 path Ljava/lang/String;
6 7 2 cpath Ljava/lang/String;
9 15 2 cpath Ljava/lang/String;
2 15 3 servletRequest Ljakarta/servlet/ServletRequest;
4 6 4 sr Ljakarta/servlet/http/HttpServletRequest;
public void dispatch(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.check:()V
1: aload 0
aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.getRequest:()Ljakarta/servlet/ServletRequest;
invokeinterface jakarta.servlet.ServletRequest.getServletContext:()Ljakarta/servlet/ServletContext;
aload 1
invokevirtual org.apache.catalina.core.AsyncContextImpl.dispatch:(Ljakarta/servlet/ServletContext;Ljava/lang/String;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/catalina/core/AsyncContextImpl;
0 3 1 path Ljava/lang/String;
MethodParameters:
Name Flags
path
public void dispatch(jakarta.servlet.ServletContext, java.lang.String);
descriptor: (Ljakarta/servlet/ServletContext;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.asyncContextLock:Ljava/lang/Object;
dup
astore 3
monitorenter
1: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 3
2: aload 0
ldc "dispatch "
invokevirtual org.apache.catalina.core.AsyncContextImpl.logDebug:(Ljava/lang/String;)V
3: StackMap locals: java.lang.Object
StackMap stack:
aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.check:()V
4: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.dispatch:Ljava/lang/Runnable;
ifnull 8
5: new java.lang.IllegalStateException
dup
6: getstatic org.apache.catalina.core.AsyncContextImpl.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "asyncContextImpl.dispatchingStarted"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
7: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
ldc "jakarta.servlet.async.request_uri"
invokevirtual org.apache.catalina.connector.Request.getAttribute:(Ljava/lang/String;)Ljava/lang/Object;
ifnonnull 14
9: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
ldc "jakarta.servlet.async.request_uri"
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getRequestURI:()Ljava/lang/String;
invokevirtual org.apache.catalina.connector.Request.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
10: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
ldc "jakarta.servlet.async.context_path"
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getContextPath:()Ljava/lang/String;
invokevirtual org.apache.catalina.connector.Request.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
11: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
ldc "jakarta.servlet.async.servlet_path"
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getServletPath:()Ljava/lang/String;
invokevirtual org.apache.catalina.connector.Request.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
12: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
ldc "jakarta.servlet.async.path_info"
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getPathInfo:()Ljava/lang/String;
invokevirtual org.apache.catalina.connector.Request.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
13: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
ldc "jakarta.servlet.async.query_string"
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getQueryString:()Ljava/lang/String;
invokevirtual org.apache.catalina.connector.Request.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
14: StackMap locals:
StackMap stack:
aload 1
aload 2
invokeinterface jakarta.servlet.ServletContext.getRequestDispatcher:(Ljava/lang/String;)Ljakarta/servlet/RequestDispatcher;
astore 4
start local 4 15: aload 4
instanceof org.apache.catalina.AsyncDispatcher
ifne 19
16: new java.lang.UnsupportedOperationException
dup
17: getstatic org.apache.catalina.core.AsyncContextImpl.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "asyncContextImpl.noAsyncDispatcher"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
18: invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
19: StackMap locals: jakarta.servlet.RequestDispatcher
StackMap stack:
aload 4
checkcast org.apache.catalina.AsyncDispatcher
20: astore 5
start local 5 21: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.getRequest:()Ljakarta/servlet/ServletRequest;
astore 6
start local 6 22: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.getResponse:()Ljakarta/servlet/ServletResponse;
astore 7
start local 7 23: aload 0
new org.apache.catalina.core.AsyncContextImpl$AsyncRunnable
dup
24: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
aload 5
aload 6
aload 7
invokespecial org.apache.catalina.core.AsyncContextImpl$AsyncRunnable.<init>:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/AsyncDispatcher;Ljakarta/servlet/ServletRequest;Ljakarta/servlet/ServletResponse;)V
25: putfield org.apache.catalina.core.AsyncContextImpl.dispatch:Ljava/lang/Runnable;
26: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getCoyoteRequest:()Lorg/apache/coyote/Request;
getstatic org.apache.coyote.ActionCode.ASYNC_DISPATCH:Lorg/apache/coyote/ActionCode;
aconst_null
invokevirtual org.apache.coyote.Request.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
27: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.clearServletRequestResponse:()V
end local 7 end local 6 end local 5 end local 4 28: aload 3
monitorexit
29: goto 32
StackMap locals: org.apache.catalina.core.AsyncContextImpl jakarta.servlet.ServletContext java.lang.String java.lang.Object
StackMap stack: java.lang.Throwable
30: aload 3
monitorexit
31: athrow
32: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Lorg/apache/catalina/core/AsyncContextImpl;
0 33 1 servletContext Ljakarta/servlet/ServletContext;
0 33 2 path Ljava/lang/String;
15 28 4 requestDispatcher Ljakarta/servlet/RequestDispatcher;
21 28 5 applicationDispatcher Lorg/apache/catalina/AsyncDispatcher;
22 28 6 servletRequest Ljakarta/servlet/ServletRequest;
23 28 7 servletResponse Ljakarta/servlet/ServletResponse;
Exception table:
from to target type
1 29 30 any
30 31 30 any
MethodParameters:
Name Flags
servletContext
path
public jakarta.servlet.ServletRequest getRequest();
descriptor: ()Ljakarta/servlet/ServletRequest;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.check:()V
1: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.servletRequest:Ljakarta/servlet/ServletRequest;
ifnonnull 5
2: new java.lang.IllegalStateException
dup
3: getstatic org.apache.catalina.core.AsyncContextImpl.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "asyncContextImpl.request.ise"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
4: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.servletRequest:Ljakarta/servlet/ServletRequest;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/catalina/core/AsyncContextImpl;
public jakarta.servlet.ServletResponse getResponse();
descriptor: ()Ljakarta/servlet/ServletResponse;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.check:()V
1: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.servletResponse:Ljakarta/servlet/ServletResponse;
ifnonnull 5
2: new java.lang.IllegalStateException
dup
3: getstatic org.apache.catalina.core.AsyncContextImpl.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "asyncContextImpl.response.ise"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
4: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.servletResponse:Ljakarta/servlet/ServletResponse;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/catalina/core/AsyncContextImpl;
public void start(java.lang.Runnable);
descriptor: (Ljava/lang/Runnable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 2
1: aload 0
ldc "start "
invokevirtual org.apache.catalina.core.AsyncContextImpl.logDebug:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.check:()V
3: new org.apache.catalina.core.AsyncContextImpl$RunnableWrapper
dup
aload 1
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.context:Lorg/apache/catalina/Context;
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getCoyoteRequest:()Lorg/apache/coyote/Request;
invokespecial org.apache.catalina.core.AsyncContextImpl$RunnableWrapper.<init>:(Ljava/lang/Runnable;Lorg/apache/catalina/Context;Lorg/apache/coyote/Request;)V
astore 2
start local 2 4: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getCoyoteRequest:()Lorg/apache/coyote/Request;
getstatic org.apache.coyote.ActionCode.ASYNC_RUN:Lorg/apache/coyote/ActionCode;
aload 2
invokevirtual org.apache.coyote.Request.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/catalina/core/AsyncContextImpl;
0 6 1 run Ljava/lang/Runnable;
4 6 2 wrapper Ljava/lang/Runnable;
MethodParameters:
Name Flags
run final
public void addListener(jakarta.servlet.AsyncListener);
descriptor: (Ljakarta/servlet/AsyncListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.check:()V
1: new org.apache.catalina.core.AsyncListenerWrapper
dup
invokespecial org.apache.catalina.core.AsyncListenerWrapper.<init>:()V
astore 2
start local 2 2: aload 2
aload 1
invokevirtual org.apache.catalina.core.AsyncListenerWrapper.setListener:(Ljakarta/servlet/AsyncListener;)V
3: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.listeners:Ljava/util/List;
aload 2
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/catalina/core/AsyncContextImpl;
0 5 1 listener Ljakarta/servlet/AsyncListener;
2 5 2 wrapper Lorg/apache/catalina/core/AsyncListenerWrapper;
MethodParameters:
Name Flags
listener
public void addListener(jakarta.servlet.AsyncListener, jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse);
descriptor: (Ljakarta/servlet/AsyncListener;Ljakarta/servlet/ServletRequest;Ljakarta/servlet/ServletResponse;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.check:()V
1: new org.apache.catalina.core.AsyncListenerWrapper
dup
invokespecial org.apache.catalina.core.AsyncListenerWrapper.<init>:()V
astore 4
start local 4 2: aload 4
aload 1
invokevirtual org.apache.catalina.core.AsyncListenerWrapper.setListener:(Ljakarta/servlet/AsyncListener;)V
3: aload 4
aload 2
invokevirtual org.apache.catalina.core.AsyncListenerWrapper.setServletRequest:(Ljakarta/servlet/ServletRequest;)V
4: aload 4
aload 3
invokevirtual org.apache.catalina.core.AsyncListenerWrapper.setServletResponse:(Ljakarta/servlet/ServletResponse;)V
5: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.listeners:Ljava/util/List;
aload 4
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
6: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/catalina/core/AsyncContextImpl;
0 7 1 listener Ljakarta/servlet/AsyncListener;
0 7 2 servletRequest Ljakarta/servlet/ServletRequest;
0 7 3 servletResponse Ljakarta/servlet/ServletResponse;
2 7 4 wrapper Lorg/apache/catalina/core/AsyncListenerWrapper;
MethodParameters:
Name Flags
listener
servletRequest
servletResponse
public <T extends jakarta.servlet.AsyncListener> T createListener(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljakarta/servlet/AsyncListener;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.check:()V
1: aconst_null
astore 2
start local 2 2: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.context:Lorg/apache/catalina/Context;
invokeinterface org.apache.catalina.Context.getInstanceManager:()Lorg/apache/tomcat/InstanceManager;
3: aload 1
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aload 1
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
4: invokeinterface org.apache.tomcat.InstanceManager.newInstance:(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Object;
checkcast jakarta.servlet.AsyncListener
astore 2
5: goto 13
StackMap locals: org.apache.catalina.core.AsyncContextImpl java.lang.Class jakarta.servlet.AsyncListener
StackMap stack: java.lang.Exception
6: astore 3
start local 3 7: new jakarta.servlet.ServletException
dup
aload 3
invokespecial jakarta.servlet.ServletException.<init>:(Ljava/lang/Throwable;)V
astore 4
start local 4 8: aload 4
athrow
end local 4 end local 3 9: StackMap locals:
StackMap stack: java.lang.Exception
astore 3
start local 3 10: aload 3
invokevirtual java.lang.Exception.getCause:()Ljava/lang/Throwable;
invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
11: new jakarta.servlet.ServletException
dup
aload 3
invokespecial jakarta.servlet.ServletException.<init>:(Ljava/lang/Throwable;)V
astore 4
start local 4 12: aload 4
athrow
end local 4 end local 3 13: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/apache/catalina/core/AsyncContextImpl;
0 14 1 clazz Ljava/lang/Class<TT;>;
2 14 2 listener TT;
7 9 3 e Ljava/lang/Exception;
8 9 4 se Ljakarta/servlet/ServletException;
10 13 3 e Ljava/lang/Exception;
12 13 4 se Ljakarta/servlet/ServletException;
Exception table:
from to target type
2 5 6 Class java.lang.ReflectiveOperationException
2 5 6 Class javax.naming.NamingException
2 5 9 Class java.lang.Exception
Exceptions:
throws jakarta.servlet.ServletException
Signature: <T::Ljakarta/servlet/AsyncListener;>(Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
clazz
public void recycle();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 2
1: aload 0
ldc "recycle "
invokevirtual org.apache.catalina.core.AsyncContextImpl.logDebug:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.apache.catalina.core.AsyncContextImpl.context:Lorg/apache/catalina/Context;
3: aload 0
aconst_null
putfield org.apache.catalina.core.AsyncContextImpl.dispatch:Ljava/lang/Runnable;
4: aload 0
aconst_null
putfield org.apache.catalina.core.AsyncContextImpl.event:Ljakarta/servlet/AsyncEvent;
5: aload 0
iconst_1
putfield org.apache.catalina.core.AsyncContextImpl.hasOriginalRequestAndResponse:Z
6: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.listeners:Ljava/util/List;
invokeinterface java.util.List.clear:()V
7: aload 0
aconst_null
putfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
8: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.clearServletRequestResponse:()V
9: aload 0
ldc -1
putfield org.apache.catalina.core.AsyncContextImpl.timeout:J
10: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/apache/catalina/core/AsyncContextImpl;
private void clearServletRequestResponse();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aconst_null
putfield org.apache.catalina.core.AsyncContextImpl.servletRequest:Ljakarta/servlet/ServletRequest;
1: aload 0
aconst_null
putfield org.apache.catalina.core.AsyncContextImpl.servletResponse:Ljakarta/servlet/ServletResponse;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/catalina/core/AsyncContextImpl;
public boolean isStarted();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: new java.util.concurrent.atomic.AtomicBoolean
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
astore 1
start local 1 1: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getCoyoteRequest:()Lorg/apache/coyote/Request;
2: getstatic org.apache.coyote.ActionCode.ASYNC_IS_STARTED:Lorg/apache/coyote/ActionCode;
aload 1
3: invokevirtual org.apache.coyote.Request.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
4: aload 1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/catalina/core/AsyncContextImpl;
1 5 1 result Ljava/util/concurrent/atomic/AtomicBoolean;
public void setStarted(org.apache.catalina.Context, jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, boolean);
descriptor: (Lorg/apache/catalina/Context;Ljakarta/servlet/ServletRequest;Ljakarta/servlet/ServletResponse;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=10, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.asyncContextLock:Ljava/lang/Object;
dup
astore 5
monitorenter
1: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getCoyoteRequest:()Lorg/apache/coyote/Request;
2: getstatic org.apache.coyote.ActionCode.ASYNC_START:Lorg/apache/coyote/ActionCode;
aload 0
3: invokevirtual org.apache.coyote.Request.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
4: aload 0
aload 1
putfield org.apache.catalina.core.AsyncContextImpl.context:Lorg/apache/catalina/Context;
5: aload 1
invokeinterface org.apache.catalina.Context.incrementInProgressAsyncCount:()V
6: aload 0
aload 2
putfield org.apache.catalina.core.AsyncContextImpl.servletRequest:Ljakarta/servlet/ServletRequest;
7: aload 0
aload 3
putfield org.apache.catalina.core.AsyncContextImpl.servletResponse:Ljakarta/servlet/ServletResponse;
8: aload 0
iload 4
putfield org.apache.catalina.core.AsyncContextImpl.hasOriginalRequestAndResponse:Z
9: aload 0
new jakarta.servlet.AsyncEvent
dup
aload 0
aload 2
aload 3
invokespecial jakarta.servlet.AsyncEvent.<init>:(Ljakarta/servlet/AsyncContext;Ljakarta/servlet/ServletRequest;Ljakarta/servlet/ServletResponse;)V
putfield org.apache.catalina.core.AsyncContextImpl.event:Ljakarta/servlet/AsyncEvent;
10: new java.util.ArrayList
dup
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.listeners:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 6
start local 6 11: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.listeners:Ljava/util/List;
invokeinterface java.util.List.clear:()V
12: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 14
13: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.core.AsyncContextImpl.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "asyncContextImpl.fireOnStartAsync"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
14: StackMap locals: java.lang.Object java.util.List
StackMap stack:
aload 6
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 8
goto 25
StackMap locals: org.apache.catalina.core.AsyncContextImpl org.apache.catalina.Context jakarta.servlet.ServletRequest jakarta.servlet.ServletResponse int java.lang.Object java.util.List top java.util.Iterator
StackMap stack:
15: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.catalina.core.AsyncListenerWrapper
astore 7
start local 7 16: aload 7
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.event:Ljakarta/servlet/AsyncEvent;
invokevirtual org.apache.catalina.core.AsyncListenerWrapper.fireOnStartAsync:(Ljakarta/servlet/AsyncEvent;)V
17: goto 25
StackMap locals: org.apache.catalina.core.AsyncContextImpl org.apache.catalina.Context jakarta.servlet.ServletRequest jakarta.servlet.ServletResponse int java.lang.Object java.util.List org.apache.catalina.core.AsyncListenerWrapper java.util.Iterator
StackMap stack: java.lang.Throwable
18: astore 9
start local 9 19: aload 9
invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
20: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.core.AsyncContextImpl.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "asyncContextImpl.onStartAsyncError"
iconst_1
anewarray java.lang.Object
dup
iconst_0
21: aload 7
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
22: invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
23: aload 9
24: invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 9 end local 7 25: StackMap locals: org.apache.catalina.core.AsyncContextImpl org.apache.catalina.Context jakarta.servlet.ServletRequest jakarta.servlet.ServletResponse int java.lang.Object java.util.List top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
end local 6 26: aload 5
monitorexit
27: goto 30
StackMap locals: org.apache.catalina.core.AsyncContextImpl org.apache.catalina.Context jakarta.servlet.ServletRequest jakarta.servlet.ServletResponse int java.lang.Object
StackMap stack: java.lang.Throwable
28: aload 5
monitorexit
29: athrow
30: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lorg/apache/catalina/core/AsyncContextImpl;
0 31 1 context Lorg/apache/catalina/Context;
0 31 2 request Ljakarta/servlet/ServletRequest;
0 31 3 response Ljakarta/servlet/ServletResponse;
0 31 4 originalRequestResponse Z
11 26 6 listenersCopy Ljava/util/List<Lorg/apache/catalina/core/AsyncListenerWrapper;>;
16 25 7 listener Lorg/apache/catalina/core/AsyncListenerWrapper;
19 25 9 t Ljava/lang/Throwable;
Exception table:
from to target type
16 17 18 Class java.lang.Throwable
1 27 28 any
28 29 28 any
MethodParameters:
Name Flags
context
request
response
originalRequestResponse
public boolean hasOriginalRequestAndResponse();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.check:()V
1: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.hasOriginalRequestAndResponse:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/catalina/core/AsyncContextImpl;
protected void doInternalDispatch();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=1
start local 0 0: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 2
1: aload 0
ldc "intDispatch"
invokevirtual org.apache.catalina.core.AsyncContextImpl.logDebug:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.dispatch:Ljava/lang/Runnable;
astore 1
start local 1 3: aload 0
aconst_null
putfield org.apache.catalina.core.AsyncContextImpl.dispatch:Ljava/lang/Runnable;
4: aload 1
invokeinterface java.lang.Runnable.run:()V
5: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.isAsync:()Z
ifne 14
6: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.fireOnComplete:()V
end local 1 7: goto 14
StackMap locals:
StackMap stack: java.lang.RuntimeException
8: astore 1
start local 1 9: aload 1
invokevirtual java.lang.RuntimeException.getCause:()Ljava/lang/Throwable;
instanceof jakarta.servlet.ServletException
ifeq 11
10: aload 1
invokevirtual java.lang.RuntimeException.getCause:()Ljava/lang/Throwable;
checkcast jakarta.servlet.ServletException
athrow
11: StackMap locals: java.lang.RuntimeException
StackMap stack:
aload 1
invokevirtual java.lang.RuntimeException.getCause:()Ljava/lang/Throwable;
instanceof java.io.IOException
ifeq 13
12: aload 1
invokevirtual java.lang.RuntimeException.getCause:()Ljava/lang/Throwable;
checkcast java.io.IOException
athrow
13: StackMap locals:
StackMap stack:
new jakarta.servlet.ServletException
dup
aload 1
invokespecial jakarta.servlet.ServletException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 1 14: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/apache/catalina/core/AsyncContextImpl;
3 7 1 runnable Ljava/lang/Runnable;
9 14 1 x Ljava/lang/RuntimeException;
Exception table:
from to target type
2 7 8 Class java.lang.RuntimeException
Exceptions:
throws jakarta.servlet.ServletException, java.io.IOException
public long getTimeout();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.check:()V
1: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.timeout:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/catalina/core/AsyncContextImpl;
public void setTimeout(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.check:()V
1: aload 0
lload 1
putfield org.apache.catalina.core.AsyncContextImpl.timeout:J
2: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getCoyoteRequest:()Lorg/apache/coyote/Request;
getstatic org.apache.coyote.ActionCode.ASYNC_SETTIMEOUT:Lorg/apache/coyote/ActionCode;
3: lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
4: invokevirtual org.apache.coyote.Request.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/catalina/core/AsyncContextImpl;
0 6 1 timeout J
MethodParameters:
Name Flags
timeout
public boolean isAvailable();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.context:Lorg/apache/catalina/Context;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: iconst_0
ireturn
3: StackMap locals: org.apache.catalina.Context
StackMap stack:
aload 1
invokeinterface org.apache.catalina.Context.getState:()Lorg/apache/catalina/LifecycleState;
invokevirtual org.apache.catalina.LifecycleState.isAvailable:()Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/catalina/core/AsyncContextImpl;
1 4 1 context Lorg/apache/catalina/Context;
public void setErrorState(java.lang.Throwable, boolean);
descriptor: (Ljava/lang/Throwable;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 1
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
ldc "jakarta.servlet.error.exception"
aload 1
invokevirtual org.apache.catalina.connector.Request.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
1: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getCoyoteRequest:()Lorg/apache/coyote/Request;
getstatic org.apache.coyote.ActionCode.ASYNC_ERROR:Lorg/apache/coyote/ActionCode;
aconst_null
invokevirtual org.apache.coyote.Request.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
2: iload 2
ifeq 21
3: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 5
4: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.core.AsyncContextImpl.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "asyncContextImpl.fireOnError"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
5: StackMap locals:
StackMap stack:
new jakarta.servlet.AsyncEvent
dup
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.event:Ljakarta/servlet/AsyncEvent;
invokevirtual jakarta.servlet.AsyncEvent.getAsyncContext:()Ljakarta/servlet/AsyncContext;
6: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.event:Ljakarta/servlet/AsyncEvent;
invokevirtual jakarta.servlet.AsyncEvent.getSuppliedRequest:()Ljakarta/servlet/ServletRequest;
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.event:Ljakarta/servlet/AsyncEvent;
invokevirtual jakarta.servlet.AsyncEvent.getSuppliedResponse:()Ljakarta/servlet/ServletResponse;
aload 1
7: invokespecial jakarta.servlet.AsyncEvent.<init>:(Ljakarta/servlet/AsyncContext;Ljakarta/servlet/ServletRequest;Ljakarta/servlet/ServletResponse;Ljava/lang/Throwable;)V
astore 3
start local 3 8: new java.util.ArrayList
dup
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.listeners:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 4
start local 4 9: aload 4
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 20
StackMap locals: org.apache.catalina.core.AsyncContextImpl java.lang.Throwable int jakarta.servlet.AsyncEvent java.util.List top java.util.Iterator
StackMap stack:
10: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.catalina.core.AsyncListenerWrapper
astore 5
start local 5 11: aload 5
aload 3
invokevirtual org.apache.catalina.core.AsyncListenerWrapper.fireOnError:(Ljakarta/servlet/AsyncEvent;)V
12: goto 20
StackMap locals: org.apache.catalina.core.AsyncContextImpl java.lang.Throwable int jakarta.servlet.AsyncEvent java.util.List org.apache.catalina.core.AsyncListenerWrapper java.util.Iterator
StackMap stack: java.lang.Throwable
13: astore 7
start local 7 14: aload 7
invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
15: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.core.AsyncContextImpl.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "asyncContextImpl.onErrorError"
iconst_1
anewarray java.lang.Object
dup
iconst_0
16: aload 5
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
17: invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
18: aload 7
19: invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 7 end local 5 20: StackMap locals: org.apache.catalina.core.AsyncContextImpl java.lang.Throwable int jakarta.servlet.AsyncEvent java.util.List top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 10
end local 4 end local 3 21: StackMap locals: org.apache.catalina.core.AsyncContextImpl java.lang.Throwable int
StackMap stack:
new java.util.concurrent.atomic.AtomicBoolean
dup
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:()V
astore 3
start local 3 22: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getCoyoteRequest:()Lorg/apache/coyote/Request;
getstatic org.apache.coyote.ActionCode.ASYNC_IS_ERROR:Lorg/apache/coyote/ActionCode;
aload 3
invokevirtual org.apache.coyote.Request.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
23: aload 3
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 40
24: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.servletResponse:Ljakarta/servlet/ServletResponse;
astore 4
start local 4 25: aload 4
instanceof jakarta.servlet.http.HttpServletResponse
ifeq 29
26: aload 4
checkcast jakarta.servlet.http.HttpServletResponse
27: sipush 500
28: invokeinterface jakarta.servlet.http.HttpServletResponse.setStatus:(I)V
29: StackMap locals: java.util.concurrent.atomic.AtomicBoolean jakarta.servlet.ServletResponse
StackMap stack:
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.context:Lorg/apache/catalina/Context;
invokeinterface org.apache.catalina.Context.getParent:()Lorg/apache/catalina/Container;
checkcast org.apache.catalina.Host
astore 5
start local 5 30: aload 5
invokeinterface org.apache.catalina.Host.getPipeline:()Lorg/apache/catalina/Pipeline;
invokeinterface org.apache.catalina.Pipeline.getBasic:()Lorg/apache/catalina/Valve;
astore 6
start local 6 31: aload 6
instanceof org.apache.catalina.core.StandardHostValve
ifeq 35
32: aload 6
checkcast org.apache.catalina.core.StandardHostValve
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
33: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getResponse:()Lorg/apache/catalina/connector/Response;
aload 1
34: invokevirtual org.apache.catalina.core.StandardHostValve.throwable:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;Ljava/lang/Throwable;)V
35: StackMap locals: org.apache.catalina.Host org.apache.catalina.Valve
StackMap stack:
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getCoyoteRequest:()Lorg/apache/coyote/Request;
36: getstatic org.apache.coyote.ActionCode.ASYNC_IS_ERROR:Lorg/apache/coyote/ActionCode;
aload 3
37: invokevirtual org.apache.coyote.Request.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
38: aload 3
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 40
39: aload 0
invokevirtual org.apache.catalina.core.AsyncContextImpl.complete:()V
end local 6 end local 5 end local 4 40: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 41 0 this Lorg/apache/catalina/core/AsyncContextImpl;
0 41 1 t Ljava/lang/Throwable;
0 41 2 fireOnError Z
8 21 3 errorEvent Ljakarta/servlet/AsyncEvent;
9 21 4 listenersCopy Ljava/util/List<Lorg/apache/catalina/core/AsyncListenerWrapper;>;
11 20 5 listener Lorg/apache/catalina/core/AsyncListenerWrapper;
14 20 7 t2 Ljava/lang/Throwable;
22 41 3 result Ljava/util/concurrent/atomic/AtomicBoolean;
25 40 4 servletResponse Ljakarta/servlet/ServletResponse;
30 40 5 host Lorg/apache/catalina/Host;
31 40 6 stdHostValve Lorg/apache/catalina/Valve;
Exception table:
from to target type
11 12 13 Class java.lang.Throwable
MethodParameters:
Name Flags
t
fireOnError
public void incrementInProgressAsyncCount();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.context:Lorg/apache/catalina/Context;
invokeinterface org.apache.catalina.Context.incrementInProgressAsyncCount:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/catalina/core/AsyncContextImpl;
public void decrementInProgressAsyncCount();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.context:Lorg/apache/catalina/Context;
invokeinterface org.apache.catalina.Context.decrementInProgressAsyncCount:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/catalina/core/AsyncContextImpl;
private void logDebug(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=10, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 6
start local 6 1: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
ifnonnull 8
2: ldc "null"
astore 2
start local 2 3: ldc "null"
astore 3
start local 3 4: ldc "null"
astore 4
start local 4 5: ldc "-"
astore 5
start local 5 6: aload 6
ldc "N/A"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
7: goto 27
end local 5 end local 4 end local 3 end local 2 8: StackMap locals: org.apache.catalina.core.AsyncContextImpl java.lang.String top top top top java.lang.StringBuilder
StackMap stack:
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual java.lang.Object.hashCode:()I
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
astore 2
start local 2 9: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getCoyoteRequest:()Lorg/apache/coyote/Request;
astore 7
start local 7 10: aload 7
ifnonnull 15
11: ldc "null"
astore 3
start local 3 12: ldc "null"
astore 4
start local 4 13: ldc "-"
astore 5
start local 5 14: goto 23
end local 5 end local 4 end local 3 15: StackMap locals: org.apache.catalina.core.AsyncContextImpl java.lang.String java.lang.String top top top java.lang.StringBuilder org.apache.coyote.Request
StackMap stack:
aload 7
invokevirtual java.lang.Object.hashCode:()I
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
astore 3
start local 3 16: aload 7
invokevirtual org.apache.coyote.Request.getRequestProcessor:()Lorg/apache/coyote/RequestInfo;
astore 8
start local 8 17: aload 8
ifnonnull 21
18: ldc "null"
astore 4
start local 4 19: ldc "-"
astore 5
start local 5 20: goto 23
end local 5 end local 4 21: StackMap locals: org.apache.catalina.core.AsyncContextImpl java.lang.String java.lang.String java.lang.String top top java.lang.StringBuilder org.apache.coyote.Request org.apache.coyote.RequestInfo
StackMap stack:
aload 8
invokevirtual java.lang.Object.hashCode:()I
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
astore 4
start local 4 22: aload 8
invokevirtual org.apache.coyote.RequestInfo.getStage:()I
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
astore 5
end local 8 start local 5 23: StackMap locals: org.apache.catalina.core.AsyncContextImpl java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.StringBuilder org.apache.coyote.Request
StackMap stack:
aload 6
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getRequestURI:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
24: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getQueryString:()Ljava/lang/String;
ifnull 27
25: aload 6
bipush 63
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
26: aload 6
aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getQueryString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 7 27: StackMap locals:
StackMap stack:
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.getName:()Ljava/lang/String;
astore 7
start local 7 28: aload 7
invokevirtual java.lang.String.length:()I
istore 8
start local 8 29: iload 8
bipush 20
if_icmple 31
30: aload 7
iload 8
bipush 20
isub
iload 8
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 7
31: StackMap locals: java.lang.String int
StackMap stack:
ldc "Req: %1$8s CReq: %2$8s RP: %3$8s Stage: %4$s Thread: %5$20s State: %6$20s Method: %7$11s URI: %8$s"
bipush 8
anewarray java.lang.Object
dup
iconst_0
32: aload 2
aastore
dup
iconst_1
aload 3
aastore
dup
iconst_2
aload 4
aastore
dup
iconst_3
aload 5
aastore
dup
iconst_4
33: aload 7
aastore
dup
iconst_5
ldc "N/A"
aastore
dup
bipush 6
aload 1
aastore
dup
bipush 7
aload 6
aastore
34: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 9
start local 9 35: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isTraceEnabled:()Z
ifeq 38
36: getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
aload 9
new org.apache.catalina.core.AsyncContextImpl$DebugException
dup
invokespecial org.apache.catalina.core.AsyncContextImpl$DebugException.<init>:()V
invokeinterface org.apache.juli.logging.Log.trace:(Ljava/lang/Object;Ljava/lang/Throwable;)V
37: goto 39
38: StackMap locals: java.lang.String
StackMap stack:
getstatic org.apache.catalina.core.AsyncContextImpl.log:Lorg/apache/juli/logging/Log;
aload 9
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
39: StackMap locals:
StackMap stack:
return
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 this Lorg/apache/catalina/core/AsyncContextImpl;
0 40 1 method Ljava/lang/String;
3 8 2 rHashCode Ljava/lang/String;
9 40 2 rHashCode Ljava/lang/String;
4 8 3 crHashCode Ljava/lang/String;
12 15 3 crHashCode Ljava/lang/String;
16 40 3 crHashCode Ljava/lang/String;
5 8 4 rpHashCode Ljava/lang/String;
13 15 4 rpHashCode Ljava/lang/String;
19 21 4 rpHashCode Ljava/lang/String;
22 40 4 rpHashCode Ljava/lang/String;
6 8 5 stage Ljava/lang/String;
14 15 5 stage Ljava/lang/String;
20 21 5 stage Ljava/lang/String;
23 40 5 stage Ljava/lang/String;
1 40 6 uri Ljava/lang/StringBuilder;
10 27 7 coyoteRequest Lorg/apache/coyote/Request;
17 23 8 rp Lorg/apache/coyote/RequestInfo;
28 40 7 threadName Ljava/lang/String;
29 40 8 len I
35 40 9 msg Ljava/lang/String;
MethodParameters:
Name Flags
method
private void check();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.catalina.core.AsyncContextImpl.request:Lorg/apache/catalina/connector/Request;
ifnonnull 4
1: new java.lang.IllegalStateException
dup
getstatic org.apache.catalina.core.AsyncContextImpl.sm:Lorg/apache/tomcat/util/res/StringManager;
2: ldc "asyncContextImpl.requestEnded"
3: invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/catalina/core/AsyncContextImpl;
}
SourceFile: "AsyncContextImpl.java"
NestMembers:
org.apache.catalina.core.AsyncContextImpl$AsyncRunnable org.apache.catalina.core.AsyncContextImpl$DebugException org.apache.catalina.core.AsyncContextImpl$RunnableWrapper
InnerClasses:
private AsyncRunnable = org.apache.catalina.core.AsyncContextImpl$AsyncRunnable of org.apache.catalina.core.AsyncContextImpl
private DebugException = org.apache.catalina.core.AsyncContextImpl$DebugException of org.apache.catalina.core.AsyncContextImpl
private RunnableWrapper = org.apache.catalina.core.AsyncContextImpl$RunnableWrapper of org.apache.catalina.core.AsyncContextImpl