|
Commons DBCP example source code file (TesterStatement.java)
The Commons DBCP TesterStatement.java source code/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.commons.dbcp; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.SQLWarning; import java.sql.Statement; /** * A dummy {@link Statement}, for testing purposes. * * @author Rodney Waldhoff * @author Dirk Verbeeck * @version $Revision: 883942 $ $Date: 2009-11-24 20:00:03 -0500 (Tue, 24 Nov 2009) $ */ public class TesterStatement implements Statement { public TesterStatement(Connection conn) { _connection = conn; } public TesterStatement(Connection conn, int resultSetType, int resultSetConcurrency) { _connection = conn; _resultSetType = resultSetType; _resultSetConcurrency = resultSetConcurrency; } protected Connection _connection = null; protected boolean _open = true; protected int _rowsUpdated = 1; protected boolean _executeResponse = true; protected int _maxFieldSize = 1024; protected int _maxRows = 1024; protected boolean _escapeProcessing = false; protected int _queryTimeout = 1000; protected String _cursorName = null; protected int _fetchDirection = 1; protected int _fetchSize = 1; protected int _resultSetConcurrency = 1; protected int _resultSetType = 1; protected ResultSet _resultSet = null; public ResultSet executeQuery(String sql) throws SQLException { checkOpen(); if("null".equals(sql)) { return null; } if("invalid".equals(sql)) { throw new SQLException("invalid query"); } if ("broken".equals(sql)) { throw new SQLException("broken connection"); } if("select username".equals(sql)) { String username = ((TesterConnection) _connection).getUsername(); Object[][] data = {{username}}; return new TesterResultSet(this, data); } else { // Simulate timeout if queryTimout is set to less than 5 seconds if (_queryTimeout > 0 && _queryTimeout < 5) { throw new SQLException("query timeout"); } return new TesterResultSet(this); } } public int executeUpdate(String sql) throws SQLException { checkOpen(); return _rowsUpdated; } public void close() throws SQLException { // calling close twice has no effect if (!_open) { return; } _open = false; if (_resultSet != null) { _resultSet.close(); _resultSet = null; } } public int getMaxFieldSize() throws SQLException { checkOpen(); return _maxFieldSize; } public void setMaxFieldSize(int max) throws SQLException { checkOpen(); _maxFieldSize = max; } public int getMaxRows() throws SQLException { checkOpen(); return _maxRows; } public void setMaxRows(int max) throws SQLException { checkOpen(); _maxRows = max; } public void setEscapeProcessing(boolean enable) throws SQLException { checkOpen(); _escapeProcessing = enable; } public int getQueryTimeout() throws SQLException { checkOpen(); return _queryTimeout; } public void setQueryTimeout(int seconds) throws SQLException { checkOpen(); _queryTimeout = seconds; } public void cancel() throws SQLException { checkOpen(); } public SQLWarning getWarnings() throws SQLException { checkOpen(); return null; } public void clearWarnings() throws SQLException { checkOpen(); } public void setCursorName(String name) throws SQLException { checkOpen(); _cursorName = name; } public boolean execute(String sql) throws SQLException { checkOpen(); if("invalid".equals(sql)) { throw new SQLException("invalid query"); } return _executeResponse; } public ResultSet getResultSet() throws SQLException { checkOpen(); if (_resultSet == null) { _resultSet = new TesterResultSet(this); } return _resultSet; } public int getUpdateCount() throws SQLException { checkOpen(); return _rowsUpdated; } public boolean getMoreResults() throws SQLException { checkOpen(); return false; } public void setFetchDirection(int direction) throws SQLException { checkOpen(); _fetchDirection = direction; } public int getFetchDirection() throws SQLException { checkOpen(); return _fetchDirection; } public void setFetchSize(int rows) throws SQLException { checkOpen(); _fetchSize = rows; } public int getFetchSize() throws SQLException { checkOpen(); return _fetchSize; } public int getResultSetConcurrency() throws SQLException { checkOpen(); return _resultSetConcurrency; } public int getResultSetType() throws SQLException { checkOpen(); return _resultSetType; } public void addBatch(String sql) throws SQLException { checkOpen(); } public void clearBatch() throws SQLException { checkOpen(); } public int[] executeBatch() throws SQLException { checkOpen(); return new int[0]; } public Connection getConnection() throws SQLException { checkOpen(); return _connection; } protected void checkOpen() throws SQLException { if(!_open) { throw new SQLException("Connection is closed."); } } public boolean getMoreResults(int current) throws SQLException { throw new SQLException("Not implemented."); } public ResultSet getGeneratedKeys() throws SQLException { return new TesterResultSet(this); } public int executeUpdate(String sql, int autoGeneratedKeys) throws SQLException { throw new SQLException("Not implemented."); } public int executeUpdate(String sql, int columnIndexes[]) throws SQLException { throw new SQLException("Not implemented."); } public int executeUpdate(String sql, String columnNames[]) throws SQLException { throw new SQLException("Not implemented."); } public boolean execute(String sql, int autoGeneratedKeys) throws SQLException { throw new SQLException("Not implemented."); } public boolean execute(String sql, int columnIndexes[]) throws SQLException { throw new SQLException("Not implemented."); } public boolean execute(String sql, String columnNames[]) throws SQLException { throw new SQLException("Not implemented."); } public int getResultSetHoldability() throws SQLException { checkOpen(); throw new SQLException("Not implemented."); } /* JDBC_4_ANT_KEY_BEGIN */ public boolean isWrapperFor(Class<?> iface) throws SQLException { throw new SQLException("Not implemented."); } public <T> T unwrap(Class Other Commons DBCP examples (source code examples)Here is a short list of links related to this Commons DBCP TesterStatement.java source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.