public class org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema extends org.apache.drill.exec.store.AbstractSchema
{
private final org.apache.calcite.adapter.cassandra.CassandraSchema delegatingSchema;
private final org.apache.drill.exec.store.StoragePlugin plugin;
private final java.util.Map tables;
public void <init>(java.lang.String, org.apache.drill.exec.store.StoragePlugin, org.apache.calcite.adapter.cassandra.CassandraSchema)
{
org.apache.calcite.adapter.cassandra.CassandraSchema v;
java.util.List v;
org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema v;
org.apache.drill.exec.store.StoragePlugin v;
java.util.concurrent.ConcurrentHashMap v;
java.lang.String v;
v := @this: org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema;
v := @parameter: java.lang.String;
v := @parameter: org.apache.drill.exec.store.StoragePlugin;
v := @parameter: org.apache.calcite.adapter.cassandra.CassandraSchema;
v = staticinvoke <java.util.Collections: java.util.List emptyList()>();
specialinvoke v.<org.apache.drill.exec.store.AbstractSchema: void <init>(java.util.List,java.lang.String)>(v, v);
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>()>();
v.<org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema: java.util.Map tables> = v;
v.<org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema: org.apache.drill.exec.store.StoragePlugin plugin> = v;
v.<org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema: org.apache.calcite.adapter.cassandra.CassandraSchema delegatingSchema> = v;
return;
}
public java.lang.String getTypeName()
{
org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema v;
v := @this: org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema;
return "cassandra";
}
public org.apache.calcite.schema.Table getTable(java.lang.String)
{
org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema v;
java.util.Map v;
java.lang.Object v;
java.lang.String v;
java.util.function.Function v;
v := @this: org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema;
v := @parameter: java.lang.String;
v = v.<org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema: java.util.Map tables>;
v = staticinvoke <org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema$getDrillTable__13: java.util.function.Function bootstrap$(org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema)>(v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object computeIfAbsent(java.lang.Object,java.util.function.Function)>(v, v);
return v;
}
public org.apache.drill.exec.planner.logical.DrillTable getDrillTable(java.lang.String)
{
org.apache.calcite.adapter.cassandra.CassandraSchema v;
org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema v;
org.apache.drill.exec.store.StoragePlugin v;
org.apache.calcite.schema.Table v;
java.lang.String v;
org.apache.drill.exec.store.cassandra.schema.CassandraDynamicTable v;
v := @this: org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema;
v := @parameter: java.lang.String;
v = v.<org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema: org.apache.calcite.adapter.cassandra.CassandraSchema delegatingSchema>;
v = virtualinvoke v.<org.apache.calcite.adapter.cassandra.CassandraSchema: org.apache.calcite.schema.Table getTable(java.lang.String)>(v);
if v != null goto label;
v = null;
goto label;
label:
v = new org.apache.drill.exec.store.cassandra.schema.CassandraDynamicTable;
v = v.<org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema: org.apache.drill.exec.store.StoragePlugin plugin>;
specialinvoke v.<org.apache.drill.exec.store.cassandra.schema.CassandraDynamicTable: void <init>(org.apache.drill.exec.store.StoragePlugin,java.lang.String,org.apache.drill.exec.planner.logical.DrillTableSelection,org.apache.calcite.adapter.cassandra.CassandraTable)>(v, v, null, v);
label:
return v;
}
public java.util.Set getTableNames()
{
java.util.Set v;
org.apache.calcite.adapter.cassandra.CassandraSchema v;
org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema v;
v := @this: org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema;
v = v.<org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema: org.apache.calcite.adapter.cassandra.CassandraSchema delegatingSchema>;
v = virtualinvoke v.<org.apache.calcite.adapter.cassandra.CassandraSchema: java.util.Set getTableNames()>();
return v;
}
public org.apache.calcite.linq4j.tree.Expression getExpression(org.apache.calcite.schema.SchemaPlus, java.lang.String)
{
org.apache.calcite.schema.SchemaPlus v;
org.apache.calcite.linq4j.tree.MethodCallExpression v;
org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema v;
java.lang.String v;
org.apache.calcite.util.BuiltInMethod v;
org.apache.calcite.linq4j.tree.ParameterExpression v;
java.lang.reflect.Method v;
org.apache.calcite.linq4j.tree.Expression[] v;
v := @this: org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema;
v := @parameter: org.apache.calcite.schema.SchemaPlus;
v := @parameter: java.lang.String;
v = <org.apache.calcite.DataContext: org.apache.calcite.linq4j.tree.ParameterExpression ROOT>;
v = <org.apache.calcite.util.BuiltInMethod: org.apache.calcite.util.BuiltInMethod DATA_CONTEXT_GET_ROOT_SCHEMA>;
v = v.<org.apache.calcite.util.BuiltInMethod: java.lang.reflect.Method method>;
v = newarray (org.apache.calcite.linq4j.tree.Expression)[0];
v = staticinvoke <org.apache.calcite.linq4j.tree.Expressions: org.apache.calcite.linq4j.tree.MethodCallExpression call(org.apache.calcite.linq4j.tree.Expression,java.lang.reflect.Method,org.apache.calcite.linq4j.tree.Expression[])>(v, v, v);
return v;
}
public org.apache.calcite.adapter.cassandra.CassandraSchema getDelegatingSchema()
{
org.apache.calcite.adapter.cassandra.CassandraSchema v;
org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema v;
v := @this: org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema;
v = v.<org.apache.drill.exec.store.cassandra.schema.CassandraDrillSchema: org.apache.calcite.adapter.cassandra.CassandraSchema delegatingSchema>;
return v;
}
}