Class MongoTableScan

  • All Implemented Interfaces:
    java.lang.Cloneable, MongoRel, RelOptNode, RelNode

    public class MongoTableScan
    extends TableScan
    implements MongoRel
    Relational expression representing a scan of a MongoDB collection.

    Additional operations might be applied, using the "find" or "aggregate" methods.

    • Constructor Detail

      • MongoTableScan

        protected MongoTableScan​(RelOptCluster cluster,
                                 RelTraitSet traitSet,
                                 RelOptTable table,
                                 MongoTable mongoTable,
                                 RelDataType projectRowType)
        Creates a MongoTableScan.
        Parameters:
        cluster - Cluster
        traitSet - Traits
        table - Table
        mongoTable - MongoDB table
        projectRowType - Fields and types to project; null to project raw row
    • Method Detail

      • copy

        public RelNode copy​(RelTraitSet traitSet,
                            java.util.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
      • 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