Package org.refcodes.tabular
Interface Records<T>
-
- Type Parameters:
T
- The type managed by theRecords
.
- All Superinterfaces:
java.util.Iterator<Record<? extends T>>
- All Known Subinterfaces:
InputStreamRecords<T>
- All Known Implementing Classes:
CompositeRecordsImpl
,CsvFileRecordsImpl
,CsvInputStreamRecordsImpl
,RecordsImpl
public interface Records<T> extends java.util.Iterator<Record<? extends T>>
A bunch ofRecord
instances is represented by aRecords
instance. As of efficiency reasons, aRecords
instance can be iterated through, returning a singleRecord
within each iteration. This approach is making it possible to query a DB in the background and just hold theRecord
instances being served next in theRecords
instance (in memory).The way how
Records
instances manage their relatedRecord
instances is implementation specific, a plain java implementation might use some kind of collection for storing theRecord
instances (this can get memory intensive and not applicable when working with big data). A DB implementation might retrieve theRecord
instances in blocks one by one, one after the other, by querying the DB accordingly (in terms of "next" result sets).