public class FIDFeatureReader extends Object implements FeatureReader<SimpleFeatureType,SimpleFeature>
This now feels sorta hacky, I'm not sure that I like it, but I'm going to commit as I need to go now and revisit it in a bit. I think the idea of passing in an FIDAttributeReader might be cleaner, and if none is provided then do an auto-increment one. This might then work as the DefaultFeatureReader.
Modifier and Type | Field and Description |
---|---|
protected Object[] |
attributes |
Constructor and Description |
---|
FIDFeatureReader(AttributeReader attributeReader,
FIDReader fidReader) |
FIDFeatureReader(AttributeReader attributeReader,
FIDReader fidReader,
SimpleFeatureType schema)
Creates a new instance of AbstractFeatureReader
|
Modifier and Type | Method and Description |
---|---|
void |
close()
Release the underlying resources associated with this stream.
|
protected SimpleFeatureType |
createSchema() |
SimpleFeatureType |
getFeatureType()
Return the FeatureType this reader has been configured to create.
|
boolean |
hasNext()
Query whether this FeatureReader has another Feature.
|
SimpleFeature |
next()
Reads the next Feature in the FeatureReader.
|
protected SimpleFeature |
readFeature(AttributeReader atts) |
protected final Object[] attributes
public FIDFeatureReader(AttributeReader attributeReader, FIDReader fidReader, SimpleFeatureType schema) throws SchemaException
attributeReader
- AttributeReaderfidReader
- FIDReader used to ID Featuresschema
- FeatureType to use, may be null
SchemaException
- if we could not determine the correct FeatureTypepublic FIDFeatureReader(AttributeReader attributeReader, FIDReader fidReader) throws SchemaException
SchemaException
public SimpleFeature next() throws IOException, IllegalAttributeException, NoSuchElementException
FeatureReader
next
in interface FeatureReader<SimpleFeatureType,SimpleFeature>
IOException
- If an error occurs reading the Feature.IllegalAttributeException
- If the attributes read do not comply with the FeatureType.NoSuchElementException
- If there are no more Features in the Reader.protected SimpleFeatureType createSchema() throws SchemaException
SchemaException
protected SimpleFeature readFeature(AttributeReader atts) throws IllegalAttributeException, IOException
IllegalAttributeException
IOException
public void close() throws IOException
FeatureReader
close
in interface Closeable
close
in interface AutoCloseable
close
in interface FeatureReader<SimpleFeatureType,SimpleFeature>
IOException
- if an I/O error occurspublic SimpleFeatureType getFeatureType()
FeatureReader
getFeatureType
in interface FeatureReader<SimpleFeatureType,SimpleFeature>
public boolean hasNext() throws IOException
FeatureReader
hasNext
in interface FeatureReader<SimpleFeatureType,SimpleFeature>
IOException
- If an error occurs determining if there are more Features.Copyright © 1996–2019 Geotools. All rights reserved.