Merge "MD-SAL Statistics Provider"
[controller.git] / opendaylight / md-sal / statistics-manager / src / main / java / org / opendaylight / controller / md / statistics / manager / StatisticsManagerActivator.java
1 package org.opendaylight.controller.md.statistics.manager;
2
3 import org.opendaylight.controller.sal.binding.api.AbstractBindingAwareProvider;
4 import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
5 import org.opendaylight.controller.sal.binding.api.NotificationProviderService;
6 import org.opendaylight.controller.sal.binding.api.data.DataProviderService;
7 import org.osgi.framework.BundleContext;
8
9 public class StatisticsManagerActivator extends AbstractBindingAwareProvider {
10
11     private static ProviderContext pSession;
12     
13     private static StatisticsProvider statsProvider = new StatisticsProvider();
14    
15     @Override
16     public void onSessionInitiated(ProviderContext session) {
17         
18         DataProviderService dps = session.<DataProviderService>getSALService(DataProviderService.class);
19         StatisticsManagerActivator.statsProvider.setDataService(dps);
20         NotificationProviderService nps = session.<NotificationProviderService>getSALService(NotificationProviderService.class);
21         StatisticsManagerActivator.statsProvider.setNotificationService(nps);
22         StatisticsManagerActivator.statsProvider.start();
23
24     }
25     
26     @Override
27     protected void stopImpl(BundleContext context) {
28         StatisticsManagerActivator.statsProvider.close();
29     }
30     
31     public static ProviderContext getProviderContext(){
32         return pSession;
33     }
34
35 }