/** * {@inheritDoc} */ public T next() { if (!hasNext()) { throw new NoSuchElementException(); } return storeIterator.next(); }
/** * {@inheritDoc} */ public boolean hasNext() { initialize(); return storeIterator.hasNext(); }
persistentIterator = new PersistentIterator<T>( serializationFactory, iterate(nestLevel, beginChunkIndex, chunkCount),
persistentIterator = new PersistentIterator<T>( serializationFactory, iterate(nestLevel, beginChunkIndex, chunkCount),
/** * Creates a new instance. * * @param dbCtx * The database context to use for accessing the database. * @param entityMapper * The database mapper for the entity type. */ public EntityReader(DatabaseContext dbCtx, EntityMapper<T> entityMapper) { // The postgres jdbc driver doesn't appear to allow concurrent result // sets on the same connection so only the last opened result set may be // streamed. The rest of the result sets must be persisted first. entityReader = new PersistentIterator<T>( new SingleClassObjectSerializationFactory(entityMapper.getEntityClass()), new EntityTableReader<T>(dbCtx, entityMapper), "ent", true ); entityTagReader = new PeekableIterator<DbFeature<Tag>>( new PersistentIterator<DbFeature<Tag>>( new SingleClassObjectSerializationFactory(DbFeature.class), new EntityFeatureTableReader<Tag, DbFeature<Tag>>(dbCtx, new TagMapper(entityMapper.getEntityName())), "enttag", true ) ); }
/** * {@inheritDoc} */ public boolean hasNext() { initialize(); return storeIterator.hasNext(); }
/** * {@inheritDoc} */ public T next() { if (!hasNext()) { throw new NoSuchElementException(); } return storeIterator.next(); }
entityReader = new PersistentIterator<T>( new SingleClassObjectSerializationFactory(entityMapper.getEntityClass()), new EntityTableReader<T>(dbCtx, entityMapper, constraintTable), ); entityTagReader = new PeekableIterator<DbFeature<Tag>>( new PersistentIterator<DbFeature<Tag>>( new SingleClassObjectSerializationFactory(DbFeature.class), new EntityFeatureTableReader<Tag, DbFeature<Tag>>(