package com.javamonitor.mbeans; import static com.ifsoft.jmxweb.plugin.JmxWebPlugin.OBJECTNAME_OPENFIRE; import com.javamonitor.JmxHelper; /** * The tricky bits for Openfire servers. * * @author Kees Jan Koster <kjkoster@kjkoster.org> */ public class ServerOpenfire implements ServerMBean { /** * See if we are running in an Openfire server. * * @return <code>true</code> if we are running inside Openfire, or * <code>false</code> otherwise. */ public static boolean runningInOpenfire() { return JmxHelper.mbeanExists(OBJECTNAME_OPENFIRE); } /** * @see com.javamonitor.mbeans.ServerMBean#getName() */ public String getName() throws Exception { return "Openfire"; } /** * @see com.javamonitor.mbeans.ServerMBean#getVersion() */ public String getVersion() throws Exception { return JmxHelper.queryString(OBJECTNAME_OPENFIRE, "Version"); } /** * @see com.javamonitor.mbeans.ServerMBean#getHttpPort() */ public Integer getHttpPort() throws Exception { return JmxHelper.queryInt(OBJECTNAME_OPENFIRE, "LowestPort"); } /** * @see com.javamonitor.mbeans.ServerMBean#getLastException() */ public Throwable getLastException() { // not used, the Server class resolves this for us throw new Error("Not implemented..."); } }