use of com.alibaba.druid.filter.FilterChain in project druid by alibaba.
the class HoldableUnsupportTest method setUp.
protected void setUp() throws Exception {
dataSource = new DruidDataSource();
dataSource.setUrl("jdbc:mock:xxx");
Filter filter = new FilterAdapter() {
@Override
public int connection_getHoldability(FilterChain chain, ConnectionProxy connection) throws SQLException {
throw new UnsupportedOperationException();
}
};
dataSource.getProxyFilters().add(filter);
}
use of com.alibaba.druid.filter.FilterChain in project druid by alibaba.
the class CounterFilterTest method test_countFilter.
public void test_countFilter() throws Exception {
DataSourceProxyConfig config = new DataSourceProxyConfig();
config.setUrl("");
DataSourceProxyImpl dataSource = new DataSourceProxyImpl(null, config);
JdbcDataSourceStat dataSourceStat = dataSource.getDataSourceStat();
StatFilter filter = new StatFilter();
filter.init(dataSource);
dataSourceStat.reset();
Assert.assertNull(StatFilter.getStatFilter(dataSource));
Assert.assertNull(dataSourceStat.getSqlStat(Integer.MAX_VALUE));
Assert.assertNull(dataSourceStat.getConnectionStat().getConnectLastTime());
FilterChain chain = new FilterChainImpl(dataSource) {
public ConnectionProxy connection_connect(Properties info) throws SQLException {
throw new SQLException();
}
};
Exception error = null;
try {
filter.connection_connect(chain, new Properties());
} catch (SQLException ex) {
error = ex;
}
Assert.assertNotNull(error);
Assert.assertEquals(1, dataSourceStat.getConnectionStat().getConnectErrorCount());
Assert.assertNotNull(dataSourceStat.getConnectionStat().getConnectLastTime());
}
use of com.alibaba.druid.filter.FilterChain in project druid by alibaba.
the class JdbcFilterEventAdapterTest method test_filterEventAdapter.
public void test_filterEventAdapter() throws Exception {
DataSourceProxyConfig config = new DataSourceProxyConfig();
DataSourceProxy dataSource = new DataSourceProxyImpl(null, config);
FilterEventAdapter filter = new FilterEventAdapter() {
};
String sql = "SELECT * FROM PATROL";
ConnectionProxy connection = new ConnectionProxyImpl(dataSource, null, new Properties(), 1001);
final PreparedStatementProxy statement = new PreparedStatementProxyImpl(connection, null, sql, 1002);
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public boolean statement_execute(StatementProxy statement, String sql) throws SQLException {
throw new SQLException();
}
};
Throwable error = null;
try {
filter.statement_execute(chain, statement, sql);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public boolean statement_execute(StatementProxy statement, String sql) throws SQLException {
throw new RuntimeException();
}
};
Throwable error = null;
try {
filter.statement_execute(chain, statement, sql);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public boolean statement_execute(StatementProxy statement, String sql) throws SQLException {
throw new Error();
}
};
Throwable error = null;
try {
filter.statement_execute(chain, statement, sql);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
// //////////////////////////
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public boolean statement_execute(StatementProxy statement, String sql, int autoGeneratedKeys) throws SQLException {
throw new SQLException();
}
};
Throwable error = null;
try {
filter.statement_execute(chain, statement, sql, Statement.NO_GENERATED_KEYS);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public boolean statement_execute(StatementProxy statement, String sql, int autoGeneratedKeys) throws SQLException {
throw new RuntimeException();
}
};
Throwable error = null;
try {
filter.statement_execute(chain, statement, sql, Statement.NO_GENERATED_KEYS);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public boolean statement_execute(StatementProxy statement, String sql, int autoGeneratedKeys) throws SQLException {
throw new Error();
}
};
Throwable error = null;
try {
filter.statement_execute(chain, statement, sql, Statement.NO_GENERATED_KEYS);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
// //////////////////////////
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public boolean statement_execute(StatementProxy statement, String sql, int[] columnIndexes) throws SQLException {
throw new SQLException();
}
};
Throwable error = null;
try {
filter.statement_execute(chain, statement, sql, new int[0]);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public boolean statement_execute(StatementProxy statement, String sql, int[] columnIndexes) throws SQLException {
throw new RuntimeException();
}
};
Throwable error = null;
try {
filter.statement_execute(chain, statement, sql, new int[0]);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public boolean statement_execute(StatementProxy statement, String sql, int[] columnIndexes) throws SQLException {
throw new Error();
}
};
Throwable error = null;
try {
filter.statement_execute(chain, statement, sql, new int[0]);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
// //////////////////////////
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public boolean statement_execute(StatementProxy statement, String sql, String[] columnNames) throws SQLException {
throw new SQLException();
}
};
Throwable error = null;
try {
filter.statement_execute(chain, statement, sql, new String[0]);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public boolean statement_execute(StatementProxy statement, String sql, String[] columnNames) throws SQLException {
throw new RuntimeException();
}
};
Throwable error = null;
try {
filter.statement_execute(chain, statement, sql, new String[0]);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public boolean statement_execute(StatementProxy statement, String sql, String[] columnNames) throws SQLException {
throw new Error();
}
};
Throwable error = null;
try {
filter.statement_execute(chain, statement, sql, new String[0]);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
// //////////////////////////
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int[] statement_executeBatch(StatementProxy statement) throws SQLException {
throw new SQLException();
}
};
Throwable error = null;
try {
filter.statement_executeBatch(chain, statement);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int[] statement_executeBatch(StatementProxy statement) throws SQLException {
throw new RuntimeException();
}
};
Throwable error = null;
try {
filter.statement_executeBatch(chain, statement);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int[] statement_executeBatch(StatementProxy statement) throws SQLException {
throw new Error();
}
};
Throwable error = null;
try {
filter.statement_executeBatch(chain, statement);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
// //////////////////////////
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public ResultSetProxy statement_executeQuery(StatementProxy statement, String sql) throws SQLException {
throw new SQLException();
}
};
Throwable error = null;
try {
filter.statement_executeQuery(chain, statement, sql);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public ResultSetProxy statement_executeQuery(StatementProxy statement, String sql) throws SQLException {
throw new RuntimeException();
}
};
Throwable error = null;
try {
filter.statement_executeQuery(chain, statement, sql);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public ResultSetProxy statement_executeQuery(StatementProxy statement, String sql) throws SQLException {
throw new Error();
}
};
Throwable error = null;
try {
filter.statement_executeQuery(chain, statement, sql);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
// //////////////////////////
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int preparedStatement_executeUpdate(PreparedStatementProxy statement) throws SQLException {
throw new SQLException();
}
};
Throwable error = null;
try {
filter.preparedStatement_executeUpdate(chain, statement);
} catch (SQLException ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int preparedStatement_executeUpdate(PreparedStatementProxy statement) throws SQLException {
throw new RuntimeException();
}
};
Throwable error = null;
try {
filter.preparedStatement_executeUpdate(chain, statement);
} catch (RuntimeException ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int preparedStatement_executeUpdate(PreparedStatementProxy statement) throws SQLException {
throw new Error();
}
};
Throwable error = null;
try {
filter.preparedStatement_executeUpdate(chain, statement);
} catch (Error ex) {
error = ex;
}
Assert.assertNotNull(error);
}
// //////////////////////////
// //////////////////////////
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int statement_executeUpdate(StatementProxy statement, String sql) throws SQLException {
throw new SQLException();
}
};
Throwable error = null;
try {
filter.statement_executeUpdate(chain, statement, sql);
} catch (SQLException ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int statement_executeUpdate(StatementProxy statement, String sql) throws SQLException {
throw new RuntimeException();
}
};
Throwable error = null;
try {
filter.statement_executeUpdate(chain, statement, sql);
} catch (RuntimeException ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int statement_executeUpdate(StatementProxy statement, String sql) throws SQLException {
throw new Error();
}
};
Throwable error = null;
try {
filter.statement_executeUpdate(chain, statement, sql);
} catch (Error ex) {
error = ex;
}
Assert.assertNotNull(error);
}
// //////////////////////////
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int statement_executeUpdate(StatementProxy statement, String sql, int autoGeneratedKeys) throws SQLException {
throw new SQLException();
}
};
Throwable error = null;
try {
filter.statement_executeUpdate(chain, statement, sql, Statement.NO_GENERATED_KEYS);
} catch (SQLException ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int statement_executeUpdate(StatementProxy statement, String sql, int autoGeneratedKeys) throws SQLException {
throw new RuntimeException();
}
};
Throwable error = null;
try {
filter.statement_executeUpdate(chain, statement, sql, Statement.NO_GENERATED_KEYS);
} catch (RuntimeException ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int statement_executeUpdate(StatementProxy statement, String sql, int autoGeneratedKeys) throws SQLException {
throw new Error();
}
};
Throwable error = null;
try {
filter.statement_executeUpdate(chain, statement, sql, Statement.NO_GENERATED_KEYS);
} catch (Error ex) {
error = ex;
}
Assert.assertNotNull(error);
}
// //////////////////////////
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int statement_executeUpdate(StatementProxy statement, String sql, int[] columnIndexes) throws SQLException {
throw new SQLException();
}
};
Throwable error = null;
try {
filter.statement_executeUpdate(chain, statement, sql, new int[0]);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int statement_executeUpdate(StatementProxy statement, String sql, int[] columnIndexes) throws SQLException {
throw new RuntimeException();
}
};
Throwable error = null;
try {
filter.statement_executeUpdate(chain, statement, sql, new int[0]);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int statement_executeUpdate(StatementProxy statement, String sql, int[] columnIndexes) throws SQLException {
throw new Error();
}
};
Throwable error = null;
try {
filter.statement_executeUpdate(chain, statement, sql, new int[0]);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
// //////////////////////////
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int statement_executeUpdate(StatementProxy statement, String sql, String[] columnNames) throws SQLException {
throw new SQLException();
}
};
Throwable error = null;
try {
filter.statement_executeUpdate(chain, statement, sql, new String[0]);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int statement_executeUpdate(StatementProxy statement, String sql, String[] columnNames) throws SQLException {
throw new RuntimeException();
}
};
Throwable error = null;
try {
filter.statement_executeUpdate(chain, statement, sql, new String[0]);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public int statement_executeUpdate(StatementProxy statement, String sql, String[] columnNames) throws SQLException {
throw new Error();
}
};
Throwable error = null;
try {
filter.statement_executeUpdate(chain, statement, sql, new String[0]);
} catch (Throwable ex) {
error = ex;
}
Assert.assertNotNull(error);
}
// ///////////////////////////
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public ResultSetProxy statement_getGeneratedKeys(StatementProxy statement) throws SQLException {
return null;
}
};
filter.statement_getGeneratedKeys(chain, statement);
}
{
final ResultSetProxy resultSet = new ResultSetProxyImpl(statement, null, 2001, null);
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public ResultSetProxy statement_getGeneratedKeys(StatementProxy statement) throws SQLException {
return resultSet;
}
};
filter.statement_getGeneratedKeys(chain, statement);
}
// //////////////////////////
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public boolean preparedStatement_execute(PreparedStatementProxy statement) throws SQLException {
throw new SQLException();
}
};
Throwable error = null;
try {
filter.preparedStatement_execute(chain, statement);
} catch (SQLException ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public boolean preparedStatement_execute(PreparedStatementProxy statement) throws SQLException {
throw new RuntimeException();
}
};
Throwable error = null;
try {
filter.preparedStatement_execute(chain, statement);
} catch (RuntimeException ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public boolean preparedStatement_execute(PreparedStatementProxy statement) throws SQLException {
throw new Error();
}
};
Throwable error = null;
try {
filter.preparedStatement_execute(chain, statement);
} catch (Error ex) {
error = ex;
}
Assert.assertNotNull(error);
}
// //////////////////////////
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public ResultSetProxy preparedStatement_executeQuery(PreparedStatementProxy statement) throws SQLException {
throw new SQLException();
}
};
Throwable error = null;
try {
filter.preparedStatement_executeQuery(chain, statement);
} catch (SQLException ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public ResultSetProxy preparedStatement_executeQuery(PreparedStatementProxy statement) throws SQLException {
throw new RuntimeException();
}
};
Throwable error = null;
try {
filter.preparedStatement_executeQuery(chain, statement);
} catch (RuntimeException ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public ResultSetProxy preparedStatement_executeQuery(PreparedStatementProxy statement) throws SQLException {
throw new Error();
}
};
Throwable error = null;
try {
filter.preparedStatement_executeQuery(chain, statement);
} catch (Error ex) {
error = ex;
}
Assert.assertNotNull(error);
}
// //////////////////////////
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public void dataSource_recycle(DruidPooledConnection connection) throws SQLException {
throw new SQLException();
}
};
Throwable error = null;
try {
filter.dataSource_releaseConnection(chain, null);
} catch (SQLException ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public void dataSource_recycle(DruidPooledConnection connection) throws SQLException {
throw new RuntimeException();
}
};
Throwable error = null;
try {
filter.dataSource_releaseConnection(chain, null);
} catch (RuntimeException ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public void dataSource_recycle(DruidPooledConnection connection) throws SQLException {
throw new Error();
}
};
Throwable error = null;
try {
filter.dataSource_releaseConnection(chain, null);
} catch (Error ex) {
error = ex;
}
Assert.assertNotNull(error);
}
// //////////////////////////
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public DruidPooledConnection dataSource_connect(DruidDataSource dataSource, long maxWaitMillis) throws SQLException {
throw new SQLException();
}
};
Throwable error = null;
try {
filter.dataSource_getConnection(chain, null, 0L);
} catch (SQLException ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public DruidPooledConnection dataSource_connect(DruidDataSource dataSource, long maxWaitMillis) throws SQLException {
throw new RuntimeException();
}
};
Throwable error = null;
try {
filter.dataSource_getConnection(chain, null, 0L);
} catch (RuntimeException ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
FilterChain chain = new FilterChainImpl(new DataSourceProxyImpl(null, config)) {
public DruidPooledConnection dataSource_connect(DruidDataSource dataSource, long maxWaitMillis) throws SQLException {
throw new Error();
}
};
Throwable error = null;
try {
filter.dataSource_getConnection(chain, null, 0L);
} catch (Error ex) {
error = ex;
}
Assert.assertNotNull(error);
}
}
use of com.alibaba.druid.filter.FilterChain in project druid by alibaba.
the class StatFilterOpenClobCountTest method setUp.
protected void setUp() throws Exception {
dataSource = new DruidDataSource();
dataSource.setUrl("jdbc:mock:xxx");
dataSource.setFilters("stat");
dataSource.setTestOnBorrow(false);
dataSource.getProxyFilters().add(new FilterAdapter() {
@Override
public Clob resultSet_getClob(FilterChain chain, ResultSetProxy result, int columnIndex) throws SQLException {
return new ClobProxyImpl(result.getStatementProxy().getConnectionProxy().getDirectDataSource(), result.getStatementProxy().getConnectionProxy(), new MockClob());
}
@Override
public Clob resultSet_getClob(FilterChain chain, ResultSetProxy result, String columnLabel) throws SQLException {
return new ClobProxyImpl(result.getStatementProxy().getConnectionProxy().getDirectDataSource(), result.getStatementProxy().getConnectionProxy(), new MockClob());
}
});
dataSource.init();
}
use of com.alibaba.druid.filter.FilterChain in project druid by alibaba.
the class StatFilterOpenInputStreamCountTest method setUp.
protected void setUp() throws Exception {
dataSource = new DruidDataSource();
dataSource.setUrl("jdbc:mock:xxx");
dataSource.setFilters("stat");
dataSource.setTestOnBorrow(false);
dataSource.getProxyFilters().add(new FilterAdapter() {
@Override
public java.io.InputStream resultSet_getBinaryStream(FilterChain chain, ResultSetProxy result, int columnIndex) throws SQLException {
return new ByteArrayInputStream(new byte[0]);
}
@Override
public java.io.InputStream resultSet_getBinaryStream(FilterChain chain, ResultSetProxy result, String columnLabel) throws SQLException {
return new ByteArrayInputStream(new byte[0]);
}
});
dataSource.init();
}
Aggregations