X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=vpnmanager%2Fimpl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fnetvirt%2Fvpnmanager%2FCentralizedSwitchChangeListener.java;h=44e8e28a2d95c58b4f7d91b4b96d7ffeaa460e2d;hb=cf1ea9172b94fc17e45391b62bf4ca24ac5c5fe0;hp=80da10c4b88102cfa72da5ec7fd9f73183302d06;hpb=84a7d0a360f0d5f9b588e269840a92158d1be7d2;p=netvirt.git diff --git a/vpnmanager/impl/src/main/java/org/opendaylight/netvirt/vpnmanager/CentralizedSwitchChangeListener.java b/vpnmanager/impl/src/main/java/org/opendaylight/netvirt/vpnmanager/CentralizedSwitchChangeListener.java index 80da10c4b8..44e8e28a2d 100644 --- a/vpnmanager/impl/src/main/java/org/opendaylight/netvirt/vpnmanager/CentralizedSwitchChangeListener.java +++ b/vpnmanager/impl/src/main/java/org/opendaylight/netvirt/vpnmanager/CentralizedSwitchChangeListener.java @@ -10,7 +10,8 @@ package org.opendaylight.netvirt.vpnmanager; import static org.opendaylight.genius.infra.Datastore.CONFIGURATION; -import java.util.List; +import java.util.ArrayList; +import java.util.Map; import java.util.Objects; import java.util.concurrent.ExecutionException; import javax.annotation.PreDestroy; @@ -31,6 +32,7 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types. import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.NaptSwitches; import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.ext.routers.Routers; import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.ext.routers.routers.ExternalIps; +import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.ext.routers.routers.ExternalIpsKey; import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.napt.switches.RouterToNaptSwitch; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; import org.opendaylight.yangtools.yang.common.Uint64; @@ -130,13 +132,13 @@ public class CentralizedSwitchChangeListener Uuid extNetworkId = router.getNetworkId(); String extGwMacAddress = router.getExtGwMacAddress(); String routerName = router.getRouterName(); - List externalIps = router.getExternalIps(); - if (externalIps.isEmpty()) { + Map externalIpsMap = router.getExternalIps(); + if (externalIpsMap.isEmpty()) { LOG.error("CentralizedSwitchChangeListener: setupRouterGwFlows no externalIP present"); return; } - for (ExternalIps extIp : router.nonnullExternalIps()) { + for (ExternalIps extIp : router.nonnullExternalIps().values()) { Uuid subnetVpnName = extIp.getSubnetId(); if (addOrRemove == NwConstants.ADD_FLOW) { vpnManager.addRouterGwMacFlow(routerName, extGwMacAddress, primarySwitchId, extNetworkId, @@ -151,11 +153,11 @@ public class CentralizedSwitchChangeListener if (addOrRemove == NwConstants.ADD_FLOW) { vpnManager.addArpResponderFlowsToExternalNetworkIps(routerName, - VpnUtil.getIpsListFromExternalIps(router.getExternalIps()), + VpnUtil.getIpsListFromExternalIps(new ArrayList(router.getExternalIps().values())), extGwMacAddress, primarySwitchId, extNetworkId); } else { vpnManager.removeArpResponderFlowsToExternalNetworkIps(routerName, - VpnUtil.getIpsListFromExternalIps(router.getExternalIps()), + VpnUtil.getIpsListFromExternalIps(new ArrayList(router.getExternalIps().values())), extGwMacAddress, primarySwitchId, extNetworkId); } }