X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fstatistics-manager%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fmd%2Fstatistics%2Fmanager%2FStatisticsManagerActivator.java;h=b59482e96b0feb8f75890b5d51d185cb459f5ef6;hb=cb016426ddc0f08cee3c9475f4214388c0035edd;hp=738c2cb9a8f6375d8681a5e824b0d2f953d1a211;hpb=0c5fea94e6b10494863a9ed3603279919cb3ef1c;p=controller.git 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 738c2cb9a8..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 @@ -11,34 +11,28 @@ package org.opendaylight.controller.md.statistics.manager; import org.opendaylight.controller.sal.binding.api.AbstractBindingAwareProvider; import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext; import org.opendaylight.controller.sal.binding.api.NotificationProviderService; +import org.opendaylight.controller.sal.binding.api.data.DataBrokerService; 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); - 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; + } } - }