class com.sun.tools.sjavac.server.PortFileMonitor$1 extends java.util.TimerTask
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.sjavac.server.PortFileMonitor$1
super_class: java.util.TimerTask
{
final com.sun.tools.sjavac.server.PortFileMonitor this$0;
descriptor: Lcom/sun/tools/sjavac/server/PortFileMonitor;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final com.sun.tools.sjavac.Log val$log;
descriptor: Lcom/sun/tools/sjavac/Log;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(com.sun.tools.sjavac.server.PortFileMonitor, com.sun.tools.sjavac.Log);
descriptor: (Lcom/sun/tools/sjavac/server/PortFileMonitor;Lcom/sun/tools/sjavac/Log;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 // com.sun.tools.sjavac.server.PortFileMonitor$1 this
0: .line 62
aload 0 /* this */
aload 1
putfield com.sun.tools.sjavac.server.PortFileMonitor$1.this$0:Lcom/sun/tools/sjavac/server/PortFileMonitor;
aload 0 /* this */
aload 2
putfield com.sun.tools.sjavac.server.PortFileMonitor$1.val$log:Lcom/sun/tools/sjavac/Log;
aload 0 /* this */
invokespecial java.util.TimerTask.<init>:()V
return
end local 0 // com.sun.tools.sjavac.server.PortFileMonitor$1 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/sjavac/server/PortFileMonitor$1;
MethodParameters:
Name Flags
this$0 final
val$log final
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 // com.sun.tools.sjavac.server.PortFileMonitor$1 this
0: .line 64
aload 0 /* this */
getfield com.sun.tools.sjavac.server.PortFileMonitor$1.val$log:Lcom/sun/tools/sjavac/Log;
invokestatic com.sun.tools.sjavac.Log.setLogForCurrentThread:(Lcom/sun/tools/sjavac/Log;)V
1: .line 65
ldc "Checking port file status..."
invokestatic com.sun.tools.sjavac.Log.debug:(Ljava/lang/String;)V
2: .line 67
aload 0 /* this */
getfield com.sun.tools.sjavac.server.PortFileMonitor$1.this$0:Lcom/sun/tools/sjavac/server/PortFileMonitor;
getfield com.sun.tools.sjavac.server.PortFileMonitor.portFile:Lcom/sun/tools/sjavac/server/PortFile;
invokevirtual com.sun.tools.sjavac.server.PortFile.exists:()Z
ifne 5
3: .line 70
aload 0 /* this */
getfield com.sun.tools.sjavac.server.PortFileMonitor$1.this$0:Lcom/sun/tools/sjavac/server/PortFileMonitor;
getfield com.sun.tools.sjavac.server.PortFileMonitor.server:Lcom/sun/tools/sjavac/server/SjavacServer;
ldc "Quitting because portfile was deleted!"
invokevirtual com.sun.tools.sjavac.server.SjavacServer.shutdown:(Ljava/lang/String;)V
4: .line 71
goto 18
StackMap locals:
StackMap stack:
5: aload 0 /* this */
getfield com.sun.tools.sjavac.server.PortFileMonitor$1.this$0:Lcom/sun/tools/sjavac/server/PortFileMonitor;
getfield com.sun.tools.sjavac.server.PortFileMonitor.portFile:Lcom/sun/tools/sjavac/server/PortFile;
invokevirtual com.sun.tools.sjavac.server.PortFile.markedForStop:()Z
ifeq 8
6: .line 76
aload 0 /* this */
getfield com.sun.tools.sjavac.server.PortFileMonitor$1.this$0:Lcom/sun/tools/sjavac/server/PortFileMonitor;
getfield com.sun.tools.sjavac.server.PortFileMonitor.server:Lcom/sun/tools/sjavac/server/SjavacServer;
ldc "Quitting because a portfile.stop file was found!"
invokevirtual com.sun.tools.sjavac.server.SjavacServer.shutdown:(Ljava/lang/String;)V
7: .line 77
goto 18
StackMap locals:
StackMap stack:
8: aload 0 /* this */
getfield com.sun.tools.sjavac.server.PortFileMonitor$1.this$0:Lcom/sun/tools/sjavac/server/PortFileMonitor;
getfield com.sun.tools.sjavac.server.PortFileMonitor.portFile:Lcom/sun/tools/sjavac/server/PortFile;
invokevirtual com.sun.tools.sjavac.server.PortFile.stillMyValues:()Z
ifne 18
9: .line 79
aload 0 /* this */
getfield com.sun.tools.sjavac.server.PortFileMonitor$1.this$0:Lcom/sun/tools/sjavac/server/PortFileMonitor;
getfield com.sun.tools.sjavac.server.PortFileMonitor.server:Lcom/sun/tools/sjavac/server/SjavacServer;
ldc "Quitting because portfile is now owned by another javac server!"
invokevirtual com.sun.tools.sjavac.server.SjavacServer.shutdown:(Ljava/lang/String;)V
10: .line 81
goto 18
StackMap locals:
StackMap stack: java.io.IOException
11: astore 1 /* e */
start local 1 // java.io.IOException e
12: .line 82
ldc "IOException caught in PortFileMonitor."
invokestatic com.sun.tools.sjavac.Log.error:(Ljava/lang/String;)V
13: .line 83
aload 1 /* e */
invokestatic com.sun.tools.sjavac.Log.debug:(Ljava/lang/Throwable;)V
end local 1 // java.io.IOException e
14: goto 18
15: .line 84
StackMap locals:
StackMap stack: java.lang.InterruptedException
astore 1 /* e */
start local 1 // java.lang.InterruptedException e
16: .line 85
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.interrupt:()V
17: .line 86
aload 1 /* e */
invokestatic com.sun.tools.sjavac.Log.error:(Ljava/lang/Throwable;)V
end local 1 // java.lang.InterruptedException e
18: .line 88
StackMap locals:
StackMap stack:
return
end local 0 // com.sun.tools.sjavac.server.PortFileMonitor$1 this
LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lcom/sun/tools/sjavac/server/PortFileMonitor$1;
12 14 1 e Ljava/io/IOException;
16 18 1 e Ljava/lang/InterruptedException;
Exception table:
from to target type
2 10 11 Class java.io.IOException
2 10 15 Class java.lang.InterruptedException
}
SourceFile: "PortFileMonitor.java"
EnclosingMethod: com.sun.tools.sjavac.server.PortFileMonitor.start:()V
NestHost: com.sun.tools.sjavac.server.PortFileMonitor
InnerClasses:
com.sun.tools.sjavac.server.PortFileMonitor$1