package org.jboss.mx.remoting;
import java.util.ArrayList;
import javax.management.MBeanServer;
import javax.management.ObjectName;
import javax.management.MBeanServerFactory;
public class JMXUtil
{
private static ObjectName mbeanserver;
public static MBeanServer getMBeanServer ()
{
ArrayList list = MBeanServerFactory.findMBeanServer(System.getProperty("jboss.remoting.jmxid"));
if (list.isEmpty())
{
return null;
}
return (MBeanServer)list.iterator().next();
}
public static final ObjectName getMBeanServerObjectName()
throws Exception
{
if (mbeanserver == null)
{
mbeanserver = new ObjectName("JMImplementation:type=MBeanServerDelegate");
}
return mbeanserver;
}
public static final String getServerId(MBeanServer server)
throws Exception
{
if (server == null)
{
throw new NullPointerException("MBeanServer is null");
}
if (mbeanserver == null)
{
mbeanserver = new ObjectName("JMImplementation:type=MBeanServerDelegate");
}
return (String) server.getAttribute(mbeanserver, "MBeanServerId");
}
}