1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.hadoop.hbase.procedure;
19
20 import java.io.IOException;
21 import java.util.Hashtable;
22
23 import org.apache.hadoop.conf.Configuration;
24 import org.apache.hadoop.hbase.master.HMaster;
25 import org.apache.hadoop.hbase.master.MasterServices;
26 import org.apache.hadoop.hbase.master.MetricsMaster;
27 import org.apache.zookeeper.KeeperException;
28
29
30
31
32
33
34 public class MasterProcedureManagerHost extends
35 ProcedureManagerHost<MasterProcedureManager> {
36
37 private Hashtable<String, MasterProcedureManager> procedureMgrMap
38 = new Hashtable<String, MasterProcedureManager>();
39
40 @Override
41 public void loadProcedures(Configuration conf) {
42 loadUserProcedures(conf, MASTER_PROCEUDRE_CONF_KEY);
43 for (MasterProcedureManager mpm : getProcedureManagers()) {
44 procedureMgrMap.put(mpm.getProcedureSignature(), mpm);
45 }
46 }
47
48 public void initialize(MasterServices master, final MetricsMaster metricsMaster)
49 throws KeeperException, IOException, UnsupportedOperationException {
50 for (MasterProcedureManager mpm : getProcedureManagers()) {
51 mpm.initialize(master, metricsMaster);
52 }
53 }
54
55 public void stop(String why) {
56 for (MasterProcedureManager mpm : getProcedureManagers()) {
57 mpm.stop(why);
58 }
59 }
60
61 public MasterProcedureManager getProcedureManager(String signature) {
62 return procedureMgrMap.get(signature);
63 }
64 }