You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by lu...@apache.org on 2015/01/15 13:26:32 UTC

[16/50] [abbrv] incubator-kylin git commit: fix CI

fix CI


Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/484ec788
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/484ec788
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/484ec788

Branch: refs/heads/inverted-index
Commit: 484ec7886424c07c5fc2df6cba2de67c9a613ebd
Parents: f8a2b37
Author: qianhao.zhou <qi...@ebay.com>
Authored: Wed Jan 14 11:04:01 2015 +0800
Committer: qianhao.zhou <qi...@ebay.com>
Committed: Wed Jan 14 11:04:01 2015 +0800

----------------------------------------------------------------------
 common/pom.xml                                              | 7 ++++++-
 .../kylinolap/metadata/realization/RealizationRegistry.java | 9 ++++++---
 2 files changed, 12 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/484ec788/common/pom.xml
----------------------------------------------------------------------
diff --git a/common/pom.xml b/common/pom.xml
index 413a7c8..463cbec 100644
--- a/common/pom.xml
+++ b/common/pom.xml
@@ -100,10 +100,15 @@
             </exclusions>
         </dependency>
         <dependency>
+            <groupId>org.reflections</groupId>
+            <artifactId>reflections</artifactId>
+            <version>0.9.9-RC1</version>
+        </dependency>
+        <dependency>
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-compress</artifactId>
             <version>1.2</version>
         </dependency>
     </dependencies>
 </project>
-
+

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/484ec788/metadata/src/main/java/com/kylinolap/metadata/realization/RealizationRegistry.java
----------------------------------------------------------------------
diff --git a/metadata/src/main/java/com/kylinolap/metadata/realization/RealizationRegistry.java b/metadata/src/main/java/com/kylinolap/metadata/realization/RealizationRegistry.java
index 6444862..9827bd5 100644
--- a/metadata/src/main/java/com/kylinolap/metadata/realization/RealizationRegistry.java
+++ b/metadata/src/main/java/com/kylinolap/metadata/realization/RealizationRegistry.java
@@ -3,12 +3,16 @@ package com.kylinolap.metadata.realization;
 import com.google.common.collect.*;
 import com.kylinolap.common.KylinConfig;
 
+import org.reflections.Reflections;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import sun.jvm.hotspot.oops.InstanceKlass;
+import sun.jvm.hotspot.tools.jcore.ClassFilter;
 
 import java.io.IOException;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.ConcurrentHashMap;
 
 /**
@@ -59,11 +63,10 @@ public class RealizationRegistry {
         providers = Maps.newConcurrentMap();
         
         // use reflection to load providers
-        List<String> realizationProviders = Lists.newArrayList("com.kylinolap.cube.CubeManager","com.kylinolap.invertedindex.IIManager");
+        final Set<Class<? extends IRealizationProvider>> realizationProviders = new Reflections("").getSubTypesOf(IRealizationProvider.class);
         List<Throwable> es = Lists.newArrayList();
-        for (String clsName : realizationProviders) {
+        for (Class<? extends IRealizationProvider> cls : realizationProviders) {
             try {
-                Class<?> cls = Class.forName(clsName);
                 IRealizationProvider p = (IRealizationProvider) cls.getMethod("getInstance", KylinConfig.class).invoke(null, config);
                 providers.put(p.getRealizationType(), p);