X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-inmemory-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fmd%2Fsal%2Fdom%2Fstore%2Fimpl%2Fjmx%2FInMemoryDataStoreStats.java;h=cb91b4c81ac2c7bf1222678eb6f3f063bd02fd42;hb=refs%2Fchanges%2F01%2F11401%2F17;hp=b3608eceef13d7006c007a90e6c715323d693221;hpb=f72e1fabf7cab160e78d1ddb3729491552e6c59a;p=controller.git diff --git a/opendaylight/md-sal/sal-inmemory-datastore/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/jmx/InMemoryDataStoreStats.java b/opendaylight/md-sal/sal-inmemory-datastore/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/jmx/InMemoryDataStoreStats.java index b3608eceef..cb91b4c81a 100644 --- a/opendaylight/md-sal/sal-inmemory-datastore/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/jmx/InMemoryDataStoreStats.java +++ b/opendaylight/md-sal/sal-inmemory-datastore/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/jmx/InMemoryDataStoreStats.java @@ -8,10 +8,10 @@ package org.opendaylight.controller.md.sal.dom.store.impl.jmx; -import java.util.concurrent.ExecutorService; - +import org.opendaylight.controller.md.sal.common.util.jmx.AbstractMXBean; import org.opendaylight.controller.md.sal.common.util.jmx.QueuedNotificationManagerMXBeanImpl; import org.opendaylight.controller.md.sal.common.util.jmx.ThreadExecutorStatsMXBeanImpl; +import org.opendaylight.controller.md.sal.dom.store.impl.InMemoryDOMDataStore; import org.opendaylight.yangtools.util.concurrent.QueuedNotificationManager; /** @@ -21,24 +21,24 @@ import org.opendaylight.yangtools.util.concurrent.QueuedNotificationManager; */ public class InMemoryDataStoreStats implements AutoCloseable { - private final ThreadExecutorStatsMXBeanImpl notificationExecutorStatsBean; - private final ThreadExecutorStatsMXBeanImpl dataStoreExecutorStatsBean; + private final AbstractMXBean notificationExecutorStatsBean; private final QueuedNotificationManagerMXBeanImpl notificationManagerStatsBean; - public InMemoryDataStoreStats(String mBeanType, QueuedNotificationManager manager, - ExecutorService dataStoreExecutor) { + public InMemoryDataStoreStats(final String mBeanType, final QueuedNotificationManager manager) { - this.notificationManagerStatsBean = new QueuedNotificationManagerMXBeanImpl(manager, + notificationManagerStatsBean = new QueuedNotificationManagerMXBeanImpl(manager, "notification-manager", mBeanType, null); notificationManagerStatsBean.registerMBean(); - this.notificationExecutorStatsBean = new ThreadExecutorStatsMXBeanImpl(manager.getExecutor(), + notificationExecutorStatsBean = ThreadExecutorStatsMXBeanImpl.create(manager.getExecutor(), "notification-executor", mBeanType, null); - this.notificationExecutorStatsBean.registerMBean(); + if (notificationExecutorStatsBean != null) { + notificationExecutorStatsBean.registerMBean(); + } + } - this.dataStoreExecutorStatsBean = new ThreadExecutorStatsMXBeanImpl(dataStoreExecutor, - "data-store-executor", mBeanType, null); - this.dataStoreExecutorStatsBean.registerMBean(); + public InMemoryDataStoreStats(final String name, final InMemoryDOMDataStore dataStore) { + this(name, dataStore.getDataChangeListenerNotificationManager()); } @Override @@ -47,10 +47,6 @@ public class InMemoryDataStoreStats implements AutoCloseable { notificationExecutorStatsBean.unregisterMBean(); } - if(dataStoreExecutorStatsBean != null) { - dataStoreExecutorStatsBean.unregisterMBean(); - } - if(notificationManagerStatsBean != null) { notificationManagerStatsBean.unregisterMBean(); }