From d5171f8a670aa710bacf6931e23e8e954240af42 Mon Sep 17 00:00:00 2001 From: Jakub Libosvar Date: Thu, 11 Jan 2024 21:12:50 +0000 Subject: [PATCH] Remove obtaining event classes from strings The patch instantiates the events directly instead of collecting their names and then calling getattr for each to instantiate it. Change-Id: I05598c357b636d3d5d70d7cbefe6acae9dbf8033 --- .../drivers/openstack/nb_ovn_bgp_driver.py | 31 +++++++++---------- 1 file changed, 14 insertions(+), 17 deletions(-) diff --git a/ovn_bgp_agent/drivers/openstack/nb_ovn_bgp_driver.py b/ovn_bgp_agent/drivers/openstack/nb_ovn_bgp_driver.py index 9801a35f..9c0fb559 100644 --- a/ovn_bgp_agent/drivers/openstack/nb_ovn_bgp_driver.py +++ b/ovn_bgp_agent/drivers/openstack/nb_ovn_bgp_driver.py @@ -119,10 +119,7 @@ class NBOVNBGPDriver(driver_api.AgentDriverBase): LOG.info("Configured allowed address scopes: %s", ", ".join(self.allowed_address_scopes)) - events = () - for event in self._get_events(): - event_class = getattr(watcher, event) - events += (event_class(self),) + events = self._get_events() self._post_start_event.clear() self.nb_idl = ovn.OvnNbIdl( @@ -142,20 +139,20 @@ class NBOVNBGPDriver(driver_api.AgentDriverBase): self._post_start_event.set() def _get_events(self): - events = {"LogicalSwitchPortProviderCreateEvent", - "LogicalSwitchPortProviderDeleteEvent", - "LogicalSwitchPortFIPCreateEvent", - "LogicalSwitchPortFIPDeleteEvent", - "LocalnetCreateDeleteEvent", - "OVNLBCreateEvent", - "OVNLBDeleteEvent"} + events = {watcher.LogicalSwitchPortProviderCreateEvent(self), + watcher.LogicalSwitchPortProviderDeleteEvent(self), + watcher.LogicalSwitchPortFIPCreateEvent(self), + watcher.LogicalSwitchPortFIPDeleteEvent(self), + watcher.LocalnetCreateDeleteEvent(self), + watcher.OVNLBCreateEvent(self), + watcher.OVNLBDeleteEvent(self)} if self._expose_tenant_networks: - events.update({"ChassisRedirectCreateEvent", - "ChassisRedirectDeleteEvent", - "LogicalSwitchPortSubnetAttachEvent", - "LogicalSwitchPortSubnetDetachEvent", - "LogicalSwitchPortTenantCreateEvent", - "LogicalSwitchPortTenantDeleteEvent"}) + events.update({watcher.ChassisRedirectCreateEvent(self), + watcher.ChassisRedirectDeleteEvent(self), + watcher.LogicalSwitchPortSubnetAttachEvent(self), + watcher.LogicalSwitchPortSubnetDetachEvent(self), + watcher.LogicalSwitchPortTenantCreateEvent(self), + watcher.LogicalSwitchPortTenantDeleteEvent(self)}) return events @lockutils.synchronized('nbbgp')