public class org.apache.coyote.AbstractProtocol$ConnectionHandler<S> implements org.apache.tomcat.util.net.AbstractEndpoint$Handler<S>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.coyote.AbstractProtocol$ConnectionHandler
super_class: java.lang.Object
{
private final org.apache.coyote.AbstractProtocol<S> proto;
descriptor: Lorg/apache/coyote/AbstractProtocol;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/apache/coyote/AbstractProtocol<TS;>;
private final org.apache.coyote.RequestGroupInfo global;
descriptor: Lorg/apache/coyote/RequestGroupInfo;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.concurrent.atomic.AtomicLong registerCount;
descriptor: Ljava/util/concurrent/atomic/AtomicLong;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Map<S, org.apache.coyote.Processor> connections;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<TS;Lorg/apache/coyote/Processor;>;
private final org.apache.coyote.AbstractProtocol$RecycledProcessors recycledProcessors;
descriptor: Lorg/apache/coyote/AbstractProtocol$RecycledProcessors;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(org.apache.coyote.AbstractProtocol<S>);
descriptor: (Lorg/apache/coyote/AbstractProtocol;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new org.apache.coyote.RequestGroupInfo
dup
invokespecial org.apache.coyote.RequestGroupInfo.<init>:()V
putfield org.apache.coyote.AbstractProtocol$ConnectionHandler.global:Lorg/apache/coyote/RequestGroupInfo;
2: aload 0
new java.util.concurrent.atomic.AtomicLong
dup
lconst_0
invokespecial java.util.concurrent.atomic.AtomicLong.<init>:(J)V
putfield org.apache.coyote.AbstractProtocol$ConnectionHandler.registerCount:Ljava/util/concurrent/atomic/AtomicLong;
3: aload 0
new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
putfield org.apache.coyote.AbstractProtocol$ConnectionHandler.connections:Ljava/util/Map;
4: aload 0
new org.apache.coyote.AbstractProtocol$RecycledProcessors
dup
aload 0
invokespecial org.apache.coyote.AbstractProtocol$RecycledProcessors.<init>:(Lorg/apache/coyote/AbstractProtocol$ConnectionHandler;)V
putfield org.apache.coyote.AbstractProtocol$ConnectionHandler.recycledProcessors:Lorg/apache/coyote/AbstractProtocol$RecycledProcessors;
5: aload 0
aload 1
putfield org.apache.coyote.AbstractProtocol$ConnectionHandler.proto:Lorg/apache/coyote/AbstractProtocol;
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/coyote/AbstractProtocol$ConnectionHandler<TS;>;
0 7 1 proto Lorg/apache/coyote/AbstractProtocol<TS;>;
Signature: (Lorg/apache/coyote/AbstractProtocol<TS;>;)V
MethodParameters:
Name Flags
proto
protected org.apache.coyote.AbstractProtocol<S> getProtocol();
descriptor: ()Lorg/apache/coyote/AbstractProtocol;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.coyote.AbstractProtocol$ConnectionHandler.proto:Lorg/apache/coyote/AbstractProtocol;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/coyote/AbstractProtocol$ConnectionHandler<TS;>;
Signature: ()Lorg/apache/coyote/AbstractProtocol<TS;>;
protected org.apache.juli.logging.Log getLog();
descriptor: ()Lorg/apache/juli/logging/Log;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.coyote.AbstractProtocol$ConnectionHandler.getProtocol:()Lorg/apache/coyote/AbstractProtocol;
invokevirtual org.apache.coyote.AbstractProtocol.getLog:()Lorg/apache/juli/logging/Log;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/coyote/AbstractProtocol$ConnectionHandler<TS;>;
public java.lang.Object getGlobal();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.coyote.AbstractProtocol$ConnectionHandler.global:Lorg/apache/coyote/RequestGroupInfo;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/coyote/AbstractProtocol$ConnectionHandler<TS;>;
public void recycle();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.coyote.AbstractProtocol$ConnectionHandler.recycledProcessors:Lorg/apache/coyote/AbstractProtocol$RecycledProcessors;
invokevirtual org.apache.coyote.AbstractProtocol$RecycledProcessors.clear:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/coyote/AbstractProtocol$ConnectionHandler<TS;>;
public org.apache.tomcat.util.net.AbstractEndpoint$Handler$SocketState process(org.apache.tomcat.util.net.SocketWrapperBase<S>, org.apache.tomcat.util.net.SocketEvent);
descriptor: (Lorg/apache/tomcat/util/net/SocketWrapperBase;Lorg/apache/tomcat/util/net/SocketEvent;)Lorg/apache/tomcat/util/net/AbstractEndpoint$Handler$SocketState;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tThe method getInstanceManager() from the type UpgradeToken refers to the missing type InstanceManager\n\tThe method getContextBind() from the type UpgradeToken refers to the missing type ContextBind\n\tThe method getContextBind() from the type UpgradeToken refers to the missing type ContextBind\n\tInstanceManager cannot be resolved to a type\n\tThe method getInstanceManager() from the type UpgradeToken refers to the missing type InstanceManager\n\tThe method getContextBind() from the type UpgradeToken refers to the missing type ContextBind\n\tThe method getContextBind() from the type UpgradeToken refers to the missing type ContextBind\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/coyote/AbstractProtocol$ConnectionHandler<TS;>;
Signature: (Lorg/apache/tomcat/util/net/SocketWrapperBase<TS;>;Lorg/apache/tomcat/util/net/SocketEvent;)Lorg/apache/tomcat/util/net/AbstractEndpoint$Handler$SocketState;
MethodParameters:
Name Flags
wrapper
status
protected void longPoll(org.apache.tomcat.util.net.SocketWrapperBase<?>, org.apache.coyote.Processor);
descriptor: (Lorg/apache/tomcat/util/net/SocketWrapperBase;Lorg/apache/coyote/Processor;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface org.apache.coyote.Processor.isAsync:()Z
ifne 2
1: aload 1
invokevirtual org.apache.tomcat.util.net.SocketWrapperBase.registerReadInterest:()V
2: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/coyote/AbstractProtocol$ConnectionHandler<TS;>;
0 3 1 socket Lorg/apache/tomcat/util/net/SocketWrapperBase<*>;
0 3 2 processor Lorg/apache/coyote/Processor;
Signature: (Lorg/apache/tomcat/util/net/SocketWrapperBase<*>;Lorg/apache/coyote/Processor;)V
MethodParameters:
Name Flags
socket
processor
public java.util.Set<S> getOpenSockets();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.coyote.AbstractProtocol$ConnectionHandler.connections:Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/coyote/AbstractProtocol$ConnectionHandler<TS;>;
Signature: ()Ljava/util/Set<TS;>;
private void release(org.apache.coyote.Processor);
descriptor: (Lorg/apache/coyote/Processor;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnull 5
1: aload 1
invokeinterface org.apache.coyote.Processor.recycle:()V
2: aload 1
invokeinterface org.apache.coyote.Processor.isUpgrade:()Z
ifne 5
3: aload 0
getfield org.apache.coyote.AbstractProtocol$ConnectionHandler.recycledProcessors:Lorg/apache/coyote/AbstractProtocol$RecycledProcessors;
aload 1
invokevirtual org.apache.coyote.AbstractProtocol$RecycledProcessors.push:(Lorg/apache/coyote/Processor;)Z
pop
4: aload 0
invokevirtual org.apache.coyote.AbstractProtocol$ConnectionHandler.getLog:()Lorg/apache/juli/logging/Log;
new java.lang.StringBuilder
dup
ldc "Pushed Processor ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/coyote/AbstractProtocol$ConnectionHandler<TS;>;
0 6 1 processor Lorg/apache/coyote/Processor;
MethodParameters:
Name Flags
processor
public void release(org.apache.tomcat.util.net.SocketWrapperBase<S>);
descriptor: (Lorg/apache/tomcat/util/net/SocketWrapperBase;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.apache.tomcat.util.net.SocketWrapperBase.getSocket:()Ljava/lang/Object;
astore 2
start local 2 1: aload 0
getfield org.apache.coyote.AbstractProtocol$ConnectionHandler.connections:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.apache.coyote.Processor
astore 3
start local 3 2: aload 0
aload 3
invokevirtual org.apache.coyote.AbstractProtocol$ConnectionHandler.release:(Lorg/apache/coyote/Processor;)V
3: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/coyote/AbstractProtocol$ConnectionHandler<TS;>;
0 4 1 socketWrapper Lorg/apache/tomcat/util/net/SocketWrapperBase<TS;>;
1 4 2 socket TS;
2 4 3 processor Lorg/apache/coyote/Processor;
Signature: (Lorg/apache/tomcat/util/net/SocketWrapperBase<TS;>;)V
MethodParameters:
Name Flags
socketWrapper
protected void register(org.apache.coyote.Processor);
descriptor: (Lorg/apache/coyote/Processor;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.coyote.AbstractProtocol$ConnectionHandler.getProtocol:()Lorg/apache/coyote/AbstractProtocol;
invokevirtual org.apache.coyote.AbstractProtocol.getDomain:()Ljava/lang/String;
ifnull 27
1: aload 0
dup
astore 2
monitorenter
2: aload 0
getfield org.apache.coyote.AbstractProtocol$ConnectionHandler.registerCount:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.incrementAndGet:()J
lstore 3
start local 3 3: aload 1
invokeinterface org.apache.coyote.Processor.getRequest:()Lorg/apache/coyote/Request;
invokevirtual org.apache.coyote.Request.getRequestProcessor:()Lorg/apache/coyote/RequestInfo;
4: astore 5
start local 5 5: aload 5
aload 0
getfield org.apache.coyote.AbstractProtocol$ConnectionHandler.global:Lorg/apache/coyote/RequestGroupInfo;
invokevirtual org.apache.coyote.RequestInfo.setGlobalProcessor:(Lorg/apache/coyote/RequestGroupInfo;)V
6: new javax.management.ObjectName
dup
7: new java.lang.StringBuilder
dup
aload 0
invokevirtual org.apache.coyote.AbstractProtocol$ConnectionHandler.getProtocol:()Lorg/apache/coyote/AbstractProtocol;
invokevirtual org.apache.coyote.AbstractProtocol.getDomain:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
8: ldc ":type=RequestProcessor,worker="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
9: aload 0
invokevirtual org.apache.coyote.AbstractProtocol$ConnectionHandler.getProtocol:()Lorg/apache/coyote/AbstractProtocol;
invokevirtual org.apache.coyote.AbstractProtocol.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
10: ldc ",name="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual org.apache.coyote.AbstractProtocol$ConnectionHandler.getProtocol:()Lorg/apache/coyote/AbstractProtocol;
invokevirtual org.apache.coyote.AbstractProtocol.getProtocolName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
11: ldc "Request"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
lload 3
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
12: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
13: invokespecial javax.management.ObjectName.<init>:(Ljava/lang/String;)V
astore 6
start local 6 14: aload 0
invokevirtual org.apache.coyote.AbstractProtocol$ConnectionHandler.getLog:()Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 16
15: aload 0
invokevirtual org.apache.coyote.AbstractProtocol$ConnectionHandler.getLog:()Lorg/apache/juli/logging/Log;
new java.lang.StringBuilder
dup
ldc "Register "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
16: StackMap locals: org.apache.coyote.AbstractProtocol$ConnectionHandler org.apache.coyote.Processor org.apache.coyote.AbstractProtocol$ConnectionHandler long org.apache.coyote.RequestInfo javax.management.ObjectName
StackMap stack:
aconst_null
aconst_null
invokestatic org.apache.tomcat.util.modeler.Registry.getRegistry:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/apache/tomcat/util/modeler/Registry;
aload 5
17: aload 6
aconst_null
18: invokevirtual org.apache.tomcat.util.modeler.Registry.registerComponent:(Ljava/lang/Object;Ljavax/management/ObjectName;Ljava/lang/String;)V
19: aload 5
aload 6
invokevirtual org.apache.coyote.RequestInfo.setRpName:(Ljavax/management/ObjectName;)V
end local 6 end local 5 end local 3 20: goto 23
StackMap locals: org.apache.coyote.AbstractProtocol$ConnectionHandler org.apache.coyote.Processor org.apache.coyote.AbstractProtocol$ConnectionHandler
StackMap stack: java.lang.Exception
21: pop
22: aload 0
invokevirtual org.apache.coyote.AbstractProtocol$ConnectionHandler.getLog:()Lorg/apache/juli/logging/Log;
ldc "Error registering request"
invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;)V
23: StackMap locals:
StackMap stack:
aload 2
monitorexit
24: goto 27
StackMap locals:
StackMap stack: java.lang.Throwable
25: aload 2
monitorexit
26: athrow
27: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lorg/apache/coyote/AbstractProtocol$ConnectionHandler<TS;>;
0 28 1 processor Lorg/apache/coyote/Processor;
3 20 3 count J
5 20 5 rp Lorg/apache/coyote/RequestInfo;
14 20 6 rpName Ljavax/management/ObjectName;
Exception table:
from to target type
2 20 21 Class java.lang.Exception
2 24 25 any
25 26 25 any
MethodParameters:
Name Flags
processor
protected void unregister(org.apache.coyote.Processor);
descriptor: (Lorg/apache/coyote/Processor;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.coyote.AbstractProtocol$ConnectionHandler.getProtocol:()Lorg/apache/coyote/AbstractProtocol;
invokevirtual org.apache.coyote.AbstractProtocol.getDomain:()Ljava/lang/String;
ifnull 22
1: aload 0
dup
astore 2
monitorenter
2: aload 1
invokeinterface org.apache.coyote.Processor.getRequest:()Lorg/apache/coyote/Request;
astore 3
start local 3 3: aload 3
ifnonnull 6
4: aload 2
monitorexit
5: return
6: StackMap locals: org.apache.coyote.AbstractProtocol$ConnectionHandler org.apache.coyote.Request
StackMap stack:
aload 3
invokevirtual org.apache.coyote.Request.getRequestProcessor:()Lorg/apache/coyote/RequestInfo;
astore 4
start local 4 7: aload 4
aconst_null
invokevirtual org.apache.coyote.RequestInfo.setGlobalProcessor:(Lorg/apache/coyote/RequestGroupInfo;)V
8: aload 4
invokevirtual org.apache.coyote.RequestInfo.getRpName:()Ljavax/management/ObjectName;
astore 5
start local 5 9: aload 0
invokevirtual org.apache.coyote.AbstractProtocol$ConnectionHandler.getLog:()Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 11
10: aload 0
invokevirtual org.apache.coyote.AbstractProtocol$ConnectionHandler.getLog:()Lorg/apache/juli/logging/Log;
new java.lang.StringBuilder
dup
ldc "Unregister "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
11: StackMap locals: org.apache.coyote.RequestInfo javax.management.ObjectName
StackMap stack:
aconst_null
aconst_null
invokestatic org.apache.tomcat.util.modeler.Registry.getRegistry:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/apache/tomcat/util/modeler/Registry;
12: aload 5
13: invokevirtual org.apache.tomcat.util.modeler.Registry.unregisterComponent:(Ljavax/management/ObjectName;)V
14: aload 4
aconst_null
invokevirtual org.apache.coyote.RequestInfo.setRpName:(Ljavax/management/ObjectName;)V
end local 5 end local 4 end local 3 15: goto 18
StackMap locals: org.apache.coyote.AbstractProtocol$ConnectionHandler org.apache.coyote.Processor org.apache.coyote.AbstractProtocol$ConnectionHandler
StackMap stack: java.lang.Exception
16: astore 3
start local 3 17: aload 0
invokevirtual org.apache.coyote.AbstractProtocol$ConnectionHandler.getLog:()Lorg/apache/juli/logging/Log;
ldc "Error unregistering request"
aload 3
invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 3 18: StackMap locals:
StackMap stack:
aload 2
monitorexit
19: goto 22
StackMap locals:
StackMap stack: java.lang.Throwable
20: aload 2
monitorexit
21: athrow
22: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/apache/coyote/AbstractProtocol$ConnectionHandler<TS;>;
0 23 1 processor Lorg/apache/coyote/Processor;
3 15 3 r Lorg/apache/coyote/Request;
7 15 4 rp Lorg/apache/coyote/RequestInfo;
9 15 5 rpName Ljavax/management/ObjectName;
17 18 3 e Ljava/lang/Exception;
Exception table:
from to target type
2 4 16 Class java.lang.Exception
6 15 16 Class java.lang.Exception
2 5 20 any
6 19 20 any
20 21 20 any
MethodParameters:
Name Flags
processor
public final void pause();
descriptor: ()V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=3, args_size=1
start local 0 0: aload 0
getfield org.apache.coyote.AbstractProtocol$ConnectionHandler.connections:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 2
goto 3
StackMap locals: org.apache.coyote.AbstractProtocol$ConnectionHandler top java.util.Iterator
StackMap stack:
1: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.coyote.Processor
astore 1
start local 1 2: aload 1
invokeinterface org.apache.coyote.Processor.pause:()V
end local 1 3: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/coyote/AbstractProtocol$ConnectionHandler<TS;>;
2 3 1 processor Lorg/apache/coyote/Processor;
}
Signature: <S:Ljava/lang/Object;>Ljava/lang/Object;Lorg/apache/tomcat/util/net/AbstractEndpoint$Handler<TS;>;
SourceFile: "AbstractProtocol.java"
NestHost: org.apache.coyote.AbstractProtocol
InnerClasses:
protected ConnectionHandler = org.apache.coyote.AbstractProtocol$ConnectionHandler of org.apache.coyote.AbstractProtocol
protected RecycledProcessors = org.apache.coyote.AbstractProtocol$RecycledProcessors of org.apache.coyote.AbstractProtocol
public abstract Handler = org.apache.tomcat.util.net.AbstractEndpoint$Handler of org.apache.tomcat.util.net.AbstractEndpoint
public final SocketState = org.apache.tomcat.util.net.AbstractEndpoint$Handler$SocketState of org.apache.tomcat.util.net.AbstractEndpoint$Handler