From a645a0a5a7365fabef474e40fcab37b82bbd93b8 Mon Sep 17 00:00:00 2001 From: Stephen Kitt Date: Thu, 27 Jul 2017 15:48:02 +0200 Subject: [PATCH] ElanUtils clean-up: L2GatewayConnectionUtils This turns L2GatewayConnectionUtils into a self-carrying bean, instead of relying on ElanUtils to initialise it. Change-Id: I2c5c8330e57a46048651a1f6b656fb34b099afe3 Signed-off-by: Stephen Kitt --- .../l2gw/listeners/ElanInstanceListener.java | 6 +----- .../HwvtepPhysicalSwitchListener.java | 8 ++++---- .../L2GatewayConnectionListener.java | 5 ++--- .../elan/l2gw/utils/L2GatewayUtils.java | 5 ++--- .../elan/l2gw/utils/L2gwServiceProvider.java | 5 ++--- .../netvirt/elan/utils/ElanUtils.java | 8 -------- .../opendaylight/blueprint/elanmanager.xml | 19 ++++++++++++------- 7 files changed, 23 insertions(+), 33 deletions(-) diff --git a/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/listeners/ElanInstanceListener.java b/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/listeners/ElanInstanceListener.java index 09802e70a4..8061a4cee1 100644 --- a/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/listeners/ElanInstanceListener.java +++ b/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/listeners/ElanInstanceListener.java @@ -19,7 +19,6 @@ import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFaile import org.opendaylight.genius.datastoreutils.AsyncClusteredDataTreeChangeListenerBase; import org.opendaylight.netvirt.elan.l2gw.utils.L2GatewayConnectionUtils; import org.opendaylight.netvirt.elan.utils.ElanClusterUtils; -import org.opendaylight.netvirt.elan.utils.ElanUtils; import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.elan.rev150602.ElanInstances; import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.elan.rev150602.elan.instances.ElanInstance; import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.l2gateways.rev150712.l2gateway.connections.attributes.L2gatewayConnections; @@ -35,16 +34,13 @@ public class ElanInstanceListener extends AsyncClusteredDataTreeChangeListenerBa private static final Logger LOG = LoggerFactory.getLogger(ElanInstanceListener.class); private final DataBroker broker; - private final L2GatewayConnectionUtils l2GatewayConnectionUtils; private final EntityOwnershipService entityOwnershipService; private static final Map> WAITING_JOB_LIST = new ConcurrentHashMap<>(); - public ElanInstanceListener(final DataBroker db, EntityOwnershipService entityOwnershipService, - final ElanUtils elanUtils) { + public ElanInstanceListener(final DataBroker db, final EntityOwnershipService entityOwnershipService) { super(ElanInstance.class, ElanInstanceListener.class); broker = db; this.entityOwnershipService = entityOwnershipService; - this.l2GatewayConnectionUtils = elanUtils.getL2GatewayConnectionUtils(); registerListener(LogicalDatastoreType.CONFIGURATION, db); } diff --git a/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/listeners/HwvtepPhysicalSwitchListener.java b/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/listeners/HwvtepPhysicalSwitchListener.java index 1df5974edd..6b1c250daf 100644 --- a/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/listeners/HwvtepPhysicalSwitchListener.java +++ b/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/listeners/HwvtepPhysicalSwitchListener.java @@ -33,7 +33,6 @@ import org.opendaylight.netvirt.elan.l2gw.utils.L2GatewayConnectionUtils; import org.opendaylight.netvirt.elan.l2gw.utils.L2GatewayUtils; import org.opendaylight.netvirt.elan.l2gw.utils.L2gwServiceProvider; import org.opendaylight.netvirt.elan.utils.ElanClusterUtils; -import org.opendaylight.netvirt.elan.utils.ElanUtils; import org.opendaylight.netvirt.elanmanager.utils.ElanL2GwCacheUtils; import org.opendaylight.netvirt.neutronvpn.api.l2gw.L2GatewayDevice; import org.opendaylight.netvirt.neutronvpn.api.l2gw.utils.L2GatewayCacheUtils; @@ -133,20 +132,21 @@ public class HwvtepPhysicalSwitchListener * the data broker * @param itmRpcService itm rpc * @param entityOwnershipService entity ownership service - * @param elanUtils elan utils + * @param l2GatewayConnectionUtils l2gw connection utils * @param l2gwServiceProvider l2gw service Provider * @param l2GatewayUtils utils * @param haListener HA Op node listners */ public HwvtepPhysicalSwitchListener(final DataBroker dataBroker, ItmRpcService itmRpcService, EntityOwnershipService entityOwnershipService, - ElanUtils elanUtils, L2gwServiceProvider l2gwServiceProvider, + L2GatewayConnectionUtils l2GatewayConnectionUtils, + L2gwServiceProvider l2gwServiceProvider, L2GatewayUtils l2GatewayUtils, HAOpClusteredListener haListener) { super(PhysicalSwitchAugmentation.class, HwvtepPhysicalSwitchListener.class); this.dataBroker = dataBroker; this.itmRpcService = itmRpcService; this.entityOwnershipService = entityOwnershipService; - this.l2GatewayConnectionUtils = elanUtils.getL2GatewayConnectionUtils(); + this.l2GatewayConnectionUtils = l2GatewayConnectionUtils; this.l2gwServiceProvider = l2gwServiceProvider; this.l2GatewayUtils = l2GatewayUtils; this.haOpClusteredListener = haListener; diff --git a/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/listeners/L2GatewayConnectionListener.java b/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/listeners/L2GatewayConnectionListener.java index 78e856d0d2..12a34a8202 100644 --- a/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/listeners/L2GatewayConnectionListener.java +++ b/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/listeners/L2GatewayConnectionListener.java @@ -11,7 +11,6 @@ import org.opendaylight.controller.md.sal.binding.api.DataBroker; import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; import org.opendaylight.genius.datastoreutils.AsyncClusteredDataTreeChangeListenerBase; import org.opendaylight.netvirt.elan.l2gw.utils.L2GatewayConnectionUtils; -import org.opendaylight.netvirt.elan.utils.ElanUtils; import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.l2gateways.rev150712.l2gateway.connections.attributes.L2gatewayConnections; import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.l2gateways.rev150712.l2gateway.connections.attributes.l2gatewayconnections.L2gatewayConnection; import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.rev150712.Neutron; @@ -26,10 +25,10 @@ public class L2GatewayConnectionListener extends AsyncClusteredDataTreeChangeLis private final DataBroker broker; private final L2GatewayConnectionUtils l2GatewayConnectionUtils; - public L2GatewayConnectionListener(final DataBroker db, ElanUtils elanUtils) { + public L2GatewayConnectionListener(final DataBroker db, L2GatewayConnectionUtils l2GatewayConnectionUtils) { super(L2gatewayConnection.class, L2GatewayConnectionListener.class); this.broker = db; - this.l2GatewayConnectionUtils = elanUtils.getL2GatewayConnectionUtils(); + this.l2GatewayConnectionUtils = l2GatewayConnectionUtils; } public void init() { diff --git a/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/utils/L2GatewayUtils.java b/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/utils/L2GatewayUtils.java index 98377416a0..331775a703 100644 --- a/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/utils/L2GatewayUtils.java +++ b/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/utils/L2GatewayUtils.java @@ -14,7 +14,6 @@ import org.opendaylight.controller.md.sal.binding.api.DataBroker; import org.opendaylight.controller.md.sal.common.api.clustering.EntityOwnershipService; import org.opendaylight.genius.utils.hwvtep.HwvtepSouthboundConstants; import org.opendaylight.genius.utils.hwvtep.HwvtepSouthboundUtils; -import org.opendaylight.netvirt.elan.utils.ElanUtils; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress; import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.rpcs.rev160406.DeleteL2GwDeviceInputBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.rpcs.rev160406.ItmRpcService; @@ -36,11 +35,11 @@ public class L2GatewayUtils { public L2GatewayUtils(DataBroker dataBroker, ItmRpcService itmRpcService, EntityOwnershipService entityOwnershipService, - ElanUtils elanUtils) { + L2GatewayConnectionUtils l2GatewayConnectionUtils) { this.dataBroker = dataBroker; this.itmRpcService = itmRpcService; this.entityOwnershipService = entityOwnershipService; - this.l2GatewayConnectionUtils = elanUtils.getL2GatewayConnectionUtils(); + this.l2GatewayConnectionUtils = l2GatewayConnectionUtils; } public void init() { diff --git a/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/utils/L2gwServiceProvider.java b/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/utils/L2gwServiceProvider.java index e3b9565414..c5fba3d7c9 100644 --- a/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/utils/L2gwServiceProvider.java +++ b/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/l2gw/utils/L2gwServiceProvider.java @@ -16,7 +16,6 @@ import org.opendaylight.controller.md.sal.binding.api.DataBroker; import org.opendaylight.controller.md.sal.common.api.clustering.EntityOwnershipService; import org.opendaylight.infrautils.inject.AbstractLifecycle; import org.opendaylight.netvirt.elan.utils.ElanClusterUtils; -import org.opendaylight.netvirt.elan.utils.ElanUtils; import org.opendaylight.netvirt.elanmanager.api.IL2gwService; import org.opendaylight.netvirt.neutronvpn.api.l2gw.L2GatewayDevice; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress; @@ -40,11 +39,11 @@ public class L2gwServiceProvider extends AbstractLifecycle implements IL2gwServi private final EntityOwnershipService entityOwnershipService; public L2gwServiceProvider(final DataBroker dataBroker, final EntityOwnershipService entityOwnershipService, - ItmRpcService itmRpcService, ElanUtils elanUtils) { + ItmRpcService itmRpcService, L2GatewayConnectionUtils l2GatewayConnectionUtils) { this.dataBroker = dataBroker; this.entityOwnershipService = entityOwnershipService; this.itmRpcService = itmRpcService; - this.l2GatewayConnectionUtils = elanUtils.getL2GatewayConnectionUtils(); + this.l2GatewayConnectionUtils = l2GatewayConnectionUtils; } @Override diff --git a/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/utils/ElanUtils.java b/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/utils/ElanUtils.java index 23038f5967..a9d2f3b3a3 100755 --- a/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/utils/ElanUtils.java +++ b/vpnservice/elanmanager/elanmanager-impl/src/main/java/org/opendaylight/netvirt/elan/utils/ElanUtils.java @@ -70,7 +70,6 @@ import org.opendaylight.netvirt.elan.arp.responder.ArpResponderUtil; import org.opendaylight.netvirt.elan.internal.ElanInstanceManager; import org.opendaylight.netvirt.elan.l2gw.utils.ElanL2GatewayMulticastUtils; import org.opendaylight.netvirt.elan.l2gw.utils.ElanL2GatewayUtils; -import org.opendaylight.netvirt.elan.l2gw.utils.L2GatewayConnectionUtils; import org.opendaylight.netvirt.elanmanager.api.ElanHelper; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddressBuilder; @@ -196,7 +195,6 @@ public class ElanUtils { private final ItmRpcService itmRpcService; private final ElanL2GatewayUtils elanL2GatewayUtils; private final ElanL2GatewayMulticastUtils elanL2GatewayMulticastUtils; - private final L2GatewayConnectionUtils l2GatewayConnectionUtils; private final IInterfaceManager interfaceManager; private final ElanConfig elanConfig; private final ElanItmUtils elanItmUtils; @@ -234,8 +232,6 @@ public class ElanUtils { this.elanItmUtils = elanItmUtils; this.elanL2GatewayUtils = new ElanL2GatewayUtils(broker, this, elanDmacUtils, elanItmUtils, entityOwnershipService); - this.l2GatewayConnectionUtils = new L2GatewayConnectionUtils(broker, - elanInstanceManager, entityOwnershipService, this); } public void close() { @@ -250,10 +246,6 @@ public class ElanUtils { return elanL2GatewayMulticastUtils; } - public L2GatewayConnectionUtils getL2GatewayConnectionUtils() { - return l2GatewayConnectionUtils; - } - public final Boolean isOpenStackVniSemanticsEnforced() { return elanConfig.isOpenstackVniSemanticsEnforced(); } diff --git a/vpnservice/elanmanager/elanmanager-impl/src/main/resources/org/opendaylight/blueprint/elanmanager.xml b/vpnservice/elanmanager/elanmanager-impl/src/main/resources/org/opendaylight/blueprint/elanmanager.xml index 1a1aa4d5dd..ef1c31961f 100644 --- a/vpnservice/elanmanager/elanmanager-impl/src/main/resources/org/opendaylight/blueprint/elanmanager.xml +++ b/vpnservice/elanmanager/elanmanager-impl/src/main/resources/org/opendaylight/blueprint/elanmanager.xml @@ -241,6 +241,13 @@ class="org.opendaylight.netvirt.elan.l2gw.listeners.L2GatewayConnectionListener" init-method="init" destroy-method="close"> + + + + + + + @@ -250,7 +257,7 @@ - + @@ -341,7 +348,7 @@ - + @@ -349,10 +356,8 @@ - - - - + + - + -- 2.36.6