dbpoolman instead of connectionbroker
[mir.git] / source / mir / servlet / ServletModuleMonitor.java
1 package mir.servlet;
2
3 import java.io.*;
4 import java.sql.*;
5 import java.util.*;
6 import javax.servlet.*;
7 import javax.servlet.http.*;
8
9 import freemarker.template.*;
10
11 import mir.servlet.*;
12 import mir.module.*;
13 import mir.misc.*;
14 import mir.storage.*;
15 import mir.entity.*;
16
17 import com.javaexchange.dbConnectionBroker.*;
18 /*
19  *  ServletModuleShow -
20  *  liefert HTML fuer Show
21  *
22  *
23  * @author RK
24  */
25
26 public class ServletModuleMonitor extends ServletModule
27 {
28   private static ServletModuleMonitor instance = new ServletModuleMonitor();
29   public static ServletModule getInstance() { return instance; }
30
31   public String defaultAction() { return "show"; }
32
33   public void show(HttpServletRequest req, HttpServletResponse res) throws ServletModuleException {
34
35     try {
36       // Hier Ausgabe von
37       // instances in AbstractEntity
38       // eingelesene confs
39       // datenbankverbindungen fuer brokers
40       getSimpleInfo(res.getWriter(),getConfs());
41       PrintWriter out = res.getWriter();
42       out.println(getInstancesInfo());
43
44     }
45     catch (Exception e) {
46       //e.printStackTrace();
47       throw new ServletModuleException(e.toString());
48     }
49   }
50   protected int getInstances(){
51     Entity ent = new Entity();
52     return ent.getInstances();
53   }
54   public String getInstancesInfo(){
55     return "<table><tr><td>Momentan instanzierte EntityObjekte = </td><td>" + getInstances()+"</td></tr></table>\n";
56   }
57   protected HashMap getConfs(){
58     return Configuration.getConfs();
59   }
60   protected int getBrokerUseCnt(DbConnectionBroker broker){
61     return broker.getUseCount();
62   }
63
64   protected int getBrokerSize(DbConnectionBroker broker){
65     return broker.getSize();
66   }
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";
70   }
71   public void getSimpleInfo(Writer out,HashMap confs) throws IOException{
72     String key;
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));
82       else
83         out.write("<tr><td>Broker nicht initializiert</td><td></td></tr>\n");
84       out.write("</table>\n");
85     }
86   }
87 }
88