1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.hadoop.hbase.backup;
19
20 import org.apache.commons.logging.Log;
21 import org.apache.commons.logging.LogFactory;
22 import org.apache.hadoop.conf.Configuration;
23 import org.apache.hadoop.hbase.classification.InterfaceAudience;
24 import org.apache.hadoop.hbase.classification.InterfaceStability;
25 import org.apache.hadoop.util.ReflectionUtils;
26
27 @InterfaceAudience.Private
28 @InterfaceStability.Evolving
29 public final class BackupRestoreClientFactory {
30 private static final Log LOG = LogFactory.getLog(BackupRestoreClientFactory.class);
31
32 private BackupRestoreClientFactory(){
33 throw new AssertionError("Instantiating utility class...");
34 }
35
36
37
38
39
40
41
42 public static RestoreClient getRestoreClient(Configuration conf) {
43 try{
44 Class<?> cls =
45 conf.getClassByName("org.apache.hadoop.hbase.backup.impl.RestoreClientImpl");
46
47 RestoreClient client = (RestoreClient) ReflectionUtils.newInstance(cls, conf);
48 client.setConf(conf);
49 return client;
50 } catch(Exception e){
51 LOG.error("Can not instantiate RestoreClient. Make sure you have hbase-server jar in CLASSPATH", e);
52 }
53 return null;
54 }
55 }