org.apache.commons.dbcp
Class DelegatingPreparedStatement

java.lang.Object
  extended by org.apache.commons.dbcp.AbandonedTrace
      extended by org.apache.commons.dbcp.DelegatingStatement
          extended by org.apache.commons.dbcp.DelegatingPreparedStatement
All Implemented Interfaces:
PreparedStatement, Statement, Wrapper
Direct Known Subclasses:
DelegatingCallableStatement, PoolablePreparedStatement

public class DelegatingPreparedStatement
extends DelegatingStatement
implements PreparedStatement

A base delegating implementation of PreparedStatement.

All of the methods from the PreparedStatement interface simply check to see that the PreparedStatement is active, and call the corresponding method on the "delegate" provided in my constructor.

Extends AbandonedTrace to implement Statement tracking and logging of code which created the Statement. Tracking the Statement ensures that the Connection which created it can close any open Statement's on Connection close.

Version:
$Revision: 892307 $ $Date: 2013-12-31 23:27:28 +0000 (Tue, 31 Dec 2013) $
Author:
Rodney Waldhoff, Glenn L. Nielsen, James House, Dirk Verbeeck

Field Summary
 
Fields inherited from class org.apache.commons.dbcp.DelegatingStatement
_closed, _conn, _stmt
 
Fields inherited from interface java.sql.Statement
CLOSE_ALL_RESULTS, CLOSE_CURRENT_RESULT, EXECUTE_FAILED, KEEP_CURRENT_RESULT, NO_GENERATED_KEYS, RETURN_GENERATED_KEYS, SUCCESS_NO_INFO
 
Constructor Summary
DelegatingPreparedStatement(DelegatingConnection c, PreparedStatement s)
          Create a wrapper for the Statement which traces this Statement to the Connection which created it and the code which created it.
 
Method Summary
 void addBatch()
           
 void clearParameters()
           
 boolean equals(Object obj)
          This method considers two objects to be equal if the underlying jdbc objects are equal.
 boolean execute()
           
 ResultSet executeQuery()
           
 int executeUpdate()
           
 ResultSetMetaData getMetaData()
           
 ParameterMetaData getParameterMetaData()
           
 void setArray(int i, Array x)
           
 void setAsciiStream(int parameterIndex, InputStream inputStream)
           
 void setAsciiStream(int parameterIndex, InputStream x, int length)
           
 void setAsciiStream(int parameterIndex, InputStream inputStream, long length)
           
 void setBigDecimal(int parameterIndex, BigDecimal x)
           
 void setBinaryStream(int parameterIndex, InputStream inputStream)
           
 void setBinaryStream(int parameterIndex, InputStream x, int length)
           
 void setBinaryStream(int parameterIndex, InputStream inputStream, long length)
           
 void setBlob(int i, Blob x)
           
 void setBlob(int parameterIndex, InputStream inputStream)
           
 void setBlob(int parameterIndex, InputStream inputStream, long length)
           
 void setBoolean(int parameterIndex, boolean x)
           
 void setByte(int parameterIndex, byte x)
           
 void setBytes(int parameterIndex, byte[] x)
           
 void setCharacterStream(int parameterIndex, Reader reader)
           
 void setCharacterStream(int parameterIndex, Reader reader, int length)
           
 void setCharacterStream(int parameterIndex, Reader reader, long length)
           
 void setClob(int i, Clob x)
           
 void setClob(int parameterIndex, Reader reader)
           
 void setClob(int parameterIndex, Reader reader, long length)
           
 void setDate(int parameterIndex, Date x)
           
 void setDate(int parameterIndex, Date x, Calendar cal)
           
 void setDelegate(PreparedStatement s)
          Sets my delegate.
 void setDouble(int parameterIndex, double x)
           
 void setFloat(int parameterIndex, float x)
           
 void setInt(int parameterIndex, int x)
           
 void setLong(int parameterIndex, long x)
           
 void setNCharacterStream(int parameterIndex, Reader reader)
           
 void setNCharacterStream(int parameterIndex, Reader value, long length)
           
 void setNClob(int parameterIndex, NClob value)
           
 void setNClob(int parameterIndex, Reader reader)
           
 void setNClob(int parameterIndex, Reader reader, long length)
           
 void setNString(int parameterIndex, String value)
           
 void setNull(int parameterIndex, int sqlType)
           
 void setNull(int paramIndex, int sqlType, String typeName)
           
 void setObject(int parameterIndex, Object x)
           
 void setObject(int parameterIndex, Object x, int targetSqlType)
           
 void setObject(int parameterIndex, Object x, int targetSqlType, int scale)
           
 void setRef(int i, Ref x)
           
 void setRowId(int parameterIndex, RowId value)
           
 void setShort(int parameterIndex, short x)
           
 void setSQLXML(int parameterIndex, SQLXML value)
           
 void setString(int parameterIndex, String x)
           
 void setTime(int parameterIndex, Time x)
           
 void setTime(int parameterIndex, Time x, Calendar cal)
           
 void setTimestamp(int parameterIndex, Timestamp x)
           
 void setTimestamp(int parameterIndex, Timestamp x, Calendar cal)
           
 void setUnicodeStream(int parameterIndex, InputStream x, int length)
          Deprecated.  
 void setURL(int parameterIndex, URL x)
           
 String toString()
          Returns a String representation of this object.
 
Methods inherited from class org.apache.commons.dbcp.DelegatingStatement
activate, addBatch, cancel, checkOpen, clearBatch, clearWarnings, close, execute, execute, execute, execute, executeBatch, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getDelegate, getFetchDirection, getFetchSize, getGeneratedKeys, getInnermostDelegate, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, handleException, hashCode, isClosed, isPoolable, isWrapperFor, passivate, setCursorName, setDelegate, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout, unwrap
 
Methods inherited from class org.apache.commons.dbcp.AbandonedTrace
addTrace, clearTrace, getConfig, getLastUsed, getTrace, printStackTrace, removeTrace, setLastUsed, setLastUsed, setStackTrace
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.sql.Statement
addBatch, cancel, clearBatch, clearWarnings, close, execute, execute, execute, execute, executeBatch, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, isClosed, isPoolable, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout
 
Methods inherited from interface java.sql.Wrapper
isWrapperFor, unwrap
 

Constructor Detail

DelegatingPreparedStatement

public DelegatingPreparedStatement(DelegatingConnection c,
                                   PreparedStatement s)
Create a wrapper for the Statement which traces this Statement to the Connection which created it and the code which created it.

Parameters:
s - the PreparedStatement to delegate all calls to.
c - the DelegatingConnection that created this statement.
Method Detail

equals

public boolean equals(Object obj)
Description copied from class: DelegatingStatement
This method considers two objects to be equal if the underlying jdbc objects are equal.

Overrides:
equals in class DelegatingStatement

setDelegate

public void setDelegate(PreparedStatement s)
Sets my delegate.


executeQuery

public ResultSet executeQuery()
                       throws SQLException
Specified by:
executeQuery in interface PreparedStatement
Throws:
SQLException

executeUpdate

public int executeUpdate()
                  throws SQLException
Specified by:
executeUpdate in interface PreparedStatement
Throws:
SQLException

setNull

public void setNull(int parameterIndex,
                    int sqlType)
             throws SQLException
Specified by:
setNull in interface PreparedStatement
Throws:
SQLException

setBoolean

public void setBoolean(int parameterIndex,
                       boolean x)
                throws SQLException
Specified by:
setBoolean in interface PreparedStatement
Throws:
SQLException

setByte

public void setByte(int parameterIndex,
                    byte x)
             throws SQLException
Specified by:
setByte in interface PreparedStatement
Throws:
SQLException

setShort

public void setShort(int parameterIndex,
                     short x)
              throws SQLException
Specified by:
setShort in interface PreparedStatement
Throws:
SQLException

setInt

public void setInt(int parameterIndex,
                   int x)
            throws SQLException
Specified by:
setInt in interface PreparedStatement
Throws:
SQLException

setLong

public void setLong(int parameterIndex,
                    long x)
             throws SQLException
Specified by:
setLong in interface PreparedStatement
Throws:
SQLException

setFloat

public void setFloat(int parameterIndex,
                     float x)
              throws SQLException
Specified by:
setFloat in interface PreparedStatement
Throws:
SQLException

setDouble

public void setDouble(int parameterIndex,
                      double x)
               throws SQLException
Specified by:
setDouble in interface PreparedStatement
Throws:
SQLException

setBigDecimal

public void setBigDecimal(int parameterIndex,
                          BigDecimal x)
                   throws SQLException
Specified by:
setBigDecimal in interface PreparedStatement
Throws:
SQLException

setString

public void setString(int parameterIndex,
                      String x)
               throws SQLException
Specified by:
setString in interface PreparedStatement
Throws:
SQLException

setBytes

public void setBytes(int parameterIndex,
                     byte[] x)
              throws SQLException
Specified by:
setBytes in interface PreparedStatement
Throws:
SQLException

setDate

public void setDate(int parameterIndex,
                    Date x)
             throws SQLException
Specified by:
setDate in interface PreparedStatement
Throws:
SQLException

setTime

public void setTime(int parameterIndex,
                    Time x)
             throws SQLException
Specified by:
setTime in interface PreparedStatement
Throws:
SQLException

setTimestamp

public void setTimestamp(int parameterIndex,
                         Timestamp x)
                  throws SQLException
Specified by:
setTimestamp in interface PreparedStatement
Throws:
SQLException

setAsciiStream

public void setAsciiStream(int parameterIndex,
                           InputStream x,
                           int length)
                    throws SQLException
Specified by:
setAsciiStream in interface PreparedStatement
Throws:
SQLException

setUnicodeStream

public void setUnicodeStream(int parameterIndex,
                             InputStream x,
                             int length)
                      throws SQLException
Deprecated. 

Specified by:
setUnicodeStream in interface PreparedStatement
Throws:
SQLException

setBinaryStream

public void setBinaryStream(int parameterIndex,
                            InputStream x,
                            int length)
                     throws SQLException
Specified by:
setBinaryStream in interface PreparedStatement
Throws:
SQLException

clearParameters

public void clearParameters()
                     throws SQLException
Specified by:
clearParameters in interface PreparedStatement
Throws:
SQLException

setObject

public void setObject(int parameterIndex,
                      Object x,
                      int targetSqlType,
                      int scale)
               throws SQLException
Specified by:
setObject in interface PreparedStatement
Throws:
SQLException

setObject

public void setObject(int parameterIndex,
                      Object x,
                      int targetSqlType)
               throws SQLException
Specified by:
setObject in interface PreparedStatement
Throws:
SQLException

setObject

public void setObject(int parameterIndex,
                      Object x)
               throws SQLException
Specified by:
setObject in interface PreparedStatement
Throws:
SQLException

execute

public boolean execute()
                throws SQLException
Specified by:
execute in interface PreparedStatement
Throws:
SQLException

addBatch

public void addBatch()
              throws SQLException
Specified by:
addBatch in interface PreparedStatement
Throws:
SQLException

setCharacterStream

public void setCharacterStream(int parameterIndex,
                               Reader reader,
                               int length)
                        throws SQLException
Specified by:
setCharacterStream in interface PreparedStatement
Throws:
SQLException

setRef

public void setRef(int i,
                   Ref x)
            throws SQLException
Specified by:
setRef in interface PreparedStatement
Throws:
SQLException

setBlob

public void setBlob(int i,
                    Blob x)
             throws SQLException
Specified by:
setBlob in interface PreparedStatement
Throws:
SQLException

setClob

public void setClob(int i,
                    Clob x)
             throws SQLException
Specified by:
setClob in interface PreparedStatement
Throws:
SQLException

setArray

public void setArray(int i,
                     Array x)
              throws SQLException
Specified by:
setArray in interface PreparedStatement
Throws:
SQLException

getMetaData

public ResultSetMetaData getMetaData()
                              throws SQLException
Specified by:
getMetaData in interface PreparedStatement
Throws:
SQLException

setDate

public void setDate(int parameterIndex,
                    Date x,
                    Calendar cal)
             throws SQLException
Specified by:
setDate in interface PreparedStatement
Throws:
SQLException

setTime

public void setTime(int parameterIndex,
                    Time x,
                    Calendar cal)
             throws SQLException
Specified by:
setTime in interface PreparedStatement
Throws:
SQLException

setTimestamp

public void setTimestamp(int parameterIndex,
                         Timestamp x,
                         Calendar cal)
                  throws SQLException
Specified by:
setTimestamp in interface PreparedStatement
Throws:
SQLException

setNull

public void setNull(int paramIndex,
                    int sqlType,
                    String typeName)
             throws SQLException
Specified by:
setNull in interface PreparedStatement
Throws:
SQLException

toString

public String toString()
Returns a String representation of this object.

Overrides:
toString in class DelegatingStatement
Returns:
String
Since:
1.2.2

setURL

public void setURL(int parameterIndex,
                   URL x)
            throws SQLException
Specified by:
setURL in interface PreparedStatement
Throws:
SQLException

getParameterMetaData

public ParameterMetaData getParameterMetaData()
                                       throws SQLException
Specified by:
getParameterMetaData in interface PreparedStatement
Throws:
SQLException

setRowId

public void setRowId(int parameterIndex,
                     RowId value)
              throws SQLException
Specified by:
setRowId in interface PreparedStatement
Throws:
SQLException

setNString

public void setNString(int parameterIndex,
                       String value)
                throws SQLException
Specified by:
setNString in interface PreparedStatement
Throws:
SQLException

setNCharacterStream

public void setNCharacterStream(int parameterIndex,
                                Reader value,
                                long length)
                         throws SQLException
Specified by:
setNCharacterStream in interface PreparedStatement
Throws:
SQLException

setNClob

public void setNClob(int parameterIndex,
                     NClob value)
              throws SQLException
Specified by:
setNClob in interface PreparedStatement
Throws:
SQLException

setClob

public void setClob(int parameterIndex,
                    Reader reader,
                    long length)
             throws SQLException
Specified by:
setClob in interface PreparedStatement
Throws:
SQLException

setBlob

public void setBlob(int parameterIndex,
                    InputStream inputStream,
                    long length)
             throws SQLException
Specified by:
setBlob in interface PreparedStatement
Throws:
SQLException

setNClob

public void setNClob(int parameterIndex,
                     Reader reader,
                     long length)
              throws SQLException
Specified by:
setNClob in interface PreparedStatement
Throws:
SQLException

setSQLXML

public void setSQLXML(int parameterIndex,
                      SQLXML value)
               throws SQLException
Specified by:
setSQLXML in interface PreparedStatement
Throws:
SQLException

setAsciiStream

public void setAsciiStream(int parameterIndex,
                           InputStream inputStream,
                           long length)
                    throws SQLException
Specified by:
setAsciiStream in interface PreparedStatement
Throws:
SQLException

setBinaryStream

public void setBinaryStream(int parameterIndex,
                            InputStream inputStream,
                            long length)
                     throws SQLException
Specified by:
setBinaryStream in interface PreparedStatement
Throws:
SQLException

setCharacterStream

public void setCharacterStream(int parameterIndex,
                               Reader reader,
                               long length)
                        throws SQLException
Specified by:
setCharacterStream in interface PreparedStatement
Throws:
SQLException

setAsciiStream

public void setAsciiStream(int parameterIndex,
                           InputStream inputStream)
                    throws SQLException
Specified by:
setAsciiStream in interface PreparedStatement
Throws:
SQLException

setBinaryStream

public void setBinaryStream(int parameterIndex,
                            InputStream inputStream)
                     throws SQLException
Specified by:
setBinaryStream in interface PreparedStatement
Throws:
SQLException

setCharacterStream

public void setCharacterStream(int parameterIndex,
                               Reader reader)
                        throws SQLException
Specified by:
setCharacterStream in interface PreparedStatement
Throws:
SQLException

setNCharacterStream

public void setNCharacterStream(int parameterIndex,
                                Reader reader)
                         throws SQLException
Specified by:
setNCharacterStream in interface PreparedStatement
Throws:
SQLException

setClob

public void setClob(int parameterIndex,
                    Reader reader)
             throws SQLException
Specified by:
setClob in interface PreparedStatement
Throws:
SQLException

setBlob

public void setBlob(int parameterIndex,
                    InputStream inputStream)
             throws SQLException
Specified by:
setBlob in interface PreparedStatement
Throws:
SQLException

setNClob

public void setNClob(int parameterIndex,
                     Reader reader)
              throws SQLException
Specified by:
setNClob in interface PreparedStatement
Throws:
SQLException


Copyright © 2001-2010 The Apache Software Foundation. All Rights Reserved.