From 9b9a4ecc6c0fd8beb6223f8bf3c135d9e704ff94 Mon Sep 17 00:00:00 2001 From: adetalhouet Date: Fri, 30 Oct 2015 12:16:50 -0400 Subject: [PATCH] Use Set instead of Map to store listeners Change-Id: I1099cfef518a77a8cee07570a89ed9b1acdcedce Signed-off-by: adetalhouet --- .../unimgr/impl/UnimgrDataChangeListener.java | 31 +++++++++---------- 1 file changed, 14 insertions(+), 17 deletions(-) diff --git a/impl/src/main/java/org/opendaylight/unimgr/impl/UnimgrDataChangeListener.java b/impl/src/main/java/org/opendaylight/unimgr/impl/UnimgrDataChangeListener.java index 59d6a833..249a6dd1 100644 --- a/impl/src/main/java/org/opendaylight/unimgr/impl/UnimgrDataChangeListener.java +++ b/impl/src/main/java/org/opendaylight/unimgr/impl/UnimgrDataChangeListener.java @@ -8,15 +8,16 @@ package org.opendaylight.unimgr.impl; import java.util.ArrayList; -import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Set; import org.opendaylight.controller.md.sal.binding.api.DataBroker; import org.opendaylight.controller.md.sal.binding.api.DataChangeListener; +import org.opendaylight.controller.md.sal.common.api.data.AsyncDataBroker.DataChangeScope; import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent; import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; -import org.opendaylight.controller.md.sal.common.api.data.AsyncDataBroker.DataChangeScope; import org.opendaylight.unimgr.api.IUnimgrDataChangeListener; import org.opendaylight.unimgr.command.Command; import org.opendaylight.unimgr.command.EvcCreateCommand; @@ -35,26 +36,23 @@ import org.slf4j.LoggerFactory; public class UnimgrDataChangeListener implements IUnimgrDataChangeListener { private static final Logger LOG = LoggerFactory.getLogger(UnimgrDataChangeListener.class); - private Map> listeners; + private Set> listeners; private DataBroker dataBroker; private TransactionInvoker invoker; public UnimgrDataChangeListener(DataBroker dataBroker, TransactionInvoker invoker) { this.dataBroker = dataBroker; this.invoker = invoker; - listeners = new HashMap>(); - ListenerRegistration uniListener = dataBroker.registerDataChangeListener( + listeners = new HashSet>(); + listeners.add(dataBroker.registerDataChangeListener( LogicalDatastoreType.CONFIGURATION, UnimgrMapper.createUniIid() - , this, DataChangeScope.SUBTREE); - ListenerRegistration evcListener = dataBroker.registerDataChangeListener( + , this, DataChangeScope.SUBTREE)); + listeners.add(dataBroker.registerDataChangeListener( LogicalDatastoreType.CONFIGURATION, UnimgrMapper.createEvcIid() - , this, DataChangeScope.SUBTREE); - ListenerRegistration ovsdbListener = dataBroker.registerDataChangeListener( + , this, DataChangeScope.SUBTREE)); + listeners.add(dataBroker.registerDataChangeListener( LogicalDatastoreType.OPERATIONAL, UnimgrMapper.getOvsdbTopologyIdentifier() - , this, DataChangeScope.SUBTREE); - listeners.put("uni", uniListener); - listeners.put("evc", evcListener); - listeners.put("ovsdb", ovsdbListener); + , this, DataChangeScope.SUBTREE)); } @Override @@ -102,10 +100,9 @@ public class UnimgrDataChangeListener implements IUnimgrDataChangeListener { @Override public void close() throws Exception { LOG.info("UnimgrDataChangeListener stopped."); - for (Map.Entry> entry : listeners.entrySet()) { - ListenerRegistration value = entry.getValue(); - if (value != null) { - value.close(); + for (ListenerRegistration listener : listeners) { + if (listener != null) { + listener.close(); } } } -- 2.36.6