X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=aclservice%2Fimpl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fnetvirt%2Faclservice%2Flisteners%2FAclElanInterfaceListener.java;fp=aclservice%2Fimpl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fnetvirt%2Faclservice%2Flisteners%2FAclElanInterfaceListener.java;h=ac637823ba4be9fb54bef80d12d972b577a8591b;hb=2f0569ed75ef8a1fb60f992d19c8bbdf92ff45bf;hp=e1b1d92605309afef2dae7a62649005fc4d38d7f;hpb=fffad3ab6e2bd0c6179ce5391a5d716746645aa1;p=netvirt.git diff --git a/aclservice/impl/src/main/java/org/opendaylight/netvirt/aclservice/listeners/AclElanInterfaceListener.java b/aclservice/impl/src/main/java/org/opendaylight/netvirt/aclservice/listeners/AclElanInterfaceListener.java index e1b1d92605..ac637823ba 100644 --- a/aclservice/impl/src/main/java/org/opendaylight/netvirt/aclservice/listeners/AclElanInterfaceListener.java +++ b/aclservice/impl/src/main/java/org/opendaylight/netvirt/aclservice/listeners/AclElanInterfaceListener.java @@ -7,13 +7,13 @@ */ package org.opendaylight.netvirt.aclservice.listeners; -import javax.annotation.PostConstruct; +import javax.annotation.PreDestroy; import javax.inject.Inject; import javax.inject.Singleton; -import org.opendaylight.controller.md.sal.binding.api.ClusteredDataTreeChangeListener; -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.infrautils.utils.concurrent.Executors; +import org.opendaylight.mdsal.binding.api.ClusteredDataTreeChangeListener; +import org.opendaylight.mdsal.binding.api.DataBroker; +import org.opendaylight.mdsal.common.api.LogicalDatastoreType; import org.opendaylight.netvirt.aclservice.api.AclInterfaceCache; import org.opendaylight.netvirt.aclservice.api.AclServiceManager; import org.opendaylight.netvirt.aclservice.api.AclServiceManager.Action; @@ -22,6 +22,7 @@ import org.opendaylight.netvirt.aclservice.utils.AclClusterUtil; import org.opendaylight.netvirt.aclservice.utils.AclServiceUtils; import org.opendaylight.serviceutils.srm.RecoverableListener; import org.opendaylight.serviceutils.srm.ServiceRecoveryRegistry; +import org.opendaylight.serviceutils.tools.listener.AbstractAsyncDataTreeChangeListener; import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.elan.rev150602.ElanInterfaces; import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.elan.rev150602.elan.instances.ElanInstance; import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.elan.rev150602.elan.interfaces.ElanInterface; @@ -30,7 +31,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @Singleton -public class AclElanInterfaceListener extends AsyncDataTreeChangeListenerBase +public class AclElanInterfaceListener extends AbstractAsyncDataTreeChangeListener implements ClusteredDataTreeChangeListener, RecoverableListener { private static final Logger LOG = LoggerFactory.getLogger(AclElanInterfaceListener.class); @@ -43,7 +44,9 @@ public class AclElanInterfaceListener extends AsyncDataTreeChangeListenerBase getWildCardPath() { - return InstanceIdentifier.create(ElanInterfaces.class).child(ElanInterface.class); + public void deregisterListener() { + super.close(); } @Override - protected void remove(InstanceIdentifier key, ElanInterface dataObjectModification) { + public void remove(InstanceIdentifier key, ElanInterface dataObjectModification) { // do nothing } @Override - protected void update(InstanceIdentifier key, ElanInterface dataObjectModificationBefore, + public void update(InstanceIdentifier key, ElanInterface dataObjectModificationBefore, ElanInterface dataObjectModificationAfter) { // do nothing } @Override - protected void add(InstanceIdentifier key, ElanInterface elanInterface) { + public void add(InstanceIdentifier key, ElanInterface elanInterface) { String interfaceId = elanInterface.getName(); AclInterface aclInterface = aclInterfaceCache.updateIfPresent(interfaceId, (prevAclInterface, builder) -> { if (prevAclInterface.getElanId() == null) { @@ -109,7 +109,9 @@ public class AclElanInterfaceListener extends AsyncDataTreeChangeListenerBase