to.etc.dbpool
Class PreparedStatementProxy

java.lang.Object
  extended by to.etc.dbpool.StatementProxy
      extended by to.etc.dbpool.PreparedStatementProxy
All Implemented Interfaces:
java.sql.PreparedStatement, java.sql.Statement, java.sql.Wrapper
Direct Known Subclasses:
CallableStatementProxy

public class PreparedStatementProxy
extends StatementProxy
implements java.sql.PreparedStatement

Encapsulates a java.sql.PreparedStatement for NEMA purposes. This class implements all of the interface, and merely routes all calls to the original statement. The close() call is used to remove this from the connection's traced statement list.


Field Summary
 
Fields inherited from class to.etc.dbpool.StatementProxy
LOG
 
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
PreparedStatementProxy(ConnectionProxy c, java.sql.PreparedStatement st, java.lang.String sql)
           
 
Method Summary
 void addBatch()
           
protected  void appendQuery(java.lang.StringBuilder sb)
           
 void clearParameters()
           
 boolean execute()
           
 java.sql.ResultSet executeQuery()
           
 int executeUpdate()
           
 java.sql.ResultSetMetaData getMetaData()
           
 java.sql.ParameterMetaData getParameterMetaData()
           
 java.sql.PreparedStatement getRealPreparedStatement()
          Returns the real prepared statement, or throws an error when the statement has been closed.
 java.lang.Object[] internalGetParameters()
           
 void setArray(int i, java.sql.Array x)
           
 void setAsciiStream(int arg0, java.io.InputStream arg1)
           
 void setAsciiStream(int parameterIndex, java.io.InputStream x, int length)
           
 void setAsciiStream(int arg0, java.io.InputStream arg1, long arg2)
           
 void setBigDecimal(int parameterIndex, java.math.BigDecimal x)
           
 void setBinaryStream(int arg0, java.io.InputStream arg1)
           
 void setBinaryStream(int parameterIndex, java.io.InputStream x, int length)
           
 void setBinaryStream(int arg0, java.io.InputStream arg1, long arg2)
           
 void setBlob(int i, java.sql.Blob x)
           
 void setBlob(int arg0, java.io.InputStream arg1)
           
 void setBlob(int arg0, java.io.InputStream arg1, long arg2)
           
 void setBoolean(int parameterIndex, boolean x)
           
 void setByte(int parameterIndex, byte x)
           
 void setBytes(int parameterIndex, byte[] x)
           
 void setCharacterStream(int arg0, java.io.Reader arg1)
           
 void setCharacterStream(int parameterIndex, java.io.Reader reader, int length)
           
 void setCharacterStream(int arg0, java.io.Reader arg1, long arg2)
           
 void setClob(int i, java.sql.Clob x)
           
 void setClob(int arg0, java.io.Reader arg1)
           
 void setClob(int arg0, java.io.Reader arg1, long arg2)
           
 void setDate(int parameterIndex, java.sql.Date x)
           
 void setDate(int parameterIndex, java.sql.Date x, java.util.Calendar cal)
           
 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 arg0, java.io.Reader arg1)
           
 void setNCharacterStream(int arg0, java.io.Reader arg1, long arg2)
           
 void setNClob(int arg0, java.sql.NClob arg1)
           
 void setNClob(int arg0, java.io.Reader arg1)
           
 void setNClob(int arg0, java.io.Reader arg1, long arg2)
           
 void setNString(int arg0, java.lang.String arg1)
           
 void setNull(int parameterIndex, int sqlType)
           
 void setNull(int paramIndex, int sqlType, java.lang.String typeName)
           
 void setObject(int parameterIndex, java.lang.Object x)
           
 void setObject(int parameterIndex, java.lang.Object x, int targetSqlType)
           
 void setObject(int parameterIndex, java.lang.Object x, int targetSqlType, int scale)
           
 void setRef(int i, java.sql.Ref x)
           
 void setRowId(int arg0, java.sql.RowId arg1)
           
 void setShort(int parameterIndex, short x)
           
 void setSQLXML(int arg0, java.sql.SQLXML arg1)
           
 void setString(int parameterIndex, java.lang.String x)
           
 void setTime(int parameterIndex, java.sql.Time x)
           
 void setTime(int parameterIndex, java.sql.Time x, java.util.Calendar cal)
           
 void setTimestamp(int parameterIndex, java.sql.Timestamp x)
           
 void setTimestamp(int parameterIndex, java.sql.Timestamp x, java.util.Calendar cal)
           
 void setUnicodeStream(int parameterIndex, java.io.InputStream x, int length)
          Deprecated.  
 void setURL(int id, java.net.URL u)
           
protected  java.sql.SQLException wrap(java.sql.SQLException x)
          Override the wrapper to force better exceptions, including the sql parameters.
 
Methods inherited from class to.etc.dbpool.StatementProxy
_conn, addBatch, cancel, clearBatch, clearWarnings, close, closedByConnection, execute, execute, execute, execute, executeBatch, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getRealConnection, getRealStatement, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getSQL, getUpdateCount, getWarnings, internalDumpInfo, isClosed, isPoolable, isWrapperFor, pool, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout, unwrap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, 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

PreparedStatementProxy

public PreparedStatementProxy(ConnectionProxy c,
                              java.sql.PreparedStatement st,
                              java.lang.String sql)
Method Detail

appendQuery

protected void appendQuery(java.lang.StringBuilder sb)
Overrides:
appendQuery in class StatementProxy

getRealPreparedStatement

public java.sql.PreparedStatement getRealPreparedStatement()
Returns the real prepared statement, or throws an error when the statement has been closed.


internalGetParameters

public java.lang.Object[] internalGetParameters()

wrap

protected java.sql.SQLException wrap(java.sql.SQLException x)
Override the wrapper to force better exceptions, including the sql parameters.

Overrides:
wrap in class StatementProxy
Returns:
See Also:
StatementProxy.wrap(java.sql.SQLException)

executeQuery

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

executeUpdate

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

execute

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

setNull

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

setBoolean

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

setByte

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

setShort

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

setInt

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

setLong

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

setFloat

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

setDouble

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

setBigDecimal

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

setString

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

setBytes

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

setDate

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

setTime

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

setTimestamp

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

setAsciiStream

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

setUnicodeStream

@Deprecated
public void setUnicodeStream(int parameterIndex,
                                        java.io.InputStream x,
                                        int length)
                      throws java.sql.SQLException
Deprecated. 

Specified by:
setUnicodeStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBinaryStream

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

clearParameters

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

setObject

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

setObject

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

setObject

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

addBatch

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

setCharacterStream

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

setRef

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

setBlob

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

setClob

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

setArray

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

getMetaData

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

setDate

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

setTime

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

setTimestamp

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

setNull

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

getParameterMetaData

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

setURL

public void setURL(int id,
                   java.net.URL u)
            throws java.sql.SQLException
Specified by:
setURL in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setAsciiStream

public void setAsciiStream(int arg0,
                           java.io.InputStream arg1,
                           long arg2)
                    throws java.sql.SQLException
Specified by:
setAsciiStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setAsciiStream

public void setAsciiStream(int arg0,
                           java.io.InputStream arg1)
                    throws java.sql.SQLException
Specified by:
setAsciiStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBinaryStream

public void setBinaryStream(int arg0,
                            java.io.InputStream arg1,
                            long arg2)
                     throws java.sql.SQLException
Specified by:
setBinaryStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBinaryStream

public void setBinaryStream(int arg0,
                            java.io.InputStream arg1)
                     throws java.sql.SQLException
Specified by:
setBinaryStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBlob

public void setBlob(int arg0,
                    java.io.InputStream arg1,
                    long arg2)
             throws java.sql.SQLException
Specified by:
setBlob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBlob

public void setBlob(int arg0,
                    java.io.InputStream arg1)
             throws java.sql.SQLException
Specified by:
setBlob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setCharacterStream

public void setCharacterStream(int arg0,
                               java.io.Reader arg1,
                               long arg2)
                        throws java.sql.SQLException
Specified by:
setCharacterStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setCharacterStream

public void setCharacterStream(int arg0,
                               java.io.Reader arg1)
                        throws java.sql.SQLException
Specified by:
setCharacterStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setClob

public void setClob(int arg0,
                    java.io.Reader arg1,
                    long arg2)
             throws java.sql.SQLException
Specified by:
setClob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setClob

public void setClob(int arg0,
                    java.io.Reader arg1)
             throws java.sql.SQLException
Specified by:
setClob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setNCharacterStream

public void setNCharacterStream(int arg0,
                                java.io.Reader arg1,
                                long arg2)
                         throws java.sql.SQLException
Specified by:
setNCharacterStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setNCharacterStream

public void setNCharacterStream(int arg0,
                                java.io.Reader arg1)
                         throws java.sql.SQLException
Specified by:
setNCharacterStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setNClob

public void setNClob(int arg0,
                     java.sql.NClob arg1)
              throws java.sql.SQLException
Specified by:
setNClob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setNClob

public void setNClob(int arg0,
                     java.io.Reader arg1,
                     long arg2)
              throws java.sql.SQLException
Specified by:
setNClob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setNClob

public void setNClob(int arg0,
                     java.io.Reader arg1)
              throws java.sql.SQLException
Specified by:
setNClob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setNString

public void setNString(int arg0,
                       java.lang.String arg1)
                throws java.sql.SQLException
Specified by:
setNString in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setRowId

public void setRowId(int arg0,
                     java.sql.RowId arg1)
              throws java.sql.SQLException
Specified by:
setRowId in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setSQLXML

public void setSQLXML(int arg0,
                      java.sql.SQLXML arg1)
               throws java.sql.SQLException
Specified by:
setSQLXML in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException