Package org.apache.cayenne.access.jdbc
Class JDBCResultIterator<T>
java.lang.Object
org.apache.cayenne.access.jdbc.JDBCResultIterator<T>
- All Implemented Interfaces:
- AutoCloseable,- Iterable<T>,- ResultIterator<T>
public class JDBCResultIterator<T> extends Object implements ResultIterator<T>
A ResultIterator over the underlying JDBC ResultSet.
- Since:
- 1.2
- 
Field Summary
- 
Constructor SummaryConstructors Constructor Description JDBCResultIterator(Statement statement, ResultSet resultSet, RowReader<T> rowReader)Creates new JDBCResultIterator that reads from provided ResultSet.
- 
Method SummaryModifier and Type Method Description List<T>allRows()Returns all yet unread rows from ResultSet without closing it.protected voidcheckNextRow()Moves internal ResultSet cursor position down one row.voidclose()Closes ResultIterator and associated ResultSet.booleanhasNextRow()Returns true if there is at least one more record that can be read from the iterator.Iterator<T>iterator()TnextRow()Returns the next result row that is, depending on the query, may be a scalar value, a DataRow, or an Object[] array containing a mix of scalars and DataRows.voidskipRow()Goes past current row.Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.lang.IterableforEach, spliterator
- 
Field Details- 
statement
- 
resultSet
- 
closedprotected boolean closed
- 
nextRowprotected boolean nextRow
 
- 
- 
Constructor Details- 
JDBCResultIteratorCreates new JDBCResultIterator that reads from provided ResultSet.- Since:
- 4.0
 
 
- 
- 
Method Details- 
iterator
- 
allRowsDescription copied from interface:ResultIteratorReturns all yet unread rows from ResultSet without closing it.- Specified by:
- allRowsin interface- ResultIterator<T>
- Since:
- 3.0
 
- 
hasNextRowpublic boolean hasNextRow()Returns true if there is at least one more record that can be read from the iterator.- Specified by:
- hasNextRowin interface- ResultIterator<T>
 
- 
nextRowDescription copied from interface:ResultIteratorReturns the next result row that is, depending on the query, may be a scalar value, a DataRow, or an Object[] array containing a mix of scalars and DataRows.- Specified by:
- nextRowin interface- ResultIterator<T>
- Since:
- 3.0
 
- 
skipRowpublic void skipRow()Description copied from interface:ResultIteratorGoes past current row. If the row is not needed, this may save some time on data conversion.- Specified by:
- skipRowin interface- ResultIterator<T>
- Since:
- 3.0
 
- 
closeCloses ResultIterator and associated ResultSet. This method must be called explicitly when the user is finished processing the records. Otherwise unused database resources will not be released properly.- Specified by:
- closein interface- AutoCloseable
- Specified by:
- closein interface- ResultIterator<T>
- Throws:
- NoSuchElementException
 
- 
checkNextRowprotected void checkNextRow()Moves internal ResultSet cursor position down one row. Checks if the next row is available.
 
-