craftsman.spy
Class SpyPreparedStatement

java.lang.Object
  extended bycraftsman.spy.SpyEntity
      extended bycraftsman.spy.SpyStatement
          extended bycraftsman.spy.SpyPreparedStatement
All Implemented Interfaces:
java.sql.PreparedStatement, java.sql.Statement
Direct Known Subclasses:
SpyCallableStatement

public class SpyPreparedStatement
extends SpyStatement
implements java.sql.PreparedStatement

The classe used to represent a precompiled SQL statement.

Author:
Sébastien LECACHEUR

Field Summary
protected  java.lang.String preparedSql
          The current prepared SQL.
 
Fields inherited from class craftsman.spy.SpyStatement
batch
 
Fields inherited from class craftsman.spy.SpyEntity
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
protected SpyPreparedStatement(java.sql.Connection c, java.sql.PreparedStatement pstm, java.lang.String sql)
          Constructs a new Spy JDBC prepared statement.
 
Method Summary
 void addBatch()
           
 void clearParameters()
           
 boolean execute()
           
 int[] executeBatch()
           
 java.sql.ResultSet executeQuery()
           
 int executeUpdate()
           
protected  int getEstimatedParametersCount()
          Retrieves the estimation of the number of parameters for the prepared SQL.
 java.sql.ResultSetMetaData getMetaData()
           
 java.sql.ParameterMetaData getParameterMetaData()
           
 void setArray(int i, java.sql.Array x)
           
 void setAsciiStream(int parameterIndex, java.io.InputStream x, int length)
           
 void setBigDecimal(int parameterIndex, java.math.BigDecimal x)
           
 void setBinaryStream(int parameterIndex, java.io.InputStream x, int length)
           
 void setBlob(int i, java.sql.Blob x)
           
 void setBoolean(int parameterIndex, boolean x)
           
 void setByte(int parameterIndex, byte x)
           
 void setBytes(int parameterIndex, byte[] x)
           
 void setCharacterStream(int parameterIndex, java.io.Reader reader, int length)
           
 void setClob(int i, java.sql.Clob x)
           
 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 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 setShort(int parameterIndex, short x)
           
 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)
           
 void setURL(int parameterIndex, java.net.URL x)
           
 
Methods inherited from class craftsman.spy.SpyStatement
addBatch, cancel, clearBatch, clearWarnings, close, execute, execute, execute, execute, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getFetchDirection, getFetchSize, getGeneratedKeys, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setQueryTimeout
 
Methods inherited from class craftsman.spy.SpyEntity
getConnection, getId
 
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, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setQueryTimeout
 

Field Detail

preparedSql

protected java.lang.String preparedSql
The current prepared SQL.

Constructor Detail

SpyPreparedStatement

protected SpyPreparedStatement(java.sql.Connection c,
                               java.sql.PreparedStatement pstm,
                               java.lang.String sql)
Constructs a new Spy JDBC prepared statement.

Parameters:
c - Connection The used connection.
pstm - PreparedStatement The real JDBC prepared statement.
sql - String The prepared SQL.
Method Detail

getEstimatedParametersCount

protected int getEstimatedParametersCount()
Retrieves the estimation of the number of parameters for the prepared SQL.

Returns:
int The number of parameters.

executeUpdate

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

addBatch

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

clearParameters

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

execute

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

setByte

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

setDouble

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

setFloat

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

setInt

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

setNull

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

setLong

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

setShort

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

setBoolean

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

setBytes

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

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
See Also:
PreparedStatement.setAsciiStream(int, java.io.InputStream, int)

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
See Also:
PreparedStatement.setBinaryStream(int, java.io.InputStream, int)

setUnicodeStream

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

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
See Also:
PreparedStatement.setCharacterStream(int, java.io.Reader, int)

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
See Also:
PreparedStatement.setObject(int, Object)

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
See Also:
PreparedStatement.setObject(int, Object, int)

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
See Also:
PreparedStatement.setObject(int, Object, int, int)

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
See Also:
PreparedStatement.setNull(int, int, String)

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
See Also:
PreparedStatement.setString(int, String)

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
See Also:
PreparedStatement.setBigDecimal(int, java.math.BigDecimal)

setURL

public void setURL(int parameterIndex,
                   java.net.URL x)
            throws java.sql.SQLException
Specified by:
setURL in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException
See Also:
PreparedStatement.setURL(int, java.net.URL)

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
See Also:
PreparedStatement.setArray(int, Array)

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
See Also:
PreparedStatement.setBlob(int, Blob)

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
See Also:
PreparedStatement.setClob(int, Clob)

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
See Also:
PreparedStatement.setDate(int, Date)

getParameterMetaData

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

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
See Also:
PreparedStatement.setRef(int, Ref)

executeQuery

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

getMetaData

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

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
See Also:
PreparedStatement.setTime(int, Time)

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
See Also:
PreparedStatement.setTimestamp(int, Timestamp)

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
See Also:
PreparedStatement.setDate(int, Date, Calendar)

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
See Also:
PreparedStatement.setTime(int, Time, Calendar)

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
See Also:
PreparedStatement.setTimestamp(int, Timestamp, Calendar)

executeBatch

public int[] executeBatch()
                   throws java.sql.SQLException
Specified by:
executeBatch in interface java.sql.Statement
Overrides:
executeBatch in class SpyStatement
Throws:
java.sql.SQLException
See Also:
Statement.executeBatch()