public ModuleStats(StandardContext context) {
assert context != null;
// Retrieve the MBean server
mBeanServer = Registry.getRegistry(null, null).getMBeanServer();
try {
// org.apache.commons.modeler.BaseModelMBean@Geronimo:type=Manager,path=/,host=localhost
mgrName = new ObjectName("*:type=Manager,*");
} catch (Exception ex) {
log.error("Error - " + ex.toString());
}
// Query Session Managers
Set set = mBeanServer.queryMBeans(mgrName, null);
Iterator iterator = set.iterator();
ObjectName objectName;
while (iterator.hasNext()) {
ObjectInstance oi = (ObjectInstance) iterator.next();
objectName = oi.getObjectName();
if (objectName.getKeyProperty("path").indexOf(context.getPath()) > -1) {
mgrName = objectName;
break;
}
}
// initialize static values
stats.setProcessingTime(context.getProcessingTime());
stats.setStartupTime(context.getStartupTime());
stats.setTldScanTime(context.getTldScanTime());
}
|