class sun.rmi.server.Activation$Shutdown extends java.lang.Thread
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.rmi.server.Activation$Shutdown
super_class: java.lang.Thread
{
final sun.rmi.server.Activation this$0;
descriptor: Lsun/rmi/server/Activation;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(sun.rmi.server.Activation);
descriptor: (Lsun/rmi/server/Activation;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // sun.rmi.server.Activation$Shutdown this
0: .line 666
aload 0 /* this */
aload 1
putfield sun.rmi.server.Activation$Shutdown.this$0:Lsun/rmi/server/Activation;
1: .line 667
aload 0 /* this */
ldc "rmid Shutdown"
invokespecial java.lang.Thread.<init>:(Ljava/lang/String;)V
2: .line 668
return
end local 0 // sun.rmi.server.Activation$Shutdown this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/rmi/server/Activation$Shutdown;
MethodParameters:
Name Flags
this$0 final
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=7, args_size=1
start local 0 // sun.rmi.server.Activation$Shutdown this
0: .line 675
aload 0 /* this */
getfield sun.rmi.server.Activation$Shutdown.this$0:Lsun/rmi/server/Activation;
getfield sun.rmi.server.Activation.activator:Ljava/rmi/activation/Activator;
invokestatic sun.rmi.server.Activation.unexport:(Ljava/rmi/Remote;)V
1: .line 676
aload 0 /* this */
getfield sun.rmi.server.Activation$Shutdown.this$0:Lsun/rmi/server/Activation;
getfield sun.rmi.server.Activation.system:Ljava/rmi/activation/ActivationSystem;
invokestatic sun.rmi.server.Activation.unexport:(Ljava/rmi/Remote;)V
2: .line 680
aload 0 /* this */
getfield sun.rmi.server.Activation$Shutdown.this$0:Lsun/rmi/server/Activation;
getfield sun.rmi.server.Activation.groupTable:Ljava/util/Map;
dup
astore 2
monitorenter
3: .line 681
aload 0 /* this */
getfield sun.rmi.server.Activation$Shutdown.this$0:Lsun/rmi/server/Activation;
getfield sun.rmi.server.Activation.groupTable:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
4: .line 682
aload 0 /* this */
getfield sun.rmi.server.Activation$Shutdown.this$0:Lsun/rmi/server/Activation;
getfield sun.rmi.server.Activation.groupTable:Ljava/util/Map;
invokeinterface java.util.Map.size:()I
anewarray sun.rmi.server.Activation$GroupEntry
invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast sun.rmi.server.Activation$GroupEntry[]
5: .line 681
astore 1 /* groupEntries */
start local 1 // sun.rmi.server.Activation$GroupEntry[] groupEntries
6: .line 680
aload 2
monitorexit
7: goto 10
end local 1 // sun.rmi.server.Activation$GroupEntry[] groupEntries
StackMap locals: sun.rmi.server.Activation$Shutdown top java.util.Map
StackMap stack: java.lang.Throwable
8: aload 2
monitorexit
9: athrow
start local 1 // sun.rmi.server.Activation$GroupEntry[] groupEntries
10: .line 684
StackMap locals: sun.rmi.server.Activation$Shutdown sun.rmi.server.Activation$GroupEntry[]
StackMap stack:
aload 1 /* groupEntries */
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 14
StackMap locals: sun.rmi.server.Activation$Shutdown sun.rmi.server.Activation$GroupEntry[] top int int sun.rmi.server.Activation$GroupEntry[]
StackMap stack:
11: aload 5
iload 3
aaload
astore 2 /* groupEntry */
start local 2 // sun.rmi.server.Activation$GroupEntry groupEntry
12: .line 685
aload 2 /* groupEntry */
invokevirtual sun.rmi.server.Activation$GroupEntry.shutdown:()V
end local 2 // sun.rmi.server.Activation$GroupEntry groupEntry
13: .line 684
iinc 3 1
StackMap locals:
StackMap stack:
14: iload 3
iload 4
if_icmplt 11
15: .line 688
invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
aload 0 /* this */
getfield sun.rmi.server.Activation$Shutdown.this$0:Lsun/rmi/server/Activation;
getfield sun.rmi.server.Activation.shutdownHook:Ljava/lang/Thread;
invokevirtual java.lang.Runtime.removeShutdownHook:(Ljava/lang/Thread;)Z
pop
16: .line 693
aload 0 /* this */
getfield sun.rmi.server.Activation$Shutdown.this$0:Lsun/rmi/server/Activation;
getfield sun.rmi.server.Activation.monitor:Ljava/rmi/activation/ActivationMonitor;
invokestatic sun.rmi.server.Activation.unexport:(Ljava/rmi/Remote;)V
17: .line 704
aload 0 /* this */
getfield sun.rmi.server.Activation$Shutdown.this$0:Lsun/rmi/server/Activation;
getfield sun.rmi.server.Activation.log:Lsun/rmi/log/ReliableLog;
dup
astore 2
monitorenter
18: .line 705
aload 0 /* this */
getfield sun.rmi.server.Activation$Shutdown.this$0:Lsun/rmi/server/Activation;
getfield sun.rmi.server.Activation.log:Lsun/rmi/log/ReliableLog;
invokevirtual sun.rmi.log.ReliableLog.close:()V
19: .line 704
aload 2
monitorexit
20: goto 29
StackMap locals: sun.rmi.server.Activation$Shutdown sun.rmi.server.Activation$GroupEntry[] sun.rmi.log.ReliableLog
StackMap stack: java.lang.Throwable
21: aload 2
monitorexit
22: athrow
23: .line 707
StackMap locals: sun.rmi.server.Activation$Shutdown sun.rmi.server.Activation$GroupEntry[]
StackMap stack: java.io.IOException
pop
end local 1 // sun.rmi.server.Activation$GroupEntry[] groupEntries
24: .line 710
goto 29
StackMap locals: sun.rmi.server.Activation$Shutdown
StackMap stack: java.lang.Throwable
25: astore 6
26: .line 717
getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc "rmid.daemon.shutdown"
invokestatic sun.rmi.server.Activation.getTextResource:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
27: .line 718
iconst_0
invokestatic java.lang.System.exit:(I)V
28: .line 719
aload 6
athrow
29: .line 717
StackMap locals:
StackMap stack:
getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc "rmid.daemon.shutdown"
invokestatic sun.rmi.server.Activation.getTextResource:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
30: .line 718
iconst_0
invokestatic java.lang.System.exit:(I)V
31: .line 720
return
end local 0 // sun.rmi.server.Activation$Shutdown this
LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lsun/rmi/server/Activation$Shutdown;
6 8 1 groupEntries [Lsun/rmi/server/Activation$GroupEntry;
10 24 1 groupEntries [Lsun/rmi/server/Activation$GroupEntry;
12 13 2 groupEntry Lsun/rmi/server/Activation$GroupEntry;
Exception table:
from to target type
3 7 8 any
8 9 8 any
18 20 21 any
21 22 21 any
17 23 23 Class java.io.IOException
0 25 25 any
}
SourceFile: "Activation.java"
NestHost: sun.rmi.server.Activation
InnerClasses:
private GroupEntry = sun.rmi.server.Activation$GroupEntry of sun.rmi.server.Activation
private Shutdown = sun.rmi.server.Activation$Shutdown of sun.rmi.server.Activation