public class TabularResultSet extends Tabular {
private ResultSet m_resultSet;
+ private Column[] m_cols;
public TabularResultSet(ResultSet resultSet) {
m_resultSet = resultSet;
+ m_cols = null;
}
@Override
int width = metaData.getColumnDisplaySize(idx);
cols[idx - 1] = new Column(label, clazz, width);
}
-
+ m_cols = cols;
return cols;
}
@Override
- Row getNext() {
- // TODO Auto-generated method stub
- return null;
+ Row getNext() throws SQLException {
+ if (null == m_cols) {
+ m_cols = getCols();
+ }
+ if (! m_resultSet.next()) {
+ return null;
+ }
+
+ Row row = new Row(m_cols.length);
+ for (int idx = 0; idx < m_cols.length; ++idx) {
+ row.setValue(idx + 1, m_resultSet.getObject(idx + 1));
+ }
+
+ return row;
}
}