Package org.apache.calcite.adapter.csv
Class CsvFilterableTable
- java.lang.Object
-
- org.apache.calcite.schema.impl.AbstractTable
-
- org.apache.calcite.adapter.csv.CsvTable
-
- org.apache.calcite.adapter.csv.CsvFilterableTable
-
- All Implemented Interfaces:
FilterableTable
,Table
,Wrapper
public class CsvFilterableTable extends CsvTable implements FilterableTable
Table based on a CSV file that can implement simple filtering.It implements the
FilterableTable
interface, so Calcite gets data by calling thescan(DataContext, List)
method.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.calcite.adapter.csv.CsvTable
CsvTable.Flavor
-
-
Field Summary
-
Fields inherited from class org.apache.calcite.adapter.csv.CsvTable
fieldTypes, protoRowType, source
-
-
Constructor Summary
Constructors Constructor Description CsvFilterableTable(Source source, RelProtoDataType protoRowType)
Creates a CsvFilterableTable.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private boolean
addFilter(RexNode filter, java.lang.Object[] filterValues)
Enumerable<java.lang.Object[]>
scan(DataContext root, java.util.List<RexNode> filters)
Returns an enumerator over the rows in this Table.java.lang.String
toString()
-
Methods inherited from class org.apache.calcite.adapter.csv.CsvTable
getRowType
-
Methods inherited from class org.apache.calcite.schema.impl.AbstractTable
getJdbcTableType, getStatistic, isRolledUp, rolledUpColumnValidInsideAgg, unwrap
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.calcite.schema.Table
getJdbcTableType, getRowType, getStatistic, isRolledUp, rolledUpColumnValidInsideAgg
-
-
-
-
Constructor Detail
-
CsvFilterableTable
public CsvFilterableTable(Source source, RelProtoDataType protoRowType)
Creates a CsvFilterableTable.
-
-
Method Detail
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
scan
public Enumerable<java.lang.Object[]> scan(DataContext root, java.util.List<RexNode> filters)
Description copied from interface:FilterableTable
Returns an enumerator over the rows in this Table. Each row is represented as an array of its column values.The list of filters is mutable. If the table can implement a particular filter, it should remove that filter from the list. If it cannot implement a filter, it should leave it in the list. Any filters remaining will be implemented by the consuming Calcite operator.
- Specified by:
scan
in interfaceFilterableTable
-
addFilter
private boolean addFilter(RexNode filter, java.lang.Object[] filterValues)
-
-