import org.opendaylight.controller.md.sal.binding.api.DataBroker;
import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
import org.opendaylight.controller.sal.binding.api.BindingAwareProvider;
+import org.opendaylight.vpnservice.nexthopmgr.NexthopManager;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-public class NexthopmgrProvider implements BindingAwareProvider,
- AutoCloseable {
+public class NexthopmgrProvider implements BindingAwareProvider, AutoCloseable {
private static final Logger LOG = LoggerFactory.getLogger(NexthopmgrProvider.class);
- // private nexthopmgr nhManager;
+ private VpnInterfaceChangeListener vpnIfListener;
+ private OdlInterfaceChangeListener odlIfListener;
+ private NexthopManager nhManager;
@Override
public void onSessionInitiated(ProviderContext session) {
- final DataBroker dataBroker = session.getSALService(DataBroker.class);
- // nhManager = new nexthopManager(dataBroker);
- LOG.info("NexthopmgrProvider Session Initiated");
+ final DataBroker dbx = session.getSALService(DataBroker.class);
+ nhManager = new NexthopManager(dbx);
+ vpnIfListener = new VpnInterfaceChangeListener(dbx, nhManager);
+ odlIfListener = new OdlInterfaceChangeListener(dbx, nhManager);
+ LOG.info("NexthopmgrProvider Session Initiated");
}
@Override
public void close() throws Exception {
- //nhManager.close();
- LOG.info("NexthopmgrProvider Closed");
+ vpnIfListener.close();
+ odlIfListener.close();
+ nhManager.close();
+ LOG.info("NexthopmgrProvider Closed");
}
}