final class io.netty.handler.ssl.Java9SslEngine extends io.netty.handler.ssl.JdkSslEngine
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: io.netty.handler.ssl.Java9SslEngine
super_class: io.netty.handler.ssl.JdkSslEngine
{
private final io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener selectionListener;
descriptor: Lio/netty/handler/ssl/JdkApplicationProtocolNegotiator$ProtocolSelectionListener;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.netty.handler.ssl.Java9SslEngine$AlpnSelector alpnSelector;
descriptor: Lio/netty/handler/ssl/Java9SslEngine$AlpnSelector;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lio/netty/handler/ssl/Java9SslEngine;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic io.netty.handler.ssl.Java9SslEngine.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(javax.net.ssl.SSLEngine, io.netty.handler.ssl.JdkApplicationProtocolNegotiator, boolean);
descriptor: (Ljavax/net/ssl/SSLEngine;Lio/netty/handler/ssl/JdkApplicationProtocolNegotiator;Z)V
flags: (0x0000)
Code:
stack=9, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
invokespecial io.netty.handler.ssl.JdkSslEngine.<init>:(Ljavax/net/ssl/SSLEngine;)V
1: iload 3
ifeq 8
2: aload 0
aconst_null
putfield io.netty.handler.ssl.Java9SslEngine.selectionListener:Lio/netty/handler/ssl/JdkApplicationProtocolNegotiator$ProtocolSelectionListener;
3: aload 0
new io.netty.handler.ssl.Java9SslEngine$AlpnSelector
dup
aload 0
aload 2
invokeinterface io.netty.handler.ssl.JdkApplicationProtocolNegotiator.protocolSelectorFactory:()Lio/netty/handler/ssl/JdkApplicationProtocolNegotiator$ProtocolSelectorFactory;
4: aload 0
new java.util.LinkedHashSet
dup
aload 2
invokeinterface io.netty.handler.ssl.JdkApplicationProtocolNegotiator.protocols:()Ljava/util/List;
invokespecial java.util.LinkedHashSet.<init>:(Ljava/util/Collection;)V
invokeinterface io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory.newSelector:(Ljavax/net/ssl/SSLEngine;Ljava/util/Set;)Lio/netty/handler/ssl/JdkApplicationProtocolNegotiator$ProtocolSelector;
invokespecial io.netty.handler.ssl.Java9SslEngine$AlpnSelector.<init>:(Lio/netty/handler/ssl/Java9SslEngine;Lio/netty/handler/ssl/JdkApplicationProtocolNegotiator$ProtocolSelector;)V
5: putfield io.netty.handler.ssl.Java9SslEngine.alpnSelector:Lio/netty/handler/ssl/Java9SslEngine$AlpnSelector;
6: aload 1
aload 0
getfield io.netty.handler.ssl.Java9SslEngine.alpnSelector:Lio/netty/handler/ssl/Java9SslEngine$AlpnSelector;
invokestatic io.netty.handler.ssl.Java9SslUtils.setHandshakeApplicationProtocolSelector:(Ljavax/net/ssl/SSLEngine;Ljava/util/function/BiFunction;)V
7: goto 13
8: StackMap locals: io.netty.handler.ssl.Java9SslEngine javax.net.ssl.SSLEngine io.netty.handler.ssl.JdkApplicationProtocolNegotiator int
StackMap stack:
aload 0
aload 2
invokeinterface io.netty.handler.ssl.JdkApplicationProtocolNegotiator.protocolListenerFactory:()Lio/netty/handler/ssl/JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory;
9: aload 0
aload 2
invokeinterface io.netty.handler.ssl.JdkApplicationProtocolNegotiator.protocols:()Ljava/util/List;
invokeinterface io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory.newListener:(Ljavax/net/ssl/SSLEngine;Ljava/util/List;)Lio/netty/handler/ssl/JdkApplicationProtocolNegotiator$ProtocolSelectionListener;
10: putfield io.netty.handler.ssl.Java9SslEngine.selectionListener:Lio/netty/handler/ssl/JdkApplicationProtocolNegotiator$ProtocolSelectionListener;
11: aload 0
aconst_null
putfield io.netty.handler.ssl.Java9SslEngine.alpnSelector:Lio/netty/handler/ssl/Java9SslEngine$AlpnSelector;
12: aload 1
aload 2
invokeinterface io.netty.handler.ssl.JdkApplicationProtocolNegotiator.protocols:()Ljava/util/List;
invokestatic io.netty.handler.ssl.Java9SslUtils.setApplicationProtocols:(Ljavax/net/ssl/SSLEngine;Ljava/util/List;)V
13: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lio/netty/handler/ssl/Java9SslEngine;
0 14 1 engine Ljavax/net/ssl/SSLEngine;
0 14 2 applicationNegotiator Lio/netty/handler/ssl/JdkApplicationProtocolNegotiator;
0 14 3 isServer Z
MethodParameters:
Name Flags
engine
applicationNegotiator
isServer
private javax.net.ssl.SSLEngineResult verifyProtocolSelection(javax.net.ssl.SSLEngineResult);
descriptor: (Ljavax/net/ssl/SSLEngineResult;)Ljavax/net/ssl/SSLEngineResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual javax.net.ssl.SSLEngineResult.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.FINISHED:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
if_acmpne 13
1: aload 0
getfield io.netty.handler.ssl.Java9SslEngine.alpnSelector:Lio/netty/handler/ssl/Java9SslEngine$AlpnSelector;
ifnonnull 11
2: aload 0
invokevirtual io.netty.handler.ssl.Java9SslEngine.getApplicationProtocol:()Ljava/lang/String;
astore 2
start local 2 3: getstatic io.netty.handler.ssl.Java9SslEngine.$assertionsDisabled:Z
ifne 4
aload 2
ifnonnull 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: StackMap locals: java.lang.String
StackMap stack:
aload 2
invokevirtual java.lang.String.isEmpty:()Z
ifeq 7
5: aload 0
getfield io.netty.handler.ssl.Java9SslEngine.selectionListener:Lio/netty/handler/ssl/JdkApplicationProtocolNegotiator$ProtocolSelectionListener;
invokeinterface io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener.unsupported:()V
6: goto 13
7: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.ssl.Java9SslEngine.selectionListener:Lio/netty/handler/ssl/JdkApplicationProtocolNegotiator$ProtocolSelectionListener;
aload 2
invokeinterface io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener.selected:(Ljava/lang/String;)V
end local 2 8: goto 13
StackMap locals: io.netty.handler.ssl.Java9SslEngine javax.net.ssl.SSLEngineResult
StackMap stack: java.lang.Throwable
9: astore 2
start local 2 10: aload 2
invokestatic io.netty.handler.ssl.SslUtils.toSSLHandshakeException:(Ljava/lang/Throwable;)Ljavax/net/ssl/SSLHandshakeException;
athrow
end local 2 11: StackMap locals:
StackMap stack:
getstatic io.netty.handler.ssl.Java9SslEngine.$assertionsDisabled:Z
ifne 12
aload 0
getfield io.netty.handler.ssl.Java9SslEngine.selectionListener:Lio/netty/handler/ssl/JdkApplicationProtocolNegotiator$ProtocolSelectionListener;
ifnull 12
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
12: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.ssl.Java9SslEngine.alpnSelector:Lio/netty/handler/ssl/Java9SslEngine$AlpnSelector;
invokevirtual io.netty.handler.ssl.Java9SslEngine$AlpnSelector.checkUnsupported:()V
13: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lio/netty/handler/ssl/Java9SslEngine;
0 14 1 result Ljavax/net/ssl/SSLEngineResult;
3 8 2 protocol Ljava/lang/String;
10 11 2 e Ljava/lang/Throwable;
Exception table:
from to target type
2 8 9 Class java.lang.Throwable
Exceptions:
throws javax.net.ssl.SSLException
MethodParameters:
Name Flags
result
public javax.net.ssl.SSLEngineResult wrap(java.nio.ByteBuffer, java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
aload 1
aload 2
invokespecial io.netty.handler.ssl.JdkSslEngine.wrap:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
invokevirtual io.netty.handler.ssl.Java9SslEngine.verifyProtocolSelection:(Ljavax/net/ssl/SSLEngineResult;)Ljavax/net/ssl/SSLEngineResult;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/ssl/Java9SslEngine;
0 1 1 src Ljava/nio/ByteBuffer;
0 1 2 dst Ljava/nio/ByteBuffer;
Exceptions:
throws javax.net.ssl.SSLException
MethodParameters:
Name Flags
src
dst
public javax.net.ssl.SSLEngineResult wrap(java.nio.ByteBuffer[], java.nio.ByteBuffer);
descriptor: ([Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
aload 1
aload 2
invokespecial io.netty.handler.ssl.JdkSslEngine.wrap:([Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
invokevirtual io.netty.handler.ssl.Java9SslEngine.verifyProtocolSelection:(Ljavax/net/ssl/SSLEngineResult;)Ljavax/net/ssl/SSLEngineResult;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/ssl/Java9SslEngine;
0 1 1 srcs [Ljava/nio/ByteBuffer;
0 1 2 dst Ljava/nio/ByteBuffer;
Exceptions:
throws javax.net.ssl.SSLException
MethodParameters:
Name Flags
srcs
dst
public javax.net.ssl.SSLEngineResult wrap(java.nio.ByteBuffer[], int, int, java.nio.ByteBuffer);
descriptor: ([Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 0
aload 1
iload 2
iload 3
aload 4
invokespecial io.netty.handler.ssl.JdkSslEngine.wrap:([Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
invokevirtual io.netty.handler.ssl.Java9SslEngine.verifyProtocolSelection:(Ljavax/net/ssl/SSLEngineResult;)Ljavax/net/ssl/SSLEngineResult;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/ssl/Java9SslEngine;
0 1 1 srcs [Ljava/nio/ByteBuffer;
0 1 2 offset I
0 1 3 len I
0 1 4 dst Ljava/nio/ByteBuffer;
Exceptions:
throws javax.net.ssl.SSLException
MethodParameters:
Name Flags
srcs
offset
len
dst
public javax.net.ssl.SSLEngineResult unwrap(java.nio.ByteBuffer, java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
aload 1
aload 2
invokespecial io.netty.handler.ssl.JdkSslEngine.unwrap:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
invokevirtual io.netty.handler.ssl.Java9SslEngine.verifyProtocolSelection:(Ljavax/net/ssl/SSLEngineResult;)Ljavax/net/ssl/SSLEngineResult;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/ssl/Java9SslEngine;
0 1 1 src Ljava/nio/ByteBuffer;
0 1 2 dst Ljava/nio/ByteBuffer;
Exceptions:
throws javax.net.ssl.SSLException
MethodParameters:
Name Flags
src
dst
public javax.net.ssl.SSLEngineResult unwrap(java.nio.ByteBuffer, java.nio.ByteBuffer[]);
descriptor: (Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
aload 1
aload 2
invokespecial io.netty.handler.ssl.JdkSslEngine.unwrap:(Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
invokevirtual io.netty.handler.ssl.Java9SslEngine.verifyProtocolSelection:(Ljavax/net/ssl/SSLEngineResult;)Ljavax/net/ssl/SSLEngineResult;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/ssl/Java9SslEngine;
0 1 1 src Ljava/nio/ByteBuffer;
0 1 2 dsts [Ljava/nio/ByteBuffer;
Exceptions:
throws javax.net.ssl.SSLException
MethodParameters:
Name Flags
src
dsts
public javax.net.ssl.SSLEngineResult unwrap(java.nio.ByteBuffer, java.nio.ByteBuffer[], int, int);
descriptor: (Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;II)Ljavax/net/ssl/SSLEngineResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 0
aload 1
aload 2
iload 3
iload 4
invokespecial io.netty.handler.ssl.JdkSslEngine.unwrap:(Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;II)Ljavax/net/ssl/SSLEngineResult;
invokevirtual io.netty.handler.ssl.Java9SslEngine.verifyProtocolSelection:(Ljavax/net/ssl/SSLEngineResult;)Ljavax/net/ssl/SSLEngineResult;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/ssl/Java9SslEngine;
0 1 1 src Ljava/nio/ByteBuffer;
0 1 2 dst [Ljava/nio/ByteBuffer;
0 1 3 offset I
0 1 4 len I
Exceptions:
throws javax.net.ssl.SSLException
MethodParameters:
Name Flags
src
dst
offset
len
void setNegotiatedApplicationProtocol(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0000)
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 Lio/netty/handler/ssl/Java9SslEngine;
0 1 1 applicationProtocol Ljava/lang/String;
MethodParameters:
Name Flags
applicationProtocol
public java.lang.String getNegotiatedApplicationProtocol();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual io.netty.handler.ssl.Java9SslEngine.getApplicationProtocol:()Ljava/lang/String;
astore 1
start local 1 1: aload 1
ifnull 5
2: aload 1
invokevirtual java.lang.String.isEmpty:()Z
ifeq 3
aconst_null
goto 4
StackMap locals: java.lang.String
StackMap stack:
3: aload 1
StackMap locals:
StackMap stack: java.lang.String
4: areturn
5: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/netty/handler/ssl/Java9SslEngine;
1 6 1 protocol Ljava/lang/String;
public java.lang.String getApplicationProtocol();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual io.netty.handler.ssl.Java9SslEngine.getWrappedEngine:()Ljavax/net/ssl/SSLEngine;
invokestatic io.netty.handler.ssl.Java9SslUtils.getApplicationProtocol:(Ljavax/net/ssl/SSLEngine;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/ssl/Java9SslEngine;
public java.lang.String getHandshakeApplicationProtocol();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual io.netty.handler.ssl.Java9SslEngine.getWrappedEngine:()Ljavax/net/ssl/SSLEngine;
invokestatic io.netty.handler.ssl.Java9SslUtils.getHandshakeApplicationProtocol:(Ljavax/net/ssl/SSLEngine;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/ssl/Java9SslEngine;
public void setHandshakeApplicationProtocolSelector(java.util.function.BiFunction<javax.net.ssl.SSLEngine, java.util.List<java.lang.String>, java.lang.String>);
descriptor: (Ljava/util/function/BiFunction;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual io.netty.handler.ssl.Java9SslEngine.getWrappedEngine:()Ljavax/net/ssl/SSLEngine;
aload 1
invokestatic io.netty.handler.ssl.Java9SslUtils.setHandshakeApplicationProtocolSelector:(Ljavax/net/ssl/SSLEngine;Ljava/util/function/BiFunction;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/ssl/Java9SslEngine;
0 2 1 selector Ljava/util/function/BiFunction<Ljavax/net/ssl/SSLEngine;Ljava/util/List<Ljava/lang/String;>;Ljava/lang/String;>;
Signature: (Ljava/util/function/BiFunction<Ljavax/net/ssl/SSLEngine;Ljava/util/List<Ljava/lang/String;>;Ljava/lang/String;>;)V
MethodParameters:
Name Flags
selector
public java.util.function.BiFunction<javax.net.ssl.SSLEngine, java.util.List<java.lang.String>, java.lang.String> getHandshakeApplicationProtocolSelector();
descriptor: ()Ljava/util/function/BiFunction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual io.netty.handler.ssl.Java9SslEngine.getWrappedEngine:()Ljavax/net/ssl/SSLEngine;
invokestatic io.netty.handler.ssl.Java9SslUtils.getHandshakeApplicationProtocolSelector:(Ljavax/net/ssl/SSLEngine;)Ljava/util/function/BiFunction;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/ssl/Java9SslEngine;
Signature: ()Ljava/util/function/BiFunction<Ljavax/net/ssl/SSLEngine;Ljava/util/List<Ljava/lang/String;>;Ljava/lang/String;>;
}
SourceFile: "Java9SslEngine.java"
NestMembers:
io.netty.handler.ssl.Java9SslEngine$AlpnSelector
InnerClasses:
private final AlpnSelector = io.netty.handler.ssl.Java9SslEngine$AlpnSelector of io.netty.handler.ssl.Java9SslEngine
public abstract ProtocolSelectionListener = io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener of io.netty.handler.ssl.JdkApplicationProtocolNegotiator
public abstract ProtocolSelectionListenerFactory = io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory of io.netty.handler.ssl.JdkApplicationProtocolNegotiator
public abstract ProtocolSelector = io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector of io.netty.handler.ssl.JdkApplicationProtocolNegotiator
public abstract ProtocolSelectorFactory = io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory of io.netty.handler.ssl.JdkApplicationProtocolNegotiator
public final HandshakeStatus = javax.net.ssl.SSLEngineResult$HandshakeStatus of javax.net.ssl.SSLEngineResult