METAMODEL-1151: Added DataContextFactory for JSON files

Project: http://git-wip-us.apache.org/repos/asf/metamodel/repo
Commit: http://git-wip-us.apache.org/repos/asf/metamodel/commit/7b1edb9e
Tree: http://git-wip-us.apache.org/repos/asf/metamodel/tree/7b1edb9e
Diff: http://git-wip-us.apache.org/repos/asf/metamodel/diff/7b1edb9e

Branch: refs/heads/master
Commit: 7b1edb9e170abe8f9a25e3dfbad0fd4920e2f4b8
Parents: 4ab20a3
Author: Kasper Sørensen <i.am.kasper.soren...@gmail.com>
Authored: Tue Aug 8 20:10:16 2017 -0700
Committer: Kasper Sørensen <i.am.kasper.soren...@gmail.com>
Committed: Tue Aug 8 20:10:16 2017 -0700

----------------------------------------------------------------------
 ....apache.metamodel.factory.DataContextFactory |  2 +-
 ....apache.metamodel.factory.DataContextFactory |  2 +-
 .../metamodel/json/JsonDataContextFactory.java  | 43 ++++++++++++++++++++
 ....apache.metamodel.factory.DataContextFactory |  1 +
 ....apache.metamodel.factory.DataContextFactory |  1 +
 5 files changed, 47 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/metamodel/blob/7b1edb9e/couchdb/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
----------------------------------------------------------------------
diff --git 
a/couchdb/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
 
b/couchdb/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
index cfc189f..d0575ae 100644
--- 
a/couchdb/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
+++ 
b/couchdb/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
@@ -1 +1 @@
-org.apache.metamodel.csv.CouchDbDataContextFactory
\ No newline at end of file
+org.apache.metamodel.couchdb.CouchDbDataContextFactory
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/metamodel/blob/7b1edb9e/hbase/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
----------------------------------------------------------------------
diff --git 
a/hbase/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
 
b/hbase/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
index abf20fd..26bc90f 100644
--- 
a/hbase/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
+++ 
b/hbase/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
@@ -1 +1 @@
-org.apache.metamodel.csv.HbaseDataContextFactory
\ No newline at end of file
+org.apache.metamodel.hbase.HbaseDataContextFactory
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/metamodel/blob/7b1edb9e/json/src/main/java/org/apache/metamodel/json/JsonDataContextFactory.java
----------------------------------------------------------------------
diff --git 
a/json/src/main/java/org/apache/metamodel/json/JsonDataContextFactory.java 
b/json/src/main/java/org/apache/metamodel/json/JsonDataContextFactory.java
new file mode 100644
index 0000000..bf5cd13
--- /dev/null
+++ b/json/src/main/java/org/apache/metamodel/json/JsonDataContextFactory.java
@@ -0,0 +1,43 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.metamodel.json;
+
+import org.apache.metamodel.ConnectionException;
+import org.apache.metamodel.DataContext;
+import org.apache.metamodel.factory.AbstractDataContextFactory;
+import org.apache.metamodel.factory.DataContextProperties;
+import org.apache.metamodel.factory.ResourceFactoryRegistry;
+import org.apache.metamodel.factory.UnsupportedDataContextPropertiesException;
+import org.apache.metamodel.util.Resource;
+
+public class JsonDataContextFactory extends AbstractDataContextFactory {
+
+    @Override
+    protected String getType() {
+        return "json";
+    }
+
+    @Override
+    public DataContext create(DataContextProperties properties, 
ResourceFactoryRegistry resourceFactoryRegistry)
+            throws UnsupportedDataContextPropertiesException, 
ConnectionException {
+        final Resource resource = 
resourceFactoryRegistry.createResource(properties.getResourceProperties());
+        return new JsonDataContext(resource);
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/metamodel/blob/7b1edb9e/json/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
----------------------------------------------------------------------
diff --git 
a/json/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
 
b/json/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
new file mode 100644
index 0000000..938193d
--- /dev/null
+++ 
b/json/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
@@ -0,0 +1 @@
+org.apache.metamodel.json.JsonDataContextFactory
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/metamodel/blob/7b1edb9e/salesforce/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
----------------------------------------------------------------------
diff --git 
a/salesforce/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
 
b/salesforce/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
new file mode 100644
index 0000000..4490d36
--- /dev/null
+++ 
b/salesforce/src/main/resources/META-INF/services/org.apache.metamodel.factory.DataContextFactory
@@ -0,0 +1 @@
+org.apache.metamodel.salesforce.SalesforceDataContextFactory
\ No newline at end of file

Reply via email to