1 // 2 // ======================================================================== 3 // Copyright (c) 1995-2014 Mort Bay Consulting Pty. Ltd. 4 // ------------------------------------------------------------------------ 5 // All rights reserved. This program and the accompanying materials 6 // are made available under the terms of the Eclipse Public License v1.0 7 // and Apache License v2.0 which accompanies this distribution. 8 // 9 // The Eclipse Public License is available at 10 // http://www.eclipse.org/legal/epl-v10.html 11 // 12 // The Apache License v2.0 is available at 13 // http://www.opensource.org/licenses/apache2.0.php 14 // 15 // You may elect to redistribute this code under either of these licenses. 16 // ======================================================================== 17 // 18 19 package org.eclipse.jetty.server.session.jmx; 20 21 import org.eclipse.jetty.server.handler.AbstractHandlerContainer; 22 import org.eclipse.jetty.server.handler.ContextHandler; 23 import org.eclipse.jetty.server.handler.jmx.AbstractHandlerMBean; 24 import org.eclipse.jetty.server.session.AbstractSessionManager; 25 import org.eclipse.jetty.server.session.SessionHandler; 26 27 public class AbstractSessionManagerMBean extends AbstractHandlerMBean 28 { AbstractSessionManagerMBean(Object managedObject)29 public AbstractSessionManagerMBean(Object managedObject) 30 { 31 super(managedObject); 32 } 33 34 /* ------------------------------------------------------------ */ getObjectContextBasis()35 public String getObjectContextBasis() 36 { 37 if (_managed != null && _managed instanceof AbstractSessionManager) 38 { 39 AbstractSessionManager manager = (AbstractSessionManager)_managed; 40 41 String basis = null; 42 SessionHandler handler = manager.getSessionHandler(); 43 if (handler != null) 44 { 45 ContextHandler context = 46 AbstractHandlerContainer.findContainerOf(handler.getServer(), 47 ContextHandler.class, 48 handler); 49 if (context != null) 50 basis = getContextName(context); 51 } 52 53 if (basis != null) 54 return basis; 55 } 56 return super.getObjectContextBasis(); 57 } 58 } 59