![JAR search and dependency download from the Maven repository](/logo.png)
org.jolokia.util.ServersInfo Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jolokia-core Show documentation
Show all versions of jolokia-core Show documentation
jar file containing servlet and helper classes
/*
* Copyright 2009-2013 Roland Huss
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jolokia.util;
import java.lang.management.ManagementFactory;
import java.util.Set;
import javax.management.*;
/**
* Simple helper class for dumping out information about MBeanServers
* @author roland
* @since 22.01.13
*/
public final class ServersInfo {
// Only utility methods
private ServersInfo() {}
/**
* Dump out a list of MBeanServer with some statistics.
*
* @param servers server to dump
* @return statistics as strings
*/
public static String dump(Set servers) {
StringBuffer ret = new StringBuffer();
ret.append("Found ").append(servers.size()).append(" MBeanServers\n");
for (MBeanServerConnection c : servers) {
MBeanServer s = (MBeanServer) c;
ret.append(" ")
.append("++ ")
.append(s.toString())
.append(": default domain = ")
.append(s.getDefaultDomain())
.append(", ")
.append(s.getMBeanCount())
.append(" MBeans\n");
ret.append(" Domains:\n");
for (String d : s.getDomains()) {
appendDomainInfo(ret, s, d);
}
}
ret.append("\n");
ret.append("Platform MBeanServer: ")
.append(ManagementFactory.getPlatformMBeanServer())
.append("\n");
return ret.toString();
}
private static void appendDomainInfo(StringBuffer pRet, MBeanServer pServer, String pDomain) {
try {
pRet.append(" == ").append(pDomain).append("\n");
Set beans = pServer.queryMBeans(new ObjectName(pDomain + ":*"),null);
for (ObjectInstance o : beans) {
String n = o.getObjectName().getCanonicalKeyPropertyListString();
pRet.append(" ").append(n).append("\n");
}
} catch (MalformedObjectNameException e) {
// Shouldnt happen
pRet.append(" INTERNAL ERROR: ").append(e).append("\n");
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy