public class org.h2.bnf.context.DbSchema
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.h2.bnf.context.DbSchema
super_class: java.lang.Object
{
public final java.lang.String name;
descriptor: Ljava/lang/String;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final boolean isDefault;
descriptor: Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final boolean isSystem;
descriptor: Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final java.lang.String quotedName;
descriptor: Ljava/lang/String;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
private final org.h2.bnf.context.DbContents contents;
descriptor: Lorg/h2/bnf/context/DbContents;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.h2.bnf.context.DbTableOrView[] tables;
descriptor: [Lorg/h2/bnf/context/DbTableOrView;
flags: (0x0002) ACC_PRIVATE
private org.h2.bnf.context.DbProcedure[] procedures;
descriptor: [Lorg/h2/bnf/context/DbProcedure;
flags: (0x0002) ACC_PRIVATE
void <init>(org.h2.bnf.context.DbContents, java.lang.String, boolean);
descriptor: (Lorg/h2/bnf/context/DbContents;Ljava/lang/String;Z)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.h2.bnf.context.DbSchema.contents:Lorg/h2/bnf/context/DbContents;
2: aload 0
aload 2
putfield org.h2.bnf.context.DbSchema.name:Ljava/lang/String;
3: aload 0
aload 1
aload 2
invokevirtual org.h2.bnf.context.DbContents.quoteIdentifier:(Ljava/lang/String;)Ljava/lang/String;
putfield org.h2.bnf.context.DbSchema.quotedName:Ljava/lang/String;
4: aload 0
iload 3
putfield org.h2.bnf.context.DbSchema.isDefault:Z
5: aload 2
ifnonnull 8
6: aload 0
iconst_1
putfield org.h2.bnf.context.DbSchema.isSystem:Z
7: goto 23
StackMap locals: org.h2.bnf.context.DbSchema org.h2.bnf.context.DbContents java.lang.String int
StackMap stack:
8: ldc "INFORMATION_SCHEMA"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 11
9: aload 0
iconst_1
putfield org.h2.bnf.context.DbSchema.isSystem:Z
10: goto 23
StackMap locals:
StackMap stack:
11: aload 1
invokevirtual org.h2.bnf.context.DbContents.isH2:()Z
ifne 15
12: aload 2
invokestatic org.h2.util.StringUtils.toUpperEnglish:(Ljava/lang/String;)Ljava/lang/String;
ldc "INFO"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 15
13: aload 0
iconst_1
putfield org.h2.bnf.context.DbSchema.isSystem:Z
14: goto 23
StackMap locals:
StackMap stack:
15: aload 1
invokevirtual org.h2.bnf.context.DbContents.isPostgreSQL:()Z
ifeq 19
16: aload 2
invokestatic org.h2.util.StringUtils.toUpperEnglish:(Ljava/lang/String;)Ljava/lang/String;
ldc "PG_"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 19
17: aload 0
iconst_1
putfield org.h2.bnf.context.DbSchema.isSystem:Z
18: goto 23
StackMap locals:
StackMap stack:
19: aload 1
invokevirtual org.h2.bnf.context.DbContents.isDerby:()Z
ifeq 22
aload 2
ldc "SYS"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 22
20: aload 0
iconst_1
putfield org.h2.bnf.context.DbSchema.isSystem:Z
21: goto 23
22: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield org.h2.bnf.context.DbSchema.isSystem:Z
23: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lorg/h2/bnf/context/DbSchema;
0 24 1 contents Lorg/h2/bnf/context/DbContents;
0 24 2 name Ljava/lang/String;
0 24 3 isDefault Z
MethodParameters:
Name Flags
contents
name
isDefault
public org.h2.bnf.context.DbContents getContents();
descriptor: ()Lorg/h2/bnf/context/DbContents;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.bnf.context.DbSchema.contents:Lorg/h2/bnf/context/DbContents;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/bnf/context/DbSchema;
public org.h2.bnf.context.DbTableOrView[] getTables();
descriptor: ()[Lorg/h2/bnf/context/DbTableOrView;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.bnf.context.DbSchema.tables:[Lorg/h2/bnf/context/DbTableOrView;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/bnf/context/DbSchema;
public org.h2.bnf.context.DbProcedure[] getProcedures();
descriptor: ()[Lorg/h2/bnf/context/DbProcedure;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.bnf.context.DbSchema.procedures:[Lorg/h2/bnf/context/DbProcedure;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/bnf/context/DbSchema;
public void readTables(java.sql.DatabaseMetaData, java.lang.String[]);
descriptor: (Ljava/sql/DatabaseMetaData;[Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=12, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aconst_null
aload 0
getfield org.h2.bnf.context.DbSchema.name:Ljava/lang/String;
aconst_null
aload 2
invokeinterface java.sql.DatabaseMetaData.getTables:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Ljava/sql/ResultSet;
astore 3
start local 3 1: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 2: goto 7
3: StackMap locals: java.sql.ResultSet java.util.ArrayList
StackMap stack:
new org.h2.bnf.context.DbTableOrView
dup
aload 0
aload 3
invokespecial org.h2.bnf.context.DbTableOrView.<init>:(Lorg/h2/bnf/context/DbSchema;Ljava/sql/ResultSet;)V
astore 5
start local 5 4: aload 0
getfield org.h2.bnf.context.DbSchema.contents:Lorg/h2/bnf/context/DbContents;
invokevirtual org.h2.bnf.context.DbContents.isOracle:()Z
ifeq 6
aload 5
invokevirtual org.h2.bnf.context.DbTableOrView.getName:()Ljava/lang/String;
bipush 36
invokevirtual java.lang.String.indexOf:(I)I
ifle 6
5: goto 7
6: StackMap locals: org.h2.bnf.context.DbTableOrView
StackMap stack:
aload 4
aload 5
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 5 7: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.sql.ResultSet.next:()Z
ifne 3
8: aload 3
invokeinterface java.sql.ResultSet.close:()V
9: aload 0
aload 4
iconst_0
anewarray org.h2.bnf.context.DbTableOrView
invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast org.h2.bnf.context.DbTableOrView[]
putfield org.h2.bnf.context.DbSchema.tables:[Lorg/h2/bnf/context/DbTableOrView;
10: aload 0
getfield org.h2.bnf.context.DbSchema.tables:[Lorg/h2/bnf/context/DbTableOrView;
arraylength
getstatic org.h2.engine.SysProperties.CONSOLE_MAX_TABLES_LIST_COLUMNS:I
if_icmpge 31
11: aconst_null
astore 5
aconst_null
astore 6
12: aload 0
getfield org.h2.bnf.context.DbSchema.contents:Lorg/h2/bnf/context/DbContents;
invokevirtual org.h2.bnf.context.DbContents.isH2:()Z
ifeq 16
aload 1
invokeinterface java.sql.DatabaseMetaData.getConnection:()Ljava/sql/Connection;
13: ldc "SELECT COLUMN_NAME, ORDINAL_POSITION, COLUMN_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ?"
14: invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
15: goto 17
16: StackMap locals: java.lang.Throwable java.lang.Throwable
StackMap stack:
aconst_null
17: StackMap locals:
StackMap stack: java.sql.PreparedStatement
astore 7
start local 7 18: aload 0
getfield org.h2.bnf.context.DbSchema.tables:[Lorg/h2/bnf/context/DbTableOrView;
dup
astore 11
arraylength
istore 10
iconst_0
istore 9
goto 24
StackMap locals: org.h2.bnf.context.DbSchema java.sql.DatabaseMetaData java.lang.String[] java.sql.ResultSet java.util.ArrayList java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement top int int org.h2.bnf.context.DbTableOrView[]
StackMap stack:
19: aload 11
iload 9
aaload
astore 8
start local 8 20: aload 8
aload 1
aload 7
invokevirtual org.h2.bnf.context.DbTableOrView.readColumns:(Ljava/sql/DatabaseMetaData;Ljava/sql/PreparedStatement;)V
21: goto 23
StackMap locals: org.h2.bnf.context.DbSchema java.sql.DatabaseMetaData java.lang.String[] java.sql.ResultSet java.util.ArrayList java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement org.h2.bnf.context.DbTableOrView int int org.h2.bnf.context.DbTableOrView[]
StackMap stack: java.sql.SQLException
22: pop
end local 8 23: StackMap locals: org.h2.bnf.context.DbSchema java.sql.DatabaseMetaData java.lang.String[] java.sql.ResultSet java.util.ArrayList java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement top int int org.h2.bnf.context.DbTableOrView[]
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
24: iload 9
iload 10
if_icmplt 19
25: aload 7
ifnull 31
aload 7
invokeinterface java.sql.PreparedStatement.close:()V
goto 31
StackMap locals: org.h2.bnf.context.DbSchema java.sql.DatabaseMetaData java.lang.String[] java.sql.ResultSet java.util.ArrayList java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement
StackMap stack: java.lang.Throwable
26: astore 5
aload 7
ifnull 27
aload 7
invokeinterface java.sql.PreparedStatement.close:()V
end local 7 StackMap locals:
StackMap stack:
27: aload 5
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
28: astore 6
aload 5
ifnonnull 29
aload 6
astore 5
goto 30
StackMap locals:
StackMap stack:
29: aload 5
aload 6
if_acmpeq 30
aload 5
aload 6
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
30: aload 5
athrow
31: 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 32 0 this Lorg/h2/bnf/context/DbSchema;
0 32 1 meta Ljava/sql/DatabaseMetaData;
0 32 2 tableTypes [Ljava/lang/String;
1 32 3 rs Ljava/sql/ResultSet;
2 32 4 list Ljava/util/ArrayList<Lorg/h2/bnf/context/DbTableOrView;>;
4 7 5 table Lorg/h2/bnf/context/DbTableOrView;
18 27 7 ps Ljava/sql/PreparedStatement;
20 23 8 tab Lorg/h2/bnf/context/DbTableOrView;
Exception table:
from to target type
20 21 22 Class java.sql.SQLException
18 25 26 any
12 28 28 any
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
meta
tableTypes
public void readProcedures(java.sql.DatabaseMetaData);
descriptor: (Ljava/sql/DatabaseMetaData;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: aload 1
aconst_null
aload 0
getfield org.h2.bnf.context.DbSchema.name:Ljava/lang/String;
aconst_null
invokeinterface java.sql.DatabaseMetaData.getProcedures:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
astore 2
start local 2 1: invokestatic org.h2.util.Utils.newSmallArrayList:()Ljava/util/ArrayList;
astore 3
start local 3 2: goto 4
3: StackMap locals: java.sql.ResultSet java.util.ArrayList
StackMap stack:
aload 3
new org.h2.bnf.context.DbProcedure
dup
aload 0
aload 2
invokespecial org.h2.bnf.context.DbProcedure.<init>:(Lorg/h2/bnf/context/DbSchema;Ljava/sql/ResultSet;)V
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
4: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.sql.ResultSet.next:()Z
ifne 3
5: aload 2
invokeinterface java.sql.ResultSet.close:()V
6: aload 0
aload 3
iconst_0
anewarray org.h2.bnf.context.DbProcedure
invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast org.h2.bnf.context.DbProcedure[]
putfield org.h2.bnf.context.DbSchema.procedures:[Lorg/h2/bnf/context/DbProcedure;
7: aload 0
getfield org.h2.bnf.context.DbSchema.procedures:[Lorg/h2/bnf/context/DbProcedure;
arraylength
getstatic org.h2.engine.SysProperties.CONSOLE_MAX_PROCEDURES_LIST_COLUMNS:I
if_icmpge 13
8: aload 0
getfield org.h2.bnf.context.DbSchema.procedures:[Lorg/h2/bnf/context/DbProcedure;
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 12
StackMap locals: org.h2.bnf.context.DbSchema java.sql.DatabaseMetaData java.sql.ResultSet java.util.ArrayList top int int org.h2.bnf.context.DbProcedure[]
StackMap stack:
9: aload 7
iload 5
aaload
astore 4
start local 4 10: aload 4
aload 1
invokevirtual org.h2.bnf.context.DbProcedure.readParameters:(Ljava/sql/DatabaseMetaData;)V
end local 4 11: iinc 5 1
StackMap locals:
StackMap stack:
12: iload 5
iload 6
if_icmplt 9
13: StackMap locals: org.h2.bnf.context.DbSchema java.sql.DatabaseMetaData java.sql.ResultSet java.util.ArrayList
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/h2/bnf/context/DbSchema;
0 14 1 meta Ljava/sql/DatabaseMetaData;
1 14 2 rs Ljava/sql/ResultSet;
2 14 3 list Ljava/util/ArrayList<Lorg/h2/bnf/context/DbProcedure;>;
10 11 4 procedure Lorg/h2/bnf/context/DbProcedure;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
meta
}
SourceFile: "DbSchema.java"