public class com.sun.tools.sjavac.server.RequestHandler extends java.lang.Thread
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.tools.sjavac.server.RequestHandler
super_class: java.lang.Thread
{
private final java.net.Socket socket;
descriptor: Ljava/net/Socket;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.sun.tools.sjavac.server.Sjavac sjavac;
descriptor: Lcom/sun/tools/sjavac/server/Sjavac;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(java.net.Socket, com.sun.tools.sjavac.server.Sjavac);
descriptor: (Ljava/net/Socket;Lcom/sun/tools/sjavac/server/Sjavac;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Thread.<init>:()V
1: aload 0
aload 1
putfield com.sun.tools.sjavac.server.RequestHandler.socket:Ljava/net/Socket;
2: aload 0
aload 2
putfield com.sun.tools.sjavac.server.RequestHandler.sjavac:Lcom/sun/tools/sjavac/server/Sjavac;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/sjavac/server/RequestHandler;
0 4 1 socket Ljava/net/Socket;
0 4 2 sjavac Lcom/sun/tools/sjavac/server/Sjavac;
MethodParameters:
Name Flags
socket
sjavac
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=1
start local 0 0: aconst_null
astore 1
aconst_null
astore 2
1: new java.io.BufferedReader
dup
new java.io.InputStreamReader
dup
aload 0
getfield com.sun.tools.sjavac.server.RequestHandler.socket:Ljava/net/Socket;
invokevirtual java.net.Socket.getInputStream:()Ljava/io/InputStream;
invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
astore 3
start local 3 2: new java.io.PrintWriter
dup
aload 0
getfield com.sun.tools.sjavac.server.RequestHandler.socket:Ljava/net/Socket;
invokevirtual java.net.Socket.getOutputStream:()Ljava/io/OutputStream;
iconst_1
invokespecial java.io.PrintWriter.<init>:(Ljava/io/OutputStream;Z)V
astore 4
start local 4 3: new com.sun.tools.sjavac.server.RequestHandler$1
dup
aload 0
aload 4
aload 4
invokespecial com.sun.tools.sjavac.server.RequestHandler$1.<init>:(Lcom/sun/tools/sjavac/server/RequestHandler;Ljava/io/Writer;Ljava/io/Writer;)V
invokestatic com.sun.tools.sjavac.Log.setLogForCurrentThread:(Lcom/sun/tools/sjavac/Log;)V
4: aload 3
invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 5
start local 5 5: iload 5
anewarray java.lang.String
astore 6
start local 6 6: iconst_0
istore 7
start local 7 7: goto 10
8: StackMap locals: com.sun.tools.sjavac.server.RequestHandler java.lang.Throwable java.lang.Throwable java.io.BufferedReader java.io.PrintWriter int java.lang.String[] int
StackMap stack:
aload 6
iload 7
aload 3
invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
aastore
9: iinc 7 1
StackMap locals:
StackMap stack:
10: iload 7
iload 5
if_icmplt 8
end local 7 11: aload 0
invokevirtual com.sun.tools.sjavac.server.RequestHandler.checkInternalErrorLog:()V
12: aload 0
getfield com.sun.tools.sjavac.server.RequestHandler.sjavac:Lcom/sun/tools/sjavac/server/Sjavac;
aload 6
invokeinterface com.sun.tools.sjavac.server.Sjavac.compile:([Ljava/lang/String;)Lcom/sun/tools/javac/main/Main$Result;
astore 7
start local 7 13: aload 4
new java.lang.StringBuilder
dup
ldc "RC:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual com.sun.tools.javac.main.Main$Result.name:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
14: aload 0
invokevirtual com.sun.tools.sjavac.server.RequestHandler.checkInternalErrorLog:()V
end local 7 end local 6 end local 5 15: aload 4
ifnull 18
aload 4
invokevirtual java.io.PrintWriter.close:()V
goto 18
StackMap locals: com.sun.tools.sjavac.server.RequestHandler java.lang.Throwable java.lang.Throwable java.io.BufferedReader java.io.PrintWriter
StackMap stack: java.lang.Throwable
16: astore 1
aload 4
ifnull 17
aload 4
invokevirtual java.io.PrintWriter.close:()V
end local 4 StackMap locals:
StackMap stack:
17: aload 1
athrow
StackMap locals:
StackMap stack:
18: aload 3
ifnull 32
aload 3
invokevirtual java.io.BufferedReader.close:()V
goto 32
StackMap locals:
StackMap stack: java.lang.Throwable
19: astore 2
aload 1
ifnonnull 20
aload 2
astore 1
goto 21
StackMap locals:
StackMap stack:
20: aload 1
aload 2
if_acmpeq 21
aload 1
aload 2
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
21: aload 3
ifnull 22
aload 3
invokevirtual java.io.BufferedReader.close:()V
end local 3 StackMap locals:
StackMap stack:
22: aload 1
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
23: astore 2
aload 1
ifnonnull 24
aload 2
astore 1
goto 25
StackMap locals:
StackMap stack:
24: aload 1
aload 2
if_acmpeq 25
aload 1
aload 2
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
25: aload 1
athrow
StackMap locals: com.sun.tools.sjavac.server.RequestHandler
StackMap stack: java.lang.Exception
26: astore 1
start local 1 27: aload 1
invokestatic com.sun.tools.sjavac.Log.error:(Ljava/lang/Throwable;)V
end local 1 28: aconst_null
invokestatic com.sun.tools.sjavac.Log.setLogForCurrentThread:(Lcom/sun/tools/sjavac/Log;)V
goto 33
29: StackMap locals:
StackMap stack: java.lang.Throwable
astore 8
30: aconst_null
invokestatic com.sun.tools.sjavac.Log.setLogForCurrentThread:(Lcom/sun/tools/sjavac/Log;)V
31: aload 8
athrow
32: StackMap locals:
StackMap stack:
aconst_null
invokestatic com.sun.tools.sjavac.Log.setLogForCurrentThread:(Lcom/sun/tools/sjavac/Log;)V
33: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lcom/sun/tools/sjavac/server/RequestHandler;
2 22 3 in Ljava/io/BufferedReader;
3 17 4 out Ljava/io/PrintWriter;
5 15 5 n I
6 15 6 args [Ljava/lang/String;
7 11 7 i I
13 15 7 rc Lcom/sun/tools/javac/main/Main$Result;
27 28 1 ex Ljava/lang/Exception;
Exception table:
from to target type
3 15 16 any
2 18 19 any
1 23 23 any
0 26 26 Class java.lang.Exception
0 28 29 any
private void checkInternalErrorLog();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=1
start local 0 0: invokestatic com.sun.tools.sjavac.server.ServerMain.getErrorLog:()Lcom/sun/tools/sjavac/server/log/LazyInitFileLog;
invokevirtual com.sun.tools.sjavac.server.log.LazyInitFileLog.getLogDestination:()Ljava/nio/file/Path;
astore 1
start local 1 1: aload 1
ifnull 5
2: new java.lang.StringBuilder
dup
ldc "Server has encountered an internal error. See "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokeinterface java.nio.file.Path.toAbsolutePath:()Ljava/nio/file/Path;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
3: ldc " for details."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
4: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic com.sun.tools.sjavac.Log.error:(Ljava/lang/String;)V
5: StackMap locals: java.nio.file.Path
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/sjavac/server/RequestHandler;
1 6 1 errorLog Ljava/nio/file/Path;
}
SourceFile: "RequestHandler.java"
NestMembers:
com.sun.tools.sjavac.server.RequestHandler$1
InnerClasses:
public final Result = com.sun.tools.javac.main.Main$Result of com.sun.tools.javac.main.Main
com.sun.tools.sjavac.server.RequestHandler$1