public class com.sun.rowset.internal.CachedRowSetWriter implements javax.sql.rowset.spi.TransactionalWriter, java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.rowset.internal.CachedRowSetWriter
super_class: java.lang.Object
{
private transient java.sql.Connection con;
descriptor: Ljava/sql/Connection;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private java.lang.String selectCmd;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String updateCmd;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String updateWhere;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String deleteCmd;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String deleteWhere;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String insertCmd;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private int[] keyCols;
descriptor: [I
flags: (0x0002) ACC_PRIVATE
private java.lang.Object[] params;
descriptor: [Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
private com.sun.rowset.internal.CachedRowSetReader reader;
descriptor: Lcom/sun/rowset/internal/CachedRowSetReader;
flags: (0x0002) ACC_PRIVATE
private java.sql.ResultSetMetaData callerMd;
descriptor: Ljava/sql/ResultSetMetaData;
flags: (0x0002) ACC_PRIVATE
private int callerColumnCount;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private com.sun.rowset.CachedRowSetImpl crsResolve;
descriptor: Lcom/sun/rowset/CachedRowSetImpl;
flags: (0x0002) ACC_PRIVATE
private java.util.ArrayList status;
descriptor: Ljava/util/ArrayList;
flags: (0x0002) ACC_PRIVATE
private int iChangedValsInDbAndCRS;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int iChangedValsinDbOnly;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private com.sun.rowset.JdbcRowSetResourceBundle resBundle;
descriptor: Lcom/sun/rowset/JdbcRowSetResourceBundle;
flags: (0x0002) ACC_PRIVATE
static final long serialVersionUID;
descriptor: J
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: -8506030970299413976
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
invokestatic com.sun.rowset.JdbcRowSetResourceBundle.getJdbcRowSetResourceBundle:()Lcom/sun/rowset/JdbcRowSetResourceBundle;
putfield com.sun.rowset.internal.CachedRowSetWriter.resBundle:Lcom/sun/rowset/JdbcRowSetResourceBundle;
2: goto 5
StackMap locals: com.sun.rowset.internal.CachedRowSetWriter
StackMap stack: java.io.IOException
3: astore 1
start local 1 4: new java.lang.RuntimeException
dup
aload 1
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 1 5: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/rowset/internal/CachedRowSetWriter;
4 5 1 ioe Ljava/io/IOException;
Exception table:
from to target type
1 2 3 Class java.io.IOException
public boolean writeData(javax.sql.RowSetInternal);
descriptor: (Ljavax/sql/RowSetInternal;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=13, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: aconst_null
astore 3
start local 3 2: aload 0
iconst_0
putfield com.sun.rowset.internal.CachedRowSetWriter.iChangedValsInDbAndCRS:I
3: aload 0
iconst_0
putfield com.sun.rowset.internal.CachedRowSetWriter.iChangedValsinDbOnly:I
4: aload 1
checkcast com.sun.rowset.CachedRowSetImpl
astore 4
start local 4 5: aload 0
new com.sun.rowset.CachedRowSetImpl
dup
invokespecial com.sun.rowset.CachedRowSetImpl.<init>:()V
putfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
6: aload 0
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.reader:Lcom/sun/rowset/internal/CachedRowSetReader;
aload 1
invokevirtual com.sun.rowset.internal.CachedRowSetReader.connect:(Ljavax/sql/RowSetInternal;)Ljava/sql/Connection;
putfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
7: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
ifnonnull 9
8: new java.sql.SQLException
dup
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.resBundle:Lcom/sun/rowset/JdbcRowSetResourceBundle;
ldc "crswriter.connect"
invokevirtual com.sun.rowset.JdbcRowSetResourceBundle.handleGetObject:(Ljava/lang/String;)Ljava/lang/Object;
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokespecial java.sql.SQLException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals: int java.sql.PreparedStatement com.sun.rowset.CachedRowSetImpl
StackMap stack:
aload 0
aload 4
invokevirtual com.sun.rowset.internal.CachedRowSetWriter.initSQLStatements:(Ljavax/sql/rowset/CachedRowSet;)V
10: aload 4
invokevirtual com.sun.rowset.CachedRowSetImpl.getMetaData:()Ljava/sql/ResultSetMetaData;
checkcast javax.sql.rowset.RowSetMetaDataImpl
astore 6
start local 6 11: new javax.sql.rowset.RowSetMetaDataImpl
dup
invokespecial javax.sql.rowset.RowSetMetaDataImpl.<init>:()V
astore 7
start local 7 12: aload 6
invokevirtual javax.sql.rowset.RowSetMetaDataImpl.getColumnCount:()I
istore 5
start local 5 13: aload 4
invokevirtual com.sun.rowset.CachedRowSetImpl.size:()I
iconst_1
iadd
istore 8
start local 8 14: aload 0
new java.util.ArrayList
dup
iload 8
invokespecial java.util.ArrayList.<init>:(I)V
putfield com.sun.rowset.internal.CachedRowSetWriter.status:Ljava/util/ArrayList;
15: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.status:Ljava/util/ArrayList;
iconst_0
aconst_null
invokevirtual java.util.ArrayList.add:(ILjava/lang/Object;)V
16: aload 7
iload 5
invokevirtual javax.sql.rowset.RowSetMetaDataImpl.setColumnCount:(I)V
17: iconst_1
istore 9
start local 9 18: goto 23
19: StackMap locals: com.sun.rowset.internal.CachedRowSetWriter javax.sql.RowSetInternal int java.sql.PreparedStatement com.sun.rowset.CachedRowSetImpl int javax.sql.rowset.RowSetMetaDataImpl javax.sql.rowset.RowSetMetaDataImpl int int
StackMap stack:
aload 7
iload 9
aload 6
iload 9
invokevirtual javax.sql.rowset.RowSetMetaDataImpl.getColumnType:(I)I
invokevirtual javax.sql.rowset.RowSetMetaDataImpl.setColumnType:(II)V
20: aload 7
iload 9
aload 6
iload 9
invokevirtual javax.sql.rowset.RowSetMetaDataImpl.getColumnName:(I)Ljava/lang/String;
invokevirtual javax.sql.rowset.RowSetMetaDataImpl.setColumnName:(ILjava/lang/String;)V
21: aload 7
iload 9
iconst_2
invokevirtual javax.sql.rowset.RowSetMetaDataImpl.setNullable:(II)V
22: iinc 9 1
StackMap locals:
StackMap stack:
23: iload 9
iload 5
if_icmple 19
end local 9 24: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
aload 7
invokevirtual com.sun.rowset.CachedRowSetImpl.setMetaData:(Ljavax/sql/RowSetMetaData;)V
25: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerColumnCount:I
iconst_1
if_icmpge 29
26: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.reader:Lcom/sun/rowset/internal/CachedRowSetReader;
invokevirtual com.sun.rowset.internal.CachedRowSetReader.getCloseConnection:()Z
ifeq 28
27: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
invokeinterface java.sql.Connection.close:()V
28: StackMap locals:
StackMap stack:
iconst_1
ireturn
29: StackMap locals:
StackMap stack:
aload 4
invokevirtual com.sun.rowset.CachedRowSetImpl.getShowDeleted:()Z
istore 2
30: aload 4
iconst_1
invokevirtual com.sun.rowset.CachedRowSetImpl.setShowDeleted:(Z)V
31: aload 4
invokevirtual com.sun.rowset.CachedRowSetImpl.beforeFirst:()V
32: iconst_1
istore 9
start local 9 33: goto 64
34: StackMap locals: int
StackMap stack:
aload 4
invokevirtual com.sun.rowset.CachedRowSetImpl.rowDeleted:()Z
ifeq 40
35: aload 0
aload 4
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.internal.CachedRowSetWriter.deleteOriginalRow:(Ljavax/sql/rowset/CachedRowSet;Lcom/sun/rowset/CachedRowSetImpl;)Z
ifeq 38
36: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.status:Ljava/util/ArrayList;
iload 9
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.ArrayList.add:(ILjava/lang/Object;)V
37: goto 63
38: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.status:Ljava/util/ArrayList;
iload 9
iconst_3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.ArrayList.add:(ILjava/lang/Object;)V
39: goto 63
StackMap locals:
StackMap stack:
40: aload 4
invokevirtual com.sun.rowset.CachedRowSetImpl.rowInserted:()Z
ifeq 47
41: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.insertCmd:Ljava/lang/String;
invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
astore 3
42: aload 0
aload 4
aload 3
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.internal.CachedRowSetWriter.insertNewRow:(Ljavax/sql/rowset/CachedRowSet;Ljava/sql/PreparedStatement;Lcom/sun/rowset/CachedRowSetImpl;)Z
ifeq 45
43: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.status:Ljava/util/ArrayList;
iload 9
iconst_2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.ArrayList.add:(ILjava/lang/Object;)V
44: goto 63
45: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.status:Ljava/util/ArrayList;
iload 9
iconst_3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.ArrayList.add:(ILjava/lang/Object;)V
46: goto 63
StackMap locals:
StackMap stack:
47: aload 4
invokevirtual com.sun.rowset.CachedRowSetImpl.rowUpdated:()Z
ifeq 53
48: aload 0
aload 4
invokevirtual com.sun.rowset.internal.CachedRowSetWriter.updateOriginalRow:(Ljavax/sql/rowset/CachedRowSet;)Z
ifeq 51
49: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.status:Ljava/util/ArrayList;
iload 9
iconst_0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.ArrayList.add:(ILjava/lang/Object;)V
50: goto 63
51: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.status:Ljava/util/ArrayList;
iload 9
iconst_3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.ArrayList.add:(ILjava/lang/Object;)V
52: goto 63
53: StackMap locals:
StackMap stack:
aload 4
invokevirtual com.sun.rowset.CachedRowSetImpl.getMetaData:()Ljava/sql/ResultSetMetaData;
invokeinterface java.sql.ResultSetMetaData.getColumnCount:()I
pop
54: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.status:Ljava/util/ArrayList;
iload 9
iconst_3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.ArrayList.add:(ILjava/lang/Object;)V
55: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.CachedRowSetImpl.moveToInsertRow:()V
56: iconst_0
istore 10
start local 10 57: goto 60
58: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
iload 10
iconst_1
iadd
invokevirtual com.sun.rowset.CachedRowSetImpl.updateNull:(I)V
59: iinc 10 1
StackMap locals:
StackMap stack:
60: iload 10
iload 5
if_icmplt 58
end local 10 61: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.CachedRowSetImpl.insertRow:()V
62: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.CachedRowSetImpl.moveToCurrentRow:()V
63: StackMap locals:
StackMap stack:
iinc 9 1
64: StackMap locals:
StackMap stack:
aload 4
invokevirtual com.sun.rowset.CachedRowSetImpl.next:()Z
ifne 34
65: aload 3
ifnull 67
66: aload 3
invokeinterface java.sql.PreparedStatement.close:()V
67: StackMap locals:
StackMap stack:
aload 4
iload 2
invokevirtual com.sun.rowset.CachedRowSetImpl.setShowDeleted:(Z)V
68: iconst_0
istore 10
start local 10 69: iconst_1
istore 11
start local 11 70: goto 75
71: StackMap locals: int int
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.status:Ljava/util/ArrayList;
iload 11
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
iconst_3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 74
72: iconst_1
istore 10
73: goto 76
74: StackMap locals:
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
75: iload 11
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.status:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
if_icmplt 71
end local 11 76: StackMap locals:
StackMap stack:
aload 4
invokevirtual com.sun.rowset.CachedRowSetImpl.beforeFirst:()V
77: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.CachedRowSetImpl.beforeFirst:()V
78: iload 10
ifeq 86
79: new javax.sql.rowset.spi.SyncProviderException
dup
new java.lang.StringBuilder
dup
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.status:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
iconst_1
isub
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.resBundle:Lcom/sun/rowset/JdbcRowSetResourceBundle;
ldc "crswriter.conflictsno"
invokevirtual com.sun.rowset.JdbcRowSetResourceBundle.handleGetObject:(Ljava/lang/String;)Ljava/lang/Object;
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial javax.sql.rowset.spi.SyncProviderException.<init>:(Ljava/lang/String;)V
astore 11
start local 11 80: aload 11
invokevirtual javax.sql.rowset.spi.SyncProviderException.getSyncResolver:()Ljavax/sql/rowset/spi/SyncResolver;
checkcast com.sun.rowset.internal.SyncResolverImpl
astore 12
start local 12 81: aload 12
aload 4
invokevirtual com.sun.rowset.internal.SyncResolverImpl.setCachedRowSet:(Ljavax/sql/rowset/CachedRowSet;)V
82: aload 12
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.internal.SyncResolverImpl.setCachedRowSetResolver:(Ljavax/sql/rowset/CachedRowSet;)V
83: aload 12
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.status:Ljava/util/ArrayList;
invokevirtual com.sun.rowset.internal.SyncResolverImpl.setStatus:(Ljava/util/ArrayList;)V
84: aload 12
aload 0
invokevirtual com.sun.rowset.internal.SyncResolverImpl.setCachedRowSetWriter:(Lcom/sun/rowset/internal/CachedRowSetWriter;)V
85: aload 11
athrow
end local 12 end local 11 86: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 10 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 87 0 this Lcom/sun/rowset/internal/CachedRowSetWriter;
0 87 1 caller Ljavax/sql/RowSetInternal;
1 87 2 showDel Z
2 87 3 pstmtIns Ljava/sql/PreparedStatement;
5 87 4 crs Lcom/sun/rowset/CachedRowSetImpl;
13 87 5 iColCount I
11 87 6 rsmdWrite Ljavax/sql/rowset/RowSetMetaDataImpl;
12 87 7 rsmdResolv Ljavax/sql/rowset/RowSetMetaDataImpl;
14 87 8 sz I
18 24 9 i I
33 87 9 rows I
57 61 10 cols I
69 87 10 boolConf Z
70 76 11 j I
80 86 11 spe Ljavax/sql/rowset/spi/SyncProviderException;
81 86 12 syncResImpl Lcom/sun/rowset/internal/SyncResolverImpl;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
caller
private boolean updateOriginalRow(javax.sql.rowset.CachedRowSet);
descriptor: (Ljavax/sql/rowset/CachedRowSet;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=25, args_size=2
start local 0 start local 1 0: iconst_0
istore 3
start local 3 1: iconst_0
istore 4
start local 4 2: aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getOriginalRow:()Ljava/sql/ResultSet;
astore 5
start local 5 3: aload 5
invokeinterface java.sql.ResultSet.next:()Z
pop
4: aload 0
aload 0
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.updateWhere:Ljava/lang/String;
aload 5
invokevirtual com.sun.rowset.internal.CachedRowSetWriter.buildWhereClause:(Ljava/lang/String;Ljava/sql/ResultSet;)Ljava/lang/String;
putfield com.sun.rowset.internal.CachedRowSetWriter.updateWhere:Ljava/lang/String;
5: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.selectCmd:Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
astore 6
start local 6 6: aload 6
ldc "where"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
istore 7
start local 7 7: iload 7
iconst_m1
if_icmpeq 10
8: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.selectCmd:Ljava/lang/String;
iconst_0
iload 7
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 8
start local 8 9: aload 0
aload 8
putfield com.sun.rowset.internal.CachedRowSetWriter.selectCmd:Ljava/lang/String;
end local 8 10: StackMap locals: com.sun.rowset.internal.CachedRowSetWriter javax.sql.rowset.CachedRowSet top int int java.sql.ResultSet java.lang.String int
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
new java.lang.StringBuilder
dup
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.selectCmd:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.updateWhere:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
11: sipush 1005
sipush 1007
12: invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;II)Ljava/sql/PreparedStatement;
astore 2
start local 2 13: iconst_0
istore 3
goto 17
14: StackMap locals: com.sun.rowset.internal.CachedRowSetWriter javax.sql.rowset.CachedRowSet java.sql.PreparedStatement int int java.sql.ResultSet java.lang.String int
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.params:[Ljava/lang/Object;
iload 3
aaload
ifnull 16
15: aload 2
iinc 4 1
iload 4
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.params:[Ljava/lang/Object;
iload 3
aaload
invokeinterface java.sql.PreparedStatement.setObject:(ILjava/lang/Object;)V
16: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
17: iload 3
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.keyCols:[I
arraylength
if_icmplt 14
18: aload 2
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMaxRows:()I
invokeinterface java.sql.PreparedStatement.setMaxRows:(I)V
19: aload 2
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMaxFieldSize:()I
invokeinterface java.sql.PreparedStatement.setMaxFieldSize:(I)V
20: aload 2
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getEscapeProcessing:()Z
invokeinterface java.sql.PreparedStatement.setEscapeProcessing:(Z)V
21: aload 2
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getQueryTimeout:()I
invokeinterface java.sql.PreparedStatement.setQueryTimeout:(I)V
22: goto 24
StackMap locals:
StackMap stack: java.lang.Exception
23: pop
24: StackMap locals:
StackMap stack:
aconst_null
astore 8
start local 8 25: aload 2
invokeinterface java.sql.PreparedStatement.executeQuery:()Ljava/sql/ResultSet;
astore 8
26: aload 8
invokeinterface java.sql.ResultSet.getMetaData:()Ljava/sql/ResultSetMetaData;
pop
27: aload 8
invokeinterface java.sql.ResultSet.next:()Z
ifeq 139
28: aload 8
invokeinterface java.sql.ResultSet.next:()Z
ifeq 30
29: iconst_1
ireturn
30: StackMap locals: java.sql.ResultSet
StackMap stack:
aload 8
invokeinterface java.sql.ResultSet.first:()Z
pop
31: iconst_0
istore 9
start local 9 32: new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
astore 10
start local 10 33: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.updateCmd:Ljava/lang/String;
astore 11
start local 11 34: iconst_1
istore 15
start local 15 35: aconst_null
astore 16
start local 16 36: iconst_1
istore 17
start local 17 37: iconst_1
istore 18
start local 18 38: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.CachedRowSetImpl.moveToInsertRow:()V
39: iconst_1
istore 3
goto 112
40: StackMap locals: com.sun.rowset.internal.CachedRowSetWriter javax.sql.rowset.CachedRowSet java.sql.PreparedStatement int int java.sql.ResultSet java.lang.String int java.sql.ResultSet int java.util.Vector java.lang.String top top top int java.lang.Object int int
StackMap stack:
aload 5
iload 3
invokeinterface java.sql.ResultSet.getObject:(I)Ljava/lang/Object;
astore 12
start local 12 41: aload 1
iload 3
invokeinterface javax.sql.rowset.CachedRowSet.getObject:(I)Ljava/lang/Object;
astore 13
start local 13 42: aload 8
iload 3
invokeinterface java.sql.ResultSet.getObject:(I)Ljava/lang/Object;
astore 14
start local 14 43: aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getTypeMap:()Ljava/util/Map;
ifnonnull 44
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
invokeinterface java.sql.Connection.getTypeMap:()Ljava/util/Map;
goto 45
StackMap locals: com.sun.rowset.internal.CachedRowSetWriter javax.sql.rowset.CachedRowSet java.sql.PreparedStatement int int java.sql.ResultSet java.lang.String int java.sql.ResultSet int java.util.Vector java.lang.String java.lang.Object java.lang.Object java.lang.Object int java.lang.Object int int
StackMap stack:
44: aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getTypeMap:()Ljava/util/Map;
StackMap locals:
StackMap stack: java.util.Map
45: astore 19
start local 19 46: aload 14
instanceof java.sql.Struct
ifeq 61
47: aload 14
checkcast java.sql.Struct
astore 20
start local 20 48: aconst_null
astore 21
start local 21 49: aload 19
aload 20
invokeinterface java.sql.Struct.getSQLTypeName:()Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Class
astore 21
50: aload 21
ifnull 72
51: aconst_null
astore 22
start local 22 52: aload 21
invokestatic sun.reflect.misc.ReflectUtil.newInstance:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast java.sql.SQLData
astore 22
53: goto 56
StackMap locals: com.sun.rowset.internal.CachedRowSetWriter javax.sql.rowset.CachedRowSet java.sql.PreparedStatement int int java.sql.ResultSet java.lang.String int java.sql.ResultSet int java.util.Vector java.lang.String java.lang.Object java.lang.Object java.lang.Object int java.lang.Object int int java.util.Map java.sql.Struct java.lang.Class java.sql.SQLData
StackMap stack: java.lang.Exception
54: astore 23
start local 23 55: new java.sql.SQLException
dup
ldc "Unable to Instantiate: "
aload 23
invokespecial java.sql.SQLException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 23 56: StackMap locals:
StackMap stack:
aload 20
aload 19
invokeinterface java.sql.Struct.getAttributes:(Ljava/util/Map;)[Ljava/lang/Object;
astore 23
start local 23 57: new javax.sql.rowset.serial.SQLInputImpl
dup
aload 23
aload 19
invokespecial javax.sql.rowset.serial.SQLInputImpl.<init>:([Ljava/lang/Object;Ljava/util/Map;)V
astore 24
start local 24 58: aload 22
aload 24
aload 20
invokeinterface java.sql.Struct.getSQLTypeName:()Ljava/lang/String;
invokeinterface java.sql.SQLData.readSQL:(Ljava/sql/SQLInput;Ljava/lang/String;)V
59: aload 22
astore 14
end local 24 end local 23 end local 22 end local 21 end local 20 60: goto 72
StackMap locals:
StackMap stack:
61: aload 14
instanceof java.sql.SQLData
ifeq 64
62: new javax.sql.rowset.serial.SerialStruct
dup
aload 14
checkcast java.sql.SQLData
aload 19
invokespecial javax.sql.rowset.serial.SerialStruct.<init>:(Ljava/sql/SQLData;Ljava/util/Map;)V
astore 14
63: goto 72
StackMap locals:
StackMap stack:
64: aload 14
instanceof java.sql.Blob
ifeq 67
65: new javax.sql.rowset.serial.SerialBlob
dup
aload 14
checkcast java.sql.Blob
invokespecial javax.sql.rowset.serial.SerialBlob.<init>:(Ljava/sql/Blob;)V
astore 14
66: goto 72
StackMap locals:
StackMap stack:
67: aload 14
instanceof java.sql.Clob
ifeq 70
68: new javax.sql.rowset.serial.SerialClob
dup
aload 14
checkcast java.sql.Clob
invokespecial javax.sql.rowset.serial.SerialClob.<init>:(Ljava/sql/Clob;)V
astore 14
69: goto 72
StackMap locals:
StackMap stack:
70: aload 14
instanceof java.sql.Array
ifeq 72
71: new javax.sql.rowset.serial.SerialArray
dup
aload 14
checkcast java.sql.Array
aload 19
invokespecial javax.sql.rowset.serial.SerialArray.<init>:(Ljava/sql/Array;Ljava/util/Map;)V
astore 14
72: StackMap locals:
StackMap stack:
iconst_1
istore 15
73: aload 14
ifnonnull 78
aload 12
ifnull 78
74: aload 0
dup
getfield com.sun.rowset.internal.CachedRowSetWriter.iChangedValsinDbOnly:I
iconst_1
iadd
putfield com.sun.rowset.internal.CachedRowSetWriter.iChangedValsinDbOnly:I
75: iconst_0
istore 15
76: aload 14
astore 16
77: goto 107
78: StackMap locals:
StackMap stack:
aload 14
ifnull 83
aload 14
aload 12
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 83
79: aload 0
dup
getfield com.sun.rowset.internal.CachedRowSetWriter.iChangedValsinDbOnly:I
iconst_1
iadd
putfield com.sun.rowset.internal.CachedRowSetWriter.iChangedValsinDbOnly:I
80: iconst_0
istore 15
81: aload 14
astore 16
82: goto 107
StackMap locals:
StackMap stack:
83: aload 12
ifnull 84
aload 13
ifnonnull 91
84: StackMap locals:
StackMap stack:
iload 17
ifeq 85
iload 18
ifne 86
85: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 11
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 11
86: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 11
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMetaData:()Ljava/sql/ResultSetMetaData;
iload 3
invokeinterface java.sql.ResultSetMetaData.getColumnName:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 11
87: aload 10
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.Vector.add:(Ljava/lang/Object;)Z
pop
88: new java.lang.StringBuilder
dup
aload 11
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 11
89: iconst_0
istore 17
90: goto 107
StackMap locals:
StackMap stack:
91: aload 12
aload 13
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 94
92: iinc 9 1
93: goto 107
StackMap locals:
StackMap stack:
94: aload 12
aload 13
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 107
95: aload 1
iload 3
invokeinterface javax.sql.rowset.CachedRowSet.columnUpdated:(I)Z
ifeq 107
96: aload 14
aload 12
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 104
97: iload 18
ifeq 98
iload 17
ifne 99
98: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 11
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 11
99: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 11
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMetaData:()Ljava/sql/ResultSetMetaData;
iload 3
invokeinterface java.sql.ResultSetMetaData.getColumnName:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 11
100: aload 10
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.Vector.add:(Ljava/lang/Object;)Z
pop
101: new java.lang.StringBuilder
dup
aload 11
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 11
102: iconst_0
istore 18
103: goto 107
104: StackMap locals:
StackMap stack:
iconst_0
istore 15
105: aload 14
astore 16
106: aload 0
dup
getfield com.sun.rowset.internal.CachedRowSetWriter.iChangedValsInDbAndCRS:I
iconst_1
iadd
putfield com.sun.rowset.internal.CachedRowSetWriter.iChangedValsInDbAndCRS:I
107: StackMap locals:
StackMap stack:
iload 15
ifne 110
108: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
iload 3
aload 16
invokevirtual com.sun.rowset.CachedRowSetImpl.updateObject:(ILjava/lang/Object;)V
109: goto 111
110: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
iload 3
invokevirtual com.sun.rowset.CachedRowSetImpl.updateNull:(I)V
end local 19 111: StackMap locals:
StackMap stack:
iinc 3 1
end local 14 end local 13 end local 12 StackMap locals: com.sun.rowset.internal.CachedRowSetWriter javax.sql.rowset.CachedRowSet java.sql.PreparedStatement int int java.sql.ResultSet java.lang.String int java.sql.ResultSet int java.util.Vector java.lang.String top top top int java.lang.Object int int
StackMap stack:
112: iload 3
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerColumnCount:I
if_icmple 40
113: aload 8
invokeinterface java.sql.ResultSet.close:()V
114: aload 2
invokeinterface java.sql.PreparedStatement.close:()V
115: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.CachedRowSetImpl.insertRow:()V
116: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.CachedRowSetImpl.moveToCurrentRow:()V
117: iload 17
ifne 118
aload 10
invokevirtual java.util.Vector.size:()I
ifeq 119
118: StackMap locals:
StackMap stack:
iload 9
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerColumnCount:I
if_icmpne 120
119: StackMap locals:
StackMap stack:
iconst_0
ireturn
120: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.iChangedValsInDbAndCRS:I
ifne 121
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.iChangedValsinDbOnly:I
ifeq 122
121: StackMap locals:
StackMap stack:
iconst_1
ireturn
122: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 11
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.updateWhere:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 11
123: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
aload 11
invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
astore 2
124: iconst_0
istore 3
goto 130
125: StackMap locals:
StackMap stack:
aload 1
aload 10
iload 3
invokevirtual java.util.Vector.get:(I)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
invokeinterface javax.sql.rowset.CachedRowSet.getObject:(I)Ljava/lang/Object;
astore 19
start local 19 126: aload 19
ifnull 128
127: aload 2
iload 3
iconst_1
iadd
aload 19
invokeinterface java.sql.PreparedStatement.setObject:(ILjava/lang/Object;)V
goto 129
128: StackMap locals: java.lang.Object
StackMap stack:
aload 2
iload 3
iconst_1
iadd
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMetaData:()Ljava/sql/ResultSetMetaData;
iload 3
iconst_1
iadd
invokeinterface java.sql.ResultSetMetaData.getColumnType:(I)I
invokeinterface java.sql.PreparedStatement.setNull:(II)V
end local 19 129: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
130: iload 3
aload 10
invokevirtual java.util.Vector.size:()I
if_icmplt 125
131: iload 3
istore 4
132: iconst_0
istore 3
goto 136
133: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.params:[Ljava/lang/Object;
iload 3
aaload
ifnull 135
134: aload 2
iinc 4 1
iload 4
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.params:[Ljava/lang/Object;
iload 3
aaload
invokeinterface java.sql.PreparedStatement.setObject:(ILjava/lang/Object;)V
135: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
136: iload 3
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.keyCols:[I
arraylength
if_icmplt 133
137: aload 2
invokeinterface java.sql.PreparedStatement.executeUpdate:()I
istore 3
138: iconst_0
ireturn
end local 18 end local 17 end local 16 end local 15 end local 11 end local 10 end local 9 139: StackMap locals: com.sun.rowset.internal.CachedRowSetWriter javax.sql.rowset.CachedRowSet java.sql.PreparedStatement int int java.sql.ResultSet java.lang.String int java.sql.ResultSet
StackMap stack:
iconst_1
ireturn
end local 8 end local 7 end local 6 end local 2 140: StackMap locals: com.sun.rowset.internal.CachedRowSetWriter javax.sql.rowset.CachedRowSet top int int java.sql.ResultSet
StackMap stack: java.sql.SQLException
astore 6
start local 6 141: aload 6
invokevirtual java.sql.SQLException.printStackTrace:()V
142: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.CachedRowSetImpl.moveToInsertRow:()V
143: iconst_1
istore 3
goto 146
144: StackMap locals: java.sql.SQLException
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
iload 3
invokevirtual com.sun.rowset.CachedRowSetImpl.updateNull:(I)V
145: iinc 3 1
StackMap locals:
StackMap stack:
146: iload 3
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerColumnCount:I
if_icmple 144
147: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.CachedRowSetImpl.insertRow:()V
148: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.CachedRowSetImpl.moveToCurrentRow:()V
149: iconst_1
ireturn
end local 6 end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 150 0 this Lcom/sun/rowset/internal/CachedRowSetWriter;
0 150 1 crs Ljavax/sql/rowset/CachedRowSet;
13 140 2 pstmt Ljava/sql/PreparedStatement;
1 150 3 i I
2 150 4 idx I
3 150 5 origVals Ljava/sql/ResultSet;
6 140 6 tempselectCmd Ljava/lang/String;
7 140 7 idxWhere I
9 10 8 tempSelect Ljava/lang/String;
25 140 8 rs Ljava/sql/ResultSet;
32 139 9 colsNotChanged I
33 139 10 cols Ljava/util/Vector;
34 139 11 updateExec Ljava/lang/String;
41 112 12 orig Ljava/lang/Object;
42 112 13 curr Ljava/lang/Object;
43 112 14 rsval Ljava/lang/Object;
35 139 15 boolNull Z
36 139 16 objVal Ljava/lang/Object;
37 139 17 first Z
38 139 18 flag Z
46 111 19 map Ljava/util/Map;
48 60 20 s Ljava/sql/Struct;
49 60 21 c Ljava/lang/Class;
52 60 22 obj Ljava/sql/SQLData;
55 56 23 ex Ljava/lang/Exception;
57 60 23 attribs [Ljava/lang/Object;
58 60 24 sqlInput Ljavax/sql/rowset/serial/SQLInputImpl;
126 129 19 obj Ljava/lang/Object;
141 150 6 ex Ljava/sql/SQLException;
Exception table:
from to target type
18 22 23 Class java.lang.Exception
52 53 54 Class java.lang.Exception
4 29 140 Class java.sql.SQLException
30 119 140 Class java.sql.SQLException
120 121 140 Class java.sql.SQLException
122 138 140 Class java.sql.SQLException
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
crs
private boolean insertNewRow(javax.sql.rowset.CachedRowSet, java.sql.PreparedStatement, com.sun.rowset.CachedRowSetImpl);
descriptor: (Ljavax/sql/rowset/CachedRowSet;Ljava/sql/PreparedStatement;Lcom/sun/rowset/CachedRowSetImpl;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=18, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_0
istore 4
start local 4 1: aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMetaData:()Ljava/sql/ResultSetMetaData;
invokeinterface java.sql.ResultSetMetaData.getColumnCount:()I
istore 5
start local 5 2: iconst_0
istore 6
start local 6 3: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.selectCmd:Ljava/lang/String;
4: sipush 1005
sipush 1007
5: invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;II)Ljava/sql/PreparedStatement;
astore 7
start local 7 6: aconst_null
astore 9
start local 9 7: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
invokeinterface java.sql.Connection.getMetaData:()Ljava/sql/DatabaseMetaData;
astore 10
start local 10 8: aload 7
invokeinterface java.sql.PreparedStatement.executeQuery:()Ljava/sql/ResultSet;
astore 8
start local 8 9: aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getTableName:()Ljava/lang/String;
astore 11
start local 11 10: aload 10
aconst_null
aconst_null
aload 11
invokeinterface java.sql.DatabaseMetaData.getPrimaryKeys:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
astore 9
11: iload 5
anewarray java.lang.String
astore 12
start local 12 12: iconst_0
istore 13
start local 13 13: goto 17
14: StackMap locals: com.sun.rowset.internal.CachedRowSetWriter javax.sql.rowset.CachedRowSet java.sql.PreparedStatement com.sun.rowset.CachedRowSetImpl int int int java.sql.PreparedStatement java.sql.ResultSet java.sql.ResultSet java.sql.DatabaseMetaData java.lang.String java.lang.String[] int
StackMap stack:
aload 9
ldc "COLUMN_NAME"
invokeinterface java.sql.ResultSet.getString:(Ljava/lang/String;)Ljava/lang/String;
astore 14
start local 14 15: aload 12
iload 13
aload 14
aastore
16: iinc 13 1
end local 14 17: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.sql.ResultSet.next:()Z
ifne 14
18: aload 8
invokeinterface java.sql.ResultSet.next:()Z
ifeq 40
19: iconst_0
istore 14
start local 14 20: goto 39
21: StackMap locals: int
StackMap stack:
aload 12
iload 14
aaload
ifnull 38
22: aload 1
aload 12
iload 14
aaload
invokeinterface javax.sql.rowset.CachedRowSet.getObject:(Ljava/lang/String;)Ljava/lang/Object;
ifnonnull 24
23: goto 40
24: StackMap locals:
StackMap stack:
aload 1
aload 12
iload 14
aaload
invokeinterface javax.sql.rowset.CachedRowSet.getObject:(Ljava/lang/String;)Ljava/lang/Object;
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
astore 15
start local 15 25: aload 8
aload 12
iload 14
aaload
invokeinterface java.sql.ResultSet.getObject:(Ljava/lang/String;)Ljava/lang/Object;
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
astore 16
start local 16 26: aload 15
aload 16
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 38
27: iconst_1
istore 6
28: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.CachedRowSetImpl.moveToInsertRow:()V
29: iconst_1
istore 4
goto 35
30: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 8
invokeinterface java.sql.ResultSet.getMetaData:()Ljava/sql/ResultSetMetaData;
iload 4
invokeinterface java.sql.ResultSetMetaData.getColumnName:(I)Ljava/lang/String;
astore 17
start local 17 31: aload 17
aload 12
iload 14
aaload
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 33
32: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
iload 4
aload 16
invokevirtual com.sun.rowset.CachedRowSetImpl.updateObject:(ILjava/lang/Object;)V
goto 34
33: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
iload 4
invokevirtual com.sun.rowset.CachedRowSetImpl.updateNull:(I)V
end local 17 34: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
35: iload 4
iload 5
if_icmple 30
36: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.CachedRowSetImpl.insertRow:()V
37: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.CachedRowSetImpl.moveToCurrentRow:()V
end local 16 end local 15 38: StackMap locals:
StackMap stack:
iinc 14 1
StackMap locals:
StackMap stack:
39: iload 14
aload 12
arraylength
if_icmplt 21
end local 14 40: StackMap locals:
StackMap stack:
iload 6
ifeq 42
41: iload 6
ireturn
42: StackMap locals:
StackMap stack:
iconst_1
istore 4
goto 49
43: StackMap locals:
StackMap stack:
aload 1
iload 4
invokeinterface javax.sql.rowset.CachedRowSet.getObject:(I)Ljava/lang/Object;
astore 14
start local 14 44: aload 14
ifnull 47
45: aload 2
iload 4
aload 14
invokeinterface java.sql.PreparedStatement.setObject:(ILjava/lang/Object;)V
46: goto 48
47: StackMap locals: java.lang.Object
StackMap stack:
aload 2
iload 4
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMetaData:()Ljava/sql/ResultSetMetaData;
iload 4
invokeinterface java.sql.ResultSetMetaData.getColumnType:(I)I
invokeinterface java.sql.PreparedStatement.setNull:(II)V
end local 14 48: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
49: iload 4
iload 5
if_icmple 43
50: aload 2
invokeinterface java.sql.PreparedStatement.executeUpdate:()I
istore 4
51: iconst_0
ireturn
52: StackMap locals:
StackMap stack: java.sql.SQLException
pop
53: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.CachedRowSetImpl.moveToInsertRow:()V
54: iconst_1
istore 4
goto 57
55: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
iload 4
invokevirtual com.sun.rowset.CachedRowSetImpl.updateNull:(I)V
56: iinc 4 1
StackMap locals:
StackMap stack:
57: iload 4
iload 5
if_icmple 55
58: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.CachedRowSetImpl.insertRow:()V
59: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.crsResolve:Lcom/sun/rowset/CachedRowSetImpl;
invokevirtual com.sun.rowset.CachedRowSetImpl.moveToCurrentRow:()V
60: iconst_1
ireturn
end local 13 end local 12 end local 11 end local 10 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 61 0 this Lcom/sun/rowset/internal/CachedRowSetWriter;
0 61 1 crs Ljavax/sql/rowset/CachedRowSet;
0 61 2 pstmt Ljava/sql/PreparedStatement;
0 61 3 crsRes Lcom/sun/rowset/CachedRowSetImpl;
1 61 4 i I
2 61 5 icolCount I
3 61 6 returnVal Z
6 61 7 pstmtSel Ljava/sql/PreparedStatement;
9 61 8 rs Ljava/sql/ResultSet;
7 61 9 rs2 Ljava/sql/ResultSet;
8 61 10 dbmd Ljava/sql/DatabaseMetaData;
10 61 11 table Ljava/lang/String;
12 61 12 primaryKeys [Ljava/lang/String;
13 61 13 k I
15 17 14 pkcolname Ljava/lang/String;
20 40 14 j I
25 38 15 crsPK Ljava/lang/String;
26 38 16 rsPK Ljava/lang/String;
31 34 17 colname Ljava/lang/String;
44 48 14 obj Ljava/lang/Object;
Exception table:
from to target type
42 51 52 Class java.sql.SQLException
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
crs
pstmt
crsRes
private boolean deleteOriginalRow(javax.sql.rowset.CachedRowSet, com.sun.rowset.CachedRowSetImpl);
descriptor: (Ljavax/sql/rowset/CachedRowSet;Lcom/sun/rowset/CachedRowSetImpl;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=11, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 5
start local 5 1: aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getOriginalRow:()Ljava/sql/ResultSet;
astore 6
start local 6 2: aload 6
invokeinterface java.sql.ResultSet.next:()Z
pop
3: aload 0
aload 0
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.deleteWhere:Ljava/lang/String;
aload 6
invokevirtual com.sun.rowset.internal.CachedRowSetWriter.buildWhereClause:(Ljava/lang/String;Ljava/sql/ResultSet;)Ljava/lang/String;
putfield com.sun.rowset.internal.CachedRowSetWriter.deleteWhere:Ljava/lang/String;
4: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
new java.lang.StringBuilder
dup
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.selectCmd:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.deleteWhere:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
5: sipush 1005
sipush 1007
6: invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;II)Ljava/sql/PreparedStatement;
astore 3
start local 3 7: iconst_0
istore 4
start local 4 8: goto 12
9: StackMap locals: com.sun.rowset.internal.CachedRowSetWriter javax.sql.rowset.CachedRowSet com.sun.rowset.CachedRowSetImpl java.sql.PreparedStatement int int java.sql.ResultSet
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.params:[Ljava/lang/Object;
iload 4
aaload
ifnull 11
10: aload 3
iinc 5 1
iload 5
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.params:[Ljava/lang/Object;
iload 4
aaload
invokeinterface java.sql.PreparedStatement.setObject:(ILjava/lang/Object;)V
11: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
12: iload 4
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.keyCols:[I
arraylength
if_icmplt 9
13: aload 3
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMaxRows:()I
invokeinterface java.sql.PreparedStatement.setMaxRows:(I)V
14: aload 3
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMaxFieldSize:()I
invokeinterface java.sql.PreparedStatement.setMaxFieldSize:(I)V
15: aload 3
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getEscapeProcessing:()Z
invokeinterface java.sql.PreparedStatement.setEscapeProcessing:(Z)V
16: aload 3
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getQueryTimeout:()I
invokeinterface java.sql.PreparedStatement.setQueryTimeout:(I)V
17: goto 19
StackMap locals:
StackMap stack: java.lang.Exception
18: pop
19: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.sql.PreparedStatement.executeQuery:()Ljava/sql/ResultSet;
astore 7
start local 7 20: aload 7
invokeinterface java.sql.ResultSet.next:()Z
ifeq 53
21: aload 7
invokeinterface java.sql.ResultSet.next:()Z
ifeq 23
22: iconst_1
ireturn
23: StackMap locals: java.sql.ResultSet
StackMap stack:
aload 7
invokeinterface java.sql.ResultSet.first:()Z
pop
24: iconst_0
istore 8
start local 8 25: aload 2
invokevirtual com.sun.rowset.CachedRowSetImpl.moveToInsertRow:()V
26: iconst_1
istore 4
goto 36
27: StackMap locals: int
StackMap stack:
aload 6
iload 4
invokeinterface java.sql.ResultSet.getObject:(I)Ljava/lang/Object;
astore 9
start local 9 28: aload 7
iload 4
invokeinterface java.sql.ResultSet.getObject:(I)Ljava/lang/Object;
astore 10
start local 10 29: aload 9
ifnull 34
aload 10
ifnull 34
30: aload 9
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
aload 10
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 35
31: iconst_1
istore 8
32: aload 2
iload 4
aload 6
iload 4
invokeinterface java.sql.ResultSet.getObject:(I)Ljava/lang/Object;
invokevirtual com.sun.rowset.CachedRowSetImpl.updateObject:(ILjava/lang/Object;)V
33: goto 35
34: StackMap locals: java.lang.Object java.lang.Object
StackMap stack:
aload 2
iload 4
invokevirtual com.sun.rowset.CachedRowSetImpl.updateNull:(I)V
end local 10 end local 9 35: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
36: iload 4
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMetaData:()Ljava/sql/ResultSetMetaData;
invokeinterface java.sql.ResultSetMetaData.getColumnCount:()I
if_icmple 27
37: aload 2
invokevirtual com.sun.rowset.CachedRowSetImpl.insertRow:()V
38: aload 2
invokevirtual com.sun.rowset.CachedRowSetImpl.moveToCurrentRow:()V
39: iload 8
ifeq 41
40: iconst_1
ireturn
41: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.deleteCmd:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.deleteWhere:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 9
start local 9 42: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
aload 9
invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
astore 3
43: iconst_0
istore 5
44: iconst_0
istore 4
goto 48
45: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.params:[Ljava/lang/Object;
iload 4
aaload
ifnull 47
46: aload 3
iinc 5 1
iload 5
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.params:[Ljava/lang/Object;
iload 4
aaload
invokeinterface java.sql.PreparedStatement.setObject:(ILjava/lang/Object;)V
47: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
48: iload 4
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.keyCols:[I
arraylength
if_icmplt 45
49: aload 3
invokeinterface java.sql.PreparedStatement.executeUpdate:()I
iconst_1
if_icmpeq 51
50: iconst_1
ireturn
51: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.sql.PreparedStatement.close:()V
end local 9 end local 8 52: goto 54
53: StackMap locals:
StackMap stack:
iconst_1
ireturn
54: StackMap locals:
StackMap stack:
iconst_0
ireturn
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 55 0 this Lcom/sun/rowset/internal/CachedRowSetWriter;
0 55 1 crs Ljavax/sql/rowset/CachedRowSet;
0 55 2 crsRes Lcom/sun/rowset/CachedRowSetImpl;
7 55 3 pstmt Ljava/sql/PreparedStatement;
8 55 4 i I
1 55 5 idx I
2 55 6 origVals Ljava/sql/ResultSet;
20 55 7 rs Ljava/sql/ResultSet;
25 52 8 boolChanged Z
28 35 9 original Ljava/lang/Object;
29 35 10 changed Ljava/lang/Object;
42 52 9 cmd Ljava/lang/String;
Exception table:
from to target type
13 17 18 Class java.lang.Exception
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
crs
crsRes
public void setReader(com.sun.rowset.internal.CachedRowSetReader);
descriptor: (Lcom/sun/rowset/internal/CachedRowSetReader;)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 com.sun.rowset.internal.CachedRowSetWriter.reader:Lcom/sun/rowset/internal/CachedRowSetReader;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/rowset/internal/CachedRowSetWriter;
0 2 1 reader Lcom/sun/rowset/internal/CachedRowSetReader;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
reader
public com.sun.rowset.internal.CachedRowSetReader getReader();
descriptor: ()Lcom/sun/rowset/internal/CachedRowSetReader;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.reader:Lcom/sun/rowset/internal/CachedRowSetReader;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/rowset/internal/CachedRowSetWriter;
Exceptions:
throws java.sql.SQLException
private void initSQLStatements(javax.sql.rowset.CachedRowSet);
descriptor: (Ljavax/sql/rowset/CachedRowSet;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=9, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMetaData:()Ljava/sql/ResultSetMetaData;
putfield com.sun.rowset.internal.CachedRowSetWriter.callerMd:Ljava/sql/ResultSetMetaData;
1: aload 0
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerMd:Ljava/sql/ResultSetMetaData;
invokeinterface java.sql.ResultSetMetaData.getColumnCount:()I
putfield com.sun.rowset.internal.CachedRowSetWriter.callerColumnCount:I
2: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerColumnCount:I
iconst_1
if_icmpge 4
3: return
4: StackMap locals:
StackMap stack:
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getTableName:()Ljava/lang/String;
astore 3
start local 3 5: aload 3
ifnonnull 9
6: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerMd:Ljava/sql/ResultSetMetaData;
iconst_1
invokeinterface java.sql.ResultSetMetaData.getTableName:(I)Ljava/lang/String;
astore 3
7: aload 3
ifnull 8
aload 3
invokevirtual java.lang.String.length:()I
ifne 9
8: StackMap locals: com.sun.rowset.internal.CachedRowSetWriter javax.sql.rowset.CachedRowSet top java.lang.String
StackMap stack:
new java.sql.SQLException
dup
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.resBundle:Lcom/sun/rowset/JdbcRowSetResourceBundle;
ldc "crswriter.tname"
invokevirtual com.sun.rowset.JdbcRowSetResourceBundle.handleGetObject:(Ljava/lang/String;)Ljava/lang/Object;
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokespecial java.sql.SQLException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerMd:Ljava/sql/ResultSetMetaData;
iconst_1
invokeinterface java.sql.ResultSetMetaData.getCatalogName:(I)Ljava/lang/String;
astore 4
start local 4 10: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerMd:Ljava/sql/ResultSetMetaData;
iconst_1
invokeinterface java.sql.ResultSetMetaData.getSchemaName:(I)Ljava/lang/String;
astore 5
start local 5 11: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
invokeinterface java.sql.Connection.getMetaData:()Ljava/sql/DatabaseMetaData;
astore 6
start local 6 12: aload 0
ldc "SELECT "
putfield com.sun.rowset.internal.CachedRowSetWriter.selectCmd:Ljava/lang/String;
13: iconst_1
istore 2
start local 2 14: goto 20
15: StackMap locals: com.sun.rowset.internal.CachedRowSetWriter javax.sql.rowset.CachedRowSet int java.lang.String java.lang.String java.lang.String java.sql.DatabaseMetaData
StackMap stack:
aload 0
dup
getfield com.sun.rowset.internal.CachedRowSetWriter.selectCmd:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerMd:Ljava/sql/ResultSetMetaData;
iload 2
invokeinterface java.sql.ResultSetMetaData.getColumnName:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.sun.rowset.internal.CachedRowSetWriter.selectCmd:Ljava/lang/String;
16: iload 2
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerMd:Ljava/sql/ResultSetMetaData;
invokeinterface java.sql.ResultSetMetaData.getColumnCount:()I
if_icmpge 18
17: aload 0
dup
getfield com.sun.rowset.internal.CachedRowSetWriter.selectCmd:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
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;
putfield com.sun.rowset.internal.CachedRowSetWriter.selectCmd:Ljava/lang/String;
goto 19
18: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.sun.rowset.internal.CachedRowSetWriter.selectCmd:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
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;
putfield com.sun.rowset.internal.CachedRowSetWriter.selectCmd:Ljava/lang/String;
19: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
20: iload 2
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerColumnCount:I
if_icmple 15
21: aload 0
dup
getfield com.sun.rowset.internal.CachedRowSetWriter.selectCmd:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "FROM "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
aload 6
aload 4
aload 5
aload 3
invokevirtual com.sun.rowset.internal.CachedRowSetWriter.buildTableName:(Ljava/sql/DatabaseMetaData;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.sun.rowset.internal.CachedRowSetWriter.selectCmd:Ljava/lang/String;
22: aload 0
new java.lang.StringBuilder
dup
ldc "UPDATE "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 6
aload 4
aload 5
aload 3
invokevirtual com.sun.rowset.internal.CachedRowSetWriter.buildTableName:(Ljava/sql/DatabaseMetaData;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.sun.rowset.internal.CachedRowSetWriter.updateCmd:Ljava/lang/String;
23: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.updateCmd:Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
astore 7
start local 7 24: aload 7
ldc "where"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
istore 8
start local 8 25: iload 8
iconst_m1
if_icmpeq 27
26: aload 0
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.updateCmd:Ljava/lang/String;
iconst_0
iload 8
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
putfield com.sun.rowset.internal.CachedRowSetWriter.updateCmd:Ljava/lang/String;
27: StackMap locals: java.lang.String int
StackMap stack:
aload 0
dup
getfield com.sun.rowset.internal.CachedRowSetWriter.updateCmd:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "SET "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.sun.rowset.internal.CachedRowSetWriter.updateCmd:Ljava/lang/String;
28: aload 0
new java.lang.StringBuilder
dup
ldc "INSERT INTO "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 6
aload 4
aload 5
aload 3
invokevirtual com.sun.rowset.internal.CachedRowSetWriter.buildTableName:(Ljava/sql/DatabaseMetaData;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.sun.rowset.internal.CachedRowSetWriter.insertCmd:Ljava/lang/String;
29: aload 0
dup
getfield com.sun.rowset.internal.CachedRowSetWriter.insertCmd:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
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;
putfield com.sun.rowset.internal.CachedRowSetWriter.insertCmd:Ljava/lang/String;
30: iconst_1
istore 2
goto 36
31: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.sun.rowset.internal.CachedRowSetWriter.insertCmd:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerMd:Ljava/sql/ResultSetMetaData;
iload 2
invokeinterface java.sql.ResultSetMetaData.getColumnName:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.sun.rowset.internal.CachedRowSetWriter.insertCmd:Ljava/lang/String;
32: iload 2
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerMd:Ljava/sql/ResultSetMetaData;
invokeinterface java.sql.ResultSetMetaData.getColumnCount:()I
if_icmpge 34
33: aload 0
dup
getfield com.sun.rowset.internal.CachedRowSetWriter.insertCmd:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
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;
putfield com.sun.rowset.internal.CachedRowSetWriter.insertCmd:Ljava/lang/String;
goto 35
34: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.sun.rowset.internal.CachedRowSetWriter.insertCmd:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ") VALUES ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.sun.rowset.internal.CachedRowSetWriter.insertCmd:Ljava/lang/String;
35: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
36: iload 2
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerColumnCount:I
if_icmple 31
37: iconst_1
istore 2
goto 43
38: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.sun.rowset.internal.CachedRowSetWriter.insertCmd:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
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;
putfield com.sun.rowset.internal.CachedRowSetWriter.insertCmd:Ljava/lang/String;
39: iload 2
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerColumnCount:I
if_icmpge 41
40: aload 0
dup
getfield com.sun.rowset.internal.CachedRowSetWriter.insertCmd:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
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;
putfield com.sun.rowset.internal.CachedRowSetWriter.insertCmd:Ljava/lang/String;
goto 42
41: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.sun.rowset.internal.CachedRowSetWriter.insertCmd:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
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;
putfield com.sun.rowset.internal.CachedRowSetWriter.insertCmd:Ljava/lang/String;
42: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
43: iload 2
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerColumnCount:I
if_icmple 38
44: aload 0
new java.lang.StringBuilder
dup
ldc "DELETE FROM "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 6
aload 4
aload 5
aload 3
invokevirtual com.sun.rowset.internal.CachedRowSetWriter.buildTableName:(Ljava/sql/DatabaseMetaData;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.sun.rowset.internal.CachedRowSetWriter.deleteCmd:Ljava/lang/String;
45: aload 0
aload 1
invokevirtual com.sun.rowset.internal.CachedRowSetWriter.buildKeyDesc:(Ljavax/sql/rowset/CachedRowSet;)V
46: return
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 47 0 this Lcom/sun/rowset/internal/CachedRowSetWriter;
0 47 1 caller Ljavax/sql/rowset/CachedRowSet;
14 47 2 i I
5 47 3 table Ljava/lang/String;
10 47 4 catalog Ljava/lang/String;
11 47 5 schema Ljava/lang/String;
12 47 6 dbmd Ljava/sql/DatabaseMetaData;
24 47 7 tempupdCmd Ljava/lang/String;
25 47 8 idxupWhere I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
caller
private java.lang.String buildTableName(java.sql.DatabaseMetaData, java.lang.String, java.lang.String, java.lang.String);
descriptor: (Ljava/sql/DatabaseMetaData;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: ldc ""
astore 5
start local 5 1: aload 2
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 2
2: aload 3
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 3
3: aload 4
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 4
4: aload 1
invokeinterface java.sql.DatabaseMetaData.isCatalogAtStart:()Z
ifeq 11
5: aload 2
ifnull 7
aload 2
invokevirtual java.lang.String.length:()I
ifle 7
6: new java.lang.StringBuilder
dup
aload 5
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokeinterface java.sql.DatabaseMetaData.getCatalogSeparator:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
7: StackMap locals: java.lang.String
StackMap stack:
aload 3
ifnull 9
aload 3
invokevirtual java.lang.String.length:()I
ifle 9
8: new java.lang.StringBuilder
dup
aload 5
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
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;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
9: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 5
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
10: goto 16
11: StackMap locals:
StackMap stack:
aload 3
ifnull 13
aload 3
invokevirtual java.lang.String.length:()I
ifle 13
12: new java.lang.StringBuilder
dup
aload 5
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
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;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
13: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 5
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
14: aload 2
ifnull 16
aload 2
invokevirtual java.lang.String.length:()I
ifle 16
15: new java.lang.StringBuilder
dup
aload 5
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokeinterface java.sql.DatabaseMetaData.getCatalogSeparator:()Ljava/lang/String;
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;
astore 5
16: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 5
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 5
17: aload 5
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 18 0 this Lcom/sun/rowset/internal/CachedRowSetWriter;
0 18 1 dbmd Ljava/sql/DatabaseMetaData;
0 18 2 catalog Ljava/lang/String;
0 18 3 schema Ljava/lang/String;
0 18 4 table Ljava/lang/String;
1 18 5 cmd Ljava/lang/String;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
dbmd
catalog
schema
table
private void buildKeyDesc(javax.sql.rowset.CachedRowSet);
descriptor: (Ljavax/sql/rowset/CachedRowSet;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getKeyColumns:()[I
putfield com.sun.rowset.internal.CachedRowSetWriter.keyCols:[I
1: aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMetaData:()Ljava/sql/ResultSetMetaData;
astore 2
start local 2 2: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.keyCols:[I
ifnull 3
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.keyCols:[I
arraylength
ifne 21
3: StackMap locals: java.sql.ResultSetMetaData
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 3
start local 3 4: iconst_0
istore 4
start local 4 5: goto 14
6: StackMap locals: java.util.ArrayList int
StackMap stack:
aload 2
iload 4
iconst_1
iadd
invokeinterface java.sql.ResultSetMetaData.getColumnType:(I)I
sipush 2005
if_icmpeq 13
7: aload 2
iload 4
iconst_1
iadd
invokeinterface java.sql.ResultSetMetaData.getColumnType:(I)I
sipush 2002
if_icmpeq 13
8: aload 2
iload 4
iconst_1
iadd
invokeinterface java.sql.ResultSetMetaData.getColumnType:(I)I
sipush 2009
if_icmpeq 13
9: aload 2
iload 4
iconst_1
iadd
invokeinterface java.sql.ResultSetMetaData.getColumnType:(I)I
sipush 2004
if_icmpeq 13
10: aload 2
iload 4
iconst_1
iadd
invokeinterface java.sql.ResultSetMetaData.getColumnType:(I)I
sipush 2003
if_icmpeq 13
11: aload 2
iload 4
iconst_1
iadd
invokeinterface java.sql.ResultSetMetaData.getColumnType:(I)I
sipush 1111
if_icmpeq 13
12: aload 3
iload 4
iconst_1
iadd
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
13: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
14: iload 4
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerColumnCount:I
if_icmplt 6
end local 4 15: aload 0
aload 3
invokevirtual java.util.ArrayList.size:()I
newarray 10
putfield com.sun.rowset.internal.CachedRowSetWriter.keyCols:[I
16: iconst_0
istore 4
start local 4 17: goto 20
18: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.keyCols:[I
iload 4
aload 3
iload 4
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
iastore
19: iinc 4 1
StackMap locals:
StackMap stack:
20: iload 4
aload 3
invokevirtual java.util.ArrayList.size:()I
if_icmplt 18
end local 4 end local 3 21: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.keyCols:[I
arraylength
anewarray java.lang.Object
putfield com.sun.rowset.internal.CachedRowSetWriter.params:[Ljava/lang/Object;
22: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lcom/sun/rowset/internal/CachedRowSetWriter;
0 23 1 crs Ljavax/sql/rowset/CachedRowSet;
2 23 2 resultsetmd Ljava/sql/ResultSetMetaData;
4 21 3 listKeys Ljava/util/ArrayList<Ljava/lang/Integer;>;
5 15 4 i I
17 21 4 i I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
crs
private java.lang.String buildWhereClause(java.lang.String, java.sql.ResultSet);
descriptor: (Ljava/lang/String;Ljava/sql/ResultSet;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: ldc "WHERE "
astore 1
1: iconst_0
istore 3
start local 3 2: goto 12
3: StackMap locals: int
StackMap stack:
iload 3
ifle 5
4: new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "AND "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 1
5: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.callerMd:Ljava/sql/ResultSetMetaData;
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.keyCols:[I
iload 3
iaload
invokeinterface java.sql.ResultSetMetaData.getColumnName:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 1
6: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.params:[Ljava/lang/Object;
iload 3
aload 2
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.keyCols:[I
iload 3
iaload
invokeinterface java.sql.ResultSet.getObject:(I)Ljava/lang/Object;
aastore
7: aload 2
invokeinterface java.sql.ResultSet.wasNull:()Z
ifeq 10
8: new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " IS NULL "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 1
9: goto 11
10: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 1
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 1
11: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
12: iload 3
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.keyCols:[I
arraylength
if_icmplt 3
end local 3 13: aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/sun/rowset/internal/CachedRowSetWriter;
0 14 1 whereClause Ljava/lang/String;
0 14 2 rs Ljava/sql/ResultSet;
2 13 3 i I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
whereClause
rs
void updateResolvedConflictToDB(javax.sql.rowset.CachedRowSet, java.sql.Connection);
descriptor: (Ljavax/sql/rowset/CachedRowSet;Ljava/sql/Connection;)V
flags: (0x0000)
Code:
stack=6, locals=14, args_size=3
start local 0 start local 1 start local 2 0: ldc "WHERE "
astore 4
start local 4 1: ldc "UPDATE "
astore 5
start local 5 2: aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMetaData:()Ljava/sql/ResultSetMetaData;
invokeinterface java.sql.ResultSetMetaData.getColumnCount:()I
istore 6
start local 6 3: aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getKeyColumns:()[I
astore 7
start local 7 4: ldc ""
astore 9
start local 9 5: aload 0
aload 4
aload 1
invokevirtual com.sun.rowset.internal.CachedRowSetWriter.buildWhereClause:(Ljava/lang/String;Ljava/sql/ResultSet;)Ljava/lang/String;
astore 4
6: aload 7
ifnull 7
aload 7
arraylength
ifne 12
7: StackMap locals: com.sun.rowset.internal.CachedRowSetWriter javax.sql.rowset.CachedRowSet java.sql.Connection top java.lang.String java.lang.String int int[] top java.lang.String
StackMap stack:
iload 6
newarray 10
astore 7
8: iconst_0
istore 10
start local 10 9: goto 11
10: StackMap locals: int
StackMap stack:
aload 7
iload 10
iinc 10 1
iload 10
iastore
11: StackMap locals:
StackMap stack:
iload 10
aload 7
arraylength
if_icmplt 10
end local 10 12: StackMap locals:
StackMap stack:
aload 7
arraylength
anewarray java.lang.Object
astore 8
start local 8 13: new java.lang.StringBuilder
dup
ldc "UPDATE "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 2
invokeinterface java.sql.Connection.getMetaData:()Ljava/sql/DatabaseMetaData;
14: aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMetaData:()Ljava/sql/ResultSetMetaData;
iconst_1
invokeinterface java.sql.ResultSetMetaData.getCatalogName:(I)Ljava/lang/String;
15: aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMetaData:()Ljava/sql/ResultSetMetaData;
iconst_1
invokeinterface java.sql.ResultSetMetaData.getSchemaName:(I)Ljava/lang/String;
16: aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getTableName:()Ljava/lang/String;
17: invokevirtual com.sun.rowset.internal.CachedRowSetWriter.buildTableName:(Ljava/sql/DatabaseMetaData;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
18: new java.lang.StringBuilder
dup
aload 5
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "SET "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
19: iconst_1
istore 10
start local 10 20: iconst_1
istore 11
start local 11 21: goto 29
22: StackMap locals: com.sun.rowset.internal.CachedRowSetWriter javax.sql.rowset.CachedRowSet java.sql.Connection top java.lang.String java.lang.String int int[] java.lang.Object[] java.lang.String int int
StackMap stack:
aload 1
iload 11
invokeinterface javax.sql.rowset.CachedRowSet.columnUpdated:(I)Z
ifeq 28
23: iload 10
ifne 25
24: new java.lang.StringBuilder
dup
aload 9
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 9
25: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 9
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMetaData:()Ljava/sql/ResultSetMetaData;
iload 11
invokeinterface java.sql.ResultSetMetaData.getColumnName:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 9
26: new java.lang.StringBuilder
dup
aload 9
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 9
27: iconst_0
istore 10
28: StackMap locals:
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
29: iload 11
iload 6
if_icmple 22
end local 11 30: new java.lang.StringBuilder
dup
aload 5
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 9
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
31: ldc "WHERE "
astore 4
32: iconst_0
istore 11
start local 11 33: goto 43
34: StackMap locals:
StackMap stack:
iload 11
ifle 36
35: new java.lang.StringBuilder
dup
aload 4
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "AND "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
36: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 4
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMetaData:()Ljava/sql/ResultSetMetaData;
aload 7
iload 11
iaload
invokeinterface java.sql.ResultSetMetaData.getColumnName:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
37: aload 8
iload 11
aload 1
aload 7
iload 11
iaload
invokeinterface javax.sql.rowset.CachedRowSet.getObject:(I)Ljava/lang/Object;
aastore
38: aload 1
invokeinterface javax.sql.rowset.CachedRowSet.wasNull:()Z
ifeq 41
39: new java.lang.StringBuilder
dup
aload 4
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " IS NULL "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
40: goto 42
41: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 4
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 4
42: StackMap locals:
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
43: iload 11
aload 7
arraylength
if_icmplt 34
end local 11 44: new java.lang.StringBuilder
dup
aload 5
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
45: aload 2
aload 5
invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
astore 3
start local 3 46: iconst_0
istore 11
start local 11 47: iconst_0
istore 12
start local 12 48: goto 56
49: StackMap locals: com.sun.rowset.internal.CachedRowSetWriter javax.sql.rowset.CachedRowSet java.sql.Connection java.sql.PreparedStatement java.lang.String java.lang.String int int[] java.lang.Object[] java.lang.String int int int
StackMap stack:
aload 1
iload 12
iconst_1
iadd
invokeinterface javax.sql.rowset.CachedRowSet.columnUpdated:(I)Z
ifeq 55
50: aload 1
iload 12
iconst_1
iadd
invokeinterface javax.sql.rowset.CachedRowSet.getObject:(I)Ljava/lang/Object;
astore 13
start local 13 51: aload 13
ifnull 54
52: aload 3
iinc 11 1
iload 11
aload 13
invokeinterface java.sql.PreparedStatement.setObject:(ILjava/lang/Object;)V
53: goto 55
54: StackMap locals: java.lang.Object
StackMap stack:
aload 3
iload 12
iconst_1
iadd
aload 1
invokeinterface javax.sql.rowset.CachedRowSet.getMetaData:()Ljava/sql/ResultSetMetaData;
iload 12
iconst_1
iadd
invokeinterface java.sql.ResultSetMetaData.getColumnType:(I)I
invokeinterface java.sql.PreparedStatement.setNull:(II)V
end local 13 55: StackMap locals:
StackMap stack:
iinc 12 1
StackMap locals:
StackMap stack:
56: iload 12
iload 6
if_icmplt 49
end local 12 57: iconst_0
istore 12
start local 12 58: goto 62
59: StackMap locals:
StackMap stack:
aload 8
iload 12
aaload
ifnull 61
60: aload 3
iinc 11 1
iload 11
aload 8
iload 12
aaload
invokeinterface java.sql.PreparedStatement.setObject:(ILjava/lang/Object;)V
61: StackMap locals:
StackMap stack:
iinc 12 1
StackMap locals:
StackMap stack:
62: iload 12
aload 7
arraylength
if_icmplt 59
end local 12 63: aload 3
invokeinterface java.sql.PreparedStatement.executeUpdate:()I
pop
64: return
end local 11 end local 10 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 Lcom/sun/rowset/internal/CachedRowSetWriter;
0 65 1 crs Ljavax/sql/rowset/CachedRowSet;
0 65 2 con Ljava/sql/Connection;
46 65 3 pStmt Ljava/sql/PreparedStatement;
1 65 4 strWhere Ljava/lang/String;
2 65 5 strUpdate Ljava/lang/String;
3 65 6 icolCount I
4 65 7 keyColumns [I
13 65 8 param [Ljava/lang/Object;
5 65 9 strSet Ljava/lang/String;
9 12 10 i I
20 65 10 first Z
21 30 11 i I
33 44 11 i I
47 65 11 idx I
48 57 12 i I
51 55 13 obj Ljava/lang/Object;
58 63 12 i I
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
crs
con
public void commit();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
invokeinterface java.sql.Connection.commit:()V
1: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.reader:Lcom/sun/rowset/internal/CachedRowSetReader;
invokevirtual com.sun.rowset.internal.CachedRowSetReader.getCloseConnection:()Z
ifeq 3
2: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
invokeinterface java.sql.Connection.close:()V
3: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/rowset/internal/CachedRowSetWriter;
Exceptions:
throws java.sql.SQLException
public void commit(com.sun.rowset.CachedRowSetImpl, boolean);
descriptor: (Lcom/sun/rowset/CachedRowSetImpl;Z)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
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
invokeinterface java.sql.Connection.commit:()V
1: iload 2
ifeq 4
2: aload 1
invokevirtual com.sun.rowset.CachedRowSetImpl.getCommand:()Ljava/lang/String;
ifnull 4
3: aload 1
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
invokevirtual com.sun.rowset.CachedRowSetImpl.execute:(Ljava/sql/Connection;)V
4: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.reader:Lcom/sun/rowset/internal/CachedRowSetReader;
invokevirtual com.sun.rowset.internal.CachedRowSetReader.getCloseConnection:()Z
ifeq 6
5: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
invokeinterface java.sql.Connection.close:()V
6: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/rowset/internal/CachedRowSetWriter;
0 7 1 crs Lcom/sun/rowset/CachedRowSetImpl;
0 7 2 updateRowset Z
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
crs
updateRowset
public void rollback();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
invokeinterface java.sql.Connection.rollback:()V
1: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.reader:Lcom/sun/rowset/internal/CachedRowSetReader;
invokevirtual com.sun.rowset.internal.CachedRowSetReader.getCloseConnection:()Z
ifeq 3
2: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
invokeinterface java.sql.Connection.close:()V
3: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/rowset/internal/CachedRowSetWriter;
Exceptions:
throws java.sql.SQLException
public void rollback(java.sql.Savepoint);
descriptor: (Ljava/sql/Savepoint;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
aload 1
invokeinterface java.sql.Connection.rollback:(Ljava/sql/Savepoint;)V
1: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.reader:Lcom/sun/rowset/internal/CachedRowSetReader;
invokevirtual com.sun.rowset.internal.CachedRowSetReader.getCloseConnection:()Z
ifeq 3
2: aload 0
getfield com.sun.rowset.internal.CachedRowSetWriter.con:Ljava/sql/Connection;
invokeinterface java.sql.Connection.close:()V
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/rowset/internal/CachedRowSetWriter;
0 4 1 s Ljava/sql/Savepoint;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
s
private void readObject(java.io.ObjectInputStream);
descriptor: (Ljava/io/ObjectInputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
1: aload 0
invokestatic com.sun.rowset.JdbcRowSetResourceBundle.getJdbcRowSetResourceBundle:()Lcom/sun/rowset/JdbcRowSetResourceBundle;
putfield com.sun.rowset.internal.CachedRowSetWriter.resBundle:Lcom/sun/rowset/JdbcRowSetResourceBundle;
2: goto 5
StackMap locals:
StackMap stack: java.io.IOException
3: astore 2
start local 2 4: new java.lang.RuntimeException
dup
aload 2
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/rowset/internal/CachedRowSetWriter;
0 6 1 ois Ljava/io/ObjectInputStream;
4 5 2 ioe Ljava/io/IOException;
Exception table:
from to target type
1 2 3 Class java.io.IOException
Exceptions:
throws java.io.IOException, java.lang.ClassNotFoundException
MethodParameters:
Name Flags
ois
}
SourceFile: "CachedRowSetWriter.java"