1 package org.opendaylight.ovsdb.openstack.netvirt.providers;
3 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
4 import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
5 import org.opendaylight.controller.sal.binding.api.BindingAwareProvider;
6 import org.osgi.framework.BundleContext;
7 import org.slf4j.Logger;
8 import org.slf4j.LoggerFactory;
11 * @author Sam Hague (shague@redhat.com)
13 public class NetvirtProvidersProvider implements BindingAwareProvider, AutoCloseable {
14 private static final Logger LOG = LoggerFactory.getLogger(NetvirtProvidersProvider.class);
15 private BundleContext bundleContext = null;
16 private static DataBroker dataBroker = null;
17 private ConfigActivator activator;
19 public NetvirtProvidersProvider(BundleContext bundleContext) {
20 LOG.info("NetvirtProvidersProvider: bundleContext: {}", bundleContext);
21 this.bundleContext = bundleContext;
24 public static DataBroker getDataBroker() {
29 public void close() throws Exception {
30 activator.stop(bundleContext);
34 public void onSessionInitiated(ProviderContext providerContext) {
35 dataBroker = providerContext.getSALService(DataBroker.class);
36 LOG.info("NetvirtProvidersProvider: onSessionInitiated dataBroker: {}", dataBroker);
37 this.activator = new ConfigActivator(providerContext);
39 activator.start(bundleContext);
40 } catch (Exception e) {
41 LOG.warn("Failed to start Netvirt: ", e);