Class ElasticPlanTransformer

java.lang.Object
org.apache.calcite.rel.RelShuttleImpl
org.apache.drill.exec.store.elasticsearch.plan.ElasticPlanTransformer
All Implemented Interfaces:
org.apache.calcite.rel.RelShuttle

public class ElasticPlanTransformer extends org.apache.calcite.rel.RelShuttleImpl
Implementation of RelShuttleImpl that transforms plan to fit Calcite ElasticSearch rel implementor.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
    Implementation of RexShuttle that replaces RexInputRef expressions with ITEM calls to _MAP field.
  • Field Summary

    Fields inherited from class org.apache.calcite.rel.RelShuttleImpl

    stack
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.apache.calcite.rel.RelNode
    visit(org.apache.calcite.rel.core.TableScan other)
    Replaces rowType of RelOptTable by rowType obtained from ElasticsearchTable.
    org.apache.calcite.rel.RelNode
    visit(org.apache.calcite.rel.RelNode other)
     

    Methods inherited from class org.apache.calcite.rel.RelShuttleImpl

    visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visitChild, visitChildren

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ElasticPlanTransformer

      public ElasticPlanTransformer()
  • Method Details

    • visit

      public org.apache.calcite.rel.RelNode visit(org.apache.calcite.rel.core.TableScan other)
      Replaces rowType of RelOptTable by rowType obtained from ElasticsearchTable.
      Specified by:
      visit in interface org.apache.calcite.rel.RelShuttle
      Overrides:
      visit in class org.apache.calcite.rel.RelShuttleImpl
    • visit

      public org.apache.calcite.rel.RelNode visit(org.apache.calcite.rel.RelNode other)
      Specified by:
      visit in interface org.apache.calcite.rel.RelShuttle
      Overrides:
      visit in class org.apache.calcite.rel.RelShuttleImpl