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 }