public class org.postgresql.jdbc.PgResultSetMetaData implements java.sql.ResultSetMetaData, org.postgresql.PGResultSetMetaData
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.postgresql.jdbc.PgResultSetMetaData
super_class: java.lang.Object
{
protected final org.postgresql.core.BaseConnection connection;
descriptor: Lorg/postgresql/core/BaseConnection;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final org.postgresql.core.Field[] fields;
descriptor: [Lorg/postgresql/core/Field;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
private boolean fieldInfoFetched;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public void <init>(org.postgresql.core.BaseConnection, org.postgresql.core.Field[]);
descriptor: (Lorg/postgresql/core/BaseConnection;[Lorg/postgresql/core/Field;)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.Object.<init>:()V
1: aload 0
aload 1
putfield org.postgresql.jdbc.PgResultSetMetaData.connection:Lorg/postgresql/core/BaseConnection;
2: aload 0
aload 2
putfield org.postgresql.jdbc.PgResultSetMetaData.fields:[Lorg/postgresql/core/Field;
3: aload 0
iconst_0
putfield org.postgresql.jdbc.PgResultSetMetaData.fieldInfoFetched:Z
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 5 1 connection Lorg/postgresql/core/BaseConnection;
0 5 2 fields [Lorg/postgresql/core/Field;
MethodParameters:
Name Flags
connection
fields
public int getColumnCount();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.fields:[Lorg/postgresql/core/Field;
arraylength
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
Exceptions:
throws java.sql.SQLException
public boolean isAutoIncrement(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.fetchFieldMetaData:()V
1: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getField:(I)Lorg/postgresql/core/Field;
astore 2
start local 2 2: aload 2
invokevirtual org.postgresql.core.Field.getMetadata:()Lorg/postgresql/jdbc/FieldMetadata;
astore 3
start local 3 3: aload 3
ifnull 4
aload 3
getfield org.postgresql.jdbc.FieldMetadata.autoIncrement:Z
ifeq 4
iconst_1
ireturn
StackMap locals: org.postgresql.core.Field org.postgresql.jdbc.FieldMetadata
StackMap stack:
4: iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 5 1 column I
2 5 2 field Lorg/postgresql/core/Field;
3 5 3 metadata Lorg/postgresql/jdbc/FieldMetadata;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public boolean isCaseSensitive(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getField:(I)Lorg/postgresql/core/Field;
astore 2
start local 2 1: aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.connection:Lorg/postgresql/core/BaseConnection;
invokeinterface org.postgresql.core.BaseConnection.getTypeInfo:()Lorg/postgresql/core/TypeInfo;
aload 2
invokevirtual org.postgresql.core.Field.getOID:()I
invokeinterface org.postgresql.core.TypeInfo.isCaseSensitive:(I)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 2 1 column I
1 2 2 field Lorg/postgresql/core/Field;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public boolean isSearchable(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 1 1 column I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public boolean isCurrency(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getPGType:(I)Ljava/lang/String;
astore 2
start local 2 1: aload 2
ldc "cash"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 2
aload 2
ldc "money"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 2
iconst_0
ireturn
StackMap locals: java.lang.String
StackMap stack:
2: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 3 1 column I
1 3 2 typeName Ljava/lang/String;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public int isNullable(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.fetchFieldMetaData:()V
1: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getField:(I)Lorg/postgresql/core/Field;
astore 2
start local 2 2: aload 2
invokevirtual org.postgresql.core.Field.getMetadata:()Lorg/postgresql/jdbc/FieldMetadata;
getfield org.postgresql.jdbc.FieldMetadata.nullable:I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 3 1 column I
2 3 2 field Lorg/postgresql/core/Field;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public boolean isSigned(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getField:(I)Lorg/postgresql/core/Field;
astore 2
start local 2 1: aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.connection:Lorg/postgresql/core/BaseConnection;
invokeinterface org.postgresql.core.BaseConnection.getTypeInfo:()Lorg/postgresql/core/TypeInfo;
aload 2
invokevirtual org.postgresql.core.Field.getOID:()I
invokeinterface org.postgresql.core.TypeInfo.isSigned:(I)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 2 1 column I
1 2 2 field Lorg/postgresql/core/Field;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public int getColumnDisplaySize(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getField:(I)Lorg/postgresql/core/Field;
astore 2
start local 2 1: aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.connection:Lorg/postgresql/core/BaseConnection;
invokeinterface org.postgresql.core.BaseConnection.getTypeInfo:()Lorg/postgresql/core/TypeInfo;
aload 2
invokevirtual org.postgresql.core.Field.getOID:()I
aload 2
invokevirtual org.postgresql.core.Field.getMod:()I
invokeinterface org.postgresql.core.TypeInfo.getDisplaySize:(II)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 2 1 column I
1 2 2 field Lorg/postgresql/core/Field;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public java.lang.String getColumnLabel(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getField:(I)Lorg/postgresql/core/Field;
astore 2
start local 2 1: aload 2
invokevirtual org.postgresql.core.Field.getColumnLabel:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 2 1 column I
1 2 2 field Lorg/postgresql/core/Field;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public java.lang.String getColumnName(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getColumnLabel:(I)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 1 1 column I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public java.lang.String getBaseColumnName(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getField:(I)Lorg/postgresql/core/Field;
astore 2
start local 2 1: aload 2
invokevirtual org.postgresql.core.Field.getTableOid:()I
ifne 3
2: ldc ""
areturn
3: StackMap locals: org.postgresql.core.Field
StackMap stack:
aload 0
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.fetchFieldMetaData:()V
4: aload 2
invokevirtual org.postgresql.core.Field.getMetadata:()Lorg/postgresql/jdbc/FieldMetadata;
getfield org.postgresql.jdbc.FieldMetadata.columnName:Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 5 1 column I
1 5 2 field Lorg/postgresql/core/Field;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public java.lang.String getSchemaName(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: ldc ""
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 1 1 column I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
private boolean populateFieldsWithMetadata(org.postgresql.util.Gettable<org.postgresql.jdbc.FieldMetadata$Key, org.postgresql.jdbc.FieldMetadata>);
descriptor: (Lorg/postgresql/util/Gettable;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: iconst_1
istore 2
start local 2 1: aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.fields:[Lorg/postgresql/core/Field;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 12
StackMap locals: org.postgresql.jdbc.PgResultSetMetaData org.postgresql.util.Gettable int top int int org.postgresql.core.Field[]
StackMap stack:
2: aload 6
iload 4
aaload
astore 3
start local 3 3: aload 3
invokevirtual org.postgresql.core.Field.getMetadata:()Lorg/postgresql/jdbc/FieldMetadata;
ifnull 5
4: goto 11
5: StackMap locals: org.postgresql.jdbc.PgResultSetMetaData org.postgresql.util.Gettable int org.postgresql.core.Field int int org.postgresql.core.Field[]
StackMap stack:
aload 1
new org.postgresql.jdbc.FieldMetadata$Key
dup
aload 3
invokevirtual org.postgresql.core.Field.getTableOid:()I
aload 3
invokevirtual org.postgresql.core.Field.getPositionInTable:()I
invokespecial org.postgresql.jdbc.FieldMetadata$Key.<init>:(II)V
invokeinterface org.postgresql.util.Gettable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.postgresql.jdbc.FieldMetadata
6: astore 7
start local 7 7: aload 7
ifnonnull 10
8: iconst_0
istore 2
9: goto 11
10: StackMap locals: org.postgresql.jdbc.FieldMetadata
StackMap stack:
aload 3
aload 7
invokevirtual org.postgresql.core.Field.setMetadata:(Lorg/postgresql/jdbc/FieldMetadata;)V
end local 7 end local 3 11: StackMap locals: org.postgresql.jdbc.PgResultSetMetaData org.postgresql.util.Gettable int top int int org.postgresql.core.Field[]
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
12: iload 4
iload 5
if_icmplt 2
13: aload 0
dup
getfield org.postgresql.jdbc.PgResultSetMetaData.fieldInfoFetched:Z
iload 2
ior
putfield org.postgresql.jdbc.PgResultSetMetaData.fieldInfoFetched:Z
14: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 15 1 metadata Lorg/postgresql/util/Gettable<Lorg/postgresql/jdbc/FieldMetadata$Key;Lorg/postgresql/jdbc/FieldMetadata;>;
1 15 2 allOk Z
3 11 3 field Lorg/postgresql/core/Field;
7 11 7 fieldMetadata Lorg/postgresql/jdbc/FieldMetadata;
Signature: (Lorg/postgresql/util/Gettable<Lorg/postgresql/jdbc/FieldMetadata$Key;Lorg/postgresql/jdbc/FieldMetadata;>;)Z
MethodParameters:
Name Flags
metadata
private void fetchFieldMetaData();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=16, args_size=1
start local 0 0: aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.fieldInfoFetched:Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.connection:Lorg/postgresql/core/BaseConnection;
invokeinterface org.postgresql.core.BaseConnection.getFieldMetadataCache:()Lorg/postgresql/util/LruCache;
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.populateFieldsWithMetadata:(Lorg/postgresql/util/Gettable;)Z
ifeq 4
3: return
4: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
5: ldc "SELECT c.oid, a.attnum, a.attname, c.relname, n.nspname, a.attnotnull OR (t.typtype = 'd' AND t.typnotnull), "
6: invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 1
start local 1 7: aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.connection:Lorg/postgresql/core/BaseConnection;
getstatic org.postgresql.core.ServerVersion.v10:Lorg/postgresql/core/ServerVersion;
invokeinterface org.postgresql.core.BaseConnection.haveMinimumServerVersion:(Lorg/postgresql/core/Version;)Z
ifeq 10
8: aload 1
ldc "a.attidentity != '' OR pg_catalog.pg_get_expr(d.adbin, d.adrelid) LIKE '%nextval(%' "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
9: goto 11
10: StackMap locals: java.lang.StringBuilder
StackMap stack:
aload 1
ldc "pg_catalog.pg_get_expr(d.adbin, d.adrelid) LIKE '%nextval(%' "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
11: StackMap locals:
StackMap stack:
aload 1
ldc "FROM pg_catalog.pg_class c JOIN pg_catalog.pg_namespace n ON (c.relnamespace = n.oid) JOIN pg_catalog.pg_attribute a ON (c.oid = a.attrelid) JOIN pg_catalog.pg_type t ON (a.atttypid = t.oid) LEFT JOIN pg_catalog.pg_attrdef d ON (d.adrelid = a.attrelid AND d.adnum = a.attnum) JOIN ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
12: iconst_0
istore 2
start local 2 13: aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.fields:[Lorg/postgresql/core/Field;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 30
StackMap locals: org.postgresql.jdbc.PgResultSetMetaData java.lang.StringBuilder int top int int org.postgresql.core.Field[]
StackMap stack:
14: aload 6
iload 4
aaload
astore 3
start local 3 15: aload 3
invokevirtual org.postgresql.core.Field.getMetadata:()Lorg/postgresql/jdbc/FieldMetadata;
ifnull 17
16: goto 29
17: StackMap locals: org.postgresql.jdbc.PgResultSetMetaData java.lang.StringBuilder int org.postgresql.core.Field int int org.postgresql.core.Field[]
StackMap stack:
iload 2
ifeq 19
18: aload 1
ldc " UNION ALL "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
19: StackMap locals:
StackMap stack:
aload 1
ldc "SELECT "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
20: aload 1
aload 3
invokevirtual org.postgresql.core.Field.getTableOid:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
21: iload 2
ifne 23
22: aload 1
ldc " AS oid "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
23: StackMap locals:
StackMap stack:
aload 1
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
24: aload 1
aload 3
invokevirtual org.postgresql.core.Field.getPositionInTable:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
25: iload 2
ifne 27
26: aload 1
ldc " AS attnum"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
27: StackMap locals:
StackMap stack:
iload 2
ifne 29
28: iconst_1
istore 2
end local 3 29: StackMap locals: org.postgresql.jdbc.PgResultSetMetaData java.lang.StringBuilder int top int int org.postgresql.core.Field[]
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
30: iload 4
iload 5
if_icmplt 14
31: aload 1
ldc ") vals ON (c.oid = vals.oid AND a.attnum = vals.attnum) "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
32: iload 2
ifne 35
33: aload 0
iconst_1
putfield org.postgresql.jdbc.PgResultSetMetaData.fieldInfoFetched:Z
34: return
35: StackMap locals: org.postgresql.jdbc.PgResultSetMetaData java.lang.StringBuilder int
StackMap stack:
aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.connection:Lorg/postgresql/core/BaseConnection;
invokeinterface org.postgresql.core.BaseConnection.createStatement:()Ljava/sql/Statement;
astore 3
start local 3 36: aconst_null
astore 4
start local 4 37: new org.postgresql.util.GettableHashMap
dup
invokespecial org.postgresql.util.GettableHashMap.<init>:()V
astore 5
start local 5 38: aload 3
aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface java.sql.Statement.executeQuery:(Ljava/lang/String;)Ljava/sql/ResultSet;
astore 4
39: goto 53
40: StackMap locals: java.sql.Statement java.sql.ResultSet org.postgresql.util.GettableHashMap
StackMap stack:
aload 4
iconst_1
invokeinterface java.sql.ResultSet.getLong:(I)J
l2i
istore 6
start local 6 41: aload 4
iconst_2
invokeinterface java.sql.ResultSet.getLong:(I)J
l2i
istore 7
start local 7 42: aload 4
iconst_3
invokeinterface java.sql.ResultSet.getString:(I)Ljava/lang/String;
astore 8
start local 8 43: aload 4
iconst_4
invokeinterface java.sql.ResultSet.getString:(I)Ljava/lang/String;
astore 9
start local 9 44: aload 4
iconst_5
invokeinterface java.sql.ResultSet.getString:(I)Ljava/lang/String;
astore 10
start local 10 45: aload 4
bipush 6
invokeinterface java.sql.ResultSet.getBoolean:(I)Z
ifeq 46
iconst_0
goto 47
StackMap locals: org.postgresql.jdbc.PgResultSetMetaData java.lang.StringBuilder int java.sql.Statement java.sql.ResultSet org.postgresql.util.GettableHashMap int int java.lang.String java.lang.String java.lang.String
StackMap stack:
46: iconst_1
47: StackMap locals:
StackMap stack: int
istore 11
start local 11 48: aload 4
bipush 7
invokeinterface java.sql.ResultSet.getBoolean:(I)Z
istore 12
start local 12 49: new org.postgresql.jdbc.FieldMetadata
dup
aload 8
aload 9
aload 10
iload 11
iload 12
invokespecial org.postgresql.jdbc.FieldMetadata.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IZ)V
50: astore 13
start local 13 51: new org.postgresql.jdbc.FieldMetadata$Key
dup
iload 6
iload 7
invokespecial org.postgresql.jdbc.FieldMetadata$Key.<init>:(II)V
astore 14
start local 14 52: aload 5
aload 14
aload 13
invokevirtual org.postgresql.util.GettableHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 53: StackMap locals: org.postgresql.jdbc.PgResultSetMetaData java.lang.StringBuilder int java.sql.Statement java.sql.ResultSet org.postgresql.util.GettableHashMap
StackMap stack:
aload 4
invokeinterface java.sql.ResultSet.next:()Z
ifne 40
54: goto 59
StackMap locals:
StackMap stack: java.lang.Throwable
55: astore 15
56: aload 4
invokestatic org.postgresql.util.JdbcBlackHole.close:(Ljava/sql/ResultSet;)V
57: aload 3
invokestatic org.postgresql.util.JdbcBlackHole.close:(Ljava/sql/Statement;)V
58: aload 15
athrow
59: StackMap locals:
StackMap stack:
aload 4
invokestatic org.postgresql.util.JdbcBlackHole.close:(Ljava/sql/ResultSet;)V
60: aload 3
invokestatic org.postgresql.util.JdbcBlackHole.close:(Ljava/sql/Statement;)V
61: aload 0
aload 5
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.populateFieldsWithMetadata:(Lorg/postgresql/util/Gettable;)Z
pop
62: aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.connection:Lorg/postgresql/core/BaseConnection;
invokeinterface org.postgresql.core.BaseConnection.getFieldMetadataCache:()Lorg/postgresql/util/LruCache;
aload 5
invokevirtual org.postgresql.util.LruCache.putAll:(Ljava/util/Map;)V
63: 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 64 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
7 64 1 sql Ljava/lang/StringBuilder;
13 64 2 hasSourceInfo Z
15 29 3 field Lorg/postgresql/core/Field;
36 64 3 stmt Ljava/sql/Statement;
37 64 4 rs Ljava/sql/ResultSet;
38 64 5 md Lorg/postgresql/util/GettableHashMap<Lorg/postgresql/jdbc/FieldMetadata$Key;Lorg/postgresql/jdbc/FieldMetadata;>;
41 53 6 table I
42 53 7 column I
43 53 8 columnName Ljava/lang/String;
44 53 9 tableName Ljava/lang/String;
45 53 10 schemaName Ljava/lang/String;
48 53 11 nullable I
49 53 12 autoIncrement Z
51 53 13 fieldMetadata Lorg/postgresql/jdbc/FieldMetadata;
52 53 14 key Lorg/postgresql/jdbc/FieldMetadata$Key;
Exception table:
from to target type
38 55 55 any
Exceptions:
throws java.sql.SQLException
public java.lang.String getBaseSchemaName(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.fetchFieldMetaData:()V
1: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getField:(I)Lorg/postgresql/core/Field;
astore 2
start local 2 2: aload 2
invokevirtual org.postgresql.core.Field.getMetadata:()Lorg/postgresql/jdbc/FieldMetadata;
getfield org.postgresql.jdbc.FieldMetadata.schemaName:Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 3 1 column I
2 3 2 field Lorg/postgresql/core/Field;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public int getPrecision(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getField:(I)Lorg/postgresql/core/Field;
astore 2
start local 2 1: aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.connection:Lorg/postgresql/core/BaseConnection;
invokeinterface org.postgresql.core.BaseConnection.getTypeInfo:()Lorg/postgresql/core/TypeInfo;
aload 2
invokevirtual org.postgresql.core.Field.getOID:()I
aload 2
invokevirtual org.postgresql.core.Field.getMod:()I
invokeinterface org.postgresql.core.TypeInfo.getPrecision:(II)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 2 1 column I
1 2 2 field Lorg/postgresql/core/Field;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public int getScale(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getField:(I)Lorg/postgresql/core/Field;
astore 2
start local 2 1: aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.connection:Lorg/postgresql/core/BaseConnection;
invokeinterface org.postgresql.core.BaseConnection.getTypeInfo:()Lorg/postgresql/core/TypeInfo;
aload 2
invokevirtual org.postgresql.core.Field.getOID:()I
aload 2
invokevirtual org.postgresql.core.Field.getMod:()I
invokeinterface org.postgresql.core.TypeInfo.getScale:(II)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 2 1 column I
1 2 2 field Lorg/postgresql/core/Field;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public java.lang.String getTableName(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getBaseTableName:(I)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 1 1 column I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public java.lang.String getBaseTableName(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.fetchFieldMetaData:()V
1: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getField:(I)Lorg/postgresql/core/Field;
astore 2
start local 2 2: aload 2
invokevirtual org.postgresql.core.Field.getMetadata:()Lorg/postgresql/jdbc/FieldMetadata;
getfield org.postgresql.jdbc.FieldMetadata.tableName:Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 3 1 column I
2 3 2 field Lorg/postgresql/core/Field;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public java.lang.String getCatalogName(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: ldc ""
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 1 1 column I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public int getColumnType(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getSQLType:(I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 1 1 column I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public int getFormat(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getField:(I)Lorg/postgresql/core/Field;
invokevirtual org.postgresql.core.Field.getFormat:()I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 1 1 column I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public java.lang.String getColumnTypeName(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getPGType:(I)Ljava/lang/String;
astore 2
start local 2 1: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.isAutoIncrement:(I)Z
ifeq 6
2: ldc "int4"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
3: ldc "serial"
areturn
4: StackMap locals: java.lang.String
StackMap stack:
ldc "int8"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
5: ldc "bigserial"
areturn
6: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 7 1 column I
1 7 2 type Ljava/lang/String;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public boolean isReadOnly(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 1 1 column I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public boolean isWritable(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
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.isReadOnly:(I)Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 3 1 column I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public boolean isDefinitelyWritable(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 1 1 column I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
protected org.postgresql.core.Field getField(int);
descriptor: (I)Lorg/postgresql/core/Field;
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iconst_1
if_icmplt 1
iload 1
aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.fields:[Lorg/postgresql/core/Field;
arraylength
if_icmple 7
1: StackMap locals:
StackMap stack:
new org.postgresql.util.PSQLException
dup
2: ldc "The column index is out of range: {0}, number of columns: {1}."
iconst_2
anewarray java.lang.Object
dup
iconst_0
3: iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.fields:[Lorg/postgresql/core/Field;
arraylength
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
4: invokestatic org.postgresql.util.GT.tr:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
5: getstatic org.postgresql.util.PSQLState.INVALID_PARAMETER_VALUE:Lorg/postgresql/util/PSQLState;
6: invokespecial org.postgresql.util.PSQLException.<init>:(Ljava/lang/String;Lorg/postgresql/util/PSQLState;)V
athrow
7: StackMap locals:
StackMap stack:
aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.fields:[Lorg/postgresql/core/Field;
iload 1
iconst_1
isub
aaload
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 8 1 columnIndex I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
columnIndex
protected java.lang.String getPGType(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.connection:Lorg/postgresql/core/BaseConnection;
invokeinterface org.postgresql.core.BaseConnection.getTypeInfo:()Lorg/postgresql/core/TypeInfo;
aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getField:(I)Lorg/postgresql/core/Field;
invokevirtual org.postgresql.core.Field.getOID:()I
invokeinterface org.postgresql.core.TypeInfo.getPGType:(I)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 1 1 columnIndex I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
columnIndex
protected int getSQLType(int);
descriptor: (I)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.connection:Lorg/postgresql/core/BaseConnection;
invokeinterface org.postgresql.core.BaseConnection.getTypeInfo:()Lorg/postgresql/core/TypeInfo;
aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getField:(I)Lorg/postgresql/core/Field;
invokevirtual org.postgresql.core.Field.getOID:()I
invokeinterface org.postgresql.core.TypeInfo.getSQLType:(I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 1 1 columnIndex I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
columnIndex
public java.lang.String getColumnClassName(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getField:(I)Lorg/postgresql/core/Field;
astore 2
start local 2 1: aload 0
getfield org.postgresql.jdbc.PgResultSetMetaData.connection:Lorg/postgresql/core/BaseConnection;
invokeinterface org.postgresql.core.BaseConnection.getTypeInfo:()Lorg/postgresql/core/TypeInfo;
aload 2
invokevirtual org.postgresql.core.Field.getOID:()I
invokeinterface org.postgresql.core.TypeInfo.getJavaClass:(I)Ljava/lang/String;
astore 3
start local 3 2: aload 3
ifnull 4
3: aload 3
areturn
4: StackMap locals: org.postgresql.core.Field java.lang.String
StackMap stack:
aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getSQLType:(I)I
istore 4
start local 4 5: iload 4
tableswitch { // 2003 - 2003
2003: 6
default: 7
}
6: StackMap locals: int
StackMap stack:
ldc "java.sql.Array"
areturn
7: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual org.postgresql.jdbc.PgResultSetMetaData.getPGType:(I)Ljava/lang/String;
astore 5
start local 5 8: ldc "unknown"
aload 5
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 10
9: ldc "java.lang.String"
areturn
10: StackMap locals: java.lang.String
StackMap stack:
ldc "java.lang.Object"
areturn
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/postgresql/jdbc/PgResultSetMetaData;
0 11 1 column I
1 11 2 field Lorg/postgresql/core/Field;
2 11 3 result Ljava/lang/String;
5 11 4 sqlType I
8 11 5 type Ljava/lang/String;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
column
public boolean isWrapperFor(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 1 1 iface Ljava/lang/Class<*>;
Exceptions:
throws java.sql.SQLException
Signature: (Ljava/lang/Class<*>;)Z
MethodParameters:
Name Flags
iface
public <T> T unwrap(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 2
1: aload 1
aload 0
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
areturn
2: StackMap locals:
StackMap stack:
new java.sql.SQLException
dup
new java.lang.StringBuilder
dup
ldc "Cannot unwrap to "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.sql.SQLException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/postgresql/jdbc/PgResultSetMetaData;
0 3 1 iface Ljava/lang/Class<TT;>;
Exceptions:
throws java.sql.SQLException
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
iface
}
SourceFile: "PgResultSetMetaData.java"
InnerClasses:
public Key = org.postgresql.jdbc.FieldMetadata$Key of org.postgresql.jdbc.FieldMetadata