KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > sessionViewer > business > ApplicationListImpl


1 package sessionViewer.business;
2
3 import java.util.Vector JavaDoc;
4 import java.util.Enumeration JavaDoc;
5 import com.lutris.appserver.server.httpPresentation.servlet.*;
6 import com.lutris.appserver.server.*;
7 import com.lutris.appserver.server.session.*;
8 import sessionViewer.spec.*;
9 import com.lutris.appserver.server.sessionContainerAdapter.*;
10 import javax.servlet.*;
11 import org.mortbay.jetty.*;
12 import org.mortbay.http.*;
13 import org.mortbay.servlet.*;
14 import org.mortbay.jetty.servlet.*;
15
16
17 public class ApplicationListImpl implements ApplicationList{
18   
19   
20 public Vector JavaDoc[] getList() throws Exception JavaDoc {
21      
22        Vector JavaDoc servlets=GlobalImpl.getServletNames();
23        
24        Vector JavaDoc[] result = new Vector JavaDoc[2];
25        result[0] = new Vector JavaDoc();
26        result[1] = new Vector JavaDoc();
27        
28      
29    for(int k=0;k<servlets.size();k++){
30          Servlet s = null;
31          HttpContext sc=null;
32          Application app = null;
33          String JavaDoc tempName=null;
34          com.lutris.appserver.server.session.SessionManager sessionManager = null;
35          tempName=(String JavaDoc)servlets.elementAt(k);
36          sc=GlobalImpl.getServlet(tempName);
37        try{
38          ServletHandler ttt=(ServletHandler)sc.getHandler(Class.forName("org.mortbay.jetty.servlet.ServletHandler"));
39          ServletHolder sh=ttt.getServletHolder("enhydra");
40          if(sh!=null)
41           {
42          try{
43               s= sh.getServlet();
44             }catch(Exception JavaDoc e){
45                 
46             }
47            }
48        
49           if (s !=null)
50           {
51             try {
52                 app = ((HttpPresentationServlet)s).getApplication();
53             
54                 sessionManager = app.getSessionManager();
55          if ((sessionManager instanceof ContainerAdapterSessionManager) || (sessionManager instanceof JmxContainerAdapterSessionManager)){
56             AbstractSessionManager manager=(AbstractSessionManager)((ServletHandler)(sc.getHandler(Class.forName("org.mortbay.jetty.servlet.ServletHandler")))).getSessionManager();
57                 Integer JavaDoc o = new Integer JavaDoc(manager.getSessions());
58                  result[0].addElement(tempName);
59          result[1].addElement(o);
60             }else{
61                 Integer JavaDoc o = new Integer JavaDoc(sessionManager.activeSessionCount());
62                 result[0].addElement(tempName);
63                 result[1].addElement(o);
64                 }
65            } catch (Exception JavaDoc ex){
66                 System.out.println("Couldn't get number of active sessions for "+tempName+" application!");
67                 result[0].clear();
68                 result[1].clear();
69               }
70           } else{
71             try{
72       AbstractSessionManager manager=(AbstractSessionManager)((ServletHandler)(sc.getHandler(Class.forName("org.mortbay.jetty.servlet.ServletHandler")))).getSessionManager();
73           Integer JavaDoc o = new Integer JavaDoc(manager.getSessions());
74           result[0].addElement(tempName);
75       result[1].addElement(o);
76                } catch (Exception JavaDoc ex){
77                 System.out.println("Couldn't get number of active sessions for "+tempName+" application!");
78                 result[0].clear();
79                 result[1].clear();
80             }
81         
82         }
83            
84        }catch(Exception JavaDoc e){
85        
86         System.out.println("Couldn't acess to servlet :"+tempName+" !");
87                 result[0].clear();
88                     result[1].clear();
89         }
90        }
91        return result;
92     }
93 }
94
95
Popular Tags