class sun.security.ssl.SSLEngineImpl$DelegatedTask implements java.lang.Runnable
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.security.ssl.SSLEngineImpl$DelegatedTask
super_class: java.lang.Object
{
private final sun.security.ssl.SSLEngineImpl engine;
descriptor: Lsun/security/ssl/SSLEngineImpl;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>(sun.security.ssl.SSLEngineImpl);
descriptor: (Lsun/security/ssl/SSLEngineImpl;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // sun.security.ssl.SSLEngineImpl$DelegatedTask this
start local 1 // sun.security.ssl.SSLEngineImpl engineInstance
0: .line 889
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 890
aload 0 /* this */
aload 1 /* engineInstance */
putfield sun.security.ssl.SSLEngineImpl$DelegatedTask.engine:Lsun/security/ssl/SSLEngineImpl;
2: .line 891
return
end local 1 // sun.security.ssl.SSLEngineImpl engineInstance
end local 0 // sun.security.ssl.SSLEngineImpl$DelegatedTask this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/security/ssl/SSLEngineImpl$DelegatedTask;
0 3 1 engineInstance Lsun/security/ssl/SSLEngineImpl;
MethodParameters:
Name Flags
engineInstance
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=1
start local 0 // sun.security.ssl.SSLEngineImpl$DelegatedTask this
0: .line 895
aload 0 /* this */
getfield sun.security.ssl.SSLEngineImpl$DelegatedTask.engine:Lsun/security/ssl/SSLEngineImpl;
dup
astore 1
monitorenter
1: .line 896
aload 0 /* this */
getfield sun.security.ssl.SSLEngineImpl$DelegatedTask.engine:Lsun/security/ssl/SSLEngineImpl;
getfield sun.security.ssl.SSLEngineImpl.conContext:Lsun/security/ssl/TransportContext;
getfield sun.security.ssl.TransportContext.handshakeContext:Lsun/security/ssl/HandshakeContext;
astore 2 /* hc */
start local 2 // sun.security.ssl.HandshakeContext hc
2: .line 897
aload 2 /* hc */
ifnull 3
aload 2 /* hc */
getfield sun.security.ssl.HandshakeContext.delegatedActions:Ljava/util/Queue;
invokeinterface java.util.Queue.isEmpty:()Z
ifeq 5
3: .line 898
StackMap locals: sun.security.ssl.SSLEngineImpl sun.security.ssl.HandshakeContext
StackMap stack:
aload 1
monitorexit
4: return
5: .line 903
StackMap locals:
StackMap stack:
new sun.security.ssl.SSLEngineImpl$DelegatedTask$DelegatedAction
dup
aload 2 /* hc */
invokespecial sun.security.ssl.SSLEngineImpl$DelegatedTask$DelegatedAction.<init>:(Lsun/security/ssl/HandshakeContext;)V
aload 0 /* this */
getfield sun.security.ssl.SSLEngineImpl$DelegatedTask.engine:Lsun/security/ssl/SSLEngineImpl;
getfield sun.security.ssl.SSLEngineImpl.conContext:Lsun/security/ssl/TransportContext;
getfield sun.security.ssl.TransportContext.acc:Ljava/security/AccessControlContext;
6: .line 902
invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;
pop
7: .line 904
goto 30
StackMap locals:
StackMap stack: java.security.PrivilegedActionException
8: astore 3 /* pae */
start local 3 // java.security.PrivilegedActionException pae
9: .line 907
aload 3 /* pae */
invokevirtual java.security.PrivilegedActionException.getException:()Ljava/lang/Exception;
astore 4 /* reportedException */
start local 4 // java.lang.Exception reportedException
10: .line 910
aload 0 /* this */
getfield sun.security.ssl.SSLEngineImpl$DelegatedTask.engine:Lsun/security/ssl/SSLEngineImpl;
getfield sun.security.ssl.SSLEngineImpl.conContext:Lsun/security/ssl/TransportContext;
getfield sun.security.ssl.TransportContext.delegatedThrown:Ljava/lang/Exception;
ifnonnull 12
11: .line 911
aload 0 /* this */
getfield sun.security.ssl.SSLEngineImpl$DelegatedTask.engine:Lsun/security/ssl/SSLEngineImpl;
getfield sun.security.ssl.SSLEngineImpl.conContext:Lsun/security/ssl/TransportContext;
aload 4 /* reportedException */
putfield sun.security.ssl.TransportContext.delegatedThrown:Ljava/lang/Exception;
12: .line 917
StackMap locals: java.security.PrivilegedActionException java.lang.Exception
StackMap stack:
aload 0 /* this */
getfield sun.security.ssl.SSLEngineImpl$DelegatedTask.engine:Lsun/security/ssl/SSLEngineImpl;
getfield sun.security.ssl.SSLEngineImpl.conContext:Lsun/security/ssl/TransportContext;
getfield sun.security.ssl.TransportContext.handshakeContext:Lsun/security/ssl/HandshakeContext;
astore 2 /* hc */
13: .line 918
aload 2 /* hc */
ifnull 16
14: .line 919
aload 2 /* hc */
aload 4 /* reportedException */
putfield sun.security.ssl.HandshakeContext.delegatedThrown:Ljava/lang/Exception;
15: .line 920
goto 30
StackMap locals:
StackMap stack:
16: aload 0 /* this */
getfield sun.security.ssl.SSLEngineImpl$DelegatedTask.engine:Lsun/security/ssl/SSLEngineImpl;
getfield sun.security.ssl.SSLEngineImpl.conContext:Lsun/security/ssl/TransportContext;
getfield sun.security.ssl.TransportContext.closeReason:Ljava/lang/Exception;
ifnull 30
17: .line 922
aload 0 /* this */
getfield sun.security.ssl.SSLEngineImpl$DelegatedTask.engine:Lsun/security/ssl/SSLEngineImpl;
getfield sun.security.ssl.SSLEngineImpl.conContext:Lsun/security/ssl/TransportContext;
18: .line 923
aload 4 /* reportedException */
invokestatic sun.security.ssl.SSLEngineImpl.getTaskThrown:(Ljava/lang/Exception;)Ljavax/net/ssl/SSLException;
19: .line 922
putfield sun.security.ssl.TransportContext.closeReason:Ljava/lang/Exception;
end local 4 // java.lang.Exception reportedException
end local 3 // java.security.PrivilegedActionException pae
20: goto 30
21: .line 925
StackMap locals: sun.security.ssl.SSLEngineImpl$DelegatedTask sun.security.ssl.SSLEngineImpl sun.security.ssl.HandshakeContext
StackMap stack: java.lang.RuntimeException
astore 3 /* rte */
start local 3 // java.lang.RuntimeException rte
22: .line 930
aload 0 /* this */
getfield sun.security.ssl.SSLEngineImpl$DelegatedTask.engine:Lsun/security/ssl/SSLEngineImpl;
getfield sun.security.ssl.SSLEngineImpl.conContext:Lsun/security/ssl/TransportContext;
getfield sun.security.ssl.TransportContext.delegatedThrown:Ljava/lang/Exception;
ifnonnull 24
23: .line 931
aload 0 /* this */
getfield sun.security.ssl.SSLEngineImpl$DelegatedTask.engine:Lsun/security/ssl/SSLEngineImpl;
getfield sun.security.ssl.SSLEngineImpl.conContext:Lsun/security/ssl/TransportContext;
aload 3 /* rte */
putfield sun.security.ssl.TransportContext.delegatedThrown:Ljava/lang/Exception;
24: .line 937
StackMap locals: java.lang.RuntimeException
StackMap stack:
aload 0 /* this */
getfield sun.security.ssl.SSLEngineImpl$DelegatedTask.engine:Lsun/security/ssl/SSLEngineImpl;
getfield sun.security.ssl.SSLEngineImpl.conContext:Lsun/security/ssl/TransportContext;
getfield sun.security.ssl.TransportContext.handshakeContext:Lsun/security/ssl/HandshakeContext;
astore 2 /* hc */
25: .line 938
aload 2 /* hc */
ifnull 28
26: .line 939
aload 2 /* hc */
aload 3 /* rte */
putfield sun.security.ssl.HandshakeContext.delegatedThrown:Ljava/lang/Exception;
27: .line 940
goto 30
StackMap locals:
StackMap stack:
28: aload 0 /* this */
getfield sun.security.ssl.SSLEngineImpl$DelegatedTask.engine:Lsun/security/ssl/SSLEngineImpl;
getfield sun.security.ssl.SSLEngineImpl.conContext:Lsun/security/ssl/TransportContext;
getfield sun.security.ssl.TransportContext.closeReason:Ljava/lang/Exception;
ifnull 30
29: .line 942
aload 0 /* this */
getfield sun.security.ssl.SSLEngineImpl$DelegatedTask.engine:Lsun/security/ssl/SSLEngineImpl;
getfield sun.security.ssl.SSLEngineImpl.conContext:Lsun/security/ssl/TransportContext;
aload 3 /* rte */
putfield sun.security.ssl.TransportContext.closeReason:Ljava/lang/Exception;
end local 3 // java.lang.RuntimeException rte
30: .line 948
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield sun.security.ssl.SSLEngineImpl$DelegatedTask.engine:Lsun/security/ssl/SSLEngineImpl;
getfield sun.security.ssl.SSLEngineImpl.conContext:Lsun/security/ssl/TransportContext;
getfield sun.security.ssl.TransportContext.handshakeContext:Lsun/security/ssl/HandshakeContext;
astore 2 /* hc */
31: .line 949
aload 2 /* hc */
ifnull 33
32: .line 950
aload 2 /* hc */
iconst_0
putfield sun.security.ssl.HandshakeContext.taskDelegated:Z
end local 2 // sun.security.ssl.HandshakeContext hc
33: .line 895
StackMap locals:
StackMap stack:
aload 1
monitorexit
34: goto 37
StackMap locals:
StackMap stack: java.lang.Throwable
35: aload 1
monitorexit
36: athrow
37: .line 953
StackMap locals:
StackMap stack:
return
end local 0 // sun.security.ssl.SSLEngineImpl$DelegatedTask this
LocalVariableTable:
Start End Slot Name Signature
0 38 0 this Lsun/security/ssl/SSLEngineImpl$DelegatedTask;
2 33 2 hc Lsun/security/ssl/HandshakeContext;
9 20 3 pae Ljava/security/PrivilegedActionException;
10 20 4 reportedException Ljava/lang/Exception;
22 30 3 rte Ljava/lang/RuntimeException;
Exception table:
from to target type
5 7 8 Class java.security.PrivilegedActionException
5 7 21 Class java.lang.RuntimeException
1 4 35 any
5 34 35 any
35 36 35 any
}
SourceFile: "SSLEngineImpl.java"
NestHost: sun.security.ssl.SSLEngineImpl
InnerClasses:
private DelegatedTask = sun.security.ssl.SSLEngineImpl$DelegatedTask of sun.security.ssl.SSLEngineImpl
private DelegatedAction = sun.security.ssl.SSLEngineImpl$DelegatedTask$DelegatedAction of sun.security.ssl.SSLEngineImpl$DelegatedTask