You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@gearpump.apache.org by ma...@apache.org on 2017/07/09 00:18:29 UTC

[16/20] incubator-gearpump git commit: Add framework configuration

Add framework configuration


Project: http://git-wip-us.apache.org/repos/asf/incubator-gearpump/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-gearpump/commit/83d85783
Tree: http://git-wip-us.apache.org/repos/asf/incubator-gearpump/tree/83d85783
Diff: http://git-wip-us.apache.org/repos/asf/incubator-gearpump/diff/83d85783

Branch: refs/heads/sql
Commit: 83d85783d19a15dfa5be40c2af8ada35ea6758f7
Parents: 00430fd
Author: Buddhi Ayesha <bu...@cse.mrt.ac.lk>
Authored: Sat Jun 17 14:44:06 2017 +0530
Committer: manuzhang <ow...@gmail.com>
Committed: Sun Jul 9 07:52:48 2017 +0800

----------------------------------------------------------------------
 .../utils/CalciteFrameworkConfiguration.java    | 40 ++++++++++++++++++++
 1 file changed, 40 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/83d85783/experiments/sql/src/main/java/org/apache/calcite/utils/CalciteFrameworkConfiguration.java
----------------------------------------------------------------------
diff --git a/experiments/sql/src/main/java/org/apache/calcite/utils/CalciteFrameworkConfiguration.java b/experiments/sql/src/main/java/org/apache/calcite/utils/CalciteFrameworkConfiguration.java
new file mode 100644
index 0000000..eb69db6
--- /dev/null
+++ b/experiments/sql/src/main/java/org/apache/calcite/utils/CalciteFrameworkConfiguration.java
@@ -0,0 +1,40 @@
+package org.apache.calcite.utils;
+
+import org.apache.calcite.config.Lex;
+import org.apache.calcite.plan.Contexts;
+import org.apache.calcite.plan.ConventionTraitDef;
+import org.apache.calcite.plan.RelTraitDef;
+import org.apache.calcite.rel.RelCollationTraitDef;
+import org.apache.calcite.rel.type.RelDataTypeSystem;
+import org.apache.calcite.schema.SchemaPlus;
+import org.apache.calcite.sql.parser.SqlParser;
+import org.apache.calcite.tools.FrameworkConfig;
+import org.apache.calcite.tools.Frameworks;
+import org.apache.calcite.tools.RuleSets;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class CalciteFrameworkConfiguration {
+
+    public static FrameworkConfig getDefaultconfig(SchemaPlus schema) {
+        final List<RelTraitDef> traitDefs = new ArrayList<RelTraitDef>();
+
+        traitDefs.add(ConventionTraitDef.INSTANCE);
+        traitDefs.add(RelCollationTraitDef.INSTANCE);
+
+        FrameworkConfig frameworkConfiguration = Frameworks.newConfigBuilder()
+                .parserConfig(SqlParser.configBuilder()
+                        .setLex(Lex.JAVA)
+                        .build())
+                .defaultSchema(schema)
+                .traitDefs(traitDefs)
+                .context(Contexts.EMPTY_CONTEXT)
+                .ruleSets(RuleSets.ofList())
+                .costFactory(null)
+                .typeSystem(RelDataTypeSystem.DEFAULT)
+                .build();
+
+        return frameworkConfiguration;
+    }
+}