X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fstatistics-manager%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fmd%2Fstatistics%2Fmanager%2FStatisticsManagerActivator.java;h=b59482e96b0feb8f75890b5d51d185cb459f5ef6;hp=653cc8081ab8a953463760560b54cf1bfd197894;hb=0a40bd5b8ca97e933ca5d2aaf4b01aa79ccb1c21;hpb=0e6d851dec0b00a3206255fa6447ab397a41f553 diff --git a/opendaylight/md-sal/statistics-manager/src/main/java/org/opendaylight/controller/md/statistics/manager/StatisticsManagerActivator.java b/opendaylight/md-sal/statistics-manager/src/main/java/org/opendaylight/controller/md/statistics/manager/StatisticsManagerActivator.java index 653cc8081a..b59482e96b 100644 --- a/opendaylight/md-sal/statistics-manager/src/main/java/org/opendaylight/controller/md/statistics/manager/StatisticsManagerActivator.java +++ b/opendaylight/md-sal/statistics-manager/src/main/java/org/opendaylight/controller/md/statistics/manager/StatisticsManagerActivator.java @@ -16,32 +16,23 @@ import org.opendaylight.controller.sal.binding.api.data.DataProviderService; import org.osgi.framework.BundleContext; public class StatisticsManagerActivator extends AbstractBindingAwareProvider { + private StatisticsProvider statsProvider; - private static ProviderContext pSession; - - private static StatisticsProvider statsProvider = new StatisticsProvider(); - @Override public void onSessionInitiated(ProviderContext session) { - - pSession = session; - DataProviderService dps = session.getSALService(DataProviderService.class); - StatisticsManagerActivator.statsProvider.setDataService(dps); - DataBrokerService dbs = session.getSALService(DataBrokerService.class); - StatisticsManagerActivator.statsProvider.setDataBrokerService(dbs); - NotificationProviderService nps = session.getSALService(NotificationProviderService.class); - StatisticsManagerActivator.statsProvider.setNotificationService(nps); - StatisticsManagerActivator.statsProvider.start(); + final DataBrokerService dbs = session.getSALService(DataBrokerService.class); + final DataProviderService dps = session.getSALService(DataProviderService.class); + final NotificationProviderService nps = session.getSALService(NotificationProviderService.class); + statsProvider = new StatisticsProvider(dps); + statsProvider.start(dbs, nps, session); } - + @Override protected void stopImpl(BundleContext context) { - StatisticsManagerActivator.statsProvider.close(); - } - - public static ProviderContext getProviderContext(){ - return pSession; + if (statsProvider != null) { + statsProvider.close(); + statsProvider = null; + } } - }