public class org.h2.message.TraceSystem implements org.h2.message.TraceWriter
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.h2.message.TraceSystem
super_class: java.lang.Object
{
public static final int PARENT;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -1
public static final int OFF;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int ERROR;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int INFO;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int DEBUG;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 3
public static final int ADAPTER;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 4
public static final int DEFAULT_TRACE_LEVEL_SYSTEM_OUT;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int DEFAULT_TRACE_LEVEL_FILE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int DEFAULT_MAX_FILE_SIZE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 67108864
private static final int CHECK_SIZE_EACH_WRITES;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4096
private int levelSystemOut;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int levelFile;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int levelMax;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int maxFileSize;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private java.lang.String fileName;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private final java.util.concurrent.atomic.AtomicReferenceArray<org.h2.message.Trace> traces;
descriptor: Ljava/util/concurrent/atomic/AtomicReferenceArray;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/atomic/AtomicReferenceArray<Lorg/h2/message/Trace;>;
private java.text.SimpleDateFormat dateFormat;
descriptor: Ljava/text/SimpleDateFormat;
flags: (0x0002) ACC_PRIVATE
private java.io.Writer fileWriter;
descriptor: Ljava/io/Writer;
flags: (0x0002) ACC_PRIVATE
private java.io.PrintWriter printWriter;
descriptor: Ljava/io/PrintWriter;
flags: (0x0002) ACC_PRIVATE
private int checkSize;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean closed;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean writingErrorLogged;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private org.h2.message.TraceWriter writer;
descriptor: Lorg/h2/message/TraceWriter;
flags: (0x0002) ACC_PRIVATE
private java.io.PrintStream sysOut;
descriptor: Ljava/io/PrintStream;
flags: (0x0002) ACC_PRIVATE
public void <init>(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_0
putfield org.h2.message.TraceSystem.levelSystemOut:I
2: aload 0
iconst_1
putfield org.h2.message.TraceSystem.levelFile:I
3: aload 0
ldc 67108864
putfield org.h2.message.TraceSystem.maxFileSize:I
4: aload 0
5: new java.util.concurrent.atomic.AtomicReferenceArray
dup
getstatic org.h2.message.Trace.MODULE_NAMES:[Ljava/lang/String;
arraylength
invokespecial java.util.concurrent.atomic.AtomicReferenceArray.<init>:(I)V
putfield org.h2.message.TraceSystem.traces:Ljava/util/concurrent/atomic/AtomicReferenceArray;
6: aload 0
aload 0
putfield org.h2.message.TraceSystem.writer:Lorg/h2/message/TraceWriter;
7: aload 0
getstatic java.lang.System.out:Ljava/io/PrintStream;
putfield org.h2.message.TraceSystem.sysOut:Ljava/io/PrintStream;
8: aload 0
aload 1
putfield org.h2.message.TraceSystem.fileName:Ljava/lang/String;
9: aload 0
invokevirtual org.h2.message.TraceSystem.updateLevel:()V
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/h2/message/TraceSystem;
0 11 1 fileName Ljava/lang/String;
MethodParameters:
Name Flags
fileName
private void updateLevel();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield org.h2.message.TraceSystem.levelSystemOut:I
aload 0
getfield org.h2.message.TraceSystem.levelFile:I
invokestatic java.lang.Math.max:(II)I
putfield org.h2.message.TraceSystem.levelMax:I
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/message/TraceSystem;
public void setSysOut(java.io.PrintStream);
descriptor: (Ljava/io/PrintStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.h2.message.TraceSystem.sysOut:Ljava/io/PrintStream;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/message/TraceSystem;
0 2 1 out Ljava/io/PrintStream;
MethodParameters:
Name Flags
out
public org.h2.message.Trace getTrace(int);
descriptor: (I)Lorg/h2/message/Trace;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.message.TraceSystem.traces:Ljava/util/concurrent/atomic/AtomicReferenceArray;
iload 1
invokevirtual java.util.concurrent.atomic.AtomicReferenceArray.get:(I)Ljava/lang/Object;
checkcast org.h2.message.Trace
astore 2
start local 2 1: aload 2
ifnonnull 5
2: new org.h2.message.Trace
dup
aload 0
getfield org.h2.message.TraceSystem.writer:Lorg/h2/message/TraceWriter;
iload 1
invokespecial org.h2.message.Trace.<init>:(Lorg/h2/message/TraceWriter;I)V
astore 2
3: aload 0
getfield org.h2.message.TraceSystem.traces:Ljava/util/concurrent/atomic/AtomicReferenceArray;
iload 1
aconst_null
aload 2
invokevirtual java.util.concurrent.atomic.AtomicReferenceArray.compareAndSet:(ILjava/lang/Object;Ljava/lang/Object;)Z
ifne 5
4: aload 0
getfield org.h2.message.TraceSystem.traces:Ljava/util/concurrent/atomic/AtomicReferenceArray;
iload 1
invokevirtual java.util.concurrent.atomic.AtomicReferenceArray.get:(I)Ljava/lang/Object;
checkcast org.h2.message.Trace
astore 2
5: StackMap locals: org.h2.message.Trace
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/h2/message/TraceSystem;
0 6 1 moduleId I
1 6 2 t Lorg/h2/message/Trace;
MethodParameters:
Name Flags
moduleId
public org.h2.message.Trace getTrace(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/message/Trace;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new org.h2.message.Trace
dup
aload 0
getfield org.h2.message.TraceSystem.writer:Lorg/h2/message/TraceWriter;
aload 1
invokespecial org.h2.message.Trace.<init>:(Lorg/h2/message/TraceWriter;Ljava/lang/String;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/message/TraceSystem;
0 1 1 module Ljava/lang/String;
MethodParameters:
Name Flags
module
public boolean isEnabled(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.message.TraceSystem.levelMax:I
iconst_4
if_icmpne 2
1: aload 0
getfield org.h2.message.TraceSystem.writer:Lorg/h2/message/TraceWriter;
iload 1
invokeinterface org.h2.message.TraceWriter.isEnabled:(I)Z
ireturn
2: StackMap locals:
StackMap stack:
iload 1
aload 0
getfield org.h2.message.TraceSystem.levelMax:I
if_icmpgt 3
iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/message/TraceSystem;
0 4 1 level I
MethodParameters:
Name Flags
level
public void setFileName(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.h2.message.TraceSystem.fileName:Ljava/lang/String;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/message/TraceSystem;
0 2 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public void setMaxFileSize(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.message.TraceSystem.maxFileSize:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/message/TraceSystem;
0 2 1 max I
MethodParameters:
Name Flags
max
public void setLevelSystemOut(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.message.TraceSystem.levelSystemOut:I
1: aload 0
invokevirtual org.h2.message.TraceSystem.updateLevel:()V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/message/TraceSystem;
0 3 1 level I
MethodParameters:
Name Flags
level
public void setLevelFile(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: iload 1
iconst_4
if_icmpne 16
1: ldc "org.h2.message.TraceWriterAdapter"
astore 2
start local 2 2: aload 0
aload 2
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getDeclaredConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
iconst_0
anewarray java.lang.Object
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.message.TraceWriter
putfield org.h2.message.TraceSystem.writer:Lorg/h2/message/TraceWriter;
3: goto 8
StackMap locals: org.h2.message.TraceSystem int java.lang.String
StackMap stack: java.lang.Throwable
4: astore 3
start local 3 5: ldc 90086
aload 3
iconst_1
anewarray java.lang.String
dup
iconst_0
aload 2
aastore
invokestatic org.h2.message.DbException.get:(ILjava/lang/Throwable;[Ljava/lang/String;)Lorg/h2/message/DbException;
astore 3
6: aload 0
iconst_1
iconst_2
aload 2
aload 3
invokevirtual org.h2.message.TraceSystem.write:(IILjava/lang/String;Ljava/lang/Throwable;)V
7: return
end local 3 8: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.message.TraceSystem.fileName:Ljava/lang/String;
astore 3
start local 3 9: aload 3
ifnull 16
10: aload 3
ldc ".trace.db"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 12
11: aload 3
iconst_0
aload 3
invokevirtual java.lang.String.length:()I
ldc ".trace.db"
invokevirtual java.lang.String.length:()I
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 3
12: StackMap locals: java.lang.String
StackMap stack:
aload 3
bipush 47
invokevirtual java.lang.String.lastIndexOf:(I)I
aload 3
bipush 92
invokevirtual java.lang.String.lastIndexOf:(I)I
invokestatic java.lang.Math.max:(II)I
istore 4
start local 4 13: iload 4
iflt 15
14: aload 3
iload 4
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 3
15: StackMap locals: int
StackMap stack:
aload 0
getfield org.h2.message.TraceSystem.writer:Lorg/h2/message/TraceWriter;
aload 3
invokeinterface org.h2.message.TraceWriter.setName:(Ljava/lang/String;)V
end local 4 end local 3 end local 2 16: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield org.h2.message.TraceSystem.levelFile:I
17: aload 0
invokevirtual org.h2.message.TraceSystem.updateLevel:()V
18: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/h2/message/TraceSystem;
0 19 1 level I
2 16 2 adapterClass Ljava/lang/String;
5 8 3 e Ljava/lang/Throwable;
9 16 3 name Ljava/lang/String;
13 16 4 idx I
Exception table:
from to target type
2 3 4 Class java.lang.Throwable
MethodParameters:
Name Flags
level
public int getLevelFile();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.message.TraceSystem.levelFile:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/message/TraceSystem;
private synchronized java.lang.String format(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.h2.message.TraceSystem.dateFormat:Ljava/text/SimpleDateFormat;
ifnonnull 2
1: aload 0
new java.text.SimpleDateFormat
dup
ldc "yyyy-MM-dd HH:mm:ss "
invokespecial java.text.SimpleDateFormat.<init>:(Ljava/lang/String;)V
putfield org.h2.message.TraceSystem.dateFormat:Ljava/text/SimpleDateFormat;
2: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
getfield org.h2.message.TraceSystem.dateFormat:Ljava/text/SimpleDateFormat;
invokestatic java.lang.System.currentTimeMillis:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokevirtual java.text.SimpleDateFormat.format:(Ljava/lang/Object;)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/message/TraceSystem;
0 3 1 module Ljava/lang/String;
0 3 2 s Ljava/lang/String;
MethodParameters:
Name Flags
module
s
public void write(int, int, java.lang.String, java.lang.Throwable);
descriptor: (IILjava/lang/String;Ljava/lang/Throwable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iload 1
getstatic org.h2.message.Trace.MODULE_NAMES:[Ljava/lang/String;
iload 2
aaload
aload 3
aload 4
invokevirtual org.h2.message.TraceSystem.write:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/message/TraceSystem;
0 2 1 level I
0 2 2 moduleId I
0 2 3 s Ljava/lang/String;
0 2 4 t Ljava/lang/Throwable;
MethodParameters:
Name Flags
level
moduleId
s
t
public void write(int, java.lang.String, java.lang.String, java.lang.Throwable);
descriptor: (ILjava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iload 1
aload 0
getfield org.h2.message.TraceSystem.levelSystemOut:I
if_icmple 1
iload 1
aload 0
getfield org.h2.message.TraceSystem.levelMax:I
if_icmple 4
1: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.message.TraceSystem.sysOut:Ljava/io/PrintStream;
aload 0
aload 2
aload 3
invokevirtual org.h2.message.TraceSystem.format:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
2: aload 4
ifnull 4
aload 0
getfield org.h2.message.TraceSystem.levelSystemOut:I
iconst_3
if_icmpne 4
3: aload 4
aload 0
getfield org.h2.message.TraceSystem.sysOut:Ljava/io/PrintStream;
invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintStream;)V
4: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.message.TraceSystem.fileName:Ljava/lang/String;
ifnull 7
5: iload 1
aload 0
getfield org.h2.message.TraceSystem.levelFile:I
if_icmpgt 7
6: aload 0
aload 0
aload 2
aload 3
invokevirtual org.h2.message.TraceSystem.format:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
aload 4
invokevirtual org.h2.message.TraceSystem.writeFile:(Ljava/lang/String;Ljava/lang/Throwable;)V
7: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/h2/message/TraceSystem;
0 8 1 level I
0 8 2 module Ljava/lang/String;
0 8 3 s Ljava/lang/String;
0 8 4 t Ljava/lang/Throwable;
MethodParameters:
Name Flags
level
module
s
t
private synchronized void writeFile(java.lang.String, java.lang.Throwable);
descriptor: (Ljava/lang/String;Ljava/lang/Throwable;)V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
dup
getfield org.h2.message.TraceSystem.checkSize:I
dup_x1
iconst_1
iadd
putfield org.h2.message.TraceSystem.checkSize:I
sipush 4096
if_icmplt 7
1: aload 0
iconst_0
putfield org.h2.message.TraceSystem.checkSize:I
2: aload 0
invokevirtual org.h2.message.TraceSystem.closeWriter:()V
3: aload 0
getfield org.h2.message.TraceSystem.maxFileSize:I
ifle 7
aload 0
getfield org.h2.message.TraceSystem.fileName:Ljava/lang/String;
invokestatic org.h2.store.fs.FileUtils.size:(Ljava/lang/String;)J
aload 0
getfield org.h2.message.TraceSystem.maxFileSize:I
i2l
lcmp
ifle 7
4: new java.lang.StringBuilder
dup
aload 0
getfield org.h2.message.TraceSystem.fileName:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".old"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
start local 3 5: aload 3
invokestatic org.h2.store.fs.FileUtils.delete:(Ljava/lang/String;)V
6: aload 0
getfield org.h2.message.TraceSystem.fileName:Ljava/lang/String;
aload 3
invokestatic org.h2.store.fs.FileUtils.move:(Ljava/lang/String;Ljava/lang/String;)V
end local 3 7: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.message.TraceSystem.openWriter:()Z
ifne 9
8: return
9: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.message.TraceSystem.printWriter:Ljava/io/PrintWriter;
aload 1
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
10: aload 2
ifnull 20
11: aload 0
getfield org.h2.message.TraceSystem.levelFile:I
iconst_1
if_icmpne 19
aload 2
instanceof org.h2.jdbc.JdbcException
ifeq 19
12: aload 2
checkcast org.h2.jdbc.JdbcException
astore 3
start local 3 13: aload 3
invokeinterface org.h2.jdbc.JdbcException.getErrorCode:()I
istore 4
start local 4 14: iload 4
invokestatic org.h2.api.ErrorCode.isCommon:(I)Z
ifeq 17
15: aload 0
getfield org.h2.message.TraceSystem.printWriter:Ljava/io/PrintWriter;
aload 2
invokevirtual java.lang.Throwable.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
16: goto 20
17: StackMap locals: org.h2.jdbc.JdbcException int
StackMap stack:
aload 2
aload 0
getfield org.h2.message.TraceSystem.printWriter:Ljava/io/PrintWriter;
invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintWriter;)V
end local 4 end local 3 18: goto 20
19: StackMap locals:
StackMap stack:
aload 2
aload 0
getfield org.h2.message.TraceSystem.printWriter:Ljava/io/PrintWriter;
invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintWriter;)V
20: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.message.TraceSystem.printWriter:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
21: aload 0
getfield org.h2.message.TraceSystem.closed:Z
ifeq 26
22: aload 0
invokevirtual org.h2.message.TraceSystem.closeWriter:()V
23: goto 26
StackMap locals:
StackMap stack: java.lang.Exception
24: astore 3
start local 3 25: aload 0
aload 3
invokevirtual org.h2.message.TraceSystem.logWritingError:(Ljava/lang/Exception;)V
end local 3 26: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lorg/h2/message/TraceSystem;
0 27 1 s Ljava/lang/String;
0 27 2 t Ljava/lang/Throwable;
5 7 3 old Ljava/lang/String;
13 18 3 se Lorg/h2/jdbc/JdbcException;
14 18 4 code I
25 26 3 e Ljava/lang/Exception;
Exception table:
from to target type
0 8 24 Class java.lang.Exception
9 23 24 Class java.lang.Exception
MethodParameters:
Name Flags
s
t
private void logWritingError(java.lang.Exception);
descriptor: (Ljava/lang/Exception;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.message.TraceSystem.writingErrorLogged:Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield org.h2.message.TraceSystem.writingErrorLogged:Z
3: ldc 90034
aload 1
iconst_2
anewarray java.lang.String
dup
iconst_0
aload 0
getfield org.h2.message.TraceSystem.fileName:Ljava/lang/String;
aastore
dup
iconst_1
aload 1
invokevirtual java.lang.Exception.toString:()Ljava/lang/String;
aastore
4: invokestatic org.h2.message.DbException.get:(ILjava/lang/Throwable;[Ljava/lang/String;)Lorg/h2/message/DbException;
astore 2
start local 2 5: aload 0
aconst_null
putfield org.h2.message.TraceSystem.fileName:Ljava/lang/String;
6: aload 0
getfield org.h2.message.TraceSystem.sysOut:Ljava/io/PrintStream;
aload 2
invokevirtual java.io.PrintStream.println:(Ljava/lang/Object;)V
7: aload 2
invokevirtual java.lang.Exception.printStackTrace:()V
8: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/h2/message/TraceSystem;
0 9 1 e Ljava/lang/Exception;
5 9 2 se Ljava/lang/Exception;
MethodParameters:
Name Flags
e
private boolean openWriter();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.message.TraceSystem.printWriter:Ljava/io/PrintWriter;
ifnonnull 12
1: aload 0
getfield org.h2.message.TraceSystem.fileName:Ljava/lang/String;
invokestatic org.h2.store.fs.FileUtils.getParent:(Ljava/lang/String;)Ljava/lang/String;
invokestatic org.h2.store.fs.FileUtils.createDirectories:(Ljava/lang/String;)V
2: aload 0
getfield org.h2.message.TraceSystem.fileName:Ljava/lang/String;
invokestatic org.h2.store.fs.FileUtils.exists:(Ljava/lang/String;)Z
ifeq 4
aload 0
getfield org.h2.message.TraceSystem.fileName:Ljava/lang/String;
invokestatic org.h2.store.fs.FileUtils.canWrite:(Ljava/lang/String;)Z
ifne 4
3: iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 0
5: aload 0
getfield org.h2.message.TraceSystem.fileName:Ljava/lang/String;
iconst_1
invokestatic org.h2.store.fs.FileUtils.newOutputStream:(Ljava/lang/String;Z)Ljava/io/OutputStream;
6: invokestatic org.h2.util.IOUtils.getBufferedWriter:(Ljava/io/OutputStream;)Ljava/io/Writer;
putfield org.h2.message.TraceSystem.fileWriter:Ljava/io/Writer;
7: aload 0
new java.io.PrintWriter
dup
aload 0
getfield org.h2.message.TraceSystem.fileWriter:Ljava/io/Writer;
iconst_1
invokespecial java.io.PrintWriter.<init>:(Ljava/io/Writer;Z)V
putfield org.h2.message.TraceSystem.printWriter:Ljava/io/PrintWriter;
8: goto 12
StackMap locals:
StackMap stack: java.lang.Exception
9: astore 1
start local 1 10: aload 0
aload 1
invokevirtual org.h2.message.TraceSystem.logWritingError:(Ljava/lang/Exception;)V
11: iconst_0
ireturn
end local 1 12: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/h2/message/TraceSystem;
10 12 1 e Ljava/lang/Exception;
Exception table:
from to target type
1 3 9 Class java.lang.Exception
4 8 9 Class java.lang.Exception
private synchronized void closeWriter();
descriptor: ()V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.message.TraceSystem.printWriter:Ljava/io/PrintWriter;
ifnull 4
1: aload 0
getfield org.h2.message.TraceSystem.printWriter:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
2: aload 0
getfield org.h2.message.TraceSystem.printWriter:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.close:()V
3: aload 0
aconst_null
putfield org.h2.message.TraceSystem.printWriter:Ljava/io/PrintWriter;
4: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.message.TraceSystem.fileWriter:Ljava/io/Writer;
ifnull 9
5: aload 0
getfield org.h2.message.TraceSystem.fileWriter:Ljava/io/Writer;
invokevirtual java.io.Writer.close:()V
6: goto 8
StackMap locals:
StackMap stack: java.io.IOException
7: pop
8: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.h2.message.TraceSystem.fileWriter:Ljava/io/Writer;
9: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/h2/message/TraceSystem;
Exception table:
from to target type
5 6 7 Class java.io.IOException
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.h2.message.TraceSystem.closeWriter:()V
1: aload 0
iconst_1
putfield org.h2.message.TraceSystem.closed:Z
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/message/TraceSystem;
public void setName(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
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 Lorg/h2/message/TraceSystem;
0 1 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
}
SourceFile: "TraceSystem.java"