View Javadoc

1   // Autogenerated Jamon implementation
2   // /home/buildslave/odpi-bigtop/output/hbase/hbase-0.98.12/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/master/MasterStatusTmpl.jamon
3   
4   package org.apache.hadoop.hbase.tmpl.master;
5   
6   // 33, 1
7   import java.util.*;
8   // 34, 1
9   import org.apache.hadoop.util.StringUtils;
10  // 35, 1
11  import org.apache.hadoop.hbase.util.Bytes;
12  // 36, 1
13  import org.apache.hadoop.hbase.util.JvmVersion;
14  // 37, 1
15  import org.apache.hadoop.hbase.util.FSUtils;
16  // 38, 1
17  import org.apache.hadoop.hbase.master.HMaster;
18  // 39, 1
19  import org.apache.hadoop.hbase.master.AssignmentManager;
20  // 40, 1
21  import org.apache.hadoop.hbase.master.ServerManager;
22  // 41, 1
23  import org.apache.hadoop.hbase.HConstants;
24  // 42, 1
25  import org.apache.hadoop.hbase.NamespaceDescriptor;
26  // 43, 1
27  import org.apache.hadoop.hbase.ServerLoad;
28  // 44, 1
29  import org.apache.hadoop.hbase.ServerName;
30  // 45, 1
31  import org.apache.hadoop.hbase.client.HBaseAdmin;
32  // 46, 1
33  import org.apache.hadoop.hbase.client.HConnectionManager;
34  // 47, 1
35  import org.apache.hadoop.hbase.HRegionInfo;
36  // 48, 1
37  import org.apache.hadoop.hbase.master.RegionState;
38  // 49, 1
39  import org.apache.hadoop.hbase.HTableDescriptor;
40  // 50, 1
41  import org.apache.hadoop.hbase.HBaseConfiguration;
42  // 51, 1
43  import org.apache.hadoop.hbase.TableName;
44  // 52, 1
45  import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.SnapshotDescription;
46  // 53, 1
47  import org.apache.hadoop.hbase.master.DeadServer;
48  // 54, 1
49  import org.apache.hadoop.hbase.protobuf.ProtobufUtil;
50  // 55, 1
51  import org.apache.hadoop.hbase.security.visibility.VisibilityConstants;
52  // 56, 1
53  import org.apache.hadoop.hbase.security.access.AccessControlLists;
54  
55  public class MasterStatusTmplImpl
56    extends org.jamon.AbstractTemplateImpl
57    implements org.apache.hadoop.hbase.tmpl.master.MasterStatusTmpl.Intf
58  
59  {
60    private final HMaster master;
61    private final HBaseAdmin admin;
62    private final boolean catalogJanitorEnabled;
63    private final List<ServerName> servers;
64    private final Set<ServerName> deadServers;
65    private final ServerManager serverManager;
66    private final String filter;
67    private final String format;
68    private final ServerName metaLocation;
69    private final AssignmentManager assignmentManager;
70    private final Map<String,Integer> frags;
71    // 68, 1
72    
73    public String formatZKString() {
74      StringBuilder quorums = new StringBuilder();
75      String zkQuorum = master.getZooKeeperWatcher().getQuorum();
76  
77      if (null == zkQuorum) {
78        return quorums.toString();
79      }
80  
81      String[] zks = zkQuorum.split(",");
82  
83      if (zks.length == 0) {
84        return quorums.toString();
85      }
86  
87      for(int i = 0; i < zks.length; ++i) {
88        quorums.append(zks[i].trim());
89  
90        if (i != (zks.length - 1)) {
91          quorums.append("<br/>");
92        }
93      }
94  
95      return quorums.toString();
96    }
97  
98    protected static org.apache.hadoop.hbase.tmpl.master.MasterStatusTmpl.ImplData __jamon_setOptionalArguments(org.apache.hadoop.hbase.tmpl.master.MasterStatusTmpl.ImplData p_implData)
99    {
100     if(! p_implData.getCatalogJanitorEnabled__IsNotDefault())
101     {
102       p_implData.setCatalogJanitorEnabled(true);
103     }
104     if(! p_implData.getServers__IsNotDefault())
105     {
106       p_implData.setServers(null);
107     }
108     if(! p_implData.getDeadServers__IsNotDefault())
109     {
110       p_implData.setDeadServers(null);
111     }
112     if(! p_implData.getServerManager__IsNotDefault())
113     {
114       p_implData.setServerManager(null);
115     }
116     if(! p_implData.getFilter__IsNotDefault())
117     {
118       p_implData.setFilter("general");
119     }
120     if(! p_implData.getFormat__IsNotDefault())
121     {
122       p_implData.setFormat("html");
123     }
124     if(! p_implData.getMetaLocation__IsNotDefault())
125     {
126       p_implData.setMetaLocation(null);
127     }
128     if(! p_implData.getAssignmentManager__IsNotDefault())
129     {
130       p_implData.setAssignmentManager(null);
131     }
132     if(! p_implData.getFrags__IsNotDefault())
133     {
134       p_implData.setFrags(null);
135     }
136     return p_implData;
137   }
138   public MasterStatusTmplImpl(org.jamon.TemplateManager p_templateManager, org.apache.hadoop.hbase.tmpl.master.MasterStatusTmpl.ImplData p_implData)
139   {
140     super(p_templateManager, __jamon_setOptionalArguments(p_implData));
141     master = p_implData.getMaster();
142     admin = p_implData.getAdmin();
143     catalogJanitorEnabled = p_implData.getCatalogJanitorEnabled();
144     servers = p_implData.getServers();
145     deadServers = p_implData.getDeadServers();
146     serverManager = p_implData.getServerManager();
147     filter = p_implData.getFilter();
148     format = p_implData.getFormat();
149     metaLocation = p_implData.getMetaLocation();
150     assignmentManager = p_implData.getAssignmentManager();
151     frags = p_implData.getFrags();
152   }
153   
154   public void renderNoFlush(@SuppressWarnings({"unused","hiding"}) final java.io.Writer jamonWriter)
155     throws java.io.IOException
156   {
157     // 59, 1
158     if (format.equals("json") )
159     {
160       // 59, 30
161       jamonWriter.write("\n  ");
162       // 60, 3
163       {
164         org.apache.hadoop.hbase.tmpl.common.TaskMonitorTmpl __jamon__var_0 = new org.apache.hadoop.hbase.tmpl.common.TaskMonitorTmpl(this.getTemplateManager());
165         __jamon__var_0.setFormat("json" );
166         __jamon__var_0.setFilter(filter);
167         __jamon__var_0.renderNoFlush(jamonWriter);
168       }
169       // 60, 68
170       jamonWriter.write("\n  ");
171       // 61, 3
172       return; 
173     }
174     // 62, 7
175     jamonWriter.write("\n");
176     // 63, 1
177     
178 ServerManager serverManager = master.getServerManager();
179 AssignmentManager assignmentManager = master.getAssignmentManager();
180 
181     // 95, 1
182     jamonWriter.write("<!--[if IE]>\n<!DOCTYPE html>\n<![endif]-->\n<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"utf-8\">\n    <title>Master: ");
183     // 102, 20
184     org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(master.getServerName().getHostname()), jamonWriter);
185     // 102, 62
186     jamonWriter.write("</title>\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <meta name=\"description\" content=\"\">\n    <link href=\"/static/css/bootstrap.min.css\" rel=\"stylesheet\">\n    <link href=\"/static/css/bootstrap-theme.min.css\" rel=\"stylesheet\">\n    <link href=\"/static/css/hbase.css\" rel=\"stylesheet\">\n  </head>\n\n  <body>\n\n    <div class=\"navbar  navbar-fixed-top navbar-default\">\n        <div class=\"container\">\n            <div class=\"navbar-header\">\n                <button type=\"button\" class=\"navbar-toggle\" data-toggle=\"collapse\" data-target=\".navbar-collapse\">\n                    <span class=\"icon-bar\"></span>\n                    <span class=\"icon-bar\"></span>\n                    <span class=\"icon-bar\"></span>\n                </button>\n                <a class=\"navbar-brand\" href=\"/master-status\"><img src=\"/static/hbase_logo_small.png\" alt=\"HBase Logo\"/></a>\n            </div>\n            <div class=\"collapse navbar-collapse\">\n                <ul class=\"nav navbar-nav\">\n                <li class=\"active\"><a href=\"/\">Home</a></li>\n                <li><a href=\"/tablesDetailed.jsp\">Table Details</a></li>\n                <li><a href=\"/logs/\">Local Logs</a></li>\n                <li><a href=\"/logLevel\">Log Level</a></li>\n                <li><a href=\"/dump\">Debug Dump</a></li>\n                <li><a href=\"/jmx\">Metrics Dump</a></li>\n                ");
187     // 130, 17
188     if (HBaseConfiguration.isShowConfInServlet())
189     {
190       // 130, 64
191       jamonWriter.write("\n                <li><a href=\"/conf\">HBase Configuration</a></li>\n                ");
192     }
193     // 132, 23
194     jamonWriter.write("\n               </ul>\n            </div><!--/.nav-collapse -->\n        </div>\n    </div>\n\n    <div class=\"container\">\n\t");
195     // 139, 2
196     if (master.isActiveMaster() )
197     {
198       // 139, 33
199       jamonWriter.write("\n        <div class=\"row inner_header\">\n            <div class=\"page-header\">\n                <h1>Master <small>");
200       // 142, 35
201       org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(master.getServerName().getHostname()), jamonWriter);
202       // 142, 77
203       jamonWriter.write(" </small></h1>\n            </div>\n        </div>\n\n        <div class=\"row\">\n        <!-- Various warnings that cluster admins should be aware of -->\n        ");
204       // 148, 9
205       if (JvmVersion.isBadJvmVersion() )
206       {
207         // 148, 45
208         jamonWriter.write("\n          <div class=\"alert alert-error\">\n          Your current JVM version ");
209         // 150, 36
210         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(System.getProperty("java.version")), jamonWriter);
211         // 150, 76
212         jamonWriter.write(" is known to be\n          unstable with HBase. Please see the\n          <a href=\"http://wiki.apache.org/hadoop/Hbase/Troubleshooting#A18\">HBase wiki</a>\n          for details.\n          </div>\n        ");
213       }
214       // 155, 15
215       jamonWriter.write("\n        ");
216       // 156, 9
217       if (master.isInitialized() && !catalogJanitorEnabled )
218       {
219         // 156, 65
220         jamonWriter.write("\n          <div class=\"alert alert-error\">\n          Please note that your cluster is running with the CatalogJanitor disabled. It can be\n          re-enabled from the hbase shell by running the command 'catalogjanitor_switch true'\n          </div>\n        ");
221       }
222       // 161, 15
223       jamonWriter.write("\n\n        <section>\n            <h2>Region Servers</h2>\n            ");
224       // 165, 13
225       {
226         org.apache.hadoop.hbase.tmpl.master.RegionServerListTmpl __jamon__var_1 = new org.apache.hadoop.hbase.tmpl.master.RegionServerListTmpl(this.getTemplateManager());
227         __jamon__var_1.setServers(servers );
228         __jamon__var_1.renderNoFlush(jamonWriter, master);
229       }
230       // 165, 74
231       jamonWriter.write("\n\n            ");
232       // 167, 13
233       if ((deadServers != null) )
234       {
235         // 167, 42
236         jamonWriter.write("\n                ");
237         // 168, 17
238         {
239           // 168, 17
240           __jamon_innerUnit__deadRegionServers(jamonWriter);
241         }
242         // 168, 40
243         jamonWriter.write("\n            ");
244       }
245       // 169, 19
246       jamonWriter.write("\n        </section>\n        <section>\n            ");
247       // 172, 13
248       {
249         org.apache.hadoop.hbase.tmpl.master.BackupMasterStatusTmpl __jamon__var_2 = new org.apache.hadoop.hbase.tmpl.master.BackupMasterStatusTmpl(this.getTemplateManager());
250         __jamon__var_2.renderNoFlush(jamonWriter, master );
251       }
252       // 172, 58
253       jamonWriter.write("\n        </section>\n        <section>\n            <h2>Tables</h2>\n            <div class=\"tabbable\">\n                <ul class=\"nav nav-pills\">\n                    <li class=\"active\">\n                        <a href=\"#tab_userTables\" data-toggle=\"tab\">User Tables</a>\n                    </li>\n                    <li class=\"\">\n                        <a href=\"#tab_catalogTables\" data-toggle=\"tab\">System Tables</a>\n                    </li>\n                    <li class=\"\">\n                        <a href=\"#tab_userSnapshots\" data-toggle=\"tab\">Snapshots</a>\n                    </li>\n                </ul>\n                <div class=\"tab-content\" style=\"padding-bottom: 9px; border-bottom: 1px solid #ddd;\">\n                    <div class=\"tab-pane active\" id=\"tab_userTables\">\n                        ");
254       // 190, 25
255       if ((metaLocation != null) )
256       {
257         // 190, 55
258         jamonWriter.write("\n                            ");
259         // 191, 29
260         {
261           // 191, 29
262           __jamon_innerUnit__userTables(jamonWriter);
263         }
264         // 191, 45
265         jamonWriter.write("\n                        ");
266       }
267       // 192, 31
268       jamonWriter.write("\n                    </div>\n                    <div class=\"tab-pane\" id=\"tab_catalogTables\">\n                        ");
269       // 195, 25
270       if ((metaLocation != null) )
271       {
272         // 195, 55
273         jamonWriter.write("\n                            ");
274         // 196, 29
275         {
276           // 196, 29
277           __jamon_innerUnit__catalogTables(jamonWriter);
278         }
279         // 196, 48
280         jamonWriter.write("\n                        ");
281       }
282       // 197, 31
283       jamonWriter.write("\n                    </div>\n                    <div class=\"tab-pane\" id=\"tab_userSnapshots\">\n                        ");
284       // 200, 25
285       {
286         // 200, 25
287         __jamon_innerUnit__userSnapshots(jamonWriter);
288       }
289       // 200, 44
290       jamonWriter.write("\n                    </div>\n                </div>\n            </div>\n        </section>\n        ");
291       // 205, 9
292       {
293         org.apache.hadoop.hbase.tmpl.master.AssignmentManagerStatusTmpl __jamon__var_3 = new org.apache.hadoop.hbase.tmpl.master.AssignmentManagerStatusTmpl(this.getTemplateManager());
294         __jamon__var_3.renderNoFlush(jamonWriter, master.getAssignmentManager());
295       }
296       // 205, 90
297       jamonWriter.write("\n\t");
298     }
299     // 206, 2
300     else
301     {
302       // 206, 9
303       jamonWriter.write("\n        <section>\n            ");
304       // 208, 13
305       {
306         org.apache.hadoop.hbase.tmpl.master.BackupMasterStatusTmpl __jamon__var_4 = new org.apache.hadoop.hbase.tmpl.master.BackupMasterStatusTmpl(this.getTemplateManager());
307         __jamon__var_4.renderNoFlush(jamonWriter, master );
308       }
309       // 208, 58
310       jamonWriter.write("\n        </section>\n\t");
311     }
312     // 210, 8
313     jamonWriter.write("    \n\n\n        <section>\n            ");
314     // 214, 13
315     {
316       org.apache.hadoop.hbase.tmpl.common.TaskMonitorTmpl __jamon__var_5 = new org.apache.hadoop.hbase.tmpl.common.TaskMonitorTmpl(this.getTemplateManager());
317       __jamon__var_5.setFilter(filter );
318       __jamon__var_5.renderNoFlush(jamonWriter);
319     }
320     // 214, 61
321     jamonWriter.write("\n        </section>\n\n        <section>\n            <h2>Software Attributes</h2>\n            <table id=\"attributes_table\" class=\"table table-striped\">\n                <tr>\n                    <th>Attribute Name</th>\n                    <th>Value</th>\n                    <th>Description</th>\n                </tr>\n                <tr>\n                    <td>HBase Version</td>\n                    <td>");
322     // 227, 25
323     org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(org.apache.hadoop.hbase.util.VersionInfo.getVersion()), jamonWriter);
324     // 227, 84
325     jamonWriter.write(", r");
326     // 227, 87
327     org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(org.apache.hadoop.hbase.util.VersionInfo.getRevision()), jamonWriter);
328     // 227, 147
329     jamonWriter.write("</td><td>HBase version and revision</td>\n                </tr>\n                <tr>\n                    <td>HBase Compiled</td>\n                    <td>");
330     // 231, 25
331     org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(org.apache.hadoop.hbase.util.VersionInfo.getDate()), jamonWriter);
332     // 231, 81
333     jamonWriter.write(", ");
334     // 231, 83
335     org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(org.apache.hadoop.hbase.util.VersionInfo.getUser()), jamonWriter);
336     // 231, 139
337     jamonWriter.write("</td>\n                    <td>When HBase version was compiled and by whom</td>\n                </tr>\n                <tr>\n                    <td>Hadoop Version</td>\n                    <td>");
338     // 236, 25
339     org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(org.apache.hadoop.util.VersionInfo.getVersion()), jamonWriter);
340     // 236, 78
341     jamonWriter.write(", r");
342     // 236, 81
343     org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(org.apache.hadoop.util.VersionInfo.getRevision()), jamonWriter);
344     // 236, 135
345     jamonWriter.write("</td>\n                    <td>Hadoop version and revision</td>\n                </tr>\n                <tr>\n                    <td>Hadoop Compiled</td>\n                    <td>");
346     // 241, 25
347     org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(org.apache.hadoop.util.VersionInfo.getDate()), jamonWriter);
348     // 241, 75
349     jamonWriter.write(", ");
350     // 241, 77
351     org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(org.apache.hadoop.util.VersionInfo.getUser()), jamonWriter);
352     // 241, 127
353     jamonWriter.write("</td>\n                    <td>When Hadoop version was compiled and by whom</td>\n                </tr>\n                <tr>\n                    <td>Zookeeper Quorum</td>\n                    <td> ");
354     // 247, 26
355     org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(formatZKString()), jamonWriter);
356     // 247, 48
357     jamonWriter.write(" </td>\n                    <td>Addresses of all registered ZK servers. For more, see <a href=\"/zk.jsp\">zk dump</a>.</td>\n                </tr>\n                <tr>\n                    <td>Zookeeper Base Path</td>\n                    <td> ");
358     // 252, 26
359     org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(master.getZooKeeper().getBaseZNode()), jamonWriter);
360     // 252, 68
361     jamonWriter.write("</td>\n                    <td>Root node of this cluster in ZK.</td>\n                </tr>\n                <tr>\n                    <td>HBase Root Directory</td>\n                    <td>");
362     // 257, 25
363     org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(FSUtils.getRootDir(master.getConfiguration()).toString()), jamonWriter);
364     // 257, 87
365     jamonWriter.write("</td>\n                    <td>Location of HBase home directory</td>\n                </tr>\n                <tr>\n                    <td>HMaster Start Time</td>\n                    <td>");
366     // 262, 25
367     org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(new Date(master.getMasterStartTime())), jamonWriter);
368     // 262, 68
369     jamonWriter.write("</td>\n                    <td>Date stamp of when this HMaster was started</td>\n                </tr>\n                ");
370     // 265, 17
371     if (master.isActiveMaster() )
372     {
373       // 265, 48
374       jamonWriter.write("\n\t                <tr>\n\t                    <td>HMaster Active Time</td>\n\t                    <td>");
375       // 268, 26
376       org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(new Date(master.getMasterActiveTime())), jamonWriter);
377       // 268, 70
378       jamonWriter.write("</td>\n\t                    <td>Date stamp of when this HMaster became active</td>\n\t                </tr>\n\t                <tr>\n\t                    <td>HBase Cluster ID</td>\n\t                    <td>");
379       // 273, 26
380       org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(master.getClusterId() != null ? master.getClusterId() : "Not set"), jamonWriter);
381       // 273, 97
382       jamonWriter.write("</td>\n\t                    <td>Unique identifier generated for each HBase cluster</td>\n\t                </tr>\n\t                <tr>\n\t                    <td>Load average</td>\n\t                    <td>");
383       // 278, 26
384       org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(StringUtils.limitDecimalTo2(master.getServerManager().getAverageLoad())), jamonWriter);
385       // 278, 103
386       jamonWriter.write("</td>\n\t                    <td>Average number of regions per regionserver. Naive computation.</td>\n\t                </tr>\n\t                ");
387       // 281, 18
388       if (frags != null )
389       {
390         // 281, 39
391         jamonWriter.write("\n\t                <tr>\n\t                    <td>Fragmentation</td>\n\t                    <td>");
392         // 284, 26
393         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(frags.get("-TOTAL-") != null ? frags.get("-TOTAL-").intValue() + "%" : "n/a"), jamonWriter);
394         // 284, 108
395         jamonWriter.write("</td>\n\t                    <td>Overall fragmentation of all tables, including hbase:meta</td>\n\t                </tr>\n\t                ");
396       }
397       // 287, 24
398       jamonWriter.write("\n\t                <tr>\n\t                    <td>Coprocessors</td>\n\t                    <td>");
399       // 290, 26
400       org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(java.util.Arrays.toString(master.getCoprocessors())), jamonWriter);
401       // 290, 83
402       jamonWriter.write("</td>\n\t                    <td>Coprocessors currently loaded by the master</td>\n\t                </tr>\n                ");
403     }
404     // 293, 23
405     jamonWriter.write("\n            </table>\n        </section>\n        </div>\n    </div> <!-- /container -->\n\n    <script src=\"/static/js/jquery.min.js\" type=\"text/javascript\"></script>\n    <script src=\"/static/js/bootstrap.min.js\" type=\"text/javascript\"></script>\n    <script src=\"/static/js/tab.js\" type=\"text/javascript\"></script>\n  </body>\n</html>\n\n");
406   }
407   
408   
409   // 401, 1
410   private void __jamon_innerUnit__userSnapshots(@SuppressWarnings({"unused","hiding"}) final java.io.Writer jamonWriter)
411     throws java.io.IOException
412   {
413     // 402, 1
414     
415    List<SnapshotDescription> snapshots = admin.listSnapshots();
416 
417     // 405, 1
418     if ((snapshots != null && snapshots.size() > 0))
419     {
420       // 405, 51
421       jamonWriter.write("\n<table class=\"table table-striped\">\n    <tr>\n        <th>Snapshot Name</th>\n        <th>Table</th>\n        <th>Creation Time</th>\n    </tr>\n    ");
422       // 412, 5
423       for (SnapshotDescription snapshotDesc : snapshots)
424       {
425         // 412, 57
426         jamonWriter.write("\n    ");
427         // 413, 5
428         
429         TableName snapshotTable = TableName.valueOf(snapshotDesc.getTable());
430     
431         // 416, 5
432         jamonWriter.write("<tr>\n        <td><a href=\"snapshot.jsp?name=");
433         // 417, 40
434         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(snapshotDesc.getName()), jamonWriter);
435         // 417, 68
436         jamonWriter.write("\">");
437         // 417, 70
438         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(snapshotDesc.getName()), jamonWriter);
439         // 417, 98
440         jamonWriter.write("</a> </td>\n        <td><a href=\"table.jsp?name=");
441         // 418, 37
442         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(snapshotTable.getNameAsString()), jamonWriter);
443         // 418, 74
444         jamonWriter.write("\">");
445         // 418, 76
446         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(snapshotTable.getNameAsString()), jamonWriter);
447         // 418, 113
448         jamonWriter.write("</a>\n        </td>\n        <td>");
449         // 420, 13
450         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(new Date(snapshotDesc.getCreationTime())), jamonWriter);
451         // 420, 59
452         jamonWriter.write("</td>\n    </tr>\n    ");
453       }
454       // 422, 12
455       jamonWriter.write("\n    <p>");
456       // 423, 8
457       org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(snapshots.size()), jamonWriter);
458       // 423, 30
459       jamonWriter.write(" snapshot(s) in set.</p>\n</table>\n");
460     }
461     // 425, 7
462     jamonWriter.write("\n");
463   }
464   
465   
466   // 305, 1
467   private void __jamon_innerUnit__catalogTables(@SuppressWarnings({"unused","hiding"}) final java.io.Writer jamonWriter)
468     throws java.io.IOException
469   {
470     // 306, 1
471     
472  HTableDescriptor[] sysTables = admin.listTableDescriptorsByNamespace(NamespaceDescriptor
473  .SYSTEM_NAMESPACE_NAME_STR);
474 
475     // 311, 1
476     jamonWriter.write("<table class=\"table table-striped\">\n<tr>\n    <th>Table Name</th>\n    ");
477     // 314, 5
478     if ((frags != null) )
479     {
480       // 314, 28
481       jamonWriter.write("\n        <th title=\"Fragmentation - Will be 0% after a major compaction and fluctuate during normal usage.\">Frag.</th>\n    ");
482     }
483     // 316, 11
484     jamonWriter.write("\n    <th>Description</th>\n</tr>\n");
485     // 319, 1
486     for (HTableDescriptor systemTable : sysTables)
487     {
488       // 319, 49
489       jamonWriter.write("\n<tr>\n");
490       // 321, 1
491       TableName tableName = systemTable.getTableName();
492       // 322, 5
493       jamonWriter.write("<td><a href=\"table.jsp?name=");
494       // 322, 33
495       org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(tableName), jamonWriter);
496       // 322, 48
497       jamonWriter.write("\">");
498       // 322, 50
499       org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(tableName), jamonWriter);
500       // 322, 65
501       jamonWriter.write("</a></td>\n    ");
502       // 323, 5
503       if ((frags != null))
504       {
505         // 323, 27
506         jamonWriter.write("\n        <td align=\"center\">");
507         // 324, 28
508         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(frags.get(tableName.getNameAsString()) != null ? frags.get(tableName.getNameAsString())
509         .intValue() + "%" : "n/a"), jamonWriter);
510         // 325, 37
511         jamonWriter.write("</td>\n    ");
512       }
513       // 326, 11
514       jamonWriter.write("\n    ");
515       // 327, 5
516       String description = null;
517         if (tableName.equals(TableName.META_TABLE_NAME)){
518             description = "The hbase:meta table holds references to all User Table regions";
519         } else if (tableName.equals(AccessControlLists.ACL_TABLE_NAME)){
520             description = "The hbase:acl table holds information about acl";
521 	 } else if (tableName.equals(VisibilityConstants.LABELS_TABLE_NAME)){
522 	     description = "The hbase:labels table holds information about visibility labels";
523         } else {
524             description = "The .NAMESPACE. table holds information about namespaces.";
525         }
526     
527       // 338, 5
528       jamonWriter.write("<td>");
529       // 338, 9
530       org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(description), jamonWriter);
531       // 338, 26
532       jamonWriter.write("</td>\n</tr>\n");
533     }
534     // 340, 8
535     jamonWriter.write("\n</table>\n");
536   }
537   
538   
539   // 344, 1
540   private void __jamon_innerUnit__userTables(@SuppressWarnings({"unused","hiding"}) final java.io.Writer jamonWriter)
541     throws java.io.IOException
542   {
543     // 345, 1
544     
545    HTableDescriptor[] tables = admin.listTables();
546 
547     // 348, 1
548     if ((tables != null && tables.length > 0))
549     {
550       // 348, 45
551       jamonWriter.write("\n<table class=\"table table-striped\">\n    <tr>\n        <th>Namespace</th>\n        <th>Table Name</th>\n        ");
552       // 353, 9
553       if ((frags != null) )
554       {
555         // 353, 32
556         jamonWriter.write("\n            <th title=\"Fragmentation - Will be 0% after a major compaction and fluctuate during normal usage.\">Frag.</th>\n        ");
557       }
558       // 355, 15
559       jamonWriter.write("\n        <th>Online Regions</th>\n        <th>Offline Regions</th>\n        <th>Failed Regions</th>\n        <th>Split Regions</th>\n        <th>Other Regions</th>\n        <th>Description</th>\n    </tr>\n    ");
560       // 363, 5
561       for (HTableDescriptor htDesc : tables)
562       {
563         // 363, 45
564         jamonWriter.write("\n    ");
565         // 364, 5
566         
567       Map<RegionState.State, List<HRegionInfo>> tableRegions =
568           master.getAssignmentManager().getRegionStates()
569             .getRegionByStateOfTable(htDesc.getTableName());
570       int openRegionsCount = tableRegions.get(RegionState.State.OPEN).size();
571       int offlineRegionsCount = tableRegions.get(RegionState.State.OFFLINE).size();
572       int splitRegionsCount = tableRegions.get(RegionState.State.SPLIT).size();
573       int failedRegionsCount = tableRegions.get(RegionState.State.FAILED_OPEN).size()
574              + tableRegions.get(RegionState.State.FAILED_CLOSE).size();
575       int otherRegionsCount = 0;
576       for (List<HRegionInfo> list: tableRegions.values()) {
577          otherRegionsCount += list.size();
578       }
579       // now subtract known states
580       otherRegionsCount = otherRegionsCount - openRegionsCount
581                      - failedRegionsCount - offlineRegionsCount
582                      - splitRegionsCount;
583     
584         // 382, 5
585         jamonWriter.write("<tr>\n        <td>");
586         // 383, 13
587         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(htDesc.getTableName().getNamespaceAsString()), jamonWriter);
588         // 383, 63
589         jamonWriter.write("</td>\n        <td><a href=table.jsp?name=");
590         // 384, 36
591         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(htDesc.getTableName().getNameAsString()), jamonWriter);
592         // 384, 81
593         jamonWriter.write(">");
594         // 384, 82
595         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(htDesc.getTableName().getQualifierAsString()), jamonWriter);
596         // 384, 132
597         jamonWriter.write("</a> </td>\n        ");
598         // 385, 9
599         if ((frags != null) )
600         {
601           // 385, 32
602           jamonWriter.write("\n            <td align=\"center\">");
603           // 386, 32
604           org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(frags.get(htDesc.getTableName().getNameAsString()) != null ? frags.get(htDesc.getTableName().getQualifierAsString()).intValue() + "%" : "n/a"), jamonWriter);
605           // 386, 179
606           jamonWriter.write("</td>\n        ");
607         }
608         // 387, 15
609         jamonWriter.write("\n        <td>");
610         // 388, 13
611         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(openRegionsCount), jamonWriter);
612         // 388, 35
613         jamonWriter.write("</td>\n        <td>");
614         // 389, 13
615         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(offlineRegionsCount), jamonWriter);
616         // 389, 38
617         jamonWriter.write("</td>\n        <td>");
618         // 390, 13
619         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(failedRegionsCount), jamonWriter);
620         // 390, 37
621         jamonWriter.write("</td>\n        <td>");
622         // 391, 13
623         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(splitRegionsCount), jamonWriter);
624         // 391, 36
625         jamonWriter.write("</td>\n        <td>");
626         // 392, 13
627         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(otherRegionsCount), jamonWriter);
628         // 392, 36
629         jamonWriter.write("</td>\n        <td>");
630         // 393, 13
631         org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(htDesc.toStringCustomizedValues()), jamonWriter);
632         // 393, 52
633         jamonWriter.write("</td>\n    </tr>\n    ");
634       }
635       // 395, 12
636       jamonWriter.write("\n    <p>");
637       // 396, 8
638       org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(tables.length), jamonWriter);
639       // 396, 27
640       jamonWriter.write(" table(s) in set. [<a href=tablesDetailed.jsp>Details</a>]</p>\n</table>\n");
641     }
642     // 398, 7
643     jamonWriter.write("\n");
644   }
645   
646   
647   // 429, 1
648   private void __jamon_innerUnit__deadRegionServers(@SuppressWarnings({"unused","hiding"}) final java.io.Writer jamonWriter)
649     throws java.io.IOException
650   {
651     // 431, 1
652     if ((deadServers != null && deadServers.size() > 0))
653     {
654       // 431, 55
655       jamonWriter.write("\n<h2>Dead Region Servers</h2>\n<table class=\"table table-striped\">\n    <tr>\n        <th></th>\n        <th>ServerName</th>\n        <th>Stop time</th>\n    </tr>\n    ");
656       // 439, 5
657       
658        DeadServer deadServerUtil = master.getServerManager().getDeadServers();
659        ServerName [] deadServerNames = deadServers.toArray(new ServerName[deadServers.size()]);
660          Arrays.sort(deadServerNames);
661          for (ServerName deadServerName: deadServerNames) {
662     
663       // 445, 5
664       jamonWriter.write("<tr>\n    \t<th></th>\n        <td>");
665       // 447, 13
666       org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(deadServerName), jamonWriter);
667       // 447, 33
668       jamonWriter.write("</td>\n        <td>");
669       // 448, 13
670       org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(deadServerUtil.getTimeOfDeath(deadServerName)), jamonWriter);
671       // 448, 64
672       jamonWriter.write("</td>\n    </tr>\n    ");
673       // 450, 5
674       
675         }
676     
677       // 453, 5
678       jamonWriter.write("<tr>\n        <th>Total: </th>\n        <td>servers: ");
679       // 455, 22
680       org.jamon.escaping.Escaping.NONE.write(org.jamon.emit.StandardEmitter.valueOf(deadServers.size()), jamonWriter);
681       // 455, 46
682       jamonWriter.write("</td>\n        <th></th>\n    </tr>\n</table>\n");
683     }
684     // 459, 7
685     jamonWriter.write("\n");
686     // 460, 1
687     
688    HConnectionManager.deleteConnection(admin.getConfiguration());
689 
690   }
691   
692   
693 }