public abstract class org.eclipse.jetty.io.SelectorManager extends org.eclipse.jetty.util.component.ContainerLifeCycle implements org.eclipse.jetty.util.component.Dumpable
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.eclipse.jetty.io.SelectorManager
super_class: org.eclipse.jetty.util.component.ContainerLifeCycle
{
public static final int DEFAULT_CONNECT_TIMEOUT;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 15000
protected static final org.slf4j.Logger LOG;
descriptor: Lorg/slf4j/Logger;
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
private final java.util.concurrent.Executor executor;
descriptor: Ljava/util/concurrent/Executor;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.eclipse.jetty.util.thread.Scheduler scheduler;
descriptor: Lorg/eclipse/jetty/util/thread/Scheduler;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.eclipse.jetty.io.ManagedSelector[] _selectors;
descriptor: [Lorg/eclipse/jetty/io/ManagedSelector;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.concurrent.atomic.AtomicInteger _selectorIndex;
descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.function.IntUnaryOperator _selectorIndexUpdate;
descriptor: Ljava/util/function/IntUnaryOperator;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.List<org.eclipse.jetty.io.SelectorManager$AcceptListener> _acceptListeners;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lorg/eclipse/jetty/io/SelectorManager$AcceptListener;>;
private long _connectTimeout;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private org.eclipse.jetty.util.thread.ThreadPoolBudget$Lease _lease;
descriptor: Lorg/eclipse/jetty/util/thread/ThreadPoolBudget$Lease;
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/eclipse/jetty/io/SelectorManager;
invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
putstatic org.eclipse.jetty.io.SelectorManager.LOG:Lorg/slf4j/Logger;
return
LocalVariableTable:
Start End Slot Name Signature
private static int defaultSelectors(java.util.concurrent.Executor);
descriptor: (Ljava/util/concurrent/Executor;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
instanceof org.eclipse.jetty.util.thread.ThreadPool$SizedThreadPool
ifeq 4
1: aload 0
checkcast org.eclipse.jetty.util.thread.ThreadPool$SizedThreadPool
invokeinterface org.eclipse.jetty.util.thread.ThreadPool$SizedThreadPool.getMaxThreads:()I
istore 1
start local 1 2: invokestatic org.eclipse.jetty.util.ProcessorUtils.availableProcessors:()I
istore 2
start local 2 3: iconst_1
iload 2
iconst_2
idiv
iload 1
bipush 16
idiv
invokestatic java.lang.Math.min:(II)I
invokestatic java.lang.Math.max:(II)I
ireturn
end local 2 end local 1 4: StackMap locals:
StackMap stack:
iconst_1
invokestatic org.eclipse.jetty.util.ProcessorUtils.availableProcessors:()I
iconst_2
idiv
invokestatic java.lang.Math.max:(II)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 executor Ljava/util/concurrent/Executor;
2 4 1 threads I
3 4 2 cpus I
MethodParameters:
Name Flags
executor
protected void <init>(java.util.concurrent.Executor, org.eclipse.jetty.util.thread.Scheduler);
descriptor: (Ljava/util/concurrent/Executor;Lorg/eclipse/jetty/util/thread/Scheduler;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
iconst_m1
invokespecial org.eclipse.jetty.io.SelectorManager.<init>:(Ljava/util/concurrent/Executor;Lorg/eclipse/jetty/util/thread/Scheduler;I)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 2 1 executor Ljava/util/concurrent/Executor;
0 2 2 scheduler Lorg/eclipse/jetty/util/thread/Scheduler;
MethodParameters:
Name Flags
executor
scheduler
protected void <init>(java.util.concurrent.Executor, org.eclipse.jetty.util.thread.Scheduler, int);
descriptor: (Ljava/util/concurrent/Executor;Lorg/eclipse/jetty/util/thread/Scheduler;I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial org.eclipse.jetty.util.component.ContainerLifeCycle.<init>:()V
1: aload 0
new java.util.concurrent.atomic.AtomicInteger
dup
invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
putfield org.eclipse.jetty.io.SelectorManager._selectorIndex:Ljava/util/concurrent/atomic/AtomicInteger;
2: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.eclipse.jetty.io.SelectorManager._acceptListeners:Ljava/util/List;
3: aload 0
ldc 15000
putfield org.eclipse.jetty.io.SelectorManager._connectTimeout:J
4: iload 3
ifgt 6
5: aload 1
invokestatic org.eclipse.jetty.io.SelectorManager.defaultSelectors:(Ljava/util/concurrent/Executor;)I
istore 3
6: StackMap locals: org.eclipse.jetty.io.SelectorManager java.util.concurrent.Executor org.eclipse.jetty.util.thread.Scheduler int
StackMap stack:
aload 0
aload 1
putfield org.eclipse.jetty.io.SelectorManager.executor:Ljava/util/concurrent/Executor;
7: aload 0
aload 2
putfield org.eclipse.jetty.io.SelectorManager.scheduler:Lorg/eclipse/jetty/util/thread/Scheduler;
8: aload 0
iload 3
anewarray org.eclipse.jetty.io.ManagedSelector
putfield org.eclipse.jetty.io.SelectorManager._selectors:[Lorg/eclipse/jetty/io/ManagedSelector;
9: aload 0
aload 0
invokedynamic applyAsInt(Lorg/eclipse/jetty/io/SelectorManager;)Ljava/util/function/IntUnaryOperator;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(I)I
org/eclipse/jetty/io/SelectorManager.lambda$0(I)I (7)
(I)I
putfield org.eclipse.jetty.io.SelectorManager._selectorIndexUpdate:Ljava/util/function/IntUnaryOperator;
10: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 11 1 executor Ljava/util/concurrent/Executor;
0 11 2 scheduler Lorg/eclipse/jetty/util/thread/Scheduler;
0 11 3 selectors I
MethodParameters:
Name Flags
executor
scheduler
selectors
public java.util.concurrent.Executor getExecutor();
descriptor: ()Ljava/util/concurrent/Executor;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.io.SelectorManager.executor:Ljava/util/concurrent/Executor;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/io/SelectorManager;
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "The Executor")
public org.eclipse.jetty.util.thread.Scheduler getScheduler();
descriptor: ()Lorg/eclipse/jetty/util/thread/Scheduler;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.io.SelectorManager.scheduler:Lorg/eclipse/jetty/util/thread/Scheduler;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/io/SelectorManager;
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "The Scheduler")
public long getConnectTimeout();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.io.SelectorManager._connectTimeout:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/io/SelectorManager;
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "The Connection timeout (ms)")
public void setConnectTimeout(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
putfield org.eclipse.jetty.io.SelectorManager._connectTimeout:J
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 2 1 milliseconds J
MethodParameters:
Name Flags
milliseconds
protected void execute(java.lang.Runnable);
descriptor: (Ljava/lang/Runnable;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jetty.io.SelectorManager.executor:Ljava/util/concurrent/Executor;
aload 1
invokeinterface java.util.concurrent.Executor.execute:(Ljava/lang/Runnable;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 2 1 task Ljava/lang/Runnable;
MethodParameters:
Name Flags
task
public int getSelectorCount();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.io.SelectorManager._selectors:[Lorg/eclipse/jetty/io/ManagedSelector;
arraylength
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/io/SelectorManager;
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "The number of NIO Selectors")
private org.eclipse.jetty.io.ManagedSelector chooseSelector();
descriptor: ()Lorg/eclipse/jetty/io/ManagedSelector;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.io.SelectorManager._selectors:[Lorg/eclipse/jetty/io/ManagedSelector;
aload 0
getfield org.eclipse.jetty.io.SelectorManager._selectorIndex:Ljava/util/concurrent/atomic/AtomicInteger;
aload 0
getfield org.eclipse.jetty.io.SelectorManager._selectorIndexUpdate:Ljava/util/function/IntUnaryOperator;
invokevirtual java.util.concurrent.atomic.AtomicInteger.updateAndGet:(Ljava/util/function/IntUnaryOperator;)I
aaload
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/io/SelectorManager;
public void connect(java.nio.channels.SelectableChannel, java.lang.Object);
descriptor: (Ljava/nio/channels/SelectableChannel;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.eclipse.jetty.io.SelectorManager.chooseSelector:()Lorg/eclipse/jetty/io/ManagedSelector;
astore 3
start local 3 1: aload 3
new org.eclipse.jetty.io.ManagedSelector$Connect
dup
aload 3
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
aload 1
aload 2
invokespecial org.eclipse.jetty.io.ManagedSelector$Connect.<init>:(Lorg/eclipse/jetty/io/ManagedSelector;Ljava/nio/channels/SelectableChannel;Ljava/lang/Object;)V
invokevirtual org.eclipse.jetty.io.ManagedSelector.submit:(Lorg/eclipse/jetty/io/ManagedSelector$SelectorUpdate;)V
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 3 1 channel Ljava/nio/channels/SelectableChannel;
0 3 2 attachment Ljava/lang/Object;
1 3 3 set Lorg/eclipse/jetty/io/ManagedSelector;
MethodParameters:
Name Flags
channel
attachment
public void accept(java.nio.channels.SelectableChannel);
descriptor: (Ljava/nio/channels/SelectableChannel;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
invokevirtual org.eclipse.jetty.io.SelectorManager.accept:(Ljava/nio/channels/SelectableChannel;Ljava/lang/Object;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 2 1 channel Ljava/nio/channels/SelectableChannel;
MethodParameters:
Name Flags
channel
public void accept(java.nio.channels.SelectableChannel, java.lang.Object);
descriptor: (Ljava/nio/channels/SelectableChannel;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.eclipse.jetty.io.SelectorManager.chooseSelector:()Lorg/eclipse/jetty/io/ManagedSelector;
astore 3
start local 3 1: aload 3
new org.eclipse.jetty.io.ManagedSelector$Accept
dup
aload 3
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
aload 1
aload 2
invokespecial org.eclipse.jetty.io.ManagedSelector$Accept.<init>:(Lorg/eclipse/jetty/io/ManagedSelector;Ljava/nio/channels/SelectableChannel;Ljava/lang/Object;)V
invokevirtual org.eclipse.jetty.io.ManagedSelector.submit:(Lorg/eclipse/jetty/io/ManagedSelector$SelectorUpdate;)V
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 3 1 channel Ljava/nio/channels/SelectableChannel;
0 3 2 attachment Ljava/lang/Object;
1 3 3 selector Lorg/eclipse/jetty/io/ManagedSelector;
MethodParameters:
Name Flags
channel
attachment
public java.io.Closeable acceptor(java.nio.channels.SelectableChannel);
descriptor: (Ljava/nio/channels/SelectableChannel;)Ljava/io/Closeable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.eclipse.jetty.io.SelectorManager.chooseSelector:()Lorg/eclipse/jetty/io/ManagedSelector;
astore 2
start local 2 1: new org.eclipse.jetty.io.ManagedSelector$Acceptor
dup
aload 2
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
aload 1
invokespecial org.eclipse.jetty.io.ManagedSelector$Acceptor.<init>:(Lorg/eclipse/jetty/io/ManagedSelector;Ljava/nio/channels/SelectableChannel;)V
astore 3
start local 3 2: aload 2
aload 3
invokevirtual org.eclipse.jetty.io.ManagedSelector.submit:(Lorg/eclipse/jetty/io/ManagedSelector$SelectorUpdate;)V
3: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 4 1 server Ljava/nio/channels/SelectableChannel;
1 4 2 selector Lorg/eclipse/jetty/io/ManagedSelector;
2 4 3 acceptor Lorg/eclipse/jetty/io/ManagedSelector$Acceptor;
MethodParameters:
Name Flags
server
protected void accepted(java.nio.channels.SelectableChannel);
descriptor: (Ljava/nio/channels/SelectableChannel;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.UnsupportedOperationException
dup
invokespecial java.lang.UnsupportedOperationException.<init>:()V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 1 1 channel Ljava/nio/channels/SelectableChannel;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
channel
protected void doStart();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
aload 0
invokevirtual org.eclipse.jetty.io.SelectorManager.getExecutor:()Ljava/util/concurrent/Executor;
aload 0
aload 0
getfield org.eclipse.jetty.io.SelectorManager._selectors:[Lorg/eclipse/jetty/io/ManagedSelector;
arraylength
invokestatic org.eclipse.jetty.util.thread.ThreadPoolBudget.leaseFrom:(Ljava/util/concurrent/Executor;Ljava/lang/Object;I)Lorg/eclipse/jetty/util/thread/ThreadPoolBudget$Lease;
putfield org.eclipse.jetty.io.SelectorManager._lease:Lorg/eclipse/jetty/util/thread/ThreadPoolBudget$Lease;
1: iconst_0
istore 1
start local 1 2: goto 7
3: StackMap locals: int
StackMap stack:
aload 0
iload 1
invokevirtual org.eclipse.jetty.io.SelectorManager.newSelector:(I)Lorg/eclipse/jetty/io/ManagedSelector;
astore 2
start local 2 4: aload 0
getfield org.eclipse.jetty.io.SelectorManager._selectors:[Lorg/eclipse/jetty/io/ManagedSelector;
iload 1
aload 2
aastore
5: aload 0
aload 2
invokevirtual org.eclipse.jetty.io.SelectorManager.addBean:(Ljava/lang/Object;)Z
pop
end local 2 6: iinc 1 1
StackMap locals:
StackMap stack:
7: iload 1
aload 0
getfield org.eclipse.jetty.io.SelectorManager._selectors:[Lorg/eclipse/jetty/io/ManagedSelector;
arraylength
if_icmplt 3
end local 1 8: aload 0
invokespecial org.eclipse.jetty.util.component.ContainerLifeCycle.doStart:()V
9: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/eclipse/jetty/io/SelectorManager;
2 8 1 i I
4 6 2 selector Lorg/eclipse/jetty/io/ManagedSelector;
Exceptions:
throws java.lang.Exception
protected org.eclipse.jetty.io.ManagedSelector newSelector(int);
descriptor: (I)Lorg/eclipse/jetty/io/ManagedSelector;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new org.eclipse.jetty.io.ManagedSelector
dup
aload 0
iload 1
invokespecial org.eclipse.jetty.io.ManagedSelector.<init>:(Lorg/eclipse/jetty/io/SelectorManager;I)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 1 1 id I
MethodParameters:
Name Flags
id
protected java.nio.channels.Selector newSelector();
descriptor: ()Ljava/nio/channels/Selector;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic java.nio.channels.Selector.open:()Ljava/nio/channels/Selector;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/io/SelectorManager;
Exceptions:
throws java.io.IOException
protected void doStop();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=6, args_size=1
start local 0 0: aload 0
invokespecial org.eclipse.jetty.util.component.ContainerLifeCycle.doStop:()V
1: goto 13
2: StackMap locals:
StackMap stack: java.lang.Throwable
astore 1
3: aload 0
getfield org.eclipse.jetty.io.SelectorManager._selectors:[Lorg/eclipse/jetty/io/ManagedSelector;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 8
StackMap locals: org.eclipse.jetty.io.SelectorManager java.lang.Throwable top int int org.eclipse.jetty.io.ManagedSelector[]
StackMap stack:
4: aload 5
iload 3
aaload
astore 2
start local 2 5: aload 2
ifnull 7
6: aload 0
aload 2
invokevirtual org.eclipse.jetty.io.SelectorManager.removeBean:(Ljava/lang/Object;)Z
pop
end local 2 7: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
8: iload 3
iload 4
if_icmplt 4
9: aload 0
getfield org.eclipse.jetty.io.SelectorManager._selectors:[Lorg/eclipse/jetty/io/ManagedSelector;
aconst_null
invokestatic java.util.Arrays.fill:([Ljava/lang/Object;Ljava/lang/Object;)V
10: aload 0
getfield org.eclipse.jetty.io.SelectorManager._lease:Lorg/eclipse/jetty/util/thread/ThreadPoolBudget$Lease;
ifnull 12
11: aload 0
getfield org.eclipse.jetty.io.SelectorManager._lease:Lorg/eclipse/jetty/util/thread/ThreadPoolBudget$Lease;
invokeinterface org.eclipse.jetty.util.thread.ThreadPoolBudget$Lease.close:()V
12: StackMap locals: org.eclipse.jetty.io.SelectorManager java.lang.Throwable
StackMap stack:
aload 1
athrow
13: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jetty.io.SelectorManager._selectors:[Lorg/eclipse/jetty/io/ManagedSelector;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 18
StackMap locals: org.eclipse.jetty.io.SelectorManager top top int int org.eclipse.jetty.io.ManagedSelector[]
StackMap stack:
14: aload 5
iload 3
aaload
astore 2
start local 2 15: aload 2
ifnull 17
16: aload 0
aload 2
invokevirtual org.eclipse.jetty.io.SelectorManager.removeBean:(Ljava/lang/Object;)Z
pop
end local 2 17: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
18: iload 3
iload 4
if_icmplt 14
19: aload 0
getfield org.eclipse.jetty.io.SelectorManager._selectors:[Lorg/eclipse/jetty/io/ManagedSelector;
aconst_null
invokestatic java.util.Arrays.fill:([Ljava/lang/Object;Ljava/lang/Object;)V
20: aload 0
getfield org.eclipse.jetty.io.SelectorManager._lease:Lorg/eclipse/jetty/util/thread/ThreadPoolBudget$Lease;
ifnull 22
21: aload 0
getfield org.eclipse.jetty.io.SelectorManager._lease:Lorg/eclipse/jetty/util/thread/ThreadPoolBudget$Lease;
invokeinterface org.eclipse.jetty.util.thread.ThreadPoolBudget$Lease.close:()V
22: StackMap locals: org.eclipse.jetty.io.SelectorManager
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/eclipse/jetty/io/SelectorManager;
5 7 2 selector Lorg/eclipse/jetty/io/ManagedSelector;
15 17 2 selector Lorg/eclipse/jetty/io/ManagedSelector;
Exception table:
from to target type
0 2 2 any
Exceptions:
throws java.lang.Exception
protected void endPointOpened(org.eclipse.jetty.io.EndPoint);
descriptor: (Lorg/eclipse/jetty/io/EndPoint;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 1 1 endpoint Lorg/eclipse/jetty/io/EndPoint;
MethodParameters:
Name Flags
endpoint
protected void endPointClosed(org.eclipse.jetty.io.EndPoint);
descriptor: (Lorg/eclipse/jetty/io/EndPoint;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 1 1 endpoint Lorg/eclipse/jetty/io/EndPoint;
MethodParameters:
Name Flags
endpoint
public void connectionOpened(org.eclipse.jetty.io.Connection, java.lang.Object);
descriptor: (Lorg/eclipse/jetty/io/Connection;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface org.eclipse.jetty.io.Connection.onOpen:()V
1: goto 7
2: StackMap locals:
StackMap stack: java.lang.Throwable
astore 3
start local 3 3: aload 0
invokevirtual org.eclipse.jetty.io.SelectorManager.isRunning:()Z
ifeq 5
4: getstatic org.eclipse.jetty.io.SelectorManager.LOG:Lorg/slf4j/Logger;
ldc "Exception while notifying connection {}"
aload 1
aload 3
invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
goto 6
5: StackMap locals: java.lang.Throwable
StackMap stack:
getstatic org.eclipse.jetty.io.SelectorManager.LOG:Lorg/slf4j/Logger;
ldc "Exception while notifying connection {}"
aload 1
aload 3
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
6: StackMap locals:
StackMap stack:
aload 3
athrow
end local 3 7: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 8 1 connection Lorg/eclipse/jetty/io/Connection;
0 8 2 context Ljava/lang/Object;
3 7 3 x Ljava/lang/Throwable;
Exception table:
from to target type
0 1 2 Class java.lang.Throwable
MethodParameters:
Name Flags
connection
context
public void connectionClosed(org.eclipse.jetty.io.Connection, java.lang.Throwable);
descriptor: (Lorg/eclipse/jetty/io/Connection;Ljava/lang/Throwable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokeinterface org.eclipse.jetty.io.Connection.onClose:(Ljava/lang/Throwable;)V
1: goto 5
2: StackMap locals:
StackMap stack: java.lang.Throwable
astore 3
start local 3 3: getstatic org.eclipse.jetty.io.SelectorManager.LOG:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 5
4: getstatic org.eclipse.jetty.io.SelectorManager.LOG:Lorg/slf4j/Logger;
ldc "Exception while notifying connection {}"
aload 1
aload 3
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
end local 3 5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 6 1 connection Lorg/eclipse/jetty/io/Connection;
0 6 2 cause Ljava/lang/Throwable;
3 5 3 x Ljava/lang/Throwable;
Exception table:
from to target type
0 1 2 Class java.lang.Throwable
MethodParameters:
Name Flags
connection
cause
protected boolean doFinishConnect(java.nio.channels.SelectableChannel);
descriptor: (Ljava/nio/channels/SelectableChannel;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast java.nio.channels.SocketChannel
invokevirtual java.nio.channels.SocketChannel.finishConnect:()Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 1 1 channel Ljava/nio/channels/SelectableChannel;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
channel
protected boolean isConnectionPending(java.nio.channels.SelectableChannel);
descriptor: (Ljava/nio/channels/SelectableChannel;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast java.nio.channels.SocketChannel
invokevirtual java.nio.channels.SocketChannel.isConnectionPending:()Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 1 1 channel Ljava/nio/channels/SelectableChannel;
MethodParameters:
Name Flags
channel
protected java.nio.channels.SelectableChannel doAccept(java.nio.channels.SelectableChannel);
descriptor: (Ljava/nio/channels/SelectableChannel;)Ljava/nio/channels/SelectableChannel;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
checkcast java.nio.channels.ServerSocketChannel
invokevirtual java.nio.channels.ServerSocketChannel.accept:()Ljava/nio/channels/SocketChannel;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 1 1 server Ljava/nio/channels/SelectableChannel;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
server
protected void connectionFailed(java.nio.channels.SelectableChannel, java.lang.Throwable, java.lang.Object);
descriptor: (Ljava/nio/channels/SelectableChannel;Ljava/lang/Throwable;Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.eclipse.jetty.io.SelectorManager.LOG:Lorg/slf4j/Logger;
ldc "%s - %s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
dup
iconst_1
aload 3
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 2
invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Throwable;)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 2 1 channel Ljava/nio/channels/SelectableChannel;
0 2 2 ex Ljava/lang/Throwable;
0 2 3 attachment Ljava/lang/Object;
MethodParameters:
Name Flags
channel
ex
attachment
protected abstract org.eclipse.jetty.io.EndPoint newEndPoint(java.nio.channels.SelectableChannel, org.eclipse.jetty.io.ManagedSelector, java.nio.channels.SelectionKey);
descriptor: (Ljava/nio/channels/SelectableChannel;Lorg/eclipse/jetty/io/ManagedSelector;Ljava/nio/channels/SelectionKey;)Lorg/eclipse/jetty/io/EndPoint;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
channel
selector
selectionKey
public abstract org.eclipse.jetty.io.Connection newConnection(java.nio.channels.SelectableChannel, org.eclipse.jetty.io.EndPoint, java.lang.Object);
descriptor: (Ljava/nio/channels/SelectableChannel;Lorg/eclipse/jetty/io/EndPoint;Ljava/lang/Object;)Lorg/eclipse/jetty/io/Connection;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
channel
endpoint
attachment
public boolean addEventListener(java.util.EventListener);
descriptor: (Ljava/util/EventListener;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.eclipse.jetty.io.SelectorManager.isRunning:()Z
ifeq 2
1: new java.lang.IllegalStateException
dup
aload 0
invokevirtual org.eclipse.jetty.io.SelectorManager.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial org.eclipse.jetty.util.component.ContainerLifeCycle.addEventListener:(Ljava/util/EventListener;)Z
ifeq 6
3: aload 1
instanceof org.eclipse.jetty.io.SelectorManager$AcceptListener
ifeq 5
4: aload 0
getfield org.eclipse.jetty.io.SelectorManager._acceptListeners:Ljava/util/List;
aload 1
checkcast org.eclipse.jetty.io.SelectorManager$AcceptListener
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
5: StackMap locals:
StackMap stack:
iconst_1
ireturn
6: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 7 1 listener Ljava/util/EventListener;
MethodParameters:
Name Flags
listener
public boolean removeEventListener(java.util.EventListener);
descriptor: (Ljava/util/EventListener;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.eclipse.jetty.io.SelectorManager.isRunning:()Z
ifeq 2
1: new java.lang.IllegalStateException
dup
aload 0
invokevirtual org.eclipse.jetty.io.SelectorManager.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial org.eclipse.jetty.util.component.ContainerLifeCycle.removeEventListener:(Ljava/util/EventListener;)Z
ifeq 6
3: aload 1
instanceof org.eclipse.jetty.io.SelectorManager$AcceptListener
ifeq 5
4: aload 0
getfield org.eclipse.jetty.io.SelectorManager._acceptListeners:Ljava/util/List;
aload 1
invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
pop
5: StackMap locals:
StackMap stack:
iconst_1
ireturn
6: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 7 1 listener Ljava/util/EventListener;
MethodParameters:
Name Flags
listener
protected void onAccepting(java.nio.channels.SelectableChannel);
descriptor: (Ljava/nio/channels/SelectableChannel;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jetty.io.SelectorManager._acceptListeners:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 6
StackMap locals: org.eclipse.jetty.io.SelectorManager java.nio.channels.SelectableChannel top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jetty.io.SelectorManager$AcceptListener
astore 2
start local 2 2: aload 2
aload 1
invokeinterface org.eclipse.jetty.io.SelectorManager$AcceptListener.onAccepting:(Ljava/nio/channels/SelectableChannel;)V
3: goto 6
4: StackMap locals: org.eclipse.jetty.io.SelectorManager java.nio.channels.SelectableChannel org.eclipse.jetty.io.SelectorManager$AcceptListener java.util.Iterator
StackMap stack: java.lang.Throwable
astore 4
start local 4 5: getstatic org.eclipse.jetty.io.SelectorManager.LOG:Lorg/slf4j/Logger;
ldc "Failed to notify onAccepting on listener {}"
aload 2
aload 4
invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
end local 4 end local 2 6: StackMap locals: org.eclipse.jetty.io.SelectorManager java.nio.channels.SelectableChannel top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 8 1 channel Ljava/nio/channels/SelectableChannel;
2 6 2 l Lorg/eclipse/jetty/io/SelectorManager$AcceptListener;
5 6 4 x Ljava/lang/Throwable;
Exception table:
from to target type
2 3 4 Class java.lang.Throwable
MethodParameters:
Name Flags
channel
protected void onAcceptFailed(java.nio.channels.SelectableChannel, java.lang.Throwable);
descriptor: (Ljava/nio/channels/SelectableChannel;Ljava/lang/Throwable;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.eclipse.jetty.io.SelectorManager._acceptListeners:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 6
StackMap locals: org.eclipse.jetty.io.SelectorManager java.nio.channels.SelectableChannel java.lang.Throwable top java.util.Iterator
StackMap stack:
1: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jetty.io.SelectorManager$AcceptListener
astore 3
start local 3 2: aload 3
aload 1
aload 2
invokeinterface org.eclipse.jetty.io.SelectorManager$AcceptListener.onAcceptFailed:(Ljava/nio/channels/SelectableChannel;Ljava/lang/Throwable;)V
3: goto 6
4: StackMap locals: org.eclipse.jetty.io.SelectorManager java.nio.channels.SelectableChannel java.lang.Throwable org.eclipse.jetty.io.SelectorManager$AcceptListener java.util.Iterator
StackMap stack: java.lang.Throwable
astore 5
start local 5 5: getstatic org.eclipse.jetty.io.SelectorManager.LOG:Lorg/slf4j/Logger;
ldc "Failed to notify onAcceptFailed on listener {}"
aload 3
aload 5
invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
end local 5 end local 3 6: StackMap locals: org.eclipse.jetty.io.SelectorManager java.nio.channels.SelectableChannel java.lang.Throwable top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 8 1 channel Ljava/nio/channels/SelectableChannel;
0 8 2 cause Ljava/lang/Throwable;
2 6 3 l Lorg/eclipse/jetty/io/SelectorManager$AcceptListener;
5 6 5 x Ljava/lang/Throwable;
Exception table:
from to target type
2 3 4 Class java.lang.Throwable
MethodParameters:
Name Flags
channel
cause
protected void onAccepted(java.nio.channels.SelectableChannel);
descriptor: (Ljava/nio/channels/SelectableChannel;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jetty.io.SelectorManager._acceptListeners:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 6
StackMap locals: org.eclipse.jetty.io.SelectorManager java.nio.channels.SelectableChannel top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jetty.io.SelectorManager$AcceptListener
astore 2
start local 2 2: aload 2
aload 1
invokeinterface org.eclipse.jetty.io.SelectorManager$AcceptListener.onAccepted:(Ljava/nio/channels/SelectableChannel;)V
3: goto 6
4: StackMap locals: org.eclipse.jetty.io.SelectorManager java.nio.channels.SelectableChannel org.eclipse.jetty.io.SelectorManager$AcceptListener java.util.Iterator
StackMap stack: java.lang.Throwable
astore 4
start local 4 5: getstatic org.eclipse.jetty.io.SelectorManager.LOG:Lorg/slf4j/Logger;
ldc "Failed to notify onAccepted on listener {}"
aload 2
aload 4
invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
end local 4 end local 2 6: StackMap locals: org.eclipse.jetty.io.SelectorManager java.nio.channels.SelectableChannel top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 8 1 channel Ljava/nio/channels/SelectableChannel;
2 6 2 l Lorg/eclipse/jetty/io/SelectorManager$AcceptListener;
5 6 4 x Ljava/lang/Throwable;
Exception table:
from to target type
2 3 4 Class java.lang.Throwable
MethodParameters:
Name Flags
channel
private int lambda$0(int);
descriptor: (I)I
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iconst_1
iadd
aload 0
getfield org.eclipse.jetty.io.SelectorManager._selectors:[Lorg/eclipse/jetty/io/ManagedSelector;
arraylength
irem
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/io/SelectorManager;
0 1 1 index I
}
SourceFile: "SelectorManager.java"
NestMembers:
org.eclipse.jetty.io.SelectorManager$AcceptListener org.eclipse.jetty.io.SelectorManager$SelectorManagerListener
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
Accept = org.eclipse.jetty.io.ManagedSelector$Accept of org.eclipse.jetty.io.ManagedSelector
Acceptor = org.eclipse.jetty.io.ManagedSelector$Acceptor of org.eclipse.jetty.io.ManagedSelector
Connect = org.eclipse.jetty.io.ManagedSelector$Connect of org.eclipse.jetty.io.ManagedSelector
public abstract SelectorUpdate = org.eclipse.jetty.io.ManagedSelector$SelectorUpdate of org.eclipse.jetty.io.ManagedSelector
public abstract AcceptListener = org.eclipse.jetty.io.SelectorManager$AcceptListener of org.eclipse.jetty.io.SelectorManager
public abstract SelectorManagerListener = org.eclipse.jetty.io.SelectorManager$SelectorManagerListener of org.eclipse.jetty.io.SelectorManager
public abstract SizedThreadPool = org.eclipse.jetty.util.thread.ThreadPool$SizedThreadPool of org.eclipse.jetty.util.thread.ThreadPool
public abstract Lease = org.eclipse.jetty.util.thread.ThreadPoolBudget$Lease of org.eclipse.jetty.util.thread.ThreadPoolBudget
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedObject(value = "Manager of the NIO Selectors")