net.sourceforge.sqlunit.test.mock
Class SQLUnitMockCallableStatement

java.lang.Object
  extended by com.mockrunner.mock.jdbc.MockStatement
      extended by com.mockrunner.mock.jdbc.MockPreparedStatement
          extended by com.mockrunner.mock.jdbc.MockCallableStatement
              extended by net.sourceforge.sqlunit.test.mock.SQLUnitMockCallableStatement
All Implemented Interfaces:
java.sql.CallableStatement, java.sql.PreparedStatement, java.sql.Statement

public class SQLUnitMockCallableStatement
extends com.mockrunner.mock.jdbc.MockCallableStatement

Overrides certain methods in the MockCallableStatement class for mock testing of SQLUnit.

Version:
$Revision: 1.9 $
Author:
Sujit Pal (spal@users.sourceforge.net)

Field Summary
 
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
SQLUnitMockCallableStatement(java.sql.Connection conn, java.lang.String sql)
          Instantiates a SQLUnitMockConnectionStatement using the Connection object and the SQL string.
 
Method Summary
 boolean execute()
          Invokes the named method on the MockDatabase using introspection.
 boolean getMoreResults()
          Returns true if there are more result sets available for this SQL.
 java.lang.Object getObject(int index)
          Returns the object at the specified position.
 java.sql.ResultSet getResultSet()
          Returns the current result set from the SQL statement.
 int getUpdateCount()
          Returns the update count.
 void registerOutParameter(int index, int sqlType)
          Sets the object type of the out parameter being registered.
 void registerOutParameter(int index, int sqlType, int scale)
          Set the object type and scale of the outparam being registered.
 void setObject(int index, java.lang.Object obj, int sqlType)
          Sets a parameter into the parameterMap.
 void setResultSetHandler(com.mockrunner.jdbc.AbstractResultSetHandler hndlr)
          Sets the IntrospectingCallableStatementResultSetHandler for the MockCallableStatement.
 
Methods inherited from class com.mockrunner.mock.jdbc.MockCallableStatement
addBatch, executeBatch, executeQuery, executeUpdate, getArray, getArray, getBigDecimal, getBigDecimal, getBigDecimal, getBlob, getBlob, getBoolean, getBoolean, getByte, getByte, getBytes, getBytes, getClob, getClob, getDate, getDate, getDate, getDate, getDouble, getDouble, getFloat, getFloat, getIndexedRegisteredOutParameterSet, getInt, getInt, getLong, getLong, getNamedParameterMap, getNamedRegisteredOutParameterSet, getObject, getObject, getObject, getParameter, getParameterMap, getRef, getRef, getShort, getShort, getString, getString, getTime, getTime, getTime, getTime, getTimestamp, getTimestamp, getTimestamp, getTimestamp, getURL, getURL, isOutParameterRegistered, isOutParameterRegistered, registerOutParameter, registerOutParameter, registerOutParameter, registerOutParameter, setAsciiStream, setBigDecimal, setBinaryStream, setBoolean, setByte, setBytes, setCallableStatementResultSetHandler, setCharacterStream, setDate, setDate, setDouble, setFloat, setInt, setLong, setNull, setNull, setObject, setObject, setObject, setShort, setString, setTime, setTime, setTimestamp, setTimestamp, setURL, wasNull
 
Methods inherited from class com.mockrunner.mock.jdbc.MockPreparedStatement
clearParameters, executeBatch, executeQuery, executeUpdate, getIndexedParameterMap, getMetaData, getParameter, getParameterMetaData, getSQL, setArray, setAsciiStream, setBigDecimal, setBinaryStream, setBlob, setBoolean, setByte, setBytes, setCharacterStream, setClob, setDate, setDate, setDouble, setFloat, setInt, setLong, setNull, setNull, setObject, setObject, setPreparedStatementResultSetHandler, setRef, setShort, setString, setTime, setTime, setTimestamp, setTimestamp, setUnicodeStream, setURL
 
Methods inherited from class com.mockrunner.mock.jdbc.MockStatement
addBatch, cancel, clearBatch, clearWarnings, cloneResultSet, close, execute, execute, execute, execute, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getCursorName, getFetchDirection, getFetchSize, getGeneratedKeys, getMaxFieldSize, getMaxRows, getMoreResults, getQueryTimeout, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getWarnings, isClosed, isQuery, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setNextResultSet, setNextUpdateCount, setQueryTimeout
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.sql.PreparedStatement
clearParameters, getMetaData, getParameterMetaData, setArray, setAsciiStream, setBigDecimal, setBinaryStream, setBlob, setBoolean, setByte, setBytes, setCharacterStream, setClob, setDate, setDate, setDouble, setFloat, setInt, setLong, setNull, setNull, setObject, setObject, setRef, setShort, setString, setTime, setTime, setTimestamp, setTimestamp, setUnicodeStream, setURL
 
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, getQueryTimeout, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getWarnings, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setQueryTimeout
 

Constructor Detail

SQLUnitMockCallableStatement

public SQLUnitMockCallableStatement(java.sql.Connection conn,
                                    java.lang.String sql)
Instantiates a SQLUnitMockConnectionStatement using the Connection object and the SQL string.

Parameters:
conn - the Connection object.
sql - the SQL string.
Method Detail

setResultSetHandler

public final void setResultSetHandler(com.mockrunner.jdbc.AbstractResultSetHandler hndlr)
Sets the IntrospectingCallableStatementResultSetHandler for the MockCallableStatement.

Overrides:
setResultSetHandler in class com.mockrunner.mock.jdbc.MockStatement
Parameters:
hndlr - an IntrospectingCallableStatementResultSetHandler object.

getMoreResults

public final boolean getMoreResults()
                             throws java.sql.SQLException
Returns true if there are more result sets available for this SQL.

Specified by:
getMoreResults in interface java.sql.Statement
Overrides:
getMoreResults in class com.mockrunner.mock.jdbc.MockStatement
Returns:
true if there are more result sets available, else false.
Throws:
java.sql.SQLException - if one is thrown.

getResultSet

public final java.sql.ResultSet getResultSet()
                                      throws java.sql.SQLException
Returns the current result set from the SQL statement.

Specified by:
getResultSet in interface java.sql.Statement
Overrides:
getResultSet in class com.mockrunner.mock.jdbc.MockStatement
Returns:
a MockResultSet object.
Throws:
java.sql.SQLException - if one is thrown.

execute

public final boolean execute()
                      throws java.sql.SQLException
Invokes the named method on the MockDatabase using introspection. The execute() method is the only method used in SQLUnit, if we were to use more in the future, then these methods will also need to be overriden.

Specified by:
execute in interface java.sql.PreparedStatement
Overrides:
execute in class com.mockrunner.mock.jdbc.MockPreparedStatement
Returns:
true if a resultset can be returned from the CallableStatement.
Throws:
java.sql.SQLException - if there was a problem.

registerOutParameter

public final void registerOutParameter(int index,
                                       int sqlType)
                                throws java.sql.SQLException
Sets the object type of the out parameter being registered.

Specified by:
registerOutParameter in interface java.sql.CallableStatement
Overrides:
registerOutParameter in class com.mockrunner.mock.jdbc.MockCallableStatement
Parameters:
index - the parameter index (1-based).
sqlType - the SQL Type of the parameter.
Throws:
java.sql.SQLException - if an error occurs.

registerOutParameter

public final void registerOutParameter(int index,
                                       int sqlType,
                                       int scale)
                                throws java.sql.SQLException
Set the object type and scale of the outparam being registered. This mock method delegates back to the 2-argument form of this method, since the mock database does not do any processing of the extra scale information.

Specified by:
registerOutParameter in interface java.sql.CallableStatement
Overrides:
registerOutParameter in class com.mockrunner.mock.jdbc.MockCallableStatement
Parameters:
index - the parameter index (1-based).
sqlType - the SQL type of the parameter.
scale - the scale.
Throws:
java.sql.SQLException - if an error occurs.

setObject

public final void setObject(int index,
                            java.lang.Object obj,
                            int sqlType)
                     throws java.sql.SQLException
Sets a parameter into the parameterMap.

Specified by:
setObject in interface java.sql.PreparedStatement
Overrides:
setObject in class com.mockrunner.mock.jdbc.MockPreparedStatement
Parameters:
index - the parameter index (1-based).
obj - the parameter as an Object.
sqlType - the SQL Type of the parameter.
Throws:
java.sql.SQLException - if an error occurs.

getObject

public final java.lang.Object getObject(int index)
                                 throws java.sql.SQLException
Returns the object at the specified position.

Specified by:
getObject in interface java.sql.CallableStatement
Overrides:
getObject in class com.mockrunner.mock.jdbc.MockCallableStatement
Parameters:
index - the parameter index (1-based).
Returns:
the value of the parameter at the index.
Throws:
java.sql.SQLException - if an error occurs.

getUpdateCount

public final int getUpdateCount()
                         throws java.sql.SQLException
Returns the update count.

Specified by:
getUpdateCount in interface java.sql.Statement
Overrides:
getUpdateCount in class com.mockrunner.mock.jdbc.MockStatement
Returns:
the update count.
Throws:
java.sql.SQLException - if an error occurs.