class org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection extends org.eclipse.jetty.io.AbstractConnection implements org.eclipse.jetty.io.Connection$UpgradeFrom
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection
super_class: org.eclipse.jetty.io.AbstractConnection
{
private final org.eclipse.jetty.server.Connector connector;
descriptor: Lorg/eclipse/jetty/server/Connector;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.nio.ByteBuffer buffer;
descriptor: Ljava/nio/ByteBuffer;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final org.eclipse.jetty.server.OptionalSslConnectionFactory this$0;
descriptor: Lorg/eclipse/jetty/server/OptionalSslConnectionFactory;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(org.eclipse.jetty.server.OptionalSslConnectionFactory, org.eclipse.jetty.io.EndPoint, org.eclipse.jetty.server.Connector);
descriptor: (Lorg/eclipse/jetty/server/OptionalSslConnectionFactory;Lorg/eclipse/jetty/io/EndPoint;Lorg/eclipse/jetty/server/Connector;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 2 start local 3 0: aload 0
aload 1
putfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.this$0:Lorg/eclipse/jetty/server/OptionalSslConnectionFactory;
1: aload 0
aload 2
aload 3
invokeinterface org.eclipse.jetty.server.Connector.getExecutor:()Ljava/util/concurrent/Executor;
invokespecial org.eclipse.jetty.io.AbstractConnection.<init>:(Lorg/eclipse/jetty/io/EndPoint;Ljava/util/concurrent/Executor;)V
2: aload 0
aload 3
putfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.connector:Lorg/eclipse/jetty/server/Connector;
3: aload 0
sipush 1536
invokestatic org.eclipse.jetty.util.BufferUtil.allocateDirect:(I)Ljava/nio/ByteBuffer;
putfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.buffer:Ljava/nio/ByteBuffer;
4: return
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/jetty/server/OptionalSslConnectionFactory$OptionalSslConnection;
0 5 2 endPoint Lorg/eclipse/jetty/io/EndPoint;
0 5 3 connector Lorg/eclipse/jetty/server/Connector;
MethodParameters:
Name Flags
this$0 final
endPoint
connector
public void onOpen();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.eclipse.jetty.io.AbstractConnection.onOpen:()V
1: aload 0
invokevirtual org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.fillInterested:()V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jetty/server/OptionalSslConnectionFactory$OptionalSslConnection;
public void onFillable();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.getEndPoint:()Lorg/eclipse/jetty/io/EndPoint;
aload 0
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.buffer:Ljava/nio/ByteBuffer;
invokeinterface org.eclipse.jetty.io.EndPoint.fill:(Ljava/nio/ByteBuffer;)I
istore 1
start local 1 1: iload 1
ifle 5
2: aload 0
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.buffer:Ljava/nio/ByteBuffer;
invokestatic org.eclipse.jetty.util.BufferUtil.length:(Ljava/nio/ByteBuffer;)I
iconst_2
if_icmplt 0
3: aload 0
aload 0
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.buffer:Ljava/nio/ByteBuffer;
invokevirtual org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.upgrade:(Ljava/nio/ByteBuffer;)V
4: goto 13
5: StackMap locals: int
StackMap stack:
iload 1
ifne 8
6: aload 0
invokevirtual org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.fillInterested:()V
7: goto 13
8: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.close:()V
end local 1 9: goto 13
10: StackMap locals: org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection
StackMap stack: java.io.IOException
astore 1
start local 1 11: getstatic org.eclipse.jetty.server.OptionalSslConnectionFactory.LOG:Lorg/eclipse/jetty/util/log/Logger;
aload 1
invokeinterface org.eclipse.jetty.util.log.Logger.warn:(Ljava/lang/Throwable;)V
12: aload 0
invokevirtual org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.close:()V
end local 1 13: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/eclipse/jetty/server/OptionalSslConnectionFactory$OptionalSslConnection;
1 9 1 filled I
11 13 1 x Ljava/io/IOException;
Exception table:
from to target type
0 9 10 Class java.io.IOException
public java.nio.ByteBuffer onUpgradeFrom();
descriptor: ()Ljava/nio/ByteBuffer;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.buffer:Ljava/nio/ByteBuffer;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/server/OptionalSslConnectionFactory$OptionalSslConnection;
private void upgrade(java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: getstatic org.eclipse.jetty.server.OptionalSslConnectionFactory.LOG:Lorg/eclipse/jetty/util/log/Logger;
invokeinterface org.eclipse.jetty.util.log.Logger.isDebugEnabled:()Z
ifeq 2
1: getstatic org.eclipse.jetty.server.OptionalSslConnectionFactory.LOG:Lorg/eclipse/jetty/util/log/Logger;
ldc "Read {}"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
invokestatic org.eclipse.jetty.util.BufferUtil.toDetailString:(Ljava/nio/ByteBuffer;)Ljava/lang/String;
aastore
invokeinterface org.eclipse.jetty.util.log.Logger.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.getEndPoint:()Lorg/eclipse/jetty/io/EndPoint;
astore 2
start local 2 3: aload 0
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.this$0:Lorg/eclipse/jetty/server/OptionalSslConnectionFactory;
aload 1
invokevirtual org.eclipse.jetty.server.OptionalSslConnectionFactory.seemsTLS:(Ljava/nio/ByteBuffer;)Z
ifeq 8
4: getstatic org.eclipse.jetty.server.OptionalSslConnectionFactory.LOG:Lorg/eclipse/jetty/util/log/Logger;
invokeinterface org.eclipse.jetty.util.log.Logger.isDebugEnabled:()Z
ifeq 6
5: getstatic org.eclipse.jetty.server.OptionalSslConnectionFactory.LOG:Lorg/eclipse/jetty/util/log/Logger;
ldc "Detected TLS bytes, upgrading to {}"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.this$0:Lorg/eclipse/jetty/server/OptionalSslConnectionFactory;
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory.sslConnectionFactory:Lorg/eclipse/jetty/server/SslConnectionFactory;
aastore
invokeinterface org.eclipse.jetty.util.log.Logger.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
6: StackMap locals: org.eclipse.jetty.io.EndPoint
StackMap stack:
aload 2
aload 0
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.this$0:Lorg/eclipse/jetty/server/OptionalSslConnectionFactory;
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory.sslConnectionFactory:Lorg/eclipse/jetty/server/SslConnectionFactory;
aload 0
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.connector:Lorg/eclipse/jetty/server/Connector;
aload 2
invokevirtual org.eclipse.jetty.server.SslConnectionFactory.newConnection:(Lorg/eclipse/jetty/server/Connector;Lorg/eclipse/jetty/io/EndPoint;)Lorg/eclipse/jetty/io/Connection;
invokeinterface org.eclipse.jetty.io.EndPoint.upgrade:(Lorg/eclipse/jetty/io/Connection;)V
7: goto 22
8: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.this$0:Lorg/eclipse/jetty/server/OptionalSslConnectionFactory;
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory.otherProtocol:Ljava/lang/String;
ifnull 19
9: aload 0
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.connector:Lorg/eclipse/jetty/server/Connector;
aload 0
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.this$0:Lorg/eclipse/jetty/server/OptionalSslConnectionFactory;
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory.otherProtocol:Ljava/lang/String;
invokeinterface org.eclipse.jetty.server.Connector.getConnectionFactory:(Ljava/lang/String;)Lorg/eclipse/jetty/server/ConnectionFactory;
astore 3
start local 3 10: aload 3
ifnull 16
11: getstatic org.eclipse.jetty.server.OptionalSslConnectionFactory.LOG:Lorg/eclipse/jetty/util/log/Logger;
invokeinterface org.eclipse.jetty.util.log.Logger.isDebugEnabled:()Z
ifeq 13
12: getstatic org.eclipse.jetty.server.OptionalSslConnectionFactory.LOG:Lorg/eclipse/jetty/util/log/Logger;
ldc "Detected non-TLS bytes, upgrading to {}"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 3
aastore
invokeinterface org.eclipse.jetty.util.log.Logger.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
13: StackMap locals: org.eclipse.jetty.server.ConnectionFactory
StackMap stack:
aload 3
aload 0
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.connector:Lorg/eclipse/jetty/server/Connector;
aload 2
invokeinterface org.eclipse.jetty.server.ConnectionFactory.newConnection:(Lorg/eclipse/jetty/server/Connector;Lorg/eclipse/jetty/io/EndPoint;)Lorg/eclipse/jetty/io/Connection;
astore 4
start local 4 14: aload 2
aload 4
invokeinterface org.eclipse.jetty.io.EndPoint.upgrade:(Lorg/eclipse/jetty/io/Connection;)V
end local 4 15: goto 22
16: StackMap locals:
StackMap stack:
getstatic org.eclipse.jetty.server.OptionalSslConnectionFactory.LOG:Lorg/eclipse/jetty/util/log/Logger;
ldc "Missing {} {} in {}"
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.this$0:Lorg/eclipse/jetty/server/OptionalSslConnectionFactory;
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory.otherProtocol:Ljava/lang/String;
aastore
dup
iconst_1
ldc Lorg/eclipse/jetty/server/ConnectionFactory;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
aastore
dup
iconst_2
aload 0
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.connector:Lorg/eclipse/jetty/server/Connector;
aastore
invokeinterface org.eclipse.jetty.util.log.Logger.warn:(Ljava/lang/String;[Ljava/lang/Object;)V
17: aload 0
invokevirtual org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.close:()V
end local 3 18: goto 22
19: StackMap locals:
StackMap stack:
getstatic org.eclipse.jetty.server.OptionalSslConnectionFactory.LOG:Lorg/eclipse/jetty/util/log/Logger;
invokeinterface org.eclipse.jetty.util.log.Logger.isDebugEnabled:()Z
ifeq 21
20: getstatic org.eclipse.jetty.server.OptionalSslConnectionFactory.LOG:Lorg/eclipse/jetty/util/log/Logger;
ldc "Detected non-TLS bytes, but no other protocol to upgrade to"
iconst_0
anewarray java.lang.Object
invokeinterface org.eclipse.jetty.util.log.Logger.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
21: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection.this$0:Lorg/eclipse/jetty/server/OptionalSslConnectionFactory;
aload 1
aload 2
invokevirtual org.eclipse.jetty.server.OptionalSslConnectionFactory.otherProtocol:(Ljava/nio/ByteBuffer;Lorg/eclipse/jetty/io/EndPoint;)V
22: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/eclipse/jetty/server/OptionalSslConnectionFactory$OptionalSslConnection;
0 23 1 buffer Ljava/nio/ByteBuffer;
3 23 2 endPoint Lorg/eclipse/jetty/io/EndPoint;
10 18 3 connectionFactory Lorg/eclipse/jetty/server/ConnectionFactory;
14 15 4 next Lorg/eclipse/jetty/io/Connection;
MethodParameters:
Name Flags
buffer
}
SourceFile: "OptionalSslConnectionFactory.java"
NestHost: org.eclipse.jetty.server.OptionalSslConnectionFactory
InnerClasses:
public abstract UpgradeFrom = org.eclipse.jetty.io.Connection$UpgradeFrom of org.eclipse.jetty.io.Connection
private OptionalSslConnection = org.eclipse.jetty.server.OptionalSslConnectionFactory$OptionalSslConnection of org.eclipse.jetty.server.OptionalSslConnectionFactory