Class TimeGenerator
- java.lang.Object
-
- org.apache.iotdb.tsfile.read.query.timegenerator.TimeGenerator
-
- Direct Known Subclasses:
TsFileTimeGenerator
public abstract class TimeGenerator extends Object
All SingleSeriesExpression involved in a IExpression will be transferred to a TimeGenerator tree whose leaf nodes are all SeriesReaders, The TimeGenerator tree can generate the next timestamp that satisfies the filter condition. Then we use this timestamp to get values in other series that are not included in IExpression
-
-
Field Summary
Fields Modifier and Type Field Description protected NodeoperatorNode
-
Constructor Summary
Constructors Constructor Description TimeGenerator()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected Nodeconstruct(IExpression expression)construct the tree that generate timestamp.voidconstructNode(IExpression expression)protected abstract IBatchReadergenerateNewBatchReader(SingleSeriesExpression expression)abstract FiltergetTimeFilter()ObjectgetValue(Path path)ATTENTION: this method should only be used when there is no `OR` nodeObject[]getValues(Path path)ATTENTION: this method should only be used when there is no `OR` nodebooleanhasNext()booleanhasOrNode()protected abstract booleanisAscending()longnext()
-
-
-
Field Detail
-
operatorNode
protected Node operatorNode
-
-
Method Detail
-
hasNext
public boolean hasNext() throws IOException- Throws:
IOException
-
next
public long next() throws IOException- Throws:
IOException
-
getValues
public Object[] getValues(Path path) throws IOException
ATTENTION: this method should only be used when there is no `OR` node- Throws:
IOException
-
getValue
public Object getValue(Path path) throws IOException
ATTENTION: this method should only be used when there is no `OR` node- Throws:
IOException
-
constructNode
public void constructNode(IExpression expression) throws IOException
- Throws:
IOException
-
construct
protected Node construct(IExpression expression) throws IOException
construct the tree that generate timestamp.- Throws:
IOException
-
generateNewBatchReader
protected abstract IBatchReader generateNewBatchReader(SingleSeriesExpression expression) throws IOException
- Throws:
IOException
-
hasOrNode
public boolean hasOrNode()
-
isAscending
protected abstract boolean isAscending()
-
getTimeFilter
public abstract Filter getTimeFilter()
-
-