Class AvroDataSetAsProjectableFilterableTable

  • All Implemented Interfaces:
    org.apache.calcite.schema.ProjectableFilterableTable, org.apache.calcite.schema.Table

    @ParametersAreNonnullByDefault
    public final class AvroDataSetAsProjectableFilterableTable
    extends Object
    implements org.apache.calcite.schema.ProjectableFilterableTable
    An avro table when the data is provided by the provided Supplier of CloseableIterable of IndexedRecord
    Author:
    Zoltan Farkas
    • Constructor Detail

      • AvroDataSetAsProjectableFilterableTable

        public AvroDataSetAsProjectableFilterableTable​(AvroDataSet<? extends org.apache.avro.generic.IndexedRecord> dataSet)
    • Method Detail

      • getDataSet

        public AvroDataSet<? extends org.apache.avro.generic.IndexedRecord> getDataSet()
      • getStatistic

        public org.apache.calcite.schema.Statistic getStatistic()
        Overwrite for better statistics.
        Specified by:
        getStatistic in interface org.apache.calcite.schema.Table
      • scan

        public org.apache.calcite.linq4j.Enumerable<@Nullable Object[]> scan​(org.apache.calcite.DataContext root,
                                                                             List<org.apache.calcite.rex.RexNode> filters,
                                                                             @org.checkerframework.checker.nullness.qual.Nullable int[] projection)
        Specified by:
        scan in interface org.apache.calcite.schema.ProjectableFilterableTable
      • getRowType

        public final org.apache.calcite.rel.type.RelDataType getRowType​(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory)
        Specified by:
        getRowType in interface org.apache.calcite.schema.Table
      • getJdbcTableType

        public final org.apache.calcite.schema.Schema.TableType getJdbcTableType()
        Specified by:
        getJdbcTableType in interface org.apache.calcite.schema.Table
      • isRolledUp

        public final boolean isRolledUp​(String column)
        Specified by:
        isRolledUp in interface org.apache.calcite.schema.Table
      • rolledUpColumnValidInsideAgg

        public final boolean rolledUpColumnValidInsideAgg​(String column,
                                                          org.apache.calcite.sql.SqlCall call,
                                                          org.apache.calcite.sql.SqlNode parent,
                                                          org.apache.calcite.config.CalciteConnectionConfig config)
        Specified by:
        rolledUpColumnValidInsideAgg in interface org.apache.calcite.schema.Table
      • getComponentType

        public final org.apache.avro.Schema getComponentType()