View Javadoc

1   // Autogenerated Jamon implementation
2   // /home/zhangduo/hbase/code/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/regionserver/ReplicationStatusTmpl.jamon
3   
4   package org.apache.hadoop.hbase.tmpl.regionserver;
5   
6   // 23, 9
7   import java.util.*;
8   // 24, 9
9   import java.util.Map.Entry;
10  // 25, 9
11  import org.apache.hadoop.hbase.procedure2.util.StringUtils;
12  // 26, 9
13  import org.apache.hadoop.hbase.regionserver.HRegionServer;
14  // 27, 9
15  import org.apache.hadoop.hbase.replication.regionserver.ReplicationStatus;
16  
17  public class ReplicationStatusTmplImpl
18    extends org.jamon.AbstractTemplateImpl
19    implements org.apache.hadoop.hbase.tmpl.regionserver.ReplicationStatusTmpl.Intf
20  
21  {
22    private final HRegionServer regionServer;
23    protected static org.apache.hadoop.hbase.tmpl.regionserver.ReplicationStatusTmpl.ImplData __jamon_setOptionalArguments(org.apache.hadoop.hbase.tmpl.regionserver.ReplicationStatusTmpl.ImplData p_implData)
24    {
25      return p_implData;
26    }
27    public ReplicationStatusTmplImpl(org.jamon.TemplateManager p_templateManager, org.apache.hadoop.hbase.tmpl.regionserver.ReplicationStatusTmpl.ImplData p_implData)
28    {
29      super(p_templateManager, __jamon_setOptionalArguments(p_implData));
30      regionServer = p_implData.getRegionServer();
31    }
32    
33    @Override public void renderNoFlush(final java.io.Writer jamonWriter)
34      throws java.io.IOException
35    {
36      // 30, 1
37      
38          Map<String, ReplicationStatus> walGroupsReplicationStatus = regionServer.getWalGroupsReplicationStatus();
39  
40      // 34, 1
41      if ((walGroupsReplicationStatus != null && walGroupsReplicationStatus.size() > 0) )
42      {
43        // 34, 86
44        jamonWriter.write("\n\n    <div class=\"tabbable\">\n        <ul class=\"nav nav-pills\">\n            <li class=\"active\"><a href=\"#tab_currentLog\" data-toggle=\"tab\">Current Log</a> </li>\n            <li class=\"\"><a href=\"#tab_replicationDelay\" data-toggle=\"tab\">Replication Delay</a></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_currentLog\">\n                ");
45        // 43, 17
46        {
47          // 43, 17
48          __jamon_innerUnit__currentLog(jamonWriter, walGroupsReplicationStatus);
49        }
50        // 43, 72
51        jamonWriter.write("\n            </div>\n            <div class=\"tab-pane\" id=\"tab_replicationDelay\">\n                ");
52        // 46, 17
53        {
54          // 46, 17
55          __jamon_innerUnit__replicationDelay(jamonWriter, walGroupsReplicationStatus);
56        }
57        // 46, 78
58        jamonWriter.write("\n            </div>\n        </div>\n    </div>\n    <p> If the replication delay is UNKNOWN, that means this walGroup doesn't start replicate yet and it may get disabled.\n    If the size of log is 0, it means we are replicating current HLog, thus we can't get accurate size since it's not closed yet.</p>\n\n");
59      }
60      // 53, 1
61      else
62      {
63        // 53, 8
64        jamonWriter.write("\n    <p>No Replication Metrics for Peers</p>\n");
65      }
66      // 55, 7
67      jamonWriter.write("\n\n");
68    }
69    
70    
71    // 83, 1
72    private void __jamon_innerUnit__replicationDelay(final java.io.Writer jamonWriter, final Map<String,ReplicationStatus> metrics)
73      throws java.io.IOException
74    {
75      // 87, 5
76      jamonWriter.write("<table class=\"table table-striped\">\n        <tr>\n            <th>PeerId</th>\n            <th>WalGroup</th>\n            <th>Current Log</th>\n            <th>Last Shipped Age</th>\n            <th>Replication Delay</th>\n        </tr>\n            ");
77      // 95, 13
78      for (Map.Entry<String, ReplicationStatus> entry: metrics.entrySet() )
79      {
80        // 95, 84
81        jamonWriter.write("\n                 <tr>\n                     <td>");
82        // 97, 26
83        org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(entry.getValue().getPeerId()), jamonWriter);
84        // 97, 60
85        jamonWriter.write("</td>\n                     <td>");
86        // 98, 26
87        org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(entry.getValue().getWalGroup()), jamonWriter);
88        // 98, 62
89        jamonWriter.write("</td>\n                     <td>");
90        // 99, 26
91        org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(entry.getValue().getCurrentPath()), jamonWriter);
92        // 99, 65
93        jamonWriter.write(" </td>\n                     <td>");
94        // 100, 26
95        org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(StringUtils.humanTimeDiff(entry.getValue().getAgeOfLastShippedOp())), jamonWriter);
96        // 100, 99
97        jamonWriter.write("</td>\n                     <td>");
98        // 101, 26
99        org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(entry.getValue().getReplicationDelay() == Long.MAX_VALUE ? "UNKNOWN" : StringUtils.humanTimeDiff(entry.getValue().getReplicationDelay())), jamonWriter);
100       // 101, 168
101       jamonWriter.write("</td>\n                 </tr>\n            ");
102     }
103     // 103, 20
104     jamonWriter.write("\n    </table>\n");
105   }
106   
107   
108   // 57, 1
109   private void __jamon_innerUnit__currentLog(final java.io.Writer jamonWriter, final Map<String,ReplicationStatus> metrics)
110     throws java.io.IOException
111   {
112     // 61, 5
113     jamonWriter.write("<table class=\"table table-striped\">\n        <tr>\n            <th>PeerId</th>\n            <th>WalGroup</th>\n            <th>Current Log</th>\n            <th>Size</th>\n            <th>Queue Size</th>\n            <th>Offset</th>\n        </tr>\n            ");
114     // 70, 13
115     for (Map.Entry<String, ReplicationStatus> entry: metrics.entrySet() )
116     {
117       // 70, 84
118       jamonWriter.write("\n                 <tr>\n                     <td>");
119       // 72, 26
120       org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(entry.getValue().getPeerId()), jamonWriter);
121       // 72, 60
122       jamonWriter.write("</td>\n                     <td>");
123       // 73, 26
124       org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(entry.getValue().getWalGroup()), jamonWriter);
125       // 73, 62
126       jamonWriter.write("</td>\n                     <td>");
127       // 74, 26
128       org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(entry.getValue().getCurrentPath()), jamonWriter);
129       // 74, 65
130       jamonWriter.write(" </td>\n                     <td>");
131       // 75, 26
132       org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(StringUtils.humanSize(entry.getValue().getFileSize())), jamonWriter);
133       // 75, 85
134       jamonWriter.write("</td>\n                     <td>");
135       // 76, 26
136       org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(entry.getValue().getQueueSize()), jamonWriter);
137       // 76, 63
138       jamonWriter.write("</td>\n                     <td>");
139       // 77, 26
140       org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(StringUtils.humanSize(entry.getValue().getCurrentPosition())), jamonWriter);
141       // 77, 92
142       jamonWriter.write("</td>\n                 </tr>\n            ");
143     }
144     // 79, 20
145     jamonWriter.write("\n    </table>\n");
146   }
147   
148   
149 }