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());
43 out.println(getInstancesConfInfo());
47 //e.printStackTrace();
48 throw new ServletModuleException(e.toString());
51 protected int getInstances(){
52 AbstractEntity ent = new AbstractEntity();
53 return ent.getInstances();
55 public String getInstancesInfo(){
56 return "<table><tr><td>Momentan instanzierte EntityObjekte = </td><td>" + getInstances()+"</td></tr></table>\n";
58 public String getInstancesConfInfo(){
59 return "<table><tr><td>Momentan instanzierte BrokerObjekte = </td><td>" + getConfBrokerCnt()+"</td></tr></table>\n";
62 protected HashMap getConfs(){
63 return Configuration.getConfs();
65 protected int getBrokerUseCnt(DbConnectionBroker broker){
66 return broker.getUseCount();
68 protected int getConfBrokerCnt(){
69 return Configuration.getBrokerInstances();
71 protected int getBrokerSize(DbConnectionBroker broker){
72 return broker.getSize();
74 public String getBrokerInfo(DbConnectionBroker broker){
75 return "<tr><td>Connections im pool = </td><td>"+ broker.getSize() + "</td></tr>\n"+
76 "<tr><td>Connection die gerade benutzt werden = </td><td>" + broker.getUseCount()+"</td></tr>\n";
78 public void getSimpleInfo(Writer out,HashMap confs) throws IOException{
80 DbConnectionBroker broker = null;
81 out.write(getInstancesInfo());
82 out.write(getInstancesConfInfo());
83 Set set = confs.keySet();
84 Iterator it = set.iterator();
85 for (int i=0;i<set.size();i++){
86 key=(String)it.next();
87 out.write("<table><tr><td>Konfiguration : </td><td>" + confs.get(key)+ "</td></tr>\n" );
88 broker=Configuration.getBrokerInfo();
89 //broker=(DbConnectionBroker) ((HashMap)confs.get(key)).get("Pool.broker");
90 if(broker!=null) out.write(getBrokerInfo(broker));
92 out.write("<tr><td>Broker nicht initializiert</td><td></td></tr>\n");
93 out.write("</table>\n");