public class IteratorRowSequence extends java.lang.Object implements RowSequence
RowSequence
based on an Iterator which
returns table rows in sequence. The iterator's next method may
throw an exception of the (unchecked) type
IteratorRowSequence.PackagedIOException
if it needs to throw something (Iterator.next
is not declared
to throw any checked exceptions).Modifier and Type | Class and Description |
---|---|
static class |
IteratorRowSequence.PackagedIOException
Unchecked exception class to be used for smuggling
IOException s out of
the next method of an Iterator for use by
IteratorRowSequence |
Constructor and Description |
---|
IteratorRowSequence(java.util.Iterator<java.lang.Object[]> rowIt)
Constructs a new RowSequence from an Iterator.
|
Modifier and Type | Method and Description |
---|---|
void |
close()
Indicates that this sequence will not be required any more.
|
java.lang.Object |
getCell(int icol)
Returns the contents of a cell in the current row.
|
java.lang.Object[] |
getRow()
Returns the contents of the current table row, as an array
with the same number of elements as there are columns in this
table.
|
boolean |
next()
Attempts to advance the current row to the next one.
|
public IteratorRowSequence(java.util.Iterator<java.lang.Object[]> rowIt)
next
method must
be an Object[]
array representing the data in the next
table row (it must have one element for each column).
The next
method may throw
IteratorRowSequence.PackagedIOException
s.rowIt
- iterator over the rowspublic boolean next() throws java.io.IOException
RowSequence
true
is returned the attempt has been successful,
and if false
is returned there are no more rows in this
sequence.
Since the initial position of a RowSequence is before the first row,
this method must be called before current row data
can be accessed using the
RowSequence.getCell(int)
or RowSequence.getRow()
methods.next
in interface RowSequence
next
in interface Sequence
true
iff this sequence has been advanced to the
next rowjava.io.IOException
- if there is some errorpublic java.lang.Object[] getRow()
RowSequence
next
has not yet been called).getRow
in interface RowData
getRow
in interface RowSequence
irow
public java.lang.Object getCell(int icol)
RowSequence
getColumnInfo(icol).getContentClass()
.
An unchecked exception will be thrown if there is no current
row (next
has not yet been called).getCell
in interface RowData
getCell
in interface RowSequence
icol
- column indexicol
in the current rowpublic void close()
RowSequence
close
is undefined.close
in interface java.io.Closeable
close
in interface java.lang.AutoCloseable
close
in interface RowSequence