6 import javax.servlet.*;
7 import javax.servlet.http.*;
9 import freemarker.template.*;
17 import com.javaexchange.dbConnectionBroker.*;
20 * liefert HTML fuer Show
26 public class ServletModuleMonitor extends ServletModule
28 private static ServletModuleMonitor instance = new ServletModuleMonitor();
29 public static ServletModule getInstance() { return instance; }
31 public String defaultAction() { return "show"; }
33 public void show(HttpServletRequest req, HttpServletResponse res) throws ServletModuleException {
37 // instances in AbstractEntity
39 // datenbankverbindungen fuer brokers
40 getSimpleInfo(res.getWriter(),getConfs());
41 PrintWriter out = res.getWriter();
42 out.println(getInstancesInfo());
46 //e.printStackTrace();
47 throw new ServletModuleException(e.toString());
50 protected int getInstances(){
51 Entity ent = new Entity();
52 return ent.getInstances();
54 public String getInstancesInfo(){
55 return "<table><tr><td>Momentan instanzierte EntityObjekte = </td><td>" + getInstances()+"</td></tr></table>\n";
57 protected HashMap getConfs(){
58 return Configuration.getConfs();
60 protected int getBrokerUseCnt(DbConnectionBroker broker){
61 return broker.getUseCount();
64 protected int getBrokerSize(DbConnectionBroker broker){
65 return broker.getSize();
67 public String getBrokerInfo(DbConnectionBroker broker){
68 return "<tr><td>Connections im pool = </td><td>"+ broker.getSize() + "</td></tr>\n"+
69 "<tr><td>Connection die gerade benutzt werden = </td><td>" + broker.getUseCount()+"</td></tr>\n";
71 public void getSimpleInfo(Writer out,HashMap confs) throws IOException{
73 DbConnectionBroker broker = null;
74 out.write(getInstancesInfo());
75 Set set = confs.keySet();
76 Iterator it = set.iterator();
77 for (int i=0;i<set.size();i++){
78 key=(String)it.next();
79 out.write("<table><tr><td>Konfiguration : </td><td>" + confs.get(key)+ "</td></tr>\n" );
80 //broker=(DbConnectionBroker) ((HashMap)confs.get(key)).get("Pool.broker");
81 if(broker!=null) out.write(getBrokerInfo(broker));
83 out.write("<tr><td>Broker nicht initializiert</td><td></td></tr>\n");
84 out.write("</table>\n");