/*
- * Copyright (c) 2016, 2017 Ericsson India Global Services Pvt Ltd. and others. All rights reserved.
+ * Copyright (c) 2016, 2018 Ericsson India Global Services Pvt Ltd. and others. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
package org.opendaylight.genius.itm.listeners;
import com.google.common.base.Optional;
-import javax.annotation.PostConstruct;
-import javax.annotation.PreDestroy;
+import javax.annotation.Nonnull;
import javax.inject.Inject;
import javax.inject.Singleton;
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-import org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase;
import org.opendaylight.genius.itm.confighelpers.ItmMonitorToggleWorker;
import org.opendaylight.genius.itm.globals.ITMConstants;
import org.opendaylight.genius.itm.impl.ItmUtils;
+import org.opendaylight.genius.tools.mdsal.listener.AbstractSyncDataTreeChangeListener;
import org.opendaylight.infrautils.jobcoordinator.JobCoordinator;
import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rev160406.TunnelMonitoringTypeBase;
import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.config.rev160406.TunnelMonitorParams;
@Singleton
public class TunnelMonitorChangeListener
- extends AsyncDataTreeChangeListenerBase<TunnelMonitorParams, TunnelMonitorChangeListener> {
+ extends AbstractSyncDataTreeChangeListener<TunnelMonitorParams> {
private static final Logger LOG = LoggerFactory.getLogger(TunnelMonitorChangeListener.class);
private final JobCoordinator jobCoordinator;
@Inject
- public TunnelMonitorChangeListener(final DataBroker dataBroker, JobCoordinator jobCoordinator) {
- super(TunnelMonitorParams.class, TunnelMonitorChangeListener.class);
+ public TunnelMonitorChangeListener(DataBroker dataBroker, JobCoordinator jobCoordinator) {
+ super(dataBroker, LogicalDatastoreType.CONFIGURATION, InstanceIdentifier.create(TunnelMonitorParams.class));
this.broker = dataBroker;
this.jobCoordinator = jobCoordinator;
}
- @PostConstruct
- public void start() throws Exception {
- registerListener(LogicalDatastoreType.CONFIGURATION, this.broker);
- LOG.info("Tunnel Monitor listeners Started");
- }
-
@Override
- @PreDestroy
- public void close() {
- LOG.info("Tunnel Monitor listeners Closed");
- }
-
- @Override protected InstanceIdentifier<TunnelMonitorParams> getWildCardPath() {
- return InstanceIdentifier.create(TunnelMonitorParams.class);
- }
-
- @Override
- protected void remove(InstanceIdentifier<TunnelMonitorParams> key, TunnelMonitorParams dataObjectModification) {
+ public void remove(@Nonnull InstanceIdentifier<TunnelMonitorParams> instanceIdentifier,
+ @Nonnull TunnelMonitorParams dataObjectModification) {
InstanceIdentifier<TransportZones> path = InstanceIdentifier.builder(TransportZones.class).build();
Optional<TransportZones> transportZonesOptional = ItmUtils.read(LogicalDatastoreType.CONFIGURATION,
path, broker);
}
@Override
- protected void update(InstanceIdentifier<TunnelMonitorParams> key,
- TunnelMonitorParams dataObjectModificationBefore,
- TunnelMonitorParams dataObjectModificationAfter) {
+ public void update(@Nonnull InstanceIdentifier<TunnelMonitorParams> instanceIdentifier,
+ @Nonnull TunnelMonitorParams dataObjectModificationBefore,
+ @Nonnull TunnelMonitorParams dataObjectModificationAfter) {
LOG.debug("update TunnelMonitorChangeListener called with {}",dataObjectModificationAfter.isEnabled());
Class<? extends TunnelMonitoringTypeBase> monitorProtocolBefore =
dataObjectModificationBefore.getMonitorProtocol();
}
@Override
- protected void add(InstanceIdentifier<TunnelMonitorParams> key, TunnelMonitorParams dataObjectModification) {
+ public void add(@Nonnull InstanceIdentifier<TunnelMonitorParams> instanceIdentifier,
+ @Nonnull TunnelMonitorParams dataObjectModification) {
LOG.debug("Add - TunnelMonitorToggleWorker with Enable = {}, MonitorProtocol = {}",
dataObjectModification.isEnabled(), dataObjectModification.getMonitorProtocol());
Class<? extends TunnelMonitoringTypeBase> monitorProtocol = dataObjectModification.getMonitorProtocol();
}
}
}
-
- @Override protected TunnelMonitorChangeListener getDataTreeChangeListener() {
- return TunnelMonitorChangeListener.this;
- }
}
/*
- * Copyright (c) 2016, 2017 Ericsson India Global Services Pvt Ltd. and others. All rights reserved.
+ * Copyright (c) 2016, 2018 Ericsson India Global Services Pvt Ltd. and others. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
package org.opendaylight.genius.itm.listeners;
import com.google.common.base.Optional;
-import javax.annotation.PostConstruct;
-import javax.annotation.PreDestroy;
+import javax.annotation.Nonnull;
import javax.inject.Inject;
import javax.inject.Singleton;
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-import org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase;
import org.opendaylight.genius.itm.confighelpers.ItmMonitorIntervalWorker;
import org.opendaylight.genius.itm.impl.ItmUtils;
+import org.opendaylight.genius.tools.mdsal.listener.AbstractSyncDataTreeChangeListener;
import org.opendaylight.infrautils.jobcoordinator.JobCoordinator;
import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.config.rev160406.TunnelMonitorInterval;
import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.rev160406.TransportZones;
import org.slf4j.LoggerFactory;
@Singleton
-public class TunnelMonitorIntervalListener
- extends AsyncDataTreeChangeListenerBase<TunnelMonitorInterval, TunnelMonitorIntervalListener> {
+public class TunnelMonitorIntervalListener extends AbstractSyncDataTreeChangeListener<TunnelMonitorInterval> {
private static final Logger LOG = LoggerFactory.getLogger(TunnelMonitorIntervalListener.class);
@Inject
public TunnelMonitorIntervalListener(DataBroker dataBroker, JobCoordinator jobCoordinator) {
- super(TunnelMonitorInterval.class, TunnelMonitorIntervalListener.class);
+ super(dataBroker, LogicalDatastoreType.CONFIGURATION, InstanceIdentifier.create(TunnelMonitorInterval.class));
this.broker = dataBroker;
this.jobCoordinator = jobCoordinator;
}
- @PostConstruct
- public void start() {
- registerListener(LogicalDatastoreType.CONFIGURATION, this.broker);
- LOG.info("TunnelMonitorIntervalListener Started");
- }
-
- @Override
- @PreDestroy
- public void close() {
- LOG.info("TunnelMonitorIntervalListener Closed");
- }
-
- @Override protected InstanceIdentifier<TunnelMonitorInterval> getWildCardPath() {
- return InstanceIdentifier.create(TunnelMonitorInterval.class);
- }
-
@Override
- protected void remove(InstanceIdentifier<TunnelMonitorInterval> key, TunnelMonitorInterval dataObjectModification) {
- LOG.debug("remove TunnelMonitorIntervalListener called with {}",dataObjectModification.getInterval());
+ public void remove(@Nonnull InstanceIdentifier<TunnelMonitorInterval> instanceIdentifier,
+ @Nonnull TunnelMonitorInterval dataObjectModification) {
+ LOG.debug("remove TunnelMonitorIntervalListener called with {}", dataObjectModification.getInterval());
InstanceIdentifier<TransportZones> path = InstanceIdentifier.builder(TransportZones.class).build();
- Optional<TransportZones> transportZonesOptional = ItmUtils.read(LogicalDatastoreType.CONFIGURATION,
- path, broker);
+ Optional<TransportZones> transportZonesOptional = ItmUtils
+ .read(LogicalDatastoreType.CONFIGURATION, path, broker);
if (transportZonesOptional.isPresent()) {
TransportZones tzones = transportZonesOptional.get();
for (TransportZone tzone : tzones.getTransportZone()) {
//if you remove configuration, the last configured interval is only set i.e no change
- LOG.debug("Remove:Calling TunnelMonitorIntervalWorker with tzone = {} and {}",
- tzone.getZoneName(),dataObjectModification.getInterval());
+ LOG.debug("Remove:Calling TunnelMonitorIntervalWorker with tzone = {} and {}", tzone.getZoneName(),
+ dataObjectModification.getInterval());
ItmMonitorIntervalWorker toggleWorker = new ItmMonitorIntervalWorker(tzone.getZoneName(),
- dataObjectModification.getInterval(), broker);
+ dataObjectModification
+ .getInterval(), broker);
jobCoordinator.enqueueJob(tzone.getZoneName(), toggleWorker);
}
}
}
- @Override protected void update(InstanceIdentifier<TunnelMonitorInterval> key,
- TunnelMonitorInterval dataObjectModificationBefore,
- TunnelMonitorInterval dataObjectModificationAfter) {
- LOG.debug("update TunnelMonitorIntervalListener called with {}",dataObjectModificationAfter.getInterval());
+ @Override
+ public void update(@Nonnull InstanceIdentifier<TunnelMonitorInterval> instanceIdentifier,
+ @Nonnull TunnelMonitorInterval dataObjectModificationBefore,
+ @Nonnull TunnelMonitorInterval dataObjectModificationAfter) {
+ LOG.debug("update TunnelMonitorIntervalListener called with {}", dataObjectModificationAfter.getInterval());
InstanceIdentifier<TransportZones> path = InstanceIdentifier.builder(TransportZones.class).build();
- Optional<TransportZones> transportZonesOptional = ItmUtils.read(LogicalDatastoreType.CONFIGURATION,
- path, broker);
+ Optional<TransportZones> transportZonesOptional = ItmUtils
+ .read(LogicalDatastoreType.CONFIGURATION, path, broker);
if (transportZonesOptional.isPresent()) {
TransportZones tzones = transportZonesOptional.get();
for (TransportZone tzone : tzones.getTransportZone()) {
- LOG.debug("Update:Calling TunnelMonitorIntervalWorker with tzone = {} and {}",
- tzone.getZoneName(),dataObjectModificationAfter.getInterval());
+ LOG.debug("Update:Calling TunnelMonitorIntervalWorker with tzone = {} and {}", tzone.getZoneName(),
+ dataObjectModificationAfter.getInterval());
ItmMonitorIntervalWorker intervalWorker = new ItmMonitorIntervalWorker(tzone.getZoneName(),
- dataObjectModificationAfter.getInterval(), broker);
+ dataObjectModificationAfter
+ .getInterval(), broker);
jobCoordinator.enqueueJob(tzone.getZoneName(), intervalWorker);
}
}
}
@Override
- protected void add(InstanceIdentifier<TunnelMonitorInterval> key, TunnelMonitorInterval dataObjectModification) {
- LOG.debug("Add TunnelMonitorIntervalListener called with {}",dataObjectModification.getInterval());
+ public void add(@Nonnull InstanceIdentifier<TunnelMonitorInterval> instanceIdentifier,
+ @Nonnull TunnelMonitorInterval dataObjectModification) {
+ LOG.debug("Add TunnelMonitorIntervalListener called with {}", dataObjectModification.getInterval());
InstanceIdentifier<TransportZones> path = InstanceIdentifier.builder(TransportZones.class).build();
- Optional<TransportZones> transportZonesOptional = ItmUtils.read(LogicalDatastoreType.CONFIGURATION,
- path, broker);
+ Optional<TransportZones> transportZonesOptional = ItmUtils
+ .read(LogicalDatastoreType.CONFIGURATION, path, broker);
if (transportZonesOptional.isPresent()) {
TransportZones tzones = transportZonesOptional.get();
for (TransportZone tzone : tzones.getTransportZone()) {
- LOG.debug("Add:Calling TunnelMonitorIntervalWorker with tzone = {} and {}",
- tzone.getZoneName(),dataObjectModification.getInterval());
+ LOG.debug("Add:Calling TunnelMonitorIntervalWorker with tzone = {} and {}", tzone.getZoneName(),
+ dataObjectModification.getInterval());
ItmMonitorIntervalWorker intervalWorker = new ItmMonitorIntervalWorker(tzone.getZoneName(),
- dataObjectModification.getInterval(), broker);
+ dataObjectModification
+ .getInterval(), broker);
//conversion to milliseconds done while writing to i/f-mgr config DS
jobCoordinator.enqueueJob(tzone.getZoneName(), intervalWorker);
}
}
}
-
- @Override protected TunnelMonitorIntervalListener getDataTreeChangeListener() {
- return TunnelMonitorIntervalListener.this;
- }
}