Class CassandraTableScan

All Implemented Interfaces:
Cloneable, CassandraRel, RelOptNode, Hintable, RelNode

public class CassandraTableScan extends TableScan implements CassandraRel
Relational expression representing a scan of a Cassandra collection.
  • Constructor Details

    • CassandraTableScan

      protected CassandraTableScan(RelOptCluster cluster, RelTraitSet traitSet, RelOptTable table, CassandraTable cassandraTable, @Nullable RelDataType projectRowType)
      Creates a CassandraTableScan.
      Parameters:
      cluster - Cluster
      traitSet - Traits
      table - Table
      cassandraTable - Cassandra table
      projectRowType - Fields and types to project; null to project raw row
  • Method Details

    • copy

      public RelNode copy(RelTraitSet traitSet, List<RelNode> inputs)
      Description copied from interface: RelNode
      Creates a copy of this relational expression, perhaps changing traits and inputs.

      Sub-classes with other important attributes are encouraged to create variants of this method with more parameters.

      Specified by:
      copy in interface RelNode
      Overrides:
      copy in class AbstractRelNode
      Parameters:
      traitSet - Trait set
      inputs - Inputs
      Returns:
      Copy of this relational expression, substituting traits and inputs
    • deriveRowType

      public RelDataType deriveRowType()
      Overrides:
      deriveRowType in class TableScan
    • register

      public void register(RelOptPlanner planner)
      Description copied from interface: RelNode
      Registers any special rules specific to this kind of relational expression.

      The planner calls this method this first time that it sees a relational expression of this class. The derived class should call RelOptPlanner.addRule(org.apache.calcite.plan.RelOptRule) for each rule, and then call super.register.

      Specified by:
      register in interface RelNode
      Overrides:
      register in class AbstractRelNode
      Parameters:
      planner - Planner to be used to register additional relational expressions
    • implement

      public void implement(CassandraRel.Implementor implementor)
      Specified by:
      implement in interface CassandraRel