Repository: calcite
Updated Branches:
  refs/heads/master 3e587afb0 -> d407395e0


http://git-wip-us.apache.org/repos/asf/calcite/blob/d407395e/mongodb/src/main/java/org/apache/calcite/adapter/mongodb/MongoToEnumerableConverterRule.java
----------------------------------------------------------------------
diff --git 
a/mongodb/src/main/java/org/apache/calcite/adapter/mongodb/MongoToEnumerableConverterRule.java
 
b/mongodb/src/main/java/org/apache/calcite/adapter/mongodb/MongoToEnumerableConverterRule.java
index b66ebb2..fb2221e 100644
--- 
a/mongodb/src/main/java/org/apache/calcite/adapter/mongodb/MongoToEnumerableConverterRule.java
+++ 
b/mongodb/src/main/java/org/apache/calcite/adapter/mongodb/MongoToEnumerableConverterRule.java
@@ -20,6 +20,10 @@ import 
org.apache.calcite.adapter.enumerable.EnumerableConvention;
 import org.apache.calcite.plan.RelTraitSet;
 import org.apache.calcite.rel.RelNode;
 import org.apache.calcite.rel.convert.ConverterRule;
+import org.apache.calcite.rel.core.RelFactories;
+import org.apache.calcite.tools.RelBuilderFactory;
+
+import com.google.common.base.Predicates;
 
 /**
  * Rule to convert a relational expression from
@@ -27,10 +31,16 @@ import org.apache.calcite.rel.convert.ConverterRule;
  */
 public class MongoToEnumerableConverterRule extends ConverterRule {
   public static final ConverterRule INSTANCE =
-      new MongoToEnumerableConverterRule();
+      new MongoToEnumerableConverterRule(RelFactories.LOGICAL_BUILDER);
 
-  private MongoToEnumerableConverterRule() {
-    super(RelNode.class, MongoRel.CONVENTION, EnumerableConvention.INSTANCE,
+  /**
+   * Creates a MongoToEnumerableConverterRule.
+   *
+   * @param relBuilderFactory Builder for relational expressions
+   */
+  public MongoToEnumerableConverterRule(RelBuilderFactory relBuilderFactory) {
+    super(RelNode.class, Predicates.<RelNode>alwaysTrue(), MongoRel.CONVENTION,
+        EnumerableConvention.INSTANCE, relBuilderFactory,
         "MongoToEnumerableConverterRule");
   }
 

http://git-wip-us.apache.org/repos/asf/calcite/blob/d407395e/spark/src/main/java/org/apache/calcite/adapter/spark/EnumerableToSparkConverterRule.java
----------------------------------------------------------------------
diff --git 
a/spark/src/main/java/org/apache/calcite/adapter/spark/EnumerableToSparkConverterRule.java
 
b/spark/src/main/java/org/apache/calcite/adapter/spark/EnumerableToSparkConverterRule.java
index 418c332..d9f2b9e 100644
--- 
a/spark/src/main/java/org/apache/calcite/adapter/spark/EnumerableToSparkConverterRule.java
+++ 
b/spark/src/main/java/org/apache/calcite/adapter/spark/EnumerableToSparkConverterRule.java
@@ -20,6 +20,10 @@ import 
org.apache.calcite.adapter.enumerable.EnumerableConvention;
 import org.apache.calcite.plan.RelTraitSet;
 import org.apache.calcite.rel.RelNode;
 import org.apache.calcite.rel.convert.ConverterRule;
+import org.apache.calcite.rel.core.RelFactories;
+import org.apache.calcite.tools.RelBuilderFactory;
+
+import com.google.common.base.Predicates;
 
 /**
  * Rule to convert a relational expression from
@@ -28,11 +32,16 @@ import org.apache.calcite.rel.convert.ConverterRule;
  */
 public class EnumerableToSparkConverterRule extends ConverterRule {
   public static final EnumerableToSparkConverterRule INSTANCE =
-      new EnumerableToSparkConverterRule();
+      new EnumerableToSparkConverterRule(RelFactories.LOGICAL_BUILDER);
 
-  private EnumerableToSparkConverterRule() {
-    super(
-        RelNode.class, EnumerableConvention.INSTANCE, SparkRel.CONVENTION,
+  /**
+   * Creates an EnumerableToSparkConverterRule.
+   *
+   * @param relBuilderFactory Builder for relational expressions
+   */
+  public EnumerableToSparkConverterRule(RelBuilderFactory relBuilderFactory) {
+    super(RelNode.class, Predicates.<RelNode>alwaysTrue(),
+        EnumerableConvention.INSTANCE, SparkRel.CONVENTION, relBuilderFactory,
         "EnumerableToSparkConverterRule");
   }
 

http://git-wip-us.apache.org/repos/asf/calcite/blob/d407395e/spark/src/main/java/org/apache/calcite/adapter/spark/JdbcToSparkConverterRule.java
----------------------------------------------------------------------
diff --git 
a/spark/src/main/java/org/apache/calcite/adapter/spark/JdbcToSparkConverterRule.java
 
b/spark/src/main/java/org/apache/calcite/adapter/spark/JdbcToSparkConverterRule.java
index be60a08..f8c30ee 100644
--- 
a/spark/src/main/java/org/apache/calcite/adapter/spark/JdbcToSparkConverterRule.java
+++ 
b/spark/src/main/java/org/apache/calcite/adapter/spark/JdbcToSparkConverterRule.java
@@ -20,6 +20,9 @@ import org.apache.calcite.adapter.jdbc.JdbcConvention;
 import org.apache.calcite.plan.RelTraitSet;
 import org.apache.calcite.rel.RelNode;
 import org.apache.calcite.rel.convert.ConverterRule;
+import org.apache.calcite.tools.RelBuilderFactory;
+
+import com.google.common.base.Predicates;
 
 /**
  * Rule to convert a relational expression from
@@ -27,11 +30,11 @@ import org.apache.calcite.rel.convert.ConverterRule;
  * {@link org.apache.calcite.adapter.spark.SparkRel#CONVENTION Spark 
convention}.
  */
 public class JdbcToSparkConverterRule extends ConverterRule {
-  JdbcToSparkConverterRule(JdbcConvention out) {
-    super(
-        RelNode.class,
-        out, SparkRel.CONVENTION,
-        "JdbcToSparkConverterRule");
+  /** Creates a JdbcToSparkConverterRule. */
+  public JdbcToSparkConverterRule(JdbcConvention out,
+      RelBuilderFactory relBuilderFactory) {
+    super(RelNode.class, Predicates.<RelNode>alwaysTrue(), out,
+        SparkRel.CONVENTION, relBuilderFactory, "JdbcToSparkConverterRule");
   }
 
   @Override public RelNode convert(RelNode rel) {

http://git-wip-us.apache.org/repos/asf/calcite/blob/d407395e/splunk/src/main/java/org/apache/calcite/adapter/splunk/SplunkPushDownRule.java
----------------------------------------------------------------------
diff --git 
a/splunk/src/main/java/org/apache/calcite/adapter/splunk/SplunkPushDownRule.java
 
b/splunk/src/main/java/org/apache/calcite/adapter/splunk/SplunkPushDownRule.java
index 491e340..913f194 100644
--- 
a/splunk/src/main/java/org/apache/calcite/adapter/splunk/SplunkPushDownRule.java
+++ 
b/splunk/src/main/java/org/apache/calcite/adapter/splunk/SplunkPushDownRule.java
@@ -22,6 +22,7 @@ import org.apache.calcite.plan.RelOptRule;
 import org.apache.calcite.plan.RelOptRuleCall;
 import org.apache.calcite.plan.RelOptRuleOperand;
 import org.apache.calcite.rel.RelNode;
+import org.apache.calcite.rel.core.RelFactories;
 import org.apache.calcite.rel.logical.LogicalFilter;
 import org.apache.calcite.rel.logical.LogicalProject;
 import org.apache.calcite.rel.type.RelDataType;
@@ -36,6 +37,7 @@ import org.apache.calcite.sql.SqlKind;
 import org.apache.calcite.sql.SqlOperator;
 import org.apache.calcite.sql.fun.SqlStdOperatorTable;
 import org.apache.calcite.sql.type.SqlTypeName;
+import org.apache.calcite.tools.RelBuilderFactory;
 import org.apache.calcite.util.NlsString;
 import org.apache.calcite.util.Pair;
 
@@ -72,45 +74,44 @@ public class SplunkPushDownRule
 
   public static final SplunkPushDownRule PROJECT_ON_FILTER =
       new SplunkPushDownRule(
-          operand(
-              LogicalProject.class,
-              operand(
-                  LogicalFilter.class,
-                  operand(
-                      LogicalProject.class,
+          operand(LogicalProject.class,
+              operand(LogicalFilter.class,
+                  operand(LogicalProject.class,
                       operand(SplunkTableScan.class, none())))),
-          "proj on filter on proj");
+          RelFactories.LOGICAL_BUILDER, "proj on filter on proj");
 
   public static final SplunkPushDownRule FILTER_ON_PROJECT =
       new SplunkPushDownRule(
-          operand(
-              LogicalFilter.class,
-              operand(
-                  LogicalProject.class,
+          operand(LogicalFilter.class,
+              operand(LogicalProject.class,
                   operand(SplunkTableScan.class, none()))),
-          "filter on proj");
+          RelFactories.LOGICAL_BUILDER, "filter on proj");
 
   public static final SplunkPushDownRule FILTER =
       new SplunkPushDownRule(
-          operand(
-              LogicalFilter.class, operand(SplunkTableScan.class, none())),
-          "filter");
+          operand(LogicalFilter.class,
+              operand(SplunkTableScan.class, none())),
+          RelFactories.LOGICAL_BUILDER, "filter");
 
   public static final SplunkPushDownRule PROJECT =
       new SplunkPushDownRule(
-          operand(
-              LogicalProject.class,
+          operand(LogicalProject.class,
               operand(SplunkTableScan.class, none())),
-          "proj");
+          RelFactories.LOGICAL_BUILDER, "proj");
 
-  /** Creates a SplunkPushDownRule. */
+  @Deprecated // to be removed before 2.0
   protected SplunkPushDownRule(RelOptRuleOperand rule, String id) {
-    super(rule, "SplunkPushDownRule: " + id);
+    this(rule, RelFactories.LOGICAL_BUILDER, id);
+  }
+
+  /** Creates a SplunkPushDownRule. */
+  protected SplunkPushDownRule(RelOptRuleOperand rule,
+      RelBuilderFactory relBuilderFactory, String id) {
+    super(rule, relBuilderFactory, "SplunkPushDownRule: " + id);
   }
 
   // ~ Methods --------------------------------------------------------------
 
-  // implement RelOptRule
   public void onMatch(RelOptRuleCall call) {
     LOGGER.debug(description);
 

Reply via email to