T
- The feature type this codec readspublic abstract class AsciiFeatureCodec<T extends Feature> extends AbstractFeatureCodec<T,LineIterator>
Modifier | Constructor and Description |
---|---|
protected |
AsciiFeatureCodec(Class<T> myClass) |
Modifier and Type | Method and Description |
---|---|
void |
close(LineIterator lineIterator)
Adapter method that closes the provided
SOURCE . |
T |
decode(LineIterator lineIterator)
Convenience method.
|
abstract T |
decode(String s) |
boolean |
isDone(LineIterator lineIterator)
Adapter method that assesses whether the provided
SOURCE has more data. |
LocationAware |
makeIndexableSourceFromStream(InputStream bufferedInputStream)
Generates a
LocationAware reader of type SOURCE . |
LineIterator |
makeSourceFromStream(InputStream bufferedInputStream)
Generates a reader of type
SOURCE appropriate for use by this codec from the generic input stream. |
abstract Object |
readActualHeader(LineIterator reader)
Read and return the header, or null if there is no header.
|
FeatureCodecHeader |
readHeader(LineIterator lineIterator)
Read and return the header, or null if there is no header.
|
decodeLoc, getFeatureType
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
canDecode
public void close(LineIterator lineIterator)
FeatureCodec
SOURCE
.public boolean isDone(LineIterator lineIterator)
FeatureCodec
SOURCE
has more data. True if it does, false otherwise.public LocationAware makeIndexableSourceFromStream(InputStream bufferedInputStream)
FeatureCodec
LocationAware
reader of type SOURCE
. Like FeatureCodec.makeSourceFromStream(java.io.InputStream)
, except
the LocationAware
compatibility is required for creating indexes.
Implementers of this method must return a type that is both LocationAware
as well as SOURCE
. Note that this
requirement cannot be enforced via the method signature due to limitations in Java's generic typing system. Instead, consumers
should cast the call result into a SOURCE
when applicable.public LineIterator makeSourceFromStream(InputStream bufferedInputStream)
FeatureCodec
SOURCE
appropriate for use by this codec from the generic input stream. Implementers should
assume the stream is buffered.public T decode(LineIterator lineIterator)
Iterator.next()
in implementing classes and, instead, have them implement
decode(String)
.lineIterator
- the input stream from which to decode the next recordpublic FeatureCodecHeader readHeader(LineIterator lineIterator) throws IOException
FeatureCodec
SOURCE
as needed to parse the header, and no
more. Otherwise, data that might otherwise be fed into parsing a Feature
may be lost.lineIterator
- the source from which to decode the headerIOException
public abstract Object readActualHeader(LineIterator reader)