@Override public final PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException { return proxyOfPreparedStatement(conn.prepareStatement(sql, resultSetType, resultSetConcurrency, resultSetHoldability), sql); }
@Override public final PreparedStatement prepareStatement(String sql) throws SQLException { return proxyOfPreparedStatement(conn.prepareStatement(sql), sql); }
@Override public final PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency) throws SQLException { return proxyOfPreparedStatement(conn.prepareStatement(sql, resultSetType, resultSetConcurrency), sql); }
@Override public final PreparedStatement prepareStatement(String sql, int autoGeneratedKeys) throws SQLException { return proxyOfPreparedStatement(conn.prepareStatement(sql, autoGeneratedKeys), sql); }
@Override public final PreparedStatement prepareStatement(String sql, int[] columnIndexes) throws SQLException { return proxyOfPreparedStatement(conn.prepareStatement(sql, columnIndexes), sql); }
@Override public final PreparedStatement prepareStatement(String sql, String[] columnNames) throws SQLException { return proxyOfPreparedStatement(conn.prepareStatement(sql, columnNames), sql); }
@Override protected PreparedStatementProxy proxyOfPreparedStatement(PreparedStatement ps, String sql) { setupStatement(ps); PreparedStatementProxy proxy = super.proxyOfPreparedStatement(ps, sql); statements.add(proxy); return proxy; }
/** * Test the type of the statement and return the proxy of it. */ protected Statement proxyOf(Statement stmt) { if (stmt instanceof PreparedStatement) { return proxyOfPreparedStatement((PreparedStatement) stmt, null); } if (stmt instanceof CallableStatement) { return proxyOfCallableStatement((CallableStatement) stmt, null); } return proxyOfStatement(stmt); }