use of com.alibaba.druid.proxy.jdbc.ConnectionProxy in project druid by alibaba.
the class DruidDataSourceTest_lastError method setUp.
protected void setUp() throws Exception {
dataSource = new DruidDataSource();
dataSource.setUrl("jdbc:mock:xxx");
dataSource.setTestOnBorrow(false);
dataSource.getProxyFilters().add(new FilterAdapter() {
public void connection_setAutoCommit(FilterChain chain, ConnectionProxy connection, boolean autoCommit) throws SQLException {
throw new SQLException();
}
});
}
use of com.alibaba.druid.proxy.jdbc.ConnectionProxy in project druid by alibaba.
the class DruidPooledConnectionTest_prepareError method setUp.
protected void setUp() throws Exception {
dataSource = new DruidDataSource();
dataSource.setUrl("jdbc:mock:xxx");
dataSource.setTestOnBorrow(false);
dataSource.setFilters("stat");
dataSource.setPoolPreparedStatements(true);
dataSource.getProxyFilters().add(new FilterAdapter() {
@Override
public PreparedStatementProxy connection_prepareStatement(FilterChain chain, ConnectionProxy connection, String sql) throws SQLException {
throw new SQLException();
}
@Override
public PreparedStatementProxy connection_prepareStatement(FilterChain chain, ConnectionProxy connection, String sql, int autoGeneratedKeys) throws SQLException {
throw new SQLException();
}
@Override
public PreparedStatementProxy connection_prepareStatement(FilterChain chain, ConnectionProxy connection, String sql, int resultSetType, int resultSetConcurrency) throws SQLException {
throw new SQLException();
}
@Override
public PreparedStatementProxy connection_prepareStatement(FilterChain chain, ConnectionProxy connection, String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException {
throw new SQLException();
}
@Override
public PreparedStatementProxy connection_prepareStatement(FilterChain chain, ConnectionProxy connection, String sql, int[] columnIndexes) throws SQLException {
throw new SQLException();
}
@Override
public PreparedStatementProxy connection_prepareStatement(FilterChain chain, ConnectionProxy connection, String sql, String[] columnNames) throws SQLException {
throw new SQLException();
}
@Override
public CallableStatementProxy connection_prepareCall(FilterChain chain, ConnectionProxy connection, String sql) throws SQLException {
throw new SQLException();
}
@Override
public CallableStatementProxy connection_prepareCall(FilterChain chain, ConnectionProxy connection, String sql, int resultSetType, int resultSetConcurrency) throws SQLException {
throw new SQLException();
}
@Override
public CallableStatementProxy connection_prepareCall(FilterChain chain, ConnectionProxy connection, String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException {
throw new SQLException();
}
});
}
use of com.alibaba.druid.proxy.jdbc.ConnectionProxy in project druid by alibaba.
the class CallableStatementProxyImplTest method test_call.
public void test_call() throws Exception {
DataSourceProxyConfig config = new DataSourceProxyConfig();
DataSourceProxy dataSource = new DataSourceProxyImpl(null, config);
FilterEventAdapter filter = new FilterEventAdapter() {
};
filter.init(dataSource);
config.getFilters().add(filter);
String sql = "CALL P_0(?, ?)";
CallableStatementProxyImpl rawCallStatement = new FakeCallableStatement(new ConnectionProxyImpl(null, null, null, 0), null, sql, 1001);
ConnectionProxy connection = new ConnectionProxyImpl(dataSource, null, new Properties(), 1001);
CallableStatementProxyImpl cstmt = new CallableStatementProxyImpl(connection, rawCallStatement, sql, 2001);
cstmt.registerOutParameter(1, Types.VARCHAR);
cstmt.registerOutParameter(1, Types.VARCHAR, "VARCHAR");
cstmt.registerOutParameter(1, Types.VARCHAR, 3);
cstmt.registerOutParameter("1", Types.VARCHAR);
cstmt.registerOutParameter("1", Types.VARCHAR, "VARCHAR");
cstmt.registerOutParameter("1", Types.VARCHAR, 3);
cstmt.setBoolean("1", true);
cstmt.setByte("1", (byte) 0);
cstmt.setShort("1", (short) 0);
cstmt.setInt("1", 0);
cstmt.setLong("1", 0);
cstmt.setFloat("1", 0);
cstmt.setDouble("1", 0);
cstmt.setBigDecimal("1", new BigDecimal("111"));
cstmt.setString("1", "X");
cstmt.setURL("1", null);
cstmt.setSQLXML("1", null);
cstmt.setBytes("1", null);
cstmt.setDate("1", null);
cstmt.setDate("1", null, Calendar.getInstance());
cstmt.setTime("1", null);
cstmt.setTime("1", null, Calendar.getInstance());
cstmt.setTimestamp("1", null);
cstmt.setTimestamp("1", null, Calendar.getInstance());
cstmt.setAsciiStream("1", null);
cstmt.setAsciiStream("1", null, 0);
cstmt.setAsciiStream("1", null, 0L);
cstmt.setBinaryStream("1", null);
cstmt.setBinaryStream("1", null, 0);
cstmt.setBinaryStream("1", null, 0L);
cstmt.setObject("1", null);
cstmt.setObject("1", null, Types.VARCHAR);
cstmt.setObject("1", null, Types.VARCHAR, 3);
cstmt.setCharacterStream("1", null);
cstmt.setCharacterStream("1", null, 0);
cstmt.setCharacterStream("1", null, 0L);
cstmt.setNull("1", Types.VARCHAR);
cstmt.setNull("1", Types.VARCHAR, "VARCHAR");
cstmt.setRowId("1", null);
cstmt.setNString("1", null);
cstmt.setNCharacterStream("1", null);
cstmt.setNCharacterStream("1", null, 0);
cstmt.setNClob("1", (NClob) null);
cstmt.setNClob("1", (Reader) null);
cstmt.setNClob("1", (Reader) null, 0);
cstmt.setClob("1", (Clob) null);
cstmt.setClob("1", (Reader) null);
cstmt.setClob("1", (Reader) null, 0);
cstmt.setBlob("1", (Blob) null);
cstmt.setBlob("1", (InputStream) null);
cstmt.setBlob("1", (InputStream) null, 0);
cstmt.setURL(1, null);
cstmt.setSQLXML(1, null);
cstmt.setArray(1, null);
cstmt.setNCharacterStream(1, null);
cstmt.setNCharacterStream(1, null, 0);
cstmt.setNClob(1, (NClob) null);
cstmt.setNClob(1, (Reader) null);
cstmt.setNClob(1, (Reader) null, 0);
cstmt.setNString(1, null);
cstmt.setObject(1, null);
cstmt.setRef(1, null);
cstmt.setRowId(1, null);
cstmt.setUnicodeStream(1, null, 0);
cstmt.getClob(1);
cstmt.getClob("1");
cstmt.cancel();
cstmt.getResultSet();
}
use of com.alibaba.druid.proxy.jdbc.ConnectionProxy in project druid by alibaba.
the class LogFilter method dataSource_getConnection.
@Override
public DruidPooledConnection dataSource_getConnection(FilterChain chain, DruidDataSource dataSource, long maxWaitMillis) throws SQLException {
DruidPooledConnection conn = chain.dataSource_connect(dataSource, maxWaitMillis);
ConnectionProxy connection = (ConnectionProxy) conn.getConnectionHolder().getConnection();
if (connectionConnectAfterLogEnable && isConnectionLogEnabled()) {
connectionLog("{conn-" + connection.getId() + "} pool-connect");
}
return conn;
}
use of com.alibaba.druid.proxy.jdbc.ConnectionProxy in project druid by alibaba.
the class LogFilter method dataSource_releaseConnection.
@Override
public void dataSource_releaseConnection(FilterChain chain, DruidPooledConnection conn) throws SQLException {
long connectionId = -1;
if (conn.getConnectionHolder() != null) {
ConnectionProxy connection = (ConnectionProxy) conn.getConnectionHolder().getConnection();
connectionId = connection.getId();
}
chain.dataSource_recycle(conn);
if (connectionCloseAfterLogEnable && isConnectionLogEnabled()) {
connectionLog("{conn-" + connectionId + "} pool-recycle");
}
}
Aggregations