Package org.geotools.data
Class MaxFeatureReader<T extends FeatureType,F extends Feature>
- Object
-
- MaxFeatureReader<T,F>
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
,DelegatingFeatureReader<T,F>
,FeatureReader<T,F>
public class MaxFeatureReader<T extends FeatureType,F extends Feature> extends Object implements DelegatingFeatureReader<T,F>
Basic support for a FeatureReaderthat limits itself to the number of features passed in. - Author:
- Chris Holmes
-
-
Field Summary
Fields Modifier and Type Field Description protected int
counter
protected FeatureReader<T,F>
featureReader
protected int
maxFeatures
-
Constructor Summary
Constructors Constructor Description MaxFeatureReader(FeatureReader<T,F> featureReader, int maxFeatures)
Creates a new instance of MaxFeatureReader
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Release the underlying resources associated with this stream.FeatureReader<T,F>
getDelegate()
T
getFeatureType()
Return the FeatureType this reader has been configured to create.boolean
hasNext()
Query whether this FeatureReader has another Feature.F
next()
Reads the next Feature in the FeatureReader.
-
-
-
Field Detail
-
featureReader
protected final FeatureReader<T extends FeatureType,F extends Feature> featureReader
-
maxFeatures
protected final int maxFeatures
-
counter
protected int counter
-
-
Constructor Detail
-
MaxFeatureReader
public MaxFeatureReader(FeatureReader<T,F> featureReader, int maxFeatures)
Creates a new instance of MaxFeatureReader- Parameters:
featureReader
- FeatureReader being maxed
-
-
Method Detail
-
getDelegate
public FeatureReader<T,F> getDelegate()
- Specified by:
getDelegate
in interfaceDelegatingFeatureReader<T extends FeatureType,F extends Feature>
- Returns:
- The delegate feature reader.
-
next
public F next() throws IOException, IllegalAttributeException, NoSuchElementException
Description copied from interface:FeatureReader
Reads the next Feature in the FeatureReader.- Specified by:
next
in interfaceFeatureReader<T extends FeatureType,F extends Feature>
- Returns:
- The next feature in the reader.
- Throws:
IOException
- If an error occurs reading the Feature.NoSuchElementException
- If there are no more Features in the Reader.IllegalAttributeException
-
close
public void close() throws IOException
Description copied from interface:FeatureReader
Release the underlying resources associated with this stream.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in interfaceFeatureReader<T extends FeatureType,F extends Feature>
- Throws:
IOException
- if an I/O error occurs
-
getFeatureType
public T getFeatureType()
Description copied from interface:FeatureReader
Return the FeatureType this reader has been configured to create.- Specified by:
getFeatureType
in interfaceFeatureReader<T extends FeatureType,F extends Feature>
- Returns:
- the FeatureType of the Features this FeatureReader will create.
-
hasNext
public boolean hasNext() throws IOException
Description copied from interface:FeatureReader
Query whether this FeatureReader has another Feature.- Specified by:
hasNext
in interfaceFeatureReader<T extends FeatureType,F extends Feature>
- Returns:
true
if the featureReader has not passed the max and still has more features.- Throws:
IOException
- If the reader we are filtering encounters a problem
-
-