Class GeodeToEnumerableConverter
- java.lang.Object
-
- org.apache.calcite.rel.AbstractRelNode
-
- org.apache.calcite.rel.SingleRel
-
- org.apache.calcite.rel.convert.ConverterImpl
-
- org.apache.calcite.adapter.geode.rel.GeodeToEnumerableConverter
-
- All Implemented Interfaces:
java.lang.Cloneable
,EnumerableRel
,RelOptNode
,Converter
,RelNode
public class GeodeToEnumerableConverter extends ConverterImpl implements EnumerableRel
Relational expression representing a scan of a table in a Geode data source.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.calcite.adapter.enumerable.EnumerableRel
EnumerableRel.Prefer, EnumerableRel.Result
-
Nested classes/interfaces inherited from interface org.apache.calcite.rel.RelNode
RelNode.Context
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.reflect.Method
GEODE_QUERY_METHOD
Reference to the methodGeodeTable.GeodeQueryable.query(java.util.List<java.util.Map.Entry<java.lang.String, java.lang.Class>>, java.util.List<java.util.Map.Entry<java.lang.String, java.lang.String>>, java.util.List<java.util.Map.Entry<java.lang.String, java.lang.String>>, java.util.List<java.lang.String>, java.util.List<java.lang.String>, java.util.List<java.lang.String>, java.lang.Long)
, used in theExpression
.-
Fields inherited from class org.apache.calcite.rel.convert.ConverterImpl
inTraits, traitDef
-
Fields inherited from class org.apache.calcite.rel.AbstractRelNode
digest, id, rowType, traitSet
-
Fields inherited from interface org.apache.calcite.adapter.enumerable.EnumerableRel
FILTER_FACTORY, PROJECT_FACTORY
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
GeodeToEnumerableConverter(RelOptCluster cluster, RelTraitSet traitSet, RelNode input)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description RelOptCost
computeSelfCost(RelOptPlanner planner, RelMetadataQuery mq)
Returns the cost of this plan (not including children).private static <T> MethodCallExpression
constantArrayList(java.util.List<T> values, java.lang.Class clazz)
E.g.private static <T> java.util.List<Expression>
constantList(java.util.List<T> values)
E.g.RelNode
copy(RelTraitSet traitSet, java.util.List<RelNode> inputs)
Creates a copy of this relational expression, perhaps changing traits and inputs.EnumerableRel.Result
implement(EnumerableRelImplementor implementor, EnumerableRel.Prefer pref)
Creates a plan for this expression according to a calling convention.private static java.util.List<java.util.Map.Entry<java.lang.String,java.lang.String>>
toListMapPairs(java.util.Map<java.lang.String,java.lang.String> map)
-
Methods inherited from class org.apache.calcite.rel.convert.ConverterImpl
cannotImplement, getInputTraits, getTraitDef
-
Methods inherited from class org.apache.calcite.rel.SingleRel
childrenAccept, deriveRowType, estimateRowCount, explainTerms, getInput, getInputs, replaceInput
-
Methods inherited from class org.apache.calcite.rel.AbstractRelNode
accept, accept, collectVariablesSet, collectVariablesUsed, computeDigest, computeSelfCost, explain, getChildExps, getCluster, getCollationList, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getQuery, getRelTypeName, getRows, getRowType, getTable, getTraitSet, getVariablesSet, getVariablesStopped, isDistinct, isKey, isValid, isValid, metadata, onRegister, recomputeDigest, register, sole, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.calcite.rel.RelNode
accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, computeSelfCost, estimateRowCount, explain, getChildExps, getCollationList, getConvention, getCorrelVariable, getExpectedInputRowType, getInput, getInputs, getQuery, getRelTypeName, getRows, getRowType, getTable, getVariablesSet, getVariablesStopped, isDistinct, isKey, isValid, isValid, metadata, onRegister, recomputeDigest, register, replaceInput
-
Methods inherited from interface org.apache.calcite.plan.RelOptNode
getCluster, getDescription, getDigest, getId, getTraitSet
-
-
-
-
Field Detail
-
GEODE_QUERY_METHOD
private static final java.lang.reflect.Method GEODE_QUERY_METHOD
Reference to the methodGeodeTable.GeodeQueryable.query(java.util.List<java.util.Map.Entry<java.lang.String, java.lang.Class>>, java.util.List<java.util.Map.Entry<java.lang.String, java.lang.String>>, java.util.List<java.util.Map.Entry<java.lang.String, java.lang.String>>, java.util.List<java.lang.String>, java.util.List<java.lang.String>, java.util.List<java.lang.String>, java.lang.Long)
, used in theExpression
.
-
-
Constructor Detail
-
GeodeToEnumerableConverter
protected GeodeToEnumerableConverter(RelOptCluster cluster, RelTraitSet traitSet, RelNode input)
-
-
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 interfaceRelNode
- Overrides:
copy
in classAbstractRelNode
- Parameters:
traitSet
- Trait setinputs
- Inputs- Returns:
- Copy of this relational expression, substituting traits and inputs
-
computeSelfCost
public RelOptCost computeSelfCost(RelOptPlanner planner, RelMetadataQuery mq)
Description copied from interface:RelNode
Returns the cost of this plan (not including children). The base implementation throws an error; derived classes should override.NOTE jvs 29-Mar-2006: Don't call this method directly. Instead, use
RelMetadataQuery.getNonCumulativeCost(org.apache.calcite.rel.RelNode)
, which gives plugins a chance to override the rel's default ideas about cost.- Specified by:
computeSelfCost
in interfaceRelNode
- Overrides:
computeSelfCost
in classConverterImpl
- Parameters:
planner
- Planner for cost calculationmq
- Metadata query- Returns:
- Cost of this plan (not including children)
-
implement
public EnumerableRel.Result implement(EnumerableRelImplementor implementor, EnumerableRel.Prefer pref)
Creates a plan for this expression according to a calling convention.- Specified by:
implement
in interfaceEnumerableRel
- Parameters:
implementor
- GeodeImplementContextpref
- Preferred representation for rows in result expression- Returns:
- Plan for this expression according to a calling convention
-
toListMapPairs
private static java.util.List<java.util.Map.Entry<java.lang.String,java.lang.String>> toListMapPairs(java.util.Map<java.lang.String,java.lang.String> map)
-
constantArrayList
private static <T> MethodCallExpression constantArrayList(java.util.List<T> values, java.lang.Class clazz)
E.g.constantArrayList("x", "y")
returns "Arrays.asList('x', 'y')".
-
constantList
private static <T> java.util.List<Expression> constantList(java.util.List<T> values)
E.g.constantList("x", "y")
returns{ConstantExpression("x"), ConstantExpression("y")}
.
-
-