ConfigMagicDynamicMBean(String name, Object configBean) { super(name, toMap(configBean)); }
synchronized void export(Class<?> realClass, Object configBean) { MBeanServer server = this.server; if (server == null) { delayedBeanExports.add(Maps.immutableEntry(realClass, configBean)); return; } final String mungedName = munge(realClass.getName()); if (!currentExports.add(mungedName)) { return; // Already exported } try { server.registerMBean(new ConfigMagicDynamicMBean(realClass.getName(), configBean), new ObjectName(mungedName)); } catch (Exception e) { LOG.error("Unable to export config bean " + configBean.getClass().getName(), e); } }