From cde4bdc114a42347d40501c880f9fd91ef11979a Mon Sep 17 00:00:00 2001 From: YueGuobin Date: Wed, 25 Feb 2026 22:41:22 +0800 Subject: [PATCH] feat: simplify port name assignment logic Refactor port name assignment to use `or` operator for fallback values, improving code readability and consistency. Changes applied in `node.py` and `port_factory.py` to handle custom adapter settings more cleanly. --- gns3server/controller/node.py | 3 +-- gns3server/controller/ports/port_factory.py | 6 +++--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/gns3server/controller/node.py b/gns3server/controller/node.py index 8622b23b7..0d9e0d91d 100644 --- a/gns3server/controller/node.py +++ b/gns3server/controller/node.py @@ -761,8 +761,7 @@ class Node: if custom_adapter["adapter_number"] == adapter_number: custom_adapter_settings = custom_adapter break - port_name = f"eth{adapter_number}" - port_name = custom_adapter_settings.get("port_name", port_name) + port_name = custom_adapter_settings.get("port_name") or f"eth{adapter_number}" mac_address = custom_adapter_settings.get("mac_address") if not mac_address and "mac_address" in self._properties: mac_address = int_to_macaddress(macaddress_to_int(self._properties["mac_address"]) + adapter_number) diff --git a/gns3server/controller/ports/port_factory.py b/gns3server/controller/ports/port_factory.py index 070e391cf..27b2c7421 100644 --- a/gns3server/controller/ports/port_factory.py +++ b/gns3server/controller/ports/port_factory.py @@ -75,13 +75,13 @@ class StandardPortFactory: for port_number in range(0, port_by_adapter): if first_port_name and adapter_number == 0: - port_name = custom_adapter_settings.get("port_name", first_port_name) + port_name = custom_adapter_settings.get("port_name") or first_port_name port = PortFactory( port_name, segment_number, adapter_number, port_number, "ethernet", short_name=port_name ) else: try: - port_name = port_name_format.format( + default_port_name = port_name_format.format( interface_number, segment_number, adapter=adapter_number, @@ -90,7 +90,7 @@ class StandardPortFactory: except (IndexError, ValueError, KeyError) as e: raise ControllerError(f"Invalid port name format {port_name_format}: {str(e)}") - port_name = custom_adapter_settings.get("port_name", port_name) + port_name = custom_adapter_settings.get("port_name") or default_port_name port = PortFactory(port_name, segment_number, adapter_number, port_number, "ethernet") interface_number += 1 if port_segment_size: