Package org.geotools.data
Class FIDFeatureReader
Object
FIDFeatureReader
- All Implemented Interfaces:
- Closeable,- AutoCloseable,- FeatureReader<SimpleFeatureType,- SimpleFeature> 
public class FIDFeatureReader
extends Object
implements FeatureReader<SimpleFeatureType,SimpleFeature> 
Experimental FeatureReader<SimpleFeatureType, SimpleFeature> that always takes the first column of the
 attributeReader as the FeatureID. I want to get this working with postgis, but then will consider other options, for
 those who want featureIDs created automatically. Perhaps a constructor param or a method to say that you would just
 like to have the FeatureReader<SimpleFeatureType, SimpleFeature> increment one for each feature, prepending the
 typeName. I'm also don't really like the one argument constructor defaulting to the xxx typename. I feel that it
 should perhaps take a typename. If people deliberately set to null then we could use xxx or something. ch
 
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.
- Author:
- Ian Schneider, Chris Holmes, TOPP
- 
Field SummaryFields
- 
Constructor SummaryConstructorsConstructorDescriptionFIDFeatureReader(AttributeReader attributeReader, FIDReader fidReader) FIDFeatureReader(AttributeReader attributeReader, FIDReader fidReader, SimpleFeatureType schema) Creates a new instance of AbstractFeatureReader
- 
Method SummaryModifier and TypeMethodDescriptionvoidclose()Release the underlying resources associated with this stream.protected SimpleFeatureTypeReturn the FeatureType this reader has been configured to create.booleanhasNext()Query whether this FeatureReader has another Feature.next()Reads the next Feature in the FeatureReader.protected SimpleFeaturereadFeature(AttributeReader atts) 
- 
Field Details- 
attributes
 
- 
- 
Constructor Details- 
FIDFeatureReaderpublic FIDFeatureReader(AttributeReader attributeReader, FIDReader fidReader, SimpleFeatureType schema) throws SchemaException Creates a new instance of AbstractFeatureReader- Parameters:
- attributeReader- AttributeReader
- fidReader- FIDReader used to ID Features
- schema- FeatureType to use, may be- null
- Throws:
- SchemaException- if we could not determine the correct FeatureType
 
- 
FIDFeatureReaderpublic FIDFeatureReader(AttributeReader attributeReader, FIDReader fidReader) throws SchemaException - Throws:
- SchemaException
 
 
- 
- 
Method Details- 
nextDescription copied from interface:FeatureReaderReads the next Feature in the FeatureReader.- Specified by:
- nextin interface- FeatureReader<SimpleFeatureType,- SimpleFeature> 
- 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
 
- 
createSchema- Throws:
- SchemaException
 
- 
readFeatureprotected SimpleFeature readFeature(AttributeReader atts) throws IllegalAttributeException, IOException - Throws:
- IllegalAttributeException
- IOException
 
- 
closeDescription copied from interface:FeatureReaderRelease the underlying resources associated with this stream.- Specified by:
- closein interface- AutoCloseable
- Specified by:
- closein interface- Closeable
- Specified by:
- closein interface- FeatureReader<SimpleFeatureType,- SimpleFeature> 
- Throws:
- IOException- if an I/O error occurs
 
- 
getFeatureTypeDescription copied from interface:FeatureReaderReturn the FeatureType this reader has been configured to create.- Specified by:
- getFeatureTypein interface- FeatureReader<SimpleFeatureType,- SimpleFeature> 
- Returns:
- the FeatureType of the Features this FeatureReader will create.
 
- 
hasNextDescription copied from interface:FeatureReaderQuery whether this FeatureReader has another Feature.- Specified by:
- hasNextin interface- FeatureReader<SimpleFeatureType,- SimpleFeature> 
- Returns:
- True if there are more Features to be read. In other words, true if calls to next would return a feature rather than throwing an exception.
- Throws:
- IOException- If an error occurs determining if there are more Features.
 
 
-