public class org.apache.commons.dbcp2.PoolablePreparedStatement<K> extends org.apache.commons.dbcp2.DelegatingPreparedStatement
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.commons.dbcp2.PoolablePreparedStatement
super_class: org.apache.commons.dbcp2.DelegatingPreparedStatement
{
private final org.apache.commons.pool2.KeyedObjectPool<K, org.apache.commons.dbcp2.PoolablePreparedStatement<K>> pool;
descriptor: Lorg/apache/commons/pool2/KeyedObjectPool;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/apache/commons/pool2/KeyedObjectPool<TK;Lorg/apache/commons/dbcp2/PoolablePreparedStatement<TK;>;>;
private final K key;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: TK;
private volatile boolean batchAdded;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
public void <init>(java.sql.PreparedStatement, K, org.apache.commons.pool2.KeyedObjectPool<K, org.apache.commons.dbcp2.PoolablePreparedStatement<K>>, org.apache.commons.dbcp2.DelegatingConnection<?>);
descriptor: (Ljava/sql/PreparedStatement;Ljava/lang/Object;Lorg/apache/commons/pool2/KeyedObjectPool;Lorg/apache/commons/dbcp2/DelegatingConnection;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 4
aload 1
invokespecial org.apache.commons.dbcp2.DelegatingPreparedStatement.<init>:(Lorg/apache/commons/dbcp2/DelegatingConnection;Ljava/sql/PreparedStatement;)V
1: aload 0
iconst_0
putfield org.apache.commons.dbcp2.PoolablePreparedStatement.batchAdded:Z
2: aload 0
aload 3
putfield org.apache.commons.dbcp2.PoolablePreparedStatement.pool:Lorg/apache/commons/pool2/KeyedObjectPool;
3: aload 0
aload 2
putfield org.apache.commons.dbcp2.PoolablePreparedStatement.key:Ljava/lang/Object;
4: aload 0
aload 0
invokevirtual org.apache.commons.dbcp2.PoolablePreparedStatement.getConnectionInternal:()Lorg/apache/commons/dbcp2/DelegatingConnection;
invokevirtual org.apache.commons.dbcp2.PoolablePreparedStatement.removeThisTrace:(Ljava/lang/Object;)V
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/commons/dbcp2/PoolablePreparedStatement<TK;>;
0 6 1 stmt Ljava/sql/PreparedStatement;
0 6 2 key TK;
0 6 3 pool Lorg/apache/commons/pool2/KeyedObjectPool<TK;Lorg/apache/commons/dbcp2/PoolablePreparedStatement<TK;>;>;
0 6 4 conn Lorg/apache/commons/dbcp2/DelegatingConnection<*>;
Signature: (Ljava/sql/PreparedStatement;TK;Lorg/apache/commons/pool2/KeyedObjectPool<TK;Lorg/apache/commons/dbcp2/PoolablePreparedStatement<TK;>;>;Lorg/apache/commons/dbcp2/DelegatingConnection<*>;)V
MethodParameters:
Name Flags
stmt final
key final
pool final
conn final
public void addBatch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.apache.commons.dbcp2.DelegatingPreparedStatement.addBatch:()V
1: aload 0
iconst_1
putfield org.apache.commons.dbcp2.PoolablePreparedStatement.batchAdded:Z
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/dbcp2/PoolablePreparedStatement<TK;>;
Exceptions:
throws java.sql.SQLException
public void clearBatch();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield org.apache.commons.dbcp2.PoolablePreparedStatement.batchAdded:Z
1: aload 0
invokespecial org.apache.commons.dbcp2.DelegatingPreparedStatement.clearBatch:()V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/dbcp2/PoolablePreparedStatement<TK;>;
Exceptions:
throws java.sql.SQLException
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.commons.dbcp2.PoolablePreparedStatement.isClosed:()Z
ifne 9
1: aload 0
getfield org.apache.commons.dbcp2.PoolablePreparedStatement.pool:Lorg/apache/commons/pool2/KeyedObjectPool;
aload 0
getfield org.apache.commons.dbcp2.PoolablePreparedStatement.key:Ljava/lang/Object;
aload 0
invokeinterface org.apache.commons.pool2.KeyedObjectPool.returnObject:(Ljava/lang/Object;Ljava/lang/Object;)V
2: goto 9
StackMap locals:
StackMap stack: java.sql.SQLException
3: astore 1
start local 1 4: aload 1
athrow
end local 1 5: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 1
start local 1 6: aload 1
athrow
end local 1 7: StackMap locals:
StackMap stack: java.lang.Exception
astore 1
start local 1 8: new java.sql.SQLException
dup
ldc "Cannot close preparedstatement (return to pool failed)"
aload 1
invokespecial java.sql.SQLException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 9: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/commons/dbcp2/PoolablePreparedStatement<TK;>;
4 5 1 e Ljava/sql/SQLException;
6 7 1 e Ljava/lang/RuntimeException;
8 9 1 e Ljava/lang/Exception;
Exception table:
from to target type
1 2 3 Class java.sql.SQLException
1 2 5 Class java.lang.RuntimeException
1 2 7 Class java.lang.Exception
Exceptions:
throws java.sql.SQLException
public void activate();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
invokevirtual org.apache.commons.dbcp2.PoolablePreparedStatement.setClosedInternal:(Z)V
1: aload 0
invokevirtual org.apache.commons.dbcp2.PoolablePreparedStatement.getConnectionInternal:()Lorg/apache/commons/dbcp2/DelegatingConnection;
ifnull 3
2: aload 0
invokevirtual org.apache.commons.dbcp2.PoolablePreparedStatement.getConnectionInternal:()Lorg/apache/commons/dbcp2/DelegatingConnection;
aload 0
invokevirtual org.apache.commons.dbcp2.DelegatingConnection.addTrace:(Lorg/apache/commons/dbcp2/AbandonedTrace;)V
3: StackMap locals:
StackMap stack:
aload 0
invokespecial org.apache.commons.dbcp2.DelegatingPreparedStatement.activate:()V
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/commons/dbcp2/PoolablePreparedStatement<TK;>;
Exceptions:
throws java.sql.SQLException
public void passivate();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=9, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.dbcp2.PoolablePreparedStatement.batchAdded:Z
ifeq 2
1: aload 0
invokevirtual org.apache.commons.dbcp2.PoolablePreparedStatement.clearBatch:()V
2: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual org.apache.commons.dbcp2.PoolablePreparedStatement.setClosedInternal:(Z)V
3: aload 0
aload 0
invokevirtual org.apache.commons.dbcp2.PoolablePreparedStatement.getConnectionInternal:()Lorg/apache/commons/dbcp2/DelegatingConnection;
invokevirtual org.apache.commons.dbcp2.PoolablePreparedStatement.removeThisTrace:(Ljava/lang/Object;)V
4: aload 0
invokevirtual org.apache.commons.dbcp2.PoolablePreparedStatement.getTrace:()Ljava/util/List;
astore 1
start local 1 5: aload 1
ifnull 20
6: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 7: aload 1
aload 1
invokeinterface java.util.List.size:()I
anewarray java.sql.ResultSet
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.sql.ResultSet[]
astore 3
start local 3 8: aload 3
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 16
StackMap locals: org.apache.commons.dbcp2.PoolablePreparedStatement java.util.List java.util.List java.sql.ResultSet[] top int int java.sql.ResultSet[]
StackMap stack:
9: aload 7
iload 5
aaload
astore 4
start local 4 10: aload 4
ifnull 15
11: aload 4
invokeinterface java.sql.ResultSet.close:()V
12: goto 15
StackMap locals: org.apache.commons.dbcp2.PoolablePreparedStatement java.util.List java.util.List java.sql.ResultSet[] java.sql.ResultSet int int java.sql.ResultSet[]
StackMap stack: java.lang.Exception
13: astore 8
start local 8 14: aload 2
aload 8
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 8 end local 4 15: StackMap locals: org.apache.commons.dbcp2.PoolablePreparedStatement java.util.List java.util.List java.sql.ResultSet[] top int int java.sql.ResultSet[]
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
16: iload 5
iload 6
if_icmplt 9
17: aload 0
invokevirtual org.apache.commons.dbcp2.PoolablePreparedStatement.clearTrace:()V
18: aload 2
invokeinterface java.util.List.isEmpty:()Z
ifne 20
19: new org.apache.commons.dbcp2.SQLExceptionList
dup
aload 2
invokespecial org.apache.commons.dbcp2.SQLExceptionList.<init>:(Ljava/util/List;)V
athrow
end local 3 end local 2 20: StackMap locals: org.apache.commons.dbcp2.PoolablePreparedStatement java.util.List
StackMap stack:
aload 0
invokespecial org.apache.commons.dbcp2.DelegatingPreparedStatement.passivate:()V
21: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lorg/apache/commons/dbcp2/PoolablePreparedStatement<TK;>;
5 22 1 resultSetList Ljava/util/List<Lorg/apache/commons/dbcp2/AbandonedTrace;>;
7 20 2 thrown Ljava/util/List<Ljava/lang/Exception;>;
8 20 3 resultSets [Ljava/sql/ResultSet;
10 15 4 resultSet Ljava/sql/ResultSet;
14 15 8 e Ljava/lang/Exception;
Exception table:
from to target type
11 12 13 Class java.lang.Exception
Exceptions:
throws java.sql.SQLException
}
Signature: <K:Ljava/lang/Object;>Lorg/apache/commons/dbcp2/DelegatingPreparedStatement;
SourceFile: "PoolablePreparedStatement.java"