View Javadoc

1   package org.eclipse.jetty.nosql.mongodb.jmx;
2   
3   import org.eclipse.jetty.nosql.mongodb.MongoSessionManager;
4   import org.eclipse.jetty.server.handler.AbstractHandlerContainer;
5   import org.eclipse.jetty.server.handler.ContextHandler;
6   import org.eclipse.jetty.server.session.AbstractSessionManager;
7   import org.eclipse.jetty.server.session.SessionHandler;
8   import org.eclipse.jetty.server.session.jmx.AbstractSessionManagerMBean;
9   
10  public class MongoSessionManagerMBean extends AbstractSessionManagerMBean
11  {
12  
13      public MongoSessionManagerMBean(Object managedObject)
14      {
15          super(managedObject);
16      }
17  
18      /* ------------------------------------------------------------ */
19      public String getObjectContextBasis()
20      {
21          if (_managed != null && _managed instanceof MongoSessionManager)
22          {
23              MongoSessionManager manager = (MongoSessionManager)_managed;
24              
25              String basis = null;
26              SessionHandler handler = manager.getSessionHandler();
27              if (handler != null)
28              {
29                  ContextHandler context = 
30                      AbstractHandlerContainer.findContainerOf(handler.getServer(), 
31                                                               ContextHandler.class,
32                                                               handler);
33                  if (context != null)
34                      basis = getContextName(context);
35              }
36  
37              if (basis != null)
38                  return basis;
39          }
40          return super.getObjectContextBasis();
41      }
42      
43    
44      
45  }