@Override public boolean hasNext() throws IOException { if (done) return false; pointFeatureCollection = nextFilteredPointFeatureCollection(); return (pointFeatureCollection != null); }
@Override public PointFeatureCCIterator getNestedPointFeatureCollectionIterator() throws IOException { return new PointFeatureCCIteratorFiltered( from.getNestedPointFeatureCollectionIterator(), new Filter()); }
private PointFeatureCC nextFilteredPointFeatureCollection() throws IOException { if ( npfciter == null) return null; if (!npfciter.hasNext()) { npfciter.close(); return null; } PointFeatureCC pdata = npfciter.next(); if (!filter(pdata)) { if (!npfciter.hasNext()) return null; pdata = npfciter.next(); } return pdata; }