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 {
39 HRegionServer hrs = (HRegionServer)getServletContext().getAttribute(
40 HRegionServer.REGIONSERVER);
41 assert hrs != null : "No RS in context!";
42
43 resp.setContentType("text/html");
44
45 if (!hrs.isOnline()) {
46 resp.getWriter().write("The RegionServer is initializing!");
47 resp.getWriter().close();
48 return;
49 }
50
51 RSStatusTmpl tmpl = new RSStatusTmpl();
52 if (req.getParameter("format") != null)
53 tmpl.setFormat(req.getParameter("format"));
54 if (req.getParameter("filter") != null)
55 tmpl.setFilter(req.getParameter("filter"));
56 if (req.getParameter("bcn") != null)
57 tmpl.setBcn(req.getParameter("bcn"));
58 if (req.getParameter("bcv") != null)
59 tmpl.setBcv(req.getParameter("bcv"));
60 tmpl.render(resp.getWriter(), hrs);
61 }
62 }