public final class io.undertow.Undertow
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: io.undertow.Undertow
super_class: java.lang.Object
{
private final int bufferSize;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int ioThreads;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int workerThreads;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean directBuffers;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.List<io.undertow.Undertow$ListenerConfig> listeners;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lio/undertow/Undertow$ListenerConfig;>;
private volatile java.util.List<io.undertow.Undertow$ListenerInfo> listenerInfo;
descriptor: Ljava/util/List;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
Signature: Ljava/util/List<Lio/undertow/Undertow$ListenerInfo;>;
private final io.undertow.server.HttpHandler rootHandler;
descriptor: Lio/undertow/server/HttpHandler;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.xnio.OptionMap workerOptions;
descriptor: Lorg/xnio/OptionMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.xnio.OptionMap socketOptions;
descriptor: Lorg/xnio/OptionMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.xnio.OptionMap serverOptions;
descriptor: Lorg/xnio/OptionMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean internalWorker;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private io.undertow.connector.ByteBufferPool byteBufferPool;
descriptor: Lio/undertow/connector/ByteBufferPool;
flags: (0x0002) ACC_PRIVATE
private org.xnio.XnioWorker worker;
descriptor: Lorg/xnio/XnioWorker;
flags: (0x0002) ACC_PRIVATE
private java.util.List<org.xnio.channels.AcceptingChannel<? extends org.xnio.StreamConnection>> channels;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Lorg/xnio/channels/AcceptingChannel<+Lorg/xnio/StreamConnection;>;>;
private org.xnio.Xnio xnio;
descriptor: Lorg/xnio/Xnio;
flags: (0x0002) ACC_PRIVATE
private void <init>(io.undertow.Undertow$Builder);
descriptor: (Lio/undertow/Undertow$Builder;)V
flags: (0x0002) ACC_PRIVATE
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.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield io.undertow.Undertow.listeners:Ljava/util/List;
2: aload 0
aload 1
getfield io.undertow.Undertow$Builder.byteBufferPool:Lio/undertow/connector/ByteBufferPool;
putfield io.undertow.Undertow.byteBufferPool:Lio/undertow/connector/ByteBufferPool;
3: aload 0
aload 0
getfield io.undertow.Undertow.byteBufferPool:Lio/undertow/connector/ByteBufferPool;
ifnull 4
aload 0
getfield io.undertow.Undertow.byteBufferPool:Lio/undertow/connector/ByteBufferPool;
invokeinterface io.undertow.connector.ByteBufferPool.getBufferSize:()I
goto 5
StackMap locals: io.undertow.Undertow io.undertow.Undertow$Builder
StackMap stack: io.undertow.Undertow
4: aload 1
getfield io.undertow.Undertow$Builder.bufferSize:I
StackMap locals: io.undertow.Undertow io.undertow.Undertow$Builder
StackMap stack: io.undertow.Undertow int
5: putfield io.undertow.Undertow.bufferSize:I
6: aload 0
aload 0
getfield io.undertow.Undertow.byteBufferPool:Lio/undertow/connector/ByteBufferPool;
ifnull 7
aload 0
getfield io.undertow.Undertow.byteBufferPool:Lio/undertow/connector/ByteBufferPool;
invokeinterface io.undertow.connector.ByteBufferPool.isDirect:()Z
goto 8
StackMap locals:
StackMap stack: io.undertow.Undertow
7: aload 1
getfield io.undertow.Undertow$Builder.directBuffers:Z
StackMap locals: io.undertow.Undertow io.undertow.Undertow$Builder
StackMap stack: io.undertow.Undertow int
8: putfield io.undertow.Undertow.directBuffers:Z
9: aload 0
aload 1
getfield io.undertow.Undertow$Builder.ioThreads:I
putfield io.undertow.Undertow.ioThreads:I
10: aload 0
aload 1
getfield io.undertow.Undertow$Builder.workerThreads:I
putfield io.undertow.Undertow.workerThreads:I
11: aload 0
getfield io.undertow.Undertow.listeners:Ljava/util/List;
aload 1
getfield io.undertow.Undertow$Builder.listeners:Ljava/util/List;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
12: aload 0
aload 1
getfield io.undertow.Undertow$Builder.handler:Lio/undertow/server/HttpHandler;
putfield io.undertow.Undertow.rootHandler:Lio/undertow/server/HttpHandler;
13: aload 0
aload 1
getfield io.undertow.Undertow$Builder.worker:Lorg/xnio/XnioWorker;
putfield io.undertow.Undertow.worker:Lorg/xnio/XnioWorker;
14: aload 0
aload 1
getfield io.undertow.Undertow$Builder.worker:Lorg/xnio/XnioWorker;
ifnonnull 15
iconst_1
goto 16
StackMap locals:
StackMap stack: io.undertow.Undertow
15: iconst_0
StackMap locals: io.undertow.Undertow io.undertow.Undertow$Builder
StackMap stack: io.undertow.Undertow int
16: putfield io.undertow.Undertow.internalWorker:Z
17: aload 0
aload 1
getfield io.undertow.Undertow$Builder.workerOptions:Lorg/xnio/OptionMap$Builder;
invokevirtual org.xnio.OptionMap$Builder.getMap:()Lorg/xnio/OptionMap;
putfield io.undertow.Undertow.workerOptions:Lorg/xnio/OptionMap;
18: aload 0
aload 1
getfield io.undertow.Undertow$Builder.socketOptions:Lorg/xnio/OptionMap$Builder;
invokevirtual org.xnio.OptionMap$Builder.getMap:()Lorg/xnio/OptionMap;
putfield io.undertow.Undertow.socketOptions:Lorg/xnio/OptionMap;
19: aload 0
aload 1
getfield io.undertow.Undertow$Builder.serverOptions:Lorg/xnio/OptionMap$Builder;
invokevirtual org.xnio.OptionMap$Builder.getMap:()Lorg/xnio/OptionMap;
putfield io.undertow.Undertow.serverOptions:Lorg/xnio/OptionMap;
20: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lio/undertow/Undertow;
0 21 1 builder Lio/undertow/Undertow$Builder;
MethodParameters:
Name Flags
builder
public static io.undertow.Undertow$Builder builder();
descriptor: ()Lio/undertow/Undertow$Builder;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new io.undertow.Undertow$Builder
dup
invokespecial io.undertow.Undertow$Builder.<init>:()V
areturn
LocalVariableTable:
Start End Slot Name Signature
public synchronized void start();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=8, locals=15, args_size=1
start local 0 0: getstatic io.undertow.UndertowLogger.ROOT_LOGGER:Lio/undertow/UndertowLogger;
ldc "starting undertow server %s"
aload 0
invokeinterface io.undertow.UndertowLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;)V
1: aload 0
ldc Lio/undertow/Undertow;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
invokestatic org.xnio.Xnio.getInstance:(Ljava/lang/ClassLoader;)Lorg/xnio/Xnio;
putfield io.undertow.Undertow.xnio:Lorg/xnio/Xnio;
2: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield io.undertow.Undertow.channels:Ljava/util/List;
3: aload 0
getfield io.undertow.Undertow.internalWorker:Z
ifeq 15
4: aload 0
aload 0
getfield io.undertow.Undertow.xnio:Lorg/xnio/Xnio;
invokestatic org.xnio.OptionMap.builder:()Lorg/xnio/OptionMap$Builder;
5: getstatic org.xnio.Options.WORKER_IO_THREADS:Lorg/xnio/Option;
aload 0
getfield io.undertow.Undertow.ioThreads:I
invokevirtual org.xnio.OptionMap$Builder.set:(Lorg/xnio/Option;I)Lorg/xnio/OptionMap$Builder;
6: getstatic org.xnio.Options.CONNECTION_HIGH_WATER:Lorg/xnio/Option;
ldc 1000000
invokevirtual org.xnio.OptionMap$Builder.set:(Lorg/xnio/Option;I)Lorg/xnio/OptionMap$Builder;
7: getstatic org.xnio.Options.CONNECTION_LOW_WATER:Lorg/xnio/Option;
ldc 1000000
invokevirtual org.xnio.OptionMap$Builder.set:(Lorg/xnio/Option;I)Lorg/xnio/OptionMap$Builder;
8: getstatic org.xnio.Options.WORKER_TASK_CORE_THREADS:Lorg/xnio/Option;
aload 0
getfield io.undertow.Undertow.workerThreads:I
invokevirtual org.xnio.OptionMap$Builder.set:(Lorg/xnio/Option;I)Lorg/xnio/OptionMap$Builder;
9: getstatic org.xnio.Options.WORKER_TASK_MAX_THREADS:Lorg/xnio/Option;
aload 0
getfield io.undertow.Undertow.workerThreads:I
invokevirtual org.xnio.OptionMap$Builder.set:(Lorg/xnio/Option;I)Lorg/xnio/OptionMap$Builder;
10: getstatic org.xnio.Options.TCP_NODELAY:Lorg/xnio/Option;
iconst_1
invokevirtual org.xnio.OptionMap$Builder.set:(Lorg/xnio/Option;Z)Lorg/xnio/OptionMap$Builder;
11: getstatic org.xnio.Options.CORK:Lorg/xnio/Option;
iconst_1
invokevirtual org.xnio.OptionMap$Builder.set:(Lorg/xnio/Option;Z)Lorg/xnio/OptionMap$Builder;
12: aload 0
getfield io.undertow.Undertow.workerOptions:Lorg/xnio/OptionMap;
invokevirtual org.xnio.OptionMap$Builder.addAll:(Lorg/xnio/OptionMap;)Lorg/xnio/OptionMap$Builder;
13: invokevirtual org.xnio.OptionMap$Builder.getMap:()Lorg/xnio/OptionMap;
14: invokevirtual org.xnio.Xnio.createWorker:(Lorg/xnio/OptionMap;)Lorg/xnio/XnioWorker;
putfield io.undertow.Undertow.worker:Lorg/xnio/XnioWorker;
15: StackMap locals:
StackMap stack:
invokestatic org.xnio.OptionMap.builder:()Lorg/xnio/OptionMap$Builder;
16: getstatic org.xnio.Options.WORKER_IO_THREADS:Lorg/xnio/Option;
aload 0
getfield io.undertow.Undertow.worker:Lorg/xnio/XnioWorker;
invokevirtual org.xnio.XnioWorker.getIoThreadCount:()I
invokevirtual org.xnio.OptionMap$Builder.set:(Lorg/xnio/Option;I)Lorg/xnio/OptionMap$Builder;
17: getstatic org.xnio.Options.TCP_NODELAY:Lorg/xnio/Option;
iconst_1
invokevirtual org.xnio.OptionMap$Builder.set:(Lorg/xnio/Option;Z)Lorg/xnio/OptionMap$Builder;
18: getstatic org.xnio.Options.REUSE_ADDRESSES:Lorg/xnio/Option;
iconst_1
invokevirtual org.xnio.OptionMap$Builder.set:(Lorg/xnio/Option;Z)Lorg/xnio/OptionMap$Builder;
19: getstatic org.xnio.Options.BALANCING_TOKENS:Lorg/xnio/Option;
iconst_1
invokevirtual org.xnio.OptionMap$Builder.set:(Lorg/xnio/Option;I)Lorg/xnio/OptionMap$Builder;
20: getstatic org.xnio.Options.BALANCING_CONNECTIONS:Lorg/xnio/Option;
iconst_2
invokevirtual org.xnio.OptionMap$Builder.set:(Lorg/xnio/Option;I)Lorg/xnio/OptionMap$Builder;
21: getstatic org.xnio.Options.BACKLOG:Lorg/xnio/Option;
sipush 1000
invokevirtual org.xnio.OptionMap$Builder.set:(Lorg/xnio/Option;I)Lorg/xnio/OptionMap$Builder;
22: aload 0
getfield io.undertow.Undertow.socketOptions:Lorg/xnio/OptionMap;
invokevirtual org.xnio.OptionMap$Builder.addAll:(Lorg/xnio/OptionMap;)Lorg/xnio/OptionMap$Builder;
23: invokevirtual org.xnio.OptionMap$Builder.getMap:()Lorg/xnio/OptionMap;
24: astore 1
start local 1 25: invokestatic org.xnio.OptionMap.builder:()Lorg/xnio/OptionMap$Builder;
26: getstatic io.undertow.UndertowOptions.NO_REQUEST_TIMEOUT:Lorg/xnio/Option;
ldc 60000
invokevirtual org.xnio.OptionMap$Builder.set:(Lorg/xnio/Option;I)Lorg/xnio/OptionMap$Builder;
27: aload 0
getfield io.undertow.Undertow.serverOptions:Lorg/xnio/OptionMap;
invokevirtual org.xnio.OptionMap$Builder.addAll:(Lorg/xnio/OptionMap;)Lorg/xnio/OptionMap$Builder;
28: invokevirtual org.xnio.OptionMap$Builder.getMap:()Lorg/xnio/OptionMap;
29: astore 2
start local 2 30: aload 0
getfield io.undertow.Undertow.byteBufferPool:Lio/undertow/connector/ByteBufferPool;
astore 3
start local 3 31: aload 3
ifnonnull 33
32: new io.undertow.server.DefaultByteBufferPool
dup
aload 0
getfield io.undertow.Undertow.directBuffers:Z
aload 0
getfield io.undertow.Undertow.bufferSize:I
iconst_m1
iconst_4
invokespecial io.undertow.server.DefaultByteBufferPool.<init>:(ZIII)V
astore 3
33: StackMap locals: org.xnio.OptionMap org.xnio.OptionMap io.undertow.connector.ByteBufferPool
StackMap stack:
aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield io.undertow.Undertow.listenerInfo:Ljava/util/List;
34: aload 0
getfield io.undertow.Undertow.listeners:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 104
StackMap locals: io.undertow.Undertow org.xnio.OptionMap org.xnio.OptionMap io.undertow.connector.ByteBufferPool top java.util.Iterator
StackMap stack:
35: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.undertow.Undertow$ListenerConfig
astore 4
start local 4 36: getstatic io.undertow.UndertowLogger.ROOT_LOGGER:Lio/undertow/UndertowLogger;
ldc "Configuring listener with protocol %s for interface %s and port %s"
aload 4
getfield io.undertow.Undertow$ListenerConfig.type:Lio/undertow/Undertow$ListenerType;
aload 4
getfield io.undertow.Undertow$ListenerConfig.host:Ljava/lang/String;
aload 4
getfield io.undertow.Undertow$ListenerConfig.port:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface io.undertow.UndertowLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
37: aload 4
getfield io.undertow.Undertow$ListenerConfig.rootHandler:Lio/undertow/server/HttpHandler;
ifnull 38
aload 4
getfield io.undertow.Undertow$ListenerConfig.rootHandler:Lio/undertow/server/HttpHandler;
goto 39
StackMap locals: io.undertow.Undertow org.xnio.OptionMap org.xnio.OptionMap io.undertow.connector.ByteBufferPool io.undertow.Undertow$ListenerConfig java.util.Iterator
StackMap stack:
38: aload 0
getfield io.undertow.Undertow.rootHandler:Lio/undertow/server/HttpHandler;
StackMap locals:
StackMap stack: io.undertow.server.HttpHandler
39: astore 6
start local 6 40: aload 4
getfield io.undertow.Undertow$ListenerConfig.type:Lio/undertow/Undertow$ListenerType;
getstatic io.undertow.Undertow$ListenerType.AJP:Lio/undertow/Undertow$ListenerType;
if_acmpne 54
41: new io.undertow.server.protocol.ajp.AjpOpenListener
dup
aload 3
aload 2
invokespecial io.undertow.server.protocol.ajp.AjpOpenListener.<init>:(Lio/undertow/connector/ByteBufferPool;Lorg/xnio/OptionMap;)V
astore 7
start local 7 42: aload 7
aload 6
invokevirtual io.undertow.server.protocol.ajp.AjpOpenListener.setRootHandler:(Lio/undertow/server/HttpHandler;)V
43: aload 4
getfield io.undertow.Undertow$ListenerConfig.useProxyProtocol:Z
ifeq 46
44: new io.undertow.server.protocol.proxy.ProxyProtocolOpenListener
dup
aload 7
aconst_null
aload 3
getstatic org.xnio.OptionMap.EMPTY:Lorg/xnio/OptionMap;
invokespecial io.undertow.server.protocol.proxy.ProxyProtocolOpenListener.<init>:(Lio/undertow/server/OpenListener;Lio/undertow/protocols/ssl/UndertowXnioSsl;Lio/undertow/connector/ByteBufferPool;Lorg/xnio/OptionMap;)V
astore 8
start local 8 45: goto 47
end local 8 46: StackMap locals: io.undertow.server.HttpHandler io.undertow.server.protocol.ajp.AjpOpenListener
StackMap stack:
aload 7
astore 8
start local 8 47: StackMap locals: org.xnio.ChannelListener
StackMap stack:
aload 8
invokestatic org.xnio.ChannelListeners.openListenerAdapter:(Lorg/xnio/ChannelListener;)Lorg/xnio/ChannelListener;
astore 9
start local 9 48: invokestatic org.xnio.OptionMap.builder:()Lorg/xnio/OptionMap$Builder;
aload 1
invokevirtual org.xnio.OptionMap$Builder.addAll:(Lorg/xnio/OptionMap;)Lorg/xnio/OptionMap$Builder;
aload 4
getfield io.undertow.Undertow$ListenerConfig.overrideSocketOptions:Lorg/xnio/OptionMap;
invokevirtual org.xnio.OptionMap$Builder.addAll:(Lorg/xnio/OptionMap;)Lorg/xnio/OptionMap$Builder;
invokevirtual org.xnio.OptionMap$Builder.getMap:()Lorg/xnio/OptionMap;
astore 10
start local 10 49: aload 0
getfield io.undertow.Undertow.worker:Lorg/xnio/XnioWorker;
new java.net.InetSocketAddress
dup
aload 4
getfield io.undertow.Undertow$ListenerConfig.host:Ljava/lang/String;
invokestatic java.net.Inet4Address.getByName:(Ljava/lang/String;)Ljava/net/InetAddress;
aload 4
getfield io.undertow.Undertow$ListenerConfig.port:I
invokespecial java.net.InetSocketAddress.<init>:(Ljava/net/InetAddress;I)V
aload 9
aload 10
invokevirtual org.xnio.XnioWorker.createStreamConnectionServer:(Ljava/net/SocketAddress;Lorg/xnio/ChannelListener;Lorg/xnio/OptionMap;)Lorg/xnio/channels/AcceptingChannel;
astore 11
start local 11 50: aload 11
invokeinterface org.xnio.channels.AcceptingChannel.resumeAccepts:()V
51: aload 0
getfield io.undertow.Undertow.channels:Ljava/util/List;
aload 11
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
52: aload 0
getfield io.undertow.Undertow.listenerInfo:Ljava/util/List;
new io.undertow.Undertow$ListenerInfo
dup
ldc "ajp"
aload 11
invokeinterface org.xnio.channels.AcceptingChannel.getLocalAddress:()Ljava/net/SocketAddress;
aload 7
aconst_null
aload 11
invokespecial io.undertow.Undertow$ListenerInfo.<init>:(Ljava/lang/String;Ljava/net/SocketAddress;Lio/undertow/server/OpenListener;Lio/undertow/protocols/ssl/UndertowXnioSsl;Lorg/xnio/channels/AcceptingChannel;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 11 end local 10 end local 9 end local 8 end local 7 53: goto 104
54: StackMap locals:
StackMap stack:
invokestatic org.xnio.OptionMap.builder:()Lorg/xnio/OptionMap$Builder;
getstatic io.undertow.UndertowOptions.BUFFER_PIPELINED_DATA:Lorg/xnio/Option;
iconst_1
invokevirtual org.xnio.OptionMap$Builder.set:(Lorg/xnio/Option;Z)Lorg/xnio/OptionMap$Builder;
aload 2
invokevirtual org.xnio.OptionMap$Builder.addAll:(Lorg/xnio/OptionMap;)Lorg/xnio/OptionMap$Builder;
invokevirtual org.xnio.OptionMap$Builder.getMap:()Lorg/xnio/OptionMap;
astore 7
start local 7 55: aload 2
getstatic io.undertow.UndertowOptions.ENABLE_HTTP2:Lorg/xnio/Option;
iconst_0
invokevirtual org.xnio.OptionMap.get:(Lorg/xnio/Option;Z)Z
istore 8
start local 8 56: aload 4
getfield io.undertow.Undertow$ListenerConfig.type:Lio/undertow/Undertow$ListenerType;
getstatic io.undertow.Undertow$ListenerType.HTTP:Lio/undertow/Undertow$ListenerType;
if_acmpne 73
57: new io.undertow.server.protocol.http.HttpOpenListener
dup
aload 3
aload 7
invokespecial io.undertow.server.protocol.http.HttpOpenListener.<init>:(Lio/undertow/connector/ByteBufferPool;Lorg/xnio/OptionMap;)V
astore 9
start local 9 58: aload 6
astore 10
start local 10 59: iload 8
ifeq 61
60: new io.undertow.server.protocol.http2.Http2UpgradeHandler
dup
aload 10
invokespecial io.undertow.server.protocol.http2.Http2UpgradeHandler.<init>:(Lio/undertow/server/HttpHandler;)V
astore 10
61: StackMap locals: io.undertow.Undertow org.xnio.OptionMap org.xnio.OptionMap io.undertow.connector.ByteBufferPool io.undertow.Undertow$ListenerConfig java.util.Iterator io.undertow.server.HttpHandler org.xnio.OptionMap int io.undertow.server.protocol.http.HttpOpenListener io.undertow.server.HttpHandler
StackMap stack:
aload 9
aload 10
invokevirtual io.undertow.server.protocol.http.HttpOpenListener.setRootHandler:(Lio/undertow/server/HttpHandler;)V
62: aload 4
getfield io.undertow.Undertow$ListenerConfig.useProxyProtocol:Z
ifeq 65
63: new io.undertow.server.protocol.proxy.ProxyProtocolOpenListener
dup
aload 9
aconst_null
aload 3
getstatic org.xnio.OptionMap.EMPTY:Lorg/xnio/OptionMap;
invokespecial io.undertow.server.protocol.proxy.ProxyProtocolOpenListener.<init>:(Lio/undertow/server/OpenListener;Lio/undertow/protocols/ssl/UndertowXnioSsl;Lio/undertow/connector/ByteBufferPool;Lorg/xnio/OptionMap;)V
astore 11
start local 11 64: goto 66
end local 11 65: StackMap locals:
StackMap stack:
aload 9
astore 11
start local 11 66: StackMap locals: org.xnio.ChannelListener
StackMap stack:
aload 11
invokestatic org.xnio.ChannelListeners.openListenerAdapter:(Lorg/xnio/ChannelListener;)Lorg/xnio/ChannelListener;
astore 12
start local 12 67: invokestatic org.xnio.OptionMap.builder:()Lorg/xnio/OptionMap$Builder;
aload 1
invokevirtual org.xnio.OptionMap$Builder.addAll:(Lorg/xnio/OptionMap;)Lorg/xnio/OptionMap$Builder;
aload 4
getfield io.undertow.Undertow$ListenerConfig.overrideSocketOptions:Lorg/xnio/OptionMap;
invokevirtual org.xnio.OptionMap$Builder.addAll:(Lorg/xnio/OptionMap;)Lorg/xnio/OptionMap$Builder;
invokevirtual org.xnio.OptionMap$Builder.getMap:()Lorg/xnio/OptionMap;
astore 13
start local 13 68: aload 0
getfield io.undertow.Undertow.worker:Lorg/xnio/XnioWorker;
new java.net.InetSocketAddress
dup
aload 4
getfield io.undertow.Undertow$ListenerConfig.host:Ljava/lang/String;
invokestatic java.net.Inet4Address.getByName:(Ljava/lang/String;)Ljava/net/InetAddress;
aload 4
getfield io.undertow.Undertow$ListenerConfig.port:I
invokespecial java.net.InetSocketAddress.<init>:(Ljava/net/InetAddress;I)V
aload 12
aload 13
invokevirtual org.xnio.XnioWorker.createStreamConnectionServer:(Ljava/net/SocketAddress;Lorg/xnio/ChannelListener;Lorg/xnio/OptionMap;)Lorg/xnio/channels/AcceptingChannel;
astore 14
start local 14 69: aload 14
invokeinterface org.xnio.channels.AcceptingChannel.resumeAccepts:()V
70: aload 0
getfield io.undertow.Undertow.channels:Ljava/util/List;
aload 14
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
71: aload 0
getfield io.undertow.Undertow.listenerInfo:Ljava/util/List;
new io.undertow.Undertow$ListenerInfo
dup
ldc "http"
aload 14
invokeinterface org.xnio.channels.AcceptingChannel.getLocalAddress:()Ljava/net/SocketAddress;
aload 9
aconst_null
aload 14
invokespecial io.undertow.Undertow$ListenerInfo.<init>:(Ljava/lang/String;Ljava/net/SocketAddress;Lio/undertow/server/OpenListener;Lio/undertow/protocols/ssl/UndertowXnioSsl;Lorg/xnio/channels/AcceptingChannel;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 72: goto 104
StackMap locals:
StackMap stack:
73: aload 4
getfield io.undertow.Undertow$ListenerConfig.type:Lio/undertow/Undertow$ListenerType;
getstatic io.undertow.Undertow$ListenerType.HTTPS:Lio/undertow/Undertow$ListenerType;
if_acmpne 104
74: new io.undertow.server.protocol.http.HttpOpenListener
dup
aload 3
aload 7
invokespecial io.undertow.server.protocol.http.HttpOpenListener.<init>:(Lio/undertow/connector/ByteBufferPool;Lorg/xnio/OptionMap;)V
astore 10
start local 10 75: aload 10
aload 6
invokevirtual io.undertow.server.protocol.http.HttpOpenListener.setRootHandler:(Lio/undertow/server/HttpHandler;)V
76: iload 8
ifeq 85
77: new io.undertow.server.protocol.http.AlpnOpenListener
dup
aload 3
aload 7
aload 10
invokespecial io.undertow.server.protocol.http.AlpnOpenListener.<init>:(Lio/undertow/connector/ByteBufferPool;Lorg/xnio/OptionMap;Lio/undertow/server/DelegateOpenListener;)V
astore 11
start local 11 78: iload 8
ifeq 83
79: new io.undertow.server.protocol.http2.Http2OpenListener
dup
aload 3
aload 7
invokespecial io.undertow.server.protocol.http2.Http2OpenListener.<init>:(Lio/undertow/connector/ByteBufferPool;Lorg/xnio/OptionMap;)V
astore 12
start local 12 80: aload 12
aload 6
invokevirtual io.undertow.server.protocol.http2.Http2OpenListener.setRootHandler:(Lio/undertow/server/HttpHandler;)V
81: aload 11
ldc "h2"
aload 12
bipush 10
invokevirtual io.undertow.server.protocol.http.AlpnOpenListener.addProtocol:(Ljava/lang/String;Lio/undertow/server/DelegateOpenListener;I)Lio/undertow/server/protocol/http/AlpnOpenListener;
pop
82: aload 11
ldc "h2-14"
aload 12
bipush 7
invokevirtual io.undertow.server.protocol.http.AlpnOpenListener.addProtocol:(Ljava/lang/String;Lio/undertow/server/DelegateOpenListener;I)Lio/undertow/server/protocol/http/AlpnOpenListener;
pop
end local 12 83: StackMap locals: io.undertow.Undertow org.xnio.OptionMap org.xnio.OptionMap io.undertow.connector.ByteBufferPool io.undertow.Undertow$ListenerConfig java.util.Iterator io.undertow.server.HttpHandler org.xnio.OptionMap int top io.undertow.server.protocol.http.HttpOpenListener io.undertow.server.protocol.http.AlpnOpenListener
StackMap stack:
aload 11
astore 9
end local 11 start local 9 84: goto 86
end local 9 85: StackMap locals:
StackMap stack:
aload 10
astore 9
start local 9 86: StackMap locals: io.undertow.Undertow org.xnio.OptionMap org.xnio.OptionMap io.undertow.connector.ByteBufferPool io.undertow.Undertow$ListenerConfig java.util.Iterator io.undertow.server.HttpHandler org.xnio.OptionMap int io.undertow.server.OpenListener io.undertow.server.protocol.http.HttpOpenListener
StackMap stack:
aload 4
getfield io.undertow.Undertow$ListenerConfig.sslContext:Ljavax/net/ssl/SSLContext;
ifnull 89
87: new io.undertow.protocols.ssl.UndertowXnioSsl
dup
aload 0
getfield io.undertow.Undertow.xnio:Lorg/xnio/Xnio;
getstatic org.xnio.Options.USE_DIRECT_BUFFERS:Lorg/xnio/Option;
iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokestatic org.xnio.OptionMap.create:(Lorg/xnio/Option;Ljava/lang/Object;)Lorg/xnio/OptionMap;
aload 4
getfield io.undertow.Undertow$ListenerConfig.sslContext:Ljavax/net/ssl/SSLContext;
invokespecial io.undertow.protocols.ssl.UndertowXnioSsl.<init>:(Lorg/xnio/Xnio;Lorg/xnio/OptionMap;Ljavax/net/ssl/SSLContext;)V
astore 11
start local 11 88: goto 94
end local 11 89: StackMap locals:
StackMap stack:
invokestatic org.xnio.OptionMap.builder:()Lorg/xnio/OptionMap$Builder;
astore 12
start local 12 90: aload 12
aload 4
getfield io.undertow.Undertow$ListenerConfig.overrideSocketOptions:Lorg/xnio/OptionMap;
invokevirtual org.xnio.OptionMap$Builder.addAll:(Lorg/xnio/OptionMap;)Lorg/xnio/OptionMap$Builder;
pop
91: aload 4
getfield io.undertow.Undertow$ListenerConfig.overrideSocketOptions:Lorg/xnio/OptionMap;
getstatic org.xnio.Options.SSL_PROTOCOL:Lorg/xnio/Option;
invokevirtual org.xnio.OptionMap.contains:(Lorg/xnio/Option;)Z
ifne 93
92: aload 12
getstatic org.xnio.Options.SSL_PROTOCOL:Lorg/xnio/Option;
ldc "TLSv1.2"
invokevirtual org.xnio.OptionMap$Builder.set:(Lorg/xnio/Option;Ljava/lang/Object;)Lorg/xnio/OptionMap$Builder;
pop
93: StackMap locals: io.undertow.Undertow org.xnio.OptionMap org.xnio.OptionMap io.undertow.connector.ByteBufferPool io.undertow.Undertow$ListenerConfig java.util.Iterator io.undertow.server.HttpHandler org.xnio.OptionMap int io.undertow.server.OpenListener io.undertow.server.protocol.http.HttpOpenListener top org.xnio.OptionMap$Builder
StackMap stack:
new io.undertow.protocols.ssl.UndertowXnioSsl
dup
aload 0
getfield io.undertow.Undertow.xnio:Lorg/xnio/Xnio;
getstatic org.xnio.Options.USE_DIRECT_BUFFERS:Lorg/xnio/Option;
iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokestatic org.xnio.OptionMap.create:(Lorg/xnio/Option;Ljava/lang/Object;)Lorg/xnio/OptionMap;
aload 4
getfield io.undertow.Undertow$ListenerConfig.keyManagers:[Ljavax/net/ssl/KeyManager;
aload 4
getfield io.undertow.Undertow$ListenerConfig.trustManagers:[Ljavax/net/ssl/TrustManager;
new java.security.SecureRandom
dup
invokespecial java.security.SecureRandom.<init>:()V
aload 12
invokevirtual org.xnio.OptionMap$Builder.getMap:()Lorg/xnio/OptionMap;
invokestatic org.xnio.ssl.JsseSslUtils.createSSLContext:([Ljavax/net/ssl/KeyManager;[Ljavax/net/ssl/TrustManager;Ljava/security/SecureRandom;Lorg/xnio/OptionMap;)Ljavax/net/ssl/SSLContext;
invokespecial io.undertow.protocols.ssl.UndertowXnioSsl.<init>:(Lorg/xnio/Xnio;Lorg/xnio/OptionMap;Ljavax/net/ssl/SSLContext;)V
astore 11
end local 12 start local 11 94: StackMap locals: io.undertow.Undertow org.xnio.OptionMap org.xnio.OptionMap io.undertow.connector.ByteBufferPool io.undertow.Undertow$ListenerConfig java.util.Iterator io.undertow.server.HttpHandler org.xnio.OptionMap int io.undertow.server.OpenListener io.undertow.server.protocol.http.HttpOpenListener io.undertow.protocols.ssl.UndertowXnioSsl
StackMap stack:
invokestatic org.xnio.OptionMap.builder:()Lorg/xnio/OptionMap$Builder;
aload 1
invokevirtual org.xnio.OptionMap$Builder.addAll:(Lorg/xnio/OptionMap;)Lorg/xnio/OptionMap$Builder;
aload 4
getfield io.undertow.Undertow$ListenerConfig.overrideSocketOptions:Lorg/xnio/OptionMap;
invokevirtual org.xnio.OptionMap$Builder.addAll:(Lorg/xnio/OptionMap;)Lorg/xnio/OptionMap$Builder;
invokevirtual org.xnio.OptionMap$Builder.getMap:()Lorg/xnio/OptionMap;
astore 12
start local 12 95: aload 4
getfield io.undertow.Undertow$ListenerConfig.useProxyProtocol:Z
ifeq 99
96: new io.undertow.server.protocol.proxy.ProxyProtocolOpenListener
dup
aload 9
aload 11
aload 3
aload 12
invokespecial io.undertow.server.protocol.proxy.ProxyProtocolOpenListener.<init>:(Lio/undertow/server/OpenListener;Lio/undertow/protocols/ssl/UndertowXnioSsl;Lio/undertow/connector/ByteBufferPool;Lorg/xnio/OptionMap;)V
invokestatic org.xnio.ChannelListeners.openListenerAdapter:(Lorg/xnio/ChannelListener;)Lorg/xnio/ChannelListener;
astore 14
start local 14 97: aload 0
getfield io.undertow.Undertow.worker:Lorg/xnio/XnioWorker;
new java.net.InetSocketAddress
dup
aload 4
getfield io.undertow.Undertow$ListenerConfig.host:Ljava/lang/String;
invokestatic java.net.Inet4Address.getByName:(Ljava/lang/String;)Ljava/net/InetAddress;
aload 4
getfield io.undertow.Undertow$ListenerConfig.port:I
invokespecial java.net.InetSocketAddress.<init>:(Ljava/net/InetAddress;I)V
aload 14
aload 12
invokevirtual org.xnio.XnioWorker.createStreamConnectionServer:(Ljava/net/SocketAddress;Lorg/xnio/ChannelListener;Lorg/xnio/OptionMap;)Lorg/xnio/channels/AcceptingChannel;
astore 13
end local 14 start local 13 98: goto 101
end local 13 99: StackMap locals: org.xnio.OptionMap
StackMap stack:
aload 9
invokestatic org.xnio.ChannelListeners.openListenerAdapter:(Lorg/xnio/ChannelListener;)Lorg/xnio/ChannelListener;
astore 14
start local 14 100: aload 11
aload 0
getfield io.undertow.Undertow.worker:Lorg/xnio/XnioWorker;
new java.net.InetSocketAddress
dup
aload 4
getfield io.undertow.Undertow$ListenerConfig.host:Ljava/lang/String;
invokestatic java.net.Inet4Address.getByName:(Ljava/lang/String;)Ljava/net/InetAddress;
aload 4
getfield io.undertow.Undertow$ListenerConfig.port:I
invokespecial java.net.InetSocketAddress.<init>:(Ljava/net/InetAddress;I)V
aload 14
aload 12
invokevirtual io.undertow.protocols.ssl.UndertowXnioSsl.createSslConnectionServer:(Lorg/xnio/XnioWorker;Ljava/net/InetSocketAddress;Lorg/xnio/ChannelListener;Lorg/xnio/OptionMap;)Lorg/xnio/channels/AcceptingChannel;
astore 13
end local 14 start local 13 101: StackMap locals: org.xnio.channels.AcceptingChannel
StackMap stack:
aload 13
invokeinterface org.xnio.channels.AcceptingChannel.resumeAccepts:()V
102: aload 0
getfield io.undertow.Undertow.channels:Ljava/util/List;
aload 13
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
103: aload 0
getfield io.undertow.Undertow.listenerInfo:Ljava/util/List;
new io.undertow.Undertow$ListenerInfo
dup
ldc "https"
aload 13
invokeinterface org.xnio.channels.AcceptingChannel.getLocalAddress:()Ljava/net/SocketAddress;
aload 9
aload 11
aload 13
invokespecial io.undertow.Undertow$ListenerInfo.<init>:(Ljava/lang/String;Ljava/net/SocketAddress;Lio/undertow/server/OpenListener;Lio/undertow/protocols/ssl/UndertowXnioSsl;Lorg/xnio/channels/AcceptingChannel;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 4 104: StackMap locals: io.undertow.Undertow org.xnio.OptionMap org.xnio.OptionMap io.undertow.connector.ByteBufferPool top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 35
end local 3 end local 2 end local 1 105: goto 110
StackMap locals: io.undertow.Undertow
StackMap stack: java.lang.Exception
106: astore 1
start local 1 107: aload 0
getfield io.undertow.Undertow.internalWorker:Z
ifeq 109
aload 0
getfield io.undertow.Undertow.worker:Lorg/xnio/XnioWorker;
ifnull 109
108: aload 0
getfield io.undertow.Undertow.worker:Lorg/xnio/XnioWorker;
invokevirtual org.xnio.XnioWorker.shutdownNow:()Ljava/util/List;
pop
109: StackMap locals: java.lang.Exception
StackMap stack:
new java.lang.RuntimeException
dup
aload 1
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 1 110: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 111 0 this Lio/undertow/Undertow;
25 105 1 socketOptions Lorg/xnio/OptionMap;
30 105 2 serverOptions Lorg/xnio/OptionMap;
31 105 3 buffers Lio/undertow/connector/ByteBufferPool;
36 104 4 listener Lio/undertow/Undertow$ListenerConfig;
40 104 6 rootHandler Lio/undertow/server/HttpHandler;
42 53 7 openListener Lio/undertow/server/protocol/ajp/AjpOpenListener;
45 46 8 finalListener Lorg/xnio/ChannelListener<Lorg/xnio/StreamConnection;>;
47 53 8 finalListener Lorg/xnio/ChannelListener<Lorg/xnio/StreamConnection;>;
48 53 9 acceptListener Lorg/xnio/ChannelListener<Lorg/xnio/channels/AcceptingChannel<Lorg/xnio/StreamConnection;>;>;
49 53 10 socketOptionsWithOverrides Lorg/xnio/OptionMap;
50 53 11 server Lorg/xnio/channels/AcceptingChannel<+Lorg/xnio/StreamConnection;>;
55 104 7 undertowOptions Lorg/xnio/OptionMap;
56 104 8 http2 Z
58 72 9 openListener Lio/undertow/server/protocol/http/HttpOpenListener;
59 72 10 handler Lio/undertow/server/HttpHandler;
64 65 11 finalListener Lorg/xnio/ChannelListener<Lorg/xnio/StreamConnection;>;
66 72 11 finalListener Lorg/xnio/ChannelListener<Lorg/xnio/StreamConnection;>;
67 72 12 acceptListener Lorg/xnio/ChannelListener<Lorg/xnio/channels/AcceptingChannel<Lorg/xnio/StreamConnection;>;>;
68 72 13 socketOptionsWithOverrides Lorg/xnio/OptionMap;
69 72 14 server Lorg/xnio/channels/AcceptingChannel<+Lorg/xnio/StreamConnection;>;
84 85 9 openListener Lio/undertow/server/OpenListener;
86 104 9 openListener Lio/undertow/server/OpenListener;
75 104 10 httpOpenListener Lio/undertow/server/protocol/http/HttpOpenListener;
78 84 11 alpn Lio/undertow/server/protocol/http/AlpnOpenListener;
80 83 12 http2Listener Lio/undertow/server/protocol/http2/Http2OpenListener;
88 89 11 xnioSsl Lio/undertow/protocols/ssl/UndertowXnioSsl;
94 104 11 xnioSsl Lio/undertow/protocols/ssl/UndertowXnioSsl;
90 94 12 builder Lorg/xnio/OptionMap$Builder;
95 104 12 socketOptionsWithOverrides Lorg/xnio/OptionMap;
98 99 13 sslServer Lorg/xnio/channels/AcceptingChannel<+Lorg/xnio/StreamConnection;>;
101 104 13 sslServer Lorg/xnio/channels/AcceptingChannel<+Lorg/xnio/StreamConnection;>;
97 98 14 acceptListener Lorg/xnio/ChannelListener<Lorg/xnio/channels/AcceptingChannel<Lorg/xnio/StreamConnection;>;>;
100 101 14 acceptListener Lorg/xnio/ChannelListener<Lorg/xnio/channels/AcceptingChannel<Lorg/xnio/StreamConnection;>;>;
107 110 1 e Ljava/lang/Exception;
Exception table:
from to target type
3 105 106 Class java.lang.Exception
public synchronized void stop();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=3, args_size=1
start local 0 0: getstatic io.undertow.UndertowLogger.ROOT_LOGGER:Lio/undertow/UndertowLogger;
ldc "stopping undertow server %s"
aload 0
invokeinterface io.undertow.UndertowLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;)V
1: aload 0
getfield io.undertow.Undertow.channels:Ljava/util/List;
ifnull 7
2: aload 0
getfield io.undertow.Undertow.channels:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 2
goto 5
StackMap locals: io.undertow.Undertow top java.util.Iterator
StackMap stack:
3: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.xnio.channels.AcceptingChannel
astore 1
start local 1 4: aload 1
invokestatic org.xnio.IoUtils.safeClose:(Ljava/io/Closeable;)V
end local 1 5: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
6: aload 0
aconst_null
putfield io.undertow.Undertow.channels:Ljava/util/List;
7: StackMap locals: io.undertow.Undertow
StackMap stack:
aload 0
getfield io.undertow.Undertow.internalWorker:Z
ifeq 14
aload 0
getfield io.undertow.Undertow.worker:Lorg/xnio/XnioWorker;
ifnull 14
8: aload 0
getfield io.undertow.Undertow.worker:Lorg/xnio/XnioWorker;
invokevirtual org.xnio.XnioWorker.shutdown:()V
9: aload 0
getfield io.undertow.Undertow.worker:Lorg/xnio/XnioWorker;
invokevirtual org.xnio.XnioWorker.awaitTermination:()V
10: goto 13
StackMap locals:
StackMap stack: java.lang.InterruptedException
11: astore 1
start local 1 12: new java.lang.RuntimeException
dup
aload 1
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 1 13: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield io.undertow.Undertow.worker:Lorg/xnio/XnioWorker;
14: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield io.undertow.Undertow.xnio:Lorg/xnio/Xnio;
15: aload 0
aconst_null
putfield io.undertow.Undertow.listenerInfo:Ljava/util/List;
16: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lio/undertow/Undertow;
4 5 1 channel Lorg/xnio/channels/AcceptingChannel<+Lorg/xnio/StreamConnection;>;
12 13 1 e Ljava/lang/InterruptedException;
Exception table:
from to target type
9 10 11 Class java.lang.InterruptedException
public org.xnio.Xnio getXnio();
descriptor: ()Lorg/xnio/Xnio;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.undertow.Undertow.xnio:Lorg/xnio/Xnio;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/undertow/Undertow;
public org.xnio.XnioWorker getWorker();
descriptor: ()Lorg/xnio/XnioWorker;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.undertow.Undertow.worker:Lorg/xnio/XnioWorker;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/undertow/Undertow;
public java.util.List<io.undertow.Undertow$ListenerInfo> getListenerInfo();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.undertow.Undertow.listenerInfo:Ljava/util/List;
ifnonnull 2
1: getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
invokeinterface io.undertow.UndertowMessages.serverNotStarted:()Ljava/lang/IllegalStateException;
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.Undertow.listenerInfo:Ljava/util/List;
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/undertow/Undertow;
Signature: ()Ljava/util/List<Lio/undertow/Undertow$ListenerInfo;>;
}
SourceFile: "Undertow.java"
NestMembers:
io.undertow.Undertow$Builder io.undertow.Undertow$ListenerBuilder io.undertow.Undertow$ListenerConfig io.undertow.Undertow$ListenerInfo io.undertow.Undertow$ListenerType
InnerClasses:
public final Builder = io.undertow.Undertow$Builder of io.undertow.Undertow
public final ListenerBuilder = io.undertow.Undertow$ListenerBuilder of io.undertow.Undertow
private ListenerConfig = io.undertow.Undertow$ListenerConfig of io.undertow.Undertow
public ListenerInfo = io.undertow.Undertow$ListenerInfo of io.undertow.Undertow
public final ListenerType = io.undertow.Undertow$ListenerType of io.undertow.Undertow
public final Builder = org.xnio.OptionMap$Builder of org.xnio.OptionMap