public class org.h2.tools.RunScript extends org.h2.util.Tool
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.h2.tools.RunScript
super_class: org.h2.util.Tool
{
private boolean showResults;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean checkResults;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.h2.util.Tool.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/tools/RunScript;
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=2, locals=1, args_size=1
start local 0 0: new org.h2.tools.RunScript
dup
invokespecial org.h2.tools.RunScript.<init>:()V
aload 0
invokevirtual org.h2.tools.RunScript.runTool:([Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 args [Ljava/lang/String;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
args
public void runTool(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=7, locals=12, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: ldc ""
astore 3
start local 3 2: ldc ""
astore 4
start local 4 3: ldc "backup.sql"
astore 5
start local 5 4: aconst_null
astore 6
start local 6 5: iconst_0
istore 7
start local 7 6: iconst_0
istore 8
start local 8 7: iconst_0
istore 9
start local 9 8: goto 52
9: StackMap locals: org.h2.tools.RunScript java.lang.String[] java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String int int int
StackMap stack:
aload 1
iload 9
aaload
astore 10
start local 10 10: aload 10
ldc "-url"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 13
11: aload 1
iinc 9 1
iload 9
aaload
astore 2
12: goto 51
StackMap locals: java.lang.String
StackMap stack:
13: aload 10
ldc "-user"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 16
14: aload 1
iinc 9 1
iload 9
aaload
astore 3
15: goto 51
StackMap locals:
StackMap stack:
16: aload 10
ldc "-password"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 19
17: aload 1
iinc 9 1
iload 9
aaload
astore 4
18: goto 51
StackMap locals:
StackMap stack:
19: aload 10
ldc "-continueOnError"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 22
20: iconst_1
istore 7
21: goto 51
StackMap locals:
StackMap stack:
22: aload 10
ldc "-checkResults"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 25
23: aload 0
iconst_1
putfield org.h2.tools.RunScript.checkResults:Z
24: goto 51
StackMap locals:
StackMap stack:
25: aload 10
ldc "-showResults"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 28
26: aload 0
iconst_1
putfield org.h2.tools.RunScript.showResults:Z
27: goto 51
StackMap locals:
StackMap stack:
28: aload 10
ldc "-script"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 31
29: aload 1
iinc 9 1
iload 9
aaload
astore 5
30: goto 51
StackMap locals:
StackMap stack:
31: aload 10
ldc "-time"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 34
32: iconst_1
istore 8
33: goto 51
StackMap locals:
StackMap stack:
34: aload 10
ldc "-driver"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 38
35: aload 1
iinc 9 1
iload 9
aaload
astore 11
start local 11 36: aload 11
invokestatic org.h2.util.JdbcUtils.loadUserClass:(Ljava/lang/String;)Ljava/lang/Class;
pop
end local 11 37: goto 51
StackMap locals:
StackMap stack:
38: aload 10
ldc "-options"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 47
39: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 11
start local 11 40: iinc 9 1
41: goto 44
42: StackMap locals: java.lang.StringBuilder
StackMap stack:
aload 11
bipush 32
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 1
iload 9
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
43: iinc 9 1
StackMap locals:
StackMap stack:
44: iload 9
aload 1
arraylength
if_icmplt 42
45: aload 11
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
end local 11 46: goto 51
StackMap locals:
StackMap stack:
47: aload 10
ldc "-help"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 48
aload 10
ldc "-?"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 50
48: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.tools.RunScript.showUsage:()V
49: return
50: StackMap locals:
StackMap stack:
aload 0
aload 10
invokevirtual org.h2.tools.RunScript.showUsageAndThrowUnsupportedOption:(Ljava/lang/String;)Ljava/sql/SQLException;
pop
end local 10 51: StackMap locals:
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
52: aload 1
ifnull 53
iload 9
aload 1
arraylength
if_icmplt 9
end local 9 53: StackMap locals:
StackMap stack:
aload 2
ifnonnull 56
54: aload 0
invokevirtual org.h2.tools.RunScript.showUsage:()V
55: new java.sql.SQLException
dup
ldc "URL not set"
invokespecial java.sql.SQLException.<init>:(Ljava/lang/String;)V
athrow
56: StackMap locals:
StackMap stack:
invokestatic java.lang.System.nanoTime:()J
lstore 9
start local 9 57: aload 6
ifnull 60
58: aload 2
aload 3
aload 4
aload 5
aload 6
invokestatic org.h2.tools.RunScript.processRunscript:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
59: goto 61
60: StackMap locals: long
StackMap stack:
aload 0
aload 2
aload 3
aload 4
aload 5
aconst_null
iload 7
invokevirtual org.h2.tools.RunScript.process:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/nio/charset/Charset;Z)V
61: StackMap locals:
StackMap stack:
iload 8
ifeq 64
62: invokestatic java.lang.System.nanoTime:()J
lload 9
lsub
lstore 9
63: aload 0
getfield org.h2.tools.RunScript.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Done in "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
lload 9
invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc " ms"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
64: StackMap locals:
StackMap stack:
return
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 65 0 this Lorg/h2/tools/RunScript;
0 65 1 args [Ljava/lang/String;
1 65 2 url Ljava/lang/String;
2 65 3 user Ljava/lang/String;
3 65 4 password Ljava/lang/String;
4 65 5 script Ljava/lang/String;
5 65 6 options Ljava/lang/String;
6 65 7 continueOnError Z
7 65 8 showTime Z
8 53 9 i I
10 51 10 arg Ljava/lang/String;
36 37 11 driver Ljava/lang/String;
40 46 11 buff Ljava/lang/StringBuilder;
57 65 9 time J
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
args
public static java.sql.ResultSet execute(java.sql.Connection, java.io.Reader);
descriptor: (Ljava/sql/Connection;Ljava/io/Reader;)Ljava/sql/ResultSet;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface java.sql.Connection.createStatement:()Ljava/sql/Statement;
astore 2
start local 2 1: aconst_null
astore 3
start local 3 2: new org.h2.util.ScriptReader
dup
aload 1
invokespecial org.h2.util.ScriptReader.<init>:(Ljava/io/Reader;)V
astore 4
start local 4 3: StackMap locals: java.sql.Statement java.sql.ResultSet org.h2.util.ScriptReader
StackMap stack:
aload 4
invokevirtual org.h2.util.ScriptReader.readStatement:()Ljava/lang/String;
astore 5
start local 5 4: aload 5
ifnonnull 6
5: goto 15
6: StackMap locals: java.lang.String
StackMap stack:
aload 5
invokestatic org.h2.util.StringUtils.isWhitespaceOrEmpty:(Ljava/lang/String;)Z
ifeq 8
7: goto 3
8: StackMap locals:
StackMap stack:
aload 2
aload 5
invokeinterface java.sql.Statement.execute:(Ljava/lang/String;)Z
istore 6
start local 6 9: iload 6
ifeq 3
10: aload 3
ifnull 13
11: aload 3
invokeinterface java.sql.ResultSet.close:()V
12: aconst_null
astore 3
13: StackMap locals: int
StackMap stack:
aload 2
invokeinterface java.sql.Statement.getResultSet:()Ljava/sql/ResultSet;
astore 3
end local 6 end local 5 14: goto 3
15: StackMap locals:
StackMap stack:
aload 3
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 conn Ljava/sql/Connection;
0 16 1 reader Ljava/io/Reader;
1 16 2 stat Ljava/sql/Statement;
2 16 3 rs Ljava/sql/ResultSet;
3 16 4 r Lorg/h2/util/ScriptReader;
4 14 5 sql Ljava/lang/String;
9 14 6 resultSet Z
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
conn
reader
private void process(java.sql.Connection, java.lang.String, boolean, java.nio.charset.Charset);
descriptor: (Ljava/sql/Connection;Ljava/lang/String;ZLjava/nio/charset/Charset;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
invokestatic org.h2.store.fs.FileUtils.newInputStream:(Ljava/lang/String;)Ljava/io/InputStream;
astore 5
start local 5 1: aload 2
invokestatic org.h2.store.fs.FileUtils.getParent:(Ljava/lang/String;)Ljava/lang/String;
astore 6
start local 6 2: new java.io.BufferedInputStream
dup
aload 5
sipush 4096
invokespecial java.io.BufferedInputStream.<init>:(Ljava/io/InputStream;I)V
astore 5
3: new java.io.InputStreamReader
dup
aload 5
aload 4
invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
astore 7
start local 7 4: aload 0
aload 1
iload 3
aload 6
aload 7
aload 4
invokevirtual org.h2.tools.RunScript.process:(Ljava/sql/Connection;ZLjava/lang/String;Ljava/io/Reader;Ljava/nio/charset/Charset;)V
end local 7 5: goto 9
StackMap locals: org.h2.tools.RunScript java.sql.Connection java.lang.String int java.nio.charset.Charset java.io.InputStream java.lang.String
StackMap stack: java.lang.Throwable
6: astore 8
7: aload 5
invokestatic org.h2.util.IOUtils.closeSilently:(Ljava/lang/AutoCloseable;)V
8: aload 8
athrow
9: StackMap locals:
StackMap stack:
aload 5
invokestatic org.h2.util.IOUtils.closeSilently:(Ljava/lang/AutoCloseable;)V
10: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/h2/tools/RunScript;
0 11 1 conn Ljava/sql/Connection;
0 11 2 fileName Ljava/lang/String;
0 11 3 continueOnError Z
0 11 4 charset Ljava/nio/charset/Charset;
1 11 5 in Ljava/io/InputStream;
2 11 6 path Ljava/lang/String;
4 5 7 reader Ljava/io/Reader;
Exception table:
from to target type
2 6 6 any
Exceptions:
throws java.sql.SQLException, java.io.IOException
MethodParameters:
Name Flags
conn
fileName
continueOnError
charset
private void process(java.sql.Connection, boolean, java.lang.String, java.io.Reader, java.nio.charset.Charset);
descriptor: (Ljava/sql/Connection;ZLjava/lang/String;Ljava/io/Reader;Ljava/nio/charset/Charset;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=16, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 1
invokeinterface java.sql.Connection.createStatement:()Ljava/sql/Statement;
astore 6
start local 6 1: new org.h2.util.ScriptReader
dup
aload 4
invokespecial org.h2.util.ScriptReader.<init>:(Ljava/io/Reader;)V
astore 7
start local 7 2: StackMap locals: java.sql.Statement org.h2.util.ScriptReader
StackMap stack:
aload 7
invokevirtual org.h2.util.ScriptReader.readStatement:()Ljava/lang/String;
astore 8
start local 8 3: aload 8
ifnonnull 5
4: goto 59
5: StackMap locals: java.lang.String
StackMap stack:
aload 8
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 9
start local 9 6: aload 9
invokevirtual java.lang.String.isEmpty:()Z
ifeq 8
7: goto 2
8: StackMap locals: java.lang.String
StackMap stack:
aload 9
ldc "@"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 15
aload 9
invokestatic org.h2.util.StringUtils.toUpperEnglish:(Ljava/lang/String;)Ljava/lang/String;
9: ldc "@INCLUDE"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 15
10: aload 8
ldc "@INCLUDE"
invokevirtual java.lang.String.length:()I
invokestatic org.h2.util.StringUtils.trimSubstring:(Ljava/lang/String;I)Ljava/lang/String;
astore 8
11: aload 8
invokestatic org.h2.store.fs.FileUtils.isAbsolute:(Ljava/lang/String;)Z
ifne 13
12: new java.lang.StringBuilder
dup
aload 3
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic org.h2.engine.SysProperties.FILE_SEPARATOR:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 8
13: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 8
iload 2
aload 5
invokevirtual org.h2.tools.RunScript.process:(Ljava/sql/Connection;Ljava/lang/String;ZLjava/nio/charset/Charset;)V
14: goto 2
15: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.tools.RunScript.showResults:Z
ifeq 17
aload 9
ldc "-->"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 17
16: aload 0
getfield org.h2.tools.RunScript.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
aload 8
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ";"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
17: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.tools.RunScript.showResults:Z
ifne 18
aload 0
getfield org.h2.tools.RunScript.checkResults:Z
ifeq 52
18: StackMap locals:
StackMap stack:
aload 6
aload 8
invokeinterface java.sql.Statement.execute:(Ljava/lang/String;)Z
istore 10
start local 10 19: iload 10
ifeq 2
20: aload 6
invokeinterface java.sql.Statement.getResultSet:()Ljava/sql/ResultSet;
astore 11
start local 11 21: aload 11
invokeinterface java.sql.ResultSet.getMetaData:()Ljava/sql/ResultSetMetaData;
invokeinterface java.sql.ResultSetMetaData.getColumnCount:()I
istore 12
start local 12 22: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 13
start local 13 23: goto 35
24: StackMap locals: org.h2.tools.RunScript java.sql.Connection int java.lang.String java.io.Reader java.nio.charset.Charset java.sql.Statement org.h2.util.ScriptReader java.lang.String java.lang.String int java.sql.ResultSet int java.lang.StringBuilder
StackMap stack:
aload 13
ldc "\n-->"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
25: iconst_0
istore 14
start local 14 26: goto 34
27: StackMap locals: int
StackMap stack:
aload 11
iload 14
iconst_1
iadd
invokeinterface java.sql.ResultSet.getString:(I)Ljava/lang/String;
astore 15
start local 15 28: aload 15
ifnull 32
29: aload 15
ldc "\r\n"
ldc "\n"
invokestatic org.h2.util.StringUtils.replaceAll:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 15
30: aload 15
ldc "\n"
ldc "\n--> "
invokestatic org.h2.util.StringUtils.replaceAll:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 15
31: aload 15
ldc "\r"
ldc "\r--> "
invokestatic org.h2.util.StringUtils.replaceAll:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 15
32: StackMap locals: java.lang.String
StackMap stack:
aload 13
bipush 32
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 15
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 15 33: iinc 14 1
StackMap locals:
StackMap stack:
34: iload 14
iload 12
if_icmplt 27
end local 14 35: StackMap locals:
StackMap stack:
aload 11
invokeinterface java.sql.ResultSet.next:()Z
ifne 24
36: aload 13
ldc "\n;"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
37: aload 13
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 14
start local 14 38: aload 0
getfield org.h2.tools.RunScript.showResults:Z
ifeq 40
39: aload 0
getfield org.h2.tools.RunScript.out:Ljava/io/PrintStream;
aload 14
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
40: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield org.h2.tools.RunScript.checkResults:Z
ifeq 2
41: new java.lang.StringBuilder
dup
aload 7
invokevirtual org.h2.util.ScriptReader.readStatement:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ";"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 15
start local 15 42: aload 15
ldc "\r\n"
ldc "\n"
invokestatic org.h2.util.StringUtils.replaceAll:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 15
43: aload 15
ldc "\r"
ldc "\n"
invokestatic org.h2.util.StringUtils.replaceAll:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 15
44: aload 15
aload 14
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 2
45: aload 15
ldc " "
ldc "+"
invokestatic org.h2.util.StringUtils.replaceAll:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 15
46: aload 14
ldc " "
ldc "+"
invokestatic org.h2.util.StringUtils.replaceAll:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 14
47: new java.sql.SQLException
dup
48: new java.lang.StringBuilder
dup
ldc "Unexpected output for:\n"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
49: ldc "\nGot:\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 14
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\nExpected:\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 15
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
50: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
51: invokespecial java.sql.SQLException.<init>:(Ljava/lang/String;)V
athrow
end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 52: StackMap locals: org.h2.tools.RunScript java.sql.Connection int java.lang.String java.io.Reader java.nio.charset.Charset java.sql.Statement org.h2.util.ScriptReader java.lang.String java.lang.String
StackMap stack:
aload 6
aload 8
invokeinterface java.sql.Statement.execute:(Ljava/lang/String;)Z
pop
53: goto 2
StackMap locals:
StackMap stack: java.lang.Exception
54: astore 10
start local 10 55: iload 2
ifeq 58
56: aload 10
aload 0
getfield org.h2.tools.RunScript.out:Ljava/io/PrintStream;
invokevirtual java.lang.Exception.printStackTrace:(Ljava/io/PrintStream;)V
57: goto 2
58: StackMap locals: java.lang.Exception
StackMap stack:
aload 10
invokestatic org.h2.message.DbException.toSQLException:(Ljava/lang/Throwable;)Ljava/sql/SQLException;
athrow
end local 10 end local 9 end local 8 59: StackMap locals:
StackMap stack:
return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 60 0 this Lorg/h2/tools/RunScript;
0 60 1 conn Ljava/sql/Connection;
0 60 2 continueOnError Z
0 60 3 path Ljava/lang/String;
0 60 4 reader Ljava/io/Reader;
0 60 5 charset Ljava/nio/charset/Charset;
1 60 6 stat Ljava/sql/Statement;
2 60 7 r Lorg/h2/util/ScriptReader;
3 59 8 sql Ljava/lang/String;
6 59 9 trim Ljava/lang/String;
19 52 10 query Z
21 52 11 rs Ljava/sql/ResultSet;
22 52 12 columns I
23 52 13 buff Ljava/lang/StringBuilder;
26 35 14 i I
28 33 15 s Ljava/lang/String;
38 52 14 result Ljava/lang/String;
42 52 15 expected Ljava/lang/String;
55 59 10 e Ljava/lang/Exception;
Exception table:
from to target type
15 53 54 Class java.lang.Exception
Exceptions:
throws java.sql.SQLException, java.io.IOException
MethodParameters:
Name Flags
conn
continueOnError
path
reader
charset
private static void processRunscript(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aconst_null
astore 5
start local 5 1: aconst_null
astore 6
start local 6 2: invokestatic org.h2.Driver.load:()Lorg/h2/Driver;
pop
3: aload 0
aload 1
aload 2
invokestatic java.sql.DriverManager.getConnection:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/Connection;
astore 5
4: aload 5
invokeinterface java.sql.Connection.createStatement:()Ljava/sql/Statement;
astore 6
5: new java.lang.StringBuilder
dup
ldc "RUNSCRIPT FROM '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "' "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
start local 7 6: aload 6
aload 7
invokeinterface java.sql.Statement.execute:(Ljava/lang/String;)Z
pop
end local 7 7: goto 12
StackMap locals: java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.sql.Connection java.sql.Statement
StackMap stack: java.lang.Throwable
8: astore 8
9: aload 6
invokestatic org.h2.util.JdbcUtils.closeSilently:(Ljava/sql/Statement;)V
10: aload 5
invokestatic org.h2.util.JdbcUtils.closeSilently:(Ljava/sql/Connection;)V
11: aload 8
athrow
12: StackMap locals:
StackMap stack:
aload 6
invokestatic org.h2.util.JdbcUtils.closeSilently:(Ljava/sql/Statement;)V
13: aload 5
invokestatic org.h2.util.JdbcUtils.closeSilently:(Ljava/sql/Connection;)V
14: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 url Ljava/lang/String;
0 15 1 user Ljava/lang/String;
0 15 2 password Ljava/lang/String;
0 15 3 fileName Ljava/lang/String;
0 15 4 options Ljava/lang/String;
1 15 5 conn Ljava/sql/Connection;
2 15 6 stat Ljava/sql/Statement;
6 7 7 sql Ljava/lang/String;
Exception table:
from to target type
2 8 8 any
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
url
user
password
fileName
options
public static void execute(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.nio.charset.Charset, boolean);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/nio/charset/Charset;Z)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: new org.h2.tools.RunScript
dup
invokespecial org.h2.tools.RunScript.<init>:()V
aload 0
aload 1
aload 2
aload 3
aload 4
1: iload 5
2: invokevirtual org.h2.tools.RunScript.process:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/nio/charset/Charset;Z)V
3: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 url Ljava/lang/String;
0 4 1 user Ljava/lang/String;
0 4 2 password Ljava/lang/String;
0 4 3 fileName Ljava/lang/String;
0 4 4 charset Ljava/nio/charset/Charset;
0 4 5 continueOnError Z
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
url
user
password
fileName
charset
continueOnError
void process(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.nio.charset.Charset, boolean);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/nio/charset/Charset;Z)V
flags: (0x0000)
Code:
stack=5, locals=10, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: invokestatic org.h2.Driver.load:()Lorg/h2/Driver;
pop
1: aload 5
ifnonnull 3
2: getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
astore 5
3: StackMap locals:
StackMap stack:
aconst_null
astore 7
aconst_null
astore 8
4: aload 1
aload 2
aload 3
invokestatic java.sql.DriverManager.getConnection:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/Connection;
astore 9
start local 9 5: aload 0
aload 9
aload 4
iload 6
aload 5
invokevirtual org.h2.tools.RunScript.process:(Ljava/sql/Connection;Ljava/lang/String;ZLjava/nio/charset/Charset;)V
6: aload 9
ifnull 14
aload 9
invokeinterface java.sql.Connection.close:()V
goto 14
StackMap locals: org.h2.tools.RunScript java.lang.String java.lang.String java.lang.String java.lang.String java.nio.charset.Charset int java.lang.Throwable java.lang.Throwable java.sql.Connection
StackMap stack: java.lang.Throwable
7: astore 7
aload 9
ifnull 8
aload 9
invokeinterface java.sql.Connection.close:()V
end local 9 StackMap locals:
StackMap stack:
8: aload 7
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
9: astore 8
aload 7
ifnonnull 10
aload 8
astore 7
goto 11
StackMap locals:
StackMap stack:
10: aload 7
aload 8
if_acmpeq 11
aload 7
aload 8
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
11: aload 7
athrow
12: StackMap locals: org.h2.tools.RunScript java.lang.String java.lang.String java.lang.String java.lang.String java.nio.charset.Charset int
StackMap stack: java.io.IOException
astore 7
start local 7 13: aload 7
aload 4
invokestatic org.h2.message.DbException.convertIOException:(Ljava/io/IOException;Ljava/lang/String;)Lorg/h2/message/DbException;
athrow
end local 7 14: StackMap locals:
StackMap stack:
return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/h2/tools/RunScript;
0 15 1 url Ljava/lang/String;
0 15 2 user Ljava/lang/String;
0 15 3 password Ljava/lang/String;
0 15 4 fileName Ljava/lang/String;
0 15 5 charset Ljava/nio/charset/Charset;
0 15 6 continueOnError Z
5 8 9 conn Ljava/sql/Connection;
13 14 7 e Ljava/io/IOException;
Exception table:
from to target type
5 6 7 any
4 9 9 any
0 12 12 Class java.io.IOException
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
url
user
password
fileName
charset
continueOnError
}
SourceFile: "RunScript.java"