/* * $Source: /home/cvsroot/manywhere/simplepool/src/net/java/dev/simplepool/SimplePoolConnection.java,v $ * $Revision: 1.5 $ * $Date: 2004/03/17 23:35:36 $ * * Copyright (c) 2004, Russell Beattie (http://www.russellbeattie.com/) * All rights reserved. * * Copyright (c) 2004, Erik C. Thauvin (http://www.thauvin.net/erik/) * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are * met: * * Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright notice, * this list of conditions and the following disclaimer in the documentation * and/or other materials provided with the distribution. * * Neither the name of the authors nor the names of its contributors may be * used to endorse or promote products derived from this software without * specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ package net.java.dev.simplepool; import java.sql.*; import java.util.Map; /** * Basic implementation of {@link java.sql.Connection}. * * @author Russell Beattie * @author Erik C. Thauvin * @version $Revision: 1.5 $, $Date: 2004/03/17 23:35:36 $ * @since 1.0 */ public class SimplePoolConnection implements Connection { private Connection conn; private SimplePool pool; /** * Creates a new SimplePoolConnection object. * * @param pool The connection pool. */ public SimplePoolConnection(SimplePool pool) { this.pool = pool; conn = pool.getConnection(); } /** * See {@link java.sql.Connection#setAutoCommit(boolean)}. */ public void setAutoCommit(boolean autoCommit) throws SQLException { conn.setAutoCommit(autoCommit); } /** * See {@link java.sql.Connection#getAutoCommit}. */ public boolean getAutoCommit() throws SQLException { return conn.getAutoCommit(); } /** * See {@link java.sql.Connection#setCatalog(String)}. */ public void setCatalog(String catalog) throws SQLException { conn.setCatalog(catalog); } /** * See {@link java.sql.Connection#getCatalog()}. */ public String getCatalog() throws SQLException { return conn.getCatalog(); } /** * See {@link java.sql.Connection#isClosed}. */ public boolean isClosed() throws SQLException { return conn.isClosed(); } /** * See {@link java.sql.Connection#setHoldability(int)}. */ public void setHoldability(int holdability) throws SQLException { conn.setHoldability(holdability); } /** * See {@link java.sql.Connection#getHoldability}. */ public int getHoldability() throws SQLException { return conn.getHoldability(); } /** * See {@link java.sql.Connection#getMetaData}. */ public DatabaseMetaData getMetaData() throws SQLException { return conn.getMetaData(); } /** * See {@link java.sql.Connection#setReadOnly(boolean)}. */ public void setReadOnly(boolean readOnly) throws SQLException { conn.setReadOnly(readOnly); } /** * See {@link java.sql.Connection#isReadOnly}. */ public boolean isReadOnly() throws SQLException { return conn.isReadOnly(); } /** * See {@link java.sql.Connection#setSavepoint}. */ public Savepoint setSavepoint() throws SQLException { return conn.setSavepoint(); } /** * See {@link java.sql.Connection#setSavepoint(String)}. */ public Savepoint setSavepoint(String savepoint) throws SQLException { return conn.setSavepoint(savepoint); } /** * See {@link java.sql.Connection#setTransactionIsolation(int)}. */ public void setTransactionIsolation(int level) throws SQLException { conn.setTransactionIsolation(level); } /** * See {@link java.sql.Connection#getTransactionIsolation}. */ public int getTransactionIsolation() throws SQLException { return conn.getTransactionIsolation(); } /** * See {@link java.sql.Connection#setTypeMap(Map)}. */ public void setTypeMap(Map map) throws SQLException { conn.setTypeMap(map); } /** * See {@link java.sql.Connection#getTypeMap}. */ public Map getTypeMap() throws SQLException { return conn.getTypeMap(); } /** * See {@link java.sql.Connection#getWarnings}. */ public SQLWarning getWarnings() throws SQLException { return conn.getWarnings(); } /** * See {@link java.sql.Connection#clearWarnings}. */ public void clearWarnings() throws SQLException { conn.clearWarnings(); } /** * See {@link java.sql.Connection#close}. */ public void close() throws SQLException { pool.freeConnection(conn); } /** * See {@link java.sql.Connection#commit}. */ public void commit() throws SQLException { conn.commit(); } /** * See {@link java.sql.Connection#createStatement}. */ public Statement createStatement() throws SQLException { return conn.createStatement(); } /** * See {@link java.sql.Connection#createStatement(int, int)}. */ public Statement createStatement(int resultSetType, int resultSetConcurrency) throws SQLException { return conn.createStatement(resultSetType, resultSetConcurrency); } /** * See {@link java.sql.Connection#createStatement(int, int, int)}. */ public Statement createStatement(int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException { return conn.createStatement(resultSetType, resultSetConcurrency, resultSetHoldability); } /** * See {@link java.sql.Connection#nativeSQL(String)}. */ public String nativeSQL(String sql) throws SQLException { return conn.nativeSQL(sql); } /** * See {@link java.sql.Connection#prepareCall(String)}. */ public CallableStatement prepareCall(String sql) throws SQLException { return conn.prepareCall(sql); } /** * See {@link java.sql.Connection#prepareCall(String, int, int)}. */ public CallableStatement prepareCall(String sql, int resultSetType, int resultSetConcurrency) throws SQLException { return conn.prepareCall(sql, resultSetType, resultSetConcurrency); } /** * See {@link java.sql.Connection#prepareCall(String, int, int, int)}. */ public CallableStatement prepareCall(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException { return conn.prepareCall(sql, resultSetType, resultSetConcurrency, resultSetHoldability); } /** * See {@link java.sql.Connection#prepareStatement(String)}. */ public PreparedStatement prepareStatement(String sql) throws SQLException { return conn.prepareStatement(sql); } /** * See {@link java.sql.Connection#prepareStatement(String)}. */ public PreparedStatement prepareStatement(String sql, int autoGeneratedKeys) throws SQLException { return conn.prepareStatement(sql); } /** * See {@link java.sql.Connection#prepareStatement(String, int, int)}. */ public PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency) throws SQLException { return conn.prepareStatement(sql, resultSetType, resultSetConcurrency); } /** * See {@link java.sql.Connection#prepareStatement(String, int, int, int)}. */ public PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException { return conn.prepareStatement(sql, resultSetType, resultSetConcurrency, resultSetHoldability); } /** * See {@link java.sql.Connection#prepareStatement(String, int[])}. */ public PreparedStatement prepareStatement(String sql, int[] columnIndexes) throws SQLException { return conn.prepareStatement(sql, columnIndexes); } /** * See {@link java.sql.Connection#prepareStatement(String, String[])}. */ public PreparedStatement prepareStatement(String sql, String[] columnNames) throws SQLException { return conn.prepareStatement(sql, columnNames); } /** * See {@link java.sql.Connection#releaseSavepoint(Savepoint)}. */ public void releaseSavepoint(Savepoint savepoint) throws SQLException { conn.releaseSavepoint(savepoint); } /** * See {@link java.sql.Connection#rollback}. */ public void rollback() throws SQLException { conn.rollback(); } /** * See {@link java.sql.Connection#rollback(Savepoint)}. */ public void rollback(Savepoint savepoint) throws SQLException { conn.rollback(savepoint); } }