public class ResultSetMock implements ResultSet {
- private ResultSetMetaDataMock m_metaDataMock;
- private ArrayList<Row> m_rows;
- private int m_rowNum;
+ private ResultSetMetaDataMock mock_metaDataMock;
+ private ArrayList<Row> mock_rows;
+ private int mock_rowIdx;
public ResultSetMock() {
- m_metaDataMock = new ResultSetMetaDataMock();
- m_rows = new ArrayList<Row>();
- m_rowNum = -1;
+ mock_metaDataMock = new ResultSetMetaDataMock();
+ mock_rows = new ArrayList<Row>();
+ mock_rowIdx = -1;
}
public void mock_addRow(Row row) {
- m_rows.add(row);
+ mock_rows.add(row);
+ }
+
+ public void mock_addRows(Row[] rows) {
+ for (Row row : rows) {
+ mock_addRow(row);
+ }
}
@Override
}
@Override
- public int getInt(int arg0) throws SQLException {
- throw new UnsupportedOperationException("Not yet implemented.");
-
+ public int getInt(int idx) throws SQLException {
+ Row row = mock_rows.get(mock_rowIdx);
+ Object obj = row.getValue(idx);
+ if (null == obj) {
+ return 0;
+ }
+ if (obj instanceof Number) {
+ Number num = (Number)obj;
+ return num.intValue();
+ }
+ throw new SQLException("Invalid type");
}
@Override
@Override
public long getLong(int idx) throws SQLException {
- Row row = m_rows.get(m_rowNum);
+ Row row = mock_rows.get(mock_rowIdx);
return (Long)(row.getValue(idx));
}
@Override
public ResultSetMetaData getMetaData() throws SQLException {
- return m_metaDataMock;
+ return mock_metaDataMock;
}
@Override
@Override
public Object getObject(int idx) throws SQLException {
- Row row = m_rows.get(m_rowNum);
+ Row row = mock_rows.get(mock_rowIdx);
return row.getValue(idx);
}
@Override
public String getString(int idx) throws SQLException {
- Row row = m_rows.get(m_rowNum);
+ Row row = mock_rows.get(mock_rowIdx);
return (String)(row.getValue(idx));
}
@Override
public Time getTime(int idx) throws SQLException {
- Row row = m_rows.get(m_rowNum);
+ Row row = mock_rows.get(mock_rowIdx);
return new Time(((java.util.Date)row.getValue(idx)).getTime());
}
@Override
public boolean next() throws SQLException {
- return false;
+ if (null == mock_rows) {
+ return false;
+ }
+
+ mock_rowIdx++;
+ return (mock_rowIdx < mock_rows.size());
}
@Override