Repository: hbase
Updated Branches:
  refs/heads/master 79b11ae8f -> 387f90e39


HBASE-12127 Move the core Connection creation functionality into 
ConnectionFactory (Solomon Duskis)


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

Branch: refs/heads/master
Commit: 387f90e3947d972ee0147c266a8d9d166c4f0215
Parents: 79b11ae
Author: Enis Soztutar <e...@apache.org>
Authored: Wed Oct 1 19:00:59 2014 -0700
Committer: Enis Soztutar <e...@apache.org>
Committed: Wed Oct 1 19:00:59 2014 -0700

----------------------------------------------------------------------
 .../hadoop/hbase/client/ConnectionFactory.java  | 25 +++++++++++++++++++-
 .../hadoop/hbase/client/ConnectionManager.java  | 20 +---------------
 2 files changed, 25 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/387f90e3/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionFactory.java
----------------------------------------------------------------------
diff --git 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionFactory.java
 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionFactory.java
index 6070615..74f7c54 100644
--- 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionFactory.java
+++ 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionFactory.java
@@ -19,6 +19,7 @@
 package org.apache.hadoop.hbase.client;
 
 import java.io.IOException;
+import java.lang.reflect.Constructor;
 import java.util.concurrent.ExecutorService;
 
 import org.apache.hadoop.hbase.classification.InterfaceAudience;
@@ -179,7 +180,29 @@ public class ConnectionFactory {
       user = provider.getCurrent();
     }
 
-    return ConnectionManager.createConnection(conf, pool, user);
+    return createConnection(conf, false, pool, user);
   }
 
+  static Connection createConnection(final Configuration conf, final boolean 
managed,
+      final ExecutorService pool, final User user)
+  throws IOException {
+    String className = conf.get(HConnection.HBASE_CLIENT_CONNECTION_IMPL,
+      ConnectionManager.HConnectionImplementation.class.getName());
+    Class<?> clazz = null;
+    try {
+      clazz = Class.forName(className);
+    } catch (ClassNotFoundException e) {
+      throw new IOException(e);
+    }
+    try {
+      // Default HCM#HCI is not accessible; make it so before invoking.
+      Constructor<?> constructor =
+        clazz.getDeclaredConstructor(Configuration.class,
+          boolean.class, ExecutorService.class, User.class);
+      constructor.setAccessible(true);
+      return (Connection) constructor.newInstance(conf, managed, pool, user);
+    } catch (Exception e) {
+      throw new IOException(e);
+    }
+  }
 }

http://git-wip-us.apache.org/repos/asf/hbase/blob/387f90e3/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionManager.java
----------------------------------------------------------------------
diff --git 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionManager.java
 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionManager.java
index 43a7973..7010fc2 100644
--- 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionManager.java
+++ 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionManager.java
@@ -21,7 +21,6 @@ package org.apache.hadoop.hbase.client;
 import java.io.Closeable;
 import java.io.IOException;
 import java.io.InterruptedIOException;
-import java.lang.reflect.Constructor;
 import java.lang.reflect.UndeclaredThrowableException;
 import java.util.ArrayList;
 import java.util.Date;
@@ -408,24 +407,7 @@ class ConnectionManager {
   static ClusterConnection createConnection(final Configuration conf, final 
boolean managed,
       final ExecutorService pool, final User user)
   throws IOException {
-    String className = conf.get(HConnection.HBASE_CLIENT_CONNECTION_IMPL,
-      HConnectionImplementation.class.getName());
-    Class<?> clazz = null;
-    try {
-      clazz = Class.forName(className);
-    } catch (ClassNotFoundException e) {
-      throw new IOException(e);
-    }
-    try {
-      // Default HCM#HCI is not accessible; make it so before invoking.
-      Constructor<?> constructor =
-        clazz.getDeclaredConstructor(Configuration.class,
-          boolean.class, ExecutorService.class, User.class);
-      constructor.setAccessible(true);
-      return (ClusterConnection) constructor.newInstance(conf, managed, pool, 
user);
-    } catch (Exception e) {
-      throw new IOException(e);
-    }
+    return (ClusterConnection) ConnectionFactory.createConnection(conf, 
managed, pool, user);
   }
 
   /**

Reply via email to