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
- Module:
Method Summary |
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)
|
Methods inherited from class Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
attributes
protected final Object[] attributes
FIDFeatureReader
public FIDFeatureReader(AttributeReader attributeReader,
FIDReader fidReader,
SimpleFeatureType schema)
throws SchemaException
- Creates a new instance of AbstractFeatureReader
- Parameters:
attributeReader
- AttributeReaderfidReader
- FIDReader used to ID Featuresschema
- FeatureType to use, may be null
- Throws:
SchemaException
- if we could not determine the correct
FeatureType
FIDFeatureReader
public FIDFeatureReader(AttributeReader attributeReader,
FIDReader fidReader)
throws SchemaException
- Throws:
SchemaException
next
public SimpleFeature next()
throws IOException,
IllegalAttributeException,
NoSuchElementException
- Description copied from interface:
FeatureReader
- Reads the next Feature in the FeatureReader.
- Specified by:
next
in interface FeatureReader<SimpleFeatureType,SimpleFeature>
- Returns:
- The next feature in the reader.
- Throws:
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.
createSchema
protected SimpleFeatureType createSchema()
throws SchemaException
- Throws:
SchemaException
readFeature
protected SimpleFeature readFeature(AttributeReader atts)
throws IllegalAttributeException,
IOException
- Throws:
IllegalAttributeException
IOException
close
public void close()
throws IOException
- Description copied from interface:
FeatureReader
- Release the underlying resources associated with this stream.
- Specified by:
close
in interface FeatureReader<SimpleFeatureType,SimpleFeature>
- Throws:
IOException
- DOCUMENT ME!
getFeatureType
public SimpleFeatureType getFeatureType()
- Description copied from interface:
FeatureReader
- Return the FeatureType this reader has been configured to create.
- Specified by:
getFeatureType
in interface FeatureReader<SimpleFeatureType,SimpleFeature>
- 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 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.
Copyright © 1996-2009 Geotools. All Rights Reserved.