| | |
| | | import java.util.concurrent.ConcurrentHashMap; |
| | | import java.util.concurrent.CopyOnWriteArrayList; |
| | | import java.util.concurrent.CopyOnWriteArraySet; |
| | | import java.lang.management.ManagementFactory; |
| | | |
| | | import javax.management.MBeanServer; |
| | | import javax.management.MBeanServerFactory; |
| | |
| | | { |
| | | try |
| | | { |
| | | // FIXME -- Should we use the plaform Mbean Server or |
| | | // should we use a private one ? |
| | | directoryServer.mBeanServer = MBeanServerFactory.newMBeanServer(); |
| | | // directoryServer.mBeanServer = |
| | | // ManagementFactory.getPlatformMBeanServer(); |
| | | // It is recommended by ManagementFactory javadoc that the platform |
| | | // MBeanServer also be used to register other application managed |
| | | // beans besides the platform MXBeans. Try platform MBeanServer |
| | | // first. If it fails create a new, private, MBeanServer instance. |
| | | try |
| | | { |
| | | directoryServer.mBeanServer = |
| | | ManagementFactory.getPlatformMBeanServer(); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | if (debugEnabled()) |
| | | { |
| | | TRACER.debugCaught(DebugLogLevel.WARNING, e); |
| | | } |
| | | |
| | | directoryServer.mBeanServer = |
| | | MBeanServerFactory.newMBeanServer(); |
| | | } |
| | | directoryServer.mBeans = new ConcurrentHashMap<DN,JMXMBean>(); |
| | | registerAlertGenerator(directoryServer); |
| | | } |