You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by sy...@apache.org on 2015/10/24 00:50:00 UTC

[40/50] [abbrv] hbase git commit: HBASE-14658 Addendum; Allow loading a MonkeyFactory by class name

HBASE-14658 Addendum; Allow loading a MonkeyFactory by class name


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/35660b4f
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/35660b4f
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/35660b4f

Branch: refs/heads/hbase-12439
Commit: 35660b4f5c4081996f18943ad5359be1454630b4
Parents: 619a240
Author: Elliott Clark <ec...@apache.org>
Authored: Thu Oct 22 11:22:53 2015 -0700
Committer: Elliott Clark <ec...@apache.org>
Committed: Thu Oct 22 12:09:58 2015 -0700

----------------------------------------------------------------------
 .../apache/hadoop/hbase/chaos/factories/MonkeyFactory.java  | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/35660b4f/hbase-it/src/test/java/org/apache/hadoop/hbase/chaos/factories/MonkeyFactory.java
----------------------------------------------------------------------
diff --git a/hbase-it/src/test/java/org/apache/hadoop/hbase/chaos/factories/MonkeyFactory.java b/hbase-it/src/test/java/org/apache/hadoop/hbase/chaos/factories/MonkeyFactory.java
index e479975..2a69c8c 100644
--- a/hbase-it/src/test/java/org/apache/hadoop/hbase/chaos/factories/MonkeyFactory.java
+++ b/hbase-it/src/test/java/org/apache/hadoop/hbase/chaos/factories/MonkeyFactory.java
@@ -93,13 +93,16 @@ public abstract class MonkeyFactory {
 
   public static MonkeyFactory getFactory(String factoryName) {
     MonkeyFactory fact = FACTORIES.get(factoryName);
-    if (fact == null) {
+    if (fact == null && factoryName != null && !factoryName.isEmpty()) {
       Class klass = null;
       try {
         klass = Class.forName(factoryName);
-        fact = (MonkeyFactory) ReflectionUtils.newInstance(klass);
-      } catch (ClassNotFoundException e) {
+        if (klass != null) {
+          fact = (MonkeyFactory) ReflectionUtils.newInstance(klass);
+        }
+      } catch (Exception e) {
         LOG.error("Error trying to create " + factoryName + " could not load it by class name");
+        return null;
       }
     }
     return fact;