public class org.apache.drill.exec.store.kudu.DrillKuduTable extends org.apache.drill.exec.planner.logical.DynamicDrillTable
{
private final org.apache.kudu.Schema schema;
public void <init>(java.lang.String, org.apache.drill.exec.store.kudu.KuduStoragePlugin, org.apache.kudu.Schema, org.apache.drill.exec.store.kudu.KuduScanSpec)
{
org.apache.drill.exec.store.kudu.DrillKuduTable v;
java.lang.String v;
org.apache.drill.exec.store.kudu.KuduStoragePlugin v;
org.apache.kudu.Schema v;
org.apache.drill.exec.store.kudu.KuduScanSpec v;
v := @this: org.apache.drill.exec.store.kudu.DrillKuduTable;
v := @parameter: java.lang.String;
v := @parameter: org.apache.drill.exec.store.kudu.KuduStoragePlugin;
v := @parameter: org.apache.kudu.Schema;
v := @parameter: org.apache.drill.exec.store.kudu.KuduScanSpec;
specialinvoke v.<org.apache.drill.exec.planner.logical.DynamicDrillTable: void <init>(org.apache.drill.exec.store.StoragePlugin,java.lang.String,org.apache.drill.exec.planner.logical.DrillTableSelection)>(v, v, v);
v.<org.apache.drill.exec.store.kudu.DrillKuduTable: org.apache.kudu.Schema schema> = v;
return;
}
public org.apache.calcite.rel.type.RelDataType getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)
{
org.apache.calcite.rel.type.RelDataType v, v, v;
org.apache.calcite.rel.type.RelDataTypeFactory v;
java.util.Iterator v;
org.apache.drill.exec.store.kudu.DrillKuduTable v;
org.apache.kudu.Type v;
org.apache.kudu.Schema v;
java.util.ArrayList v, v;
java.util.List v;
java.lang.Object v;
java.lang.String v;
boolean v, v;
v := @this: org.apache.drill.exec.store.kudu.DrillKuduTable;
v := @parameter: org.apache.calcite.rel.type.RelDataTypeFactory;
v = staticinvoke <org.apache.drill.shaded.guava.com.google.common.collect.Lists: java.util.ArrayList newArrayList()>();
v = staticinvoke <org.apache.drill.shaded.guava.com.google.common.collect.Lists: java.util.ArrayList newArrayList()>();
v = v.<org.apache.drill.exec.store.kudu.DrillKuduTable: org.apache.kudu.Schema schema>;
v = virtualinvoke v.<org.apache.kudu.Schema: java.util.List getColumns()>();
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.kudu.ColumnSchema: java.lang.String getName()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.kudu.ColumnSchema: org.apache.kudu.Type getType()>();
v = specialinvoke v.<org.apache.drill.exec.store.kudu.DrillKuduTable: org.apache.calcite.rel.type.RelDataType getSqlTypeFromKuduType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.kudu.Type)>(v, v);
v = virtualinvoke v.<org.apache.kudu.ColumnSchema: boolean isNullable()>();
v = interfaceinvoke v.<org.apache.calcite.rel.type.RelDataTypeFactory: org.apache.calcite.rel.type.RelDataType createTypeWithNullability(org.apache.calcite.rel.type.RelDataType,boolean)>(v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = interfaceinvoke v.<org.apache.calcite.rel.type.RelDataTypeFactory: org.apache.calcite.rel.type.RelDataType createStructType(java.util.List,java.util.List)>(v, v);
return v;
}
private org.apache.calcite.rel.type.RelDataType getSqlTypeFromKuduType(org.apache.calcite.rel.type.RelDataTypeFactory, org.apache.kudu.Type)
{
org.apache.calcite.rel.type.RelDataTypeFactory v;
org.apache.kudu.Type v;
int[] v;
int v, v;
java.lang.UnsupportedOperationException v;
org.apache.calcite.rel.type.RelDataType v, v, v, v, v, v, v;
org.apache.calcite.sql.type.SqlTypeName v, v, v, v, v, v, v;
org.apache.drill.exec.store.kudu.DrillKuduTable v;
v := @this: org.apache.drill.exec.store.kudu.DrillKuduTable;
v := @parameter: org.apache.calcite.rel.type.RelDataTypeFactory;
v := @parameter: org.apache.kudu.Type;
v = <org.apache.drill.exec.store.kudu.DrillKuduTable$1: int[] $SwitchMap$org$apache$kudu$Type>;
v = virtualinvoke v.<org.apache.kudu.Type: int ordinal()>();
v = v[v];
tableswitch(v)
{
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
case 5: goto label;
case 6: goto label;
case 7: goto label;
case 8: goto label;
case 9: goto label;
case 10: goto label;
default: goto label;
};
label:
v = <org.apache.calcite.sql.type.SqlTypeName: org.apache.calcite.sql.type.SqlTypeName BOOLEAN>;
v = interfaceinvoke v.<org.apache.calcite.rel.type.RelDataTypeFactory: org.apache.calcite.rel.type.RelDataType createSqlType(org.apache.calcite.sql.type.SqlTypeName)>(v);
return v;
label:
v = <org.apache.calcite.sql.type.SqlTypeName: org.apache.calcite.sql.type.SqlTypeName DOUBLE>;
v = interfaceinvoke v.<org.apache.calcite.rel.type.RelDataTypeFactory: org.apache.calcite.rel.type.RelDataType createSqlType(org.apache.calcite.sql.type.SqlTypeName)>(v);
return v;
label:
v = <org.apache.calcite.sql.type.SqlTypeName: org.apache.calcite.sql.type.SqlTypeName FLOAT>;
v = interfaceinvoke v.<org.apache.calcite.rel.type.RelDataTypeFactory: org.apache.calcite.rel.type.RelDataType createSqlType(org.apache.calcite.sql.type.SqlTypeName)>(v);
return v;
label:
v = <org.apache.calcite.sql.type.SqlTypeName: org.apache.calcite.sql.type.SqlTypeName INTEGER>;
v = interfaceinvoke v.<org.apache.calcite.rel.type.RelDataTypeFactory: org.apache.calcite.rel.type.RelDataType createSqlType(org.apache.calcite.sql.type.SqlTypeName)>(v);
return v;
label:
v = <org.apache.calcite.sql.type.SqlTypeName: org.apache.calcite.sql.type.SqlTypeName VARCHAR>;
v = interfaceinvoke v.<org.apache.calcite.rel.type.RelDataTypeFactory: org.apache.calcite.rel.type.RelDataType createSqlType(org.apache.calcite.sql.type.SqlTypeName)>(v);
return v;
label:
v = <org.apache.calcite.sql.type.SqlTypeName: org.apache.calcite.sql.type.SqlTypeName TIMESTAMP>;
v = interfaceinvoke v.<org.apache.calcite.rel.type.RelDataTypeFactory: org.apache.calcite.rel.type.RelDataType createSqlType(org.apache.calcite.sql.type.SqlTypeName)>(v);
return v;
label:
v = <org.apache.calcite.sql.type.SqlTypeName: org.apache.calcite.sql.type.SqlTypeName VARBINARY>;
v = interfaceinvoke v.<org.apache.calcite.rel.type.RelDataTypeFactory: org.apache.calcite.rel.type.RelDataType createSqlType(org.apache.calcite.sql.type.SqlTypeName,int)>(v, 2147483647);
return v;
label:
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>(java.lang.String)>("Unsupported type.");
throw v;
}
}