package com.buglabs.app.bugdash2.controller.system;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.buglabs.app.bugdash2.ShellUtil;
import com.buglabs.app.bugdash2.controller.ApplicationController;
import com.buglabs.osgi.sewing.pub.util.RequestParameters;
import freemarker.template.SimpleHash;
import freemarker.template.SimpleScalar;
import freemarker.template.TemplateModelRoot;
public class SystemInfoController extends ApplicationController {
private static final String[][] COMMANDS = {{"kernel", "cat /proc/version"},
{"build", "cat /etc/buildinfo"},
{"drives", "df -h"},
{"meminfo", "cat /proc/meminfo"},
{"cpuinfo", "cat /proc/cpuinfo"},
{"partitions", "cat /proc/partitions"}};
public String getTemplateName() {
return "system_display_system_info.fml";
}
public TemplateModelRoot get(RequestParameters params,
HttpServletRequest req, HttpServletResponse resp) {
TemplateModelRoot root = new SimpleHash();
SimpleScalar result;
for (int i = 0; i < COMMANDS.length; i++) {
result = ShellUtil.getSimpleScalar(COMMANDS[i][1]);
root.put(COMMANDS[i][0], result);
}
return root;
}
}