Class SchemaAwareUserDefinedTableMacro.ShimTableMacro

java.lang.Object
org.apache.druid.sql.calcite.external.SchemaAwareUserDefinedTableMacro.ShimTableMacro
All Implemented Interfaces:
org.apache.calcite.schema.Function, org.apache.calcite.schema.TableMacro
Enclosing class:
SchemaAwareUserDefinedTableMacro

protected static class SchemaAwareUserDefinedTableMacro.ShimTableMacro extends Object implements org.apache.calcite.schema.TableMacro
Calcite table macro created dynamically to squirrel away the schema provided by the EXTEND clause to allow

 SELECT ... FROM TABLE(fn(arg => value, ...)) (col1 , ...)
 
This macro wraps the actual input table macro, which does the actual work to build the Druid table. This macro also caches the translated table to avoid the need to recompute the table multiple times.
  • Constructor Details

  • Method Details

    • apply

      public org.apache.calcite.schema.TranslatableTable apply(List<?> arguments)
      Specified by:
      apply in interface org.apache.calcite.schema.TableMacro
    • getParameters

      public List<org.apache.calcite.schema.FunctionParameter> getParameters()
      Specified by:
      getParameters in interface org.apache.calcite.schema.Function