Package gorsat.process
Class BaseStreamIterator
java.lang.Object
gorsat.Iterators.IteratorSource
gorsat.process.BaseStreamIterator
- All Implemented Interfaces:
java.util.Iterator<java.lang.String>
- Direct Known Subclasses:
GorStreamIterator,NorStreamIterator
public abstract class BaseStreamIterator
extends gorsat.Iterators.IteratorSource
Iterator that is based on stream coming from the Supplier provided.
Supports reinitialization of the stream and iterator when setPosition is called.
-
Constructor Summary
Constructors Constructor Description BaseStreamIterator(java.util.function.Supplier<java.util.stream.Stream<java.lang.String>> streamSupplier) -
Method Summary
Modifier and Type Method Description voidclose()java.lang.StringgetHeader()booleanhasNext()protected voidinitIteratorAndHeader()java.lang.Stringnext()java.lang.StringproduceHeaderFromData()voidsetPosition(java.lang.String seekChr, int seekPos)
-
Constructor Details
-
BaseStreamIterator
public BaseStreamIterator(java.util.function.Supplier<java.util.stream.Stream<java.lang.String>> streamSupplier)
-
-
Method Details
-
initIteratorAndHeader
protected void initIteratorAndHeader() -
produceHeaderFromData
public java.lang.String produceHeaderFromData() -
hasNext
public boolean hasNext()- Specified by:
hasNextin interfacejava.util.Iterator<java.lang.String>- Specified by:
hasNextin classgorsat.Iterators.IteratorSource
-
next
public java.lang.String next()- Specified by:
nextin interfacejava.util.Iterator<java.lang.String>- Specified by:
nextin classgorsat.Iterators.IteratorSource
-
setPosition
public void setPosition(java.lang.String seekChr, int seekPos)- Specified by:
setPositionin classgorsat.Iterators.IteratorSource
-
getHeader
public java.lang.String getHeader()- Specified by:
getHeaderin classgorsat.Iterators.IteratorSource
-
close
public void close()- Specified by:
closein classgorsat.Iterators.IteratorSource
-