1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.hadoop.hbase.regionserver;
20
21 import java.io.IOException;
22
23 import javax.servlet.ServletException;
24 import javax.servlet.http.HttpServlet;
25 import javax.servlet.http.HttpServletRequest;
26 import javax.servlet.http.HttpServletResponse;
27 import org.apache.hadoop.hbase.classification.InterfaceAudience;
28
29 import org.apache.hadoop.hbase.tmpl.regionserver.RSStatusTmpl;
30
31 @InterfaceAudience.Private
32 public class RSStatusServlet extends HttpServlet {
33 private static final long serialVersionUID = 1L;
34
35 @Override
36 protected void doGet(HttpServletRequest req, HttpServletResponse resp)
37 throws ServletException, IOException {
38 HRegionServer hrs = (HRegionServer)getServletContext().getAttribute(HRegionServer.REGIONSERVER);
39 assert hrs != null : "No RS in context!";
40
41 resp.setContentType("text/html");
42
43 if (!hrs.isOnline()) {
44 resp.getWriter().write("The RegionServer is initializing!");
45 resp.getWriter().close();
46 return;
47 }
48
49 RSStatusTmpl tmpl = new RSStatusTmpl();
50 if (req.getParameter("format") != null)
51 tmpl.setFormat(req.getParameter("format"));
52 if (req.getParameter("filter") != null)
53 tmpl.setFilter(req.getParameter("filter"));
54 if (req.getParameter("bcn") != null)
55 tmpl.setBcn(req.getParameter("bcn"));
56 if (req.getParameter("bcv") != null)
57 tmpl.setBcv(req.getParameter("bcv"));
58 tmpl.render(resp.getWriter(), hrs);
59 }
60 }