From 1d0f5ed68543521a7bcb4a529be06a710a78c630 Mon Sep 17 00:00:00 2001 From: IluaAir Date: Wed, 18 Mar 2026 00:01:22 +0300 Subject: [PATCH] Refactor Quasar model by removing system method and updating TTP template - Removed the `system` method from the `Quasar` model to streamline system information handling. - Updated the TTP template to enhance the formatting of system details, including version and product information, for improved clarity and organization. --- oxi/interfaces/models/quasar.py | 17 ----------------- oxi/interfaces/models/templates/quasar.ttp | 17 +++++++++-------- 2 files changed, 9 insertions(+), 25 deletions(-) diff --git a/oxi/interfaces/models/quasar.py b/oxi/interfaces/models/quasar.py index a41db15..3f87156 100644 --- a/oxi/interfaces/models/quasar.py +++ b/oxi/interfaces/models/quasar.py @@ -5,23 +5,6 @@ from oxi.interfaces import BaseDevice, register_parser class Quasar(BaseDevice): template = "quasar.ttp" - def system(self) -> dict: - raw = self.raw.get("system", {}) - items = raw if isinstance(raw, list) else [raw] - selected = next( - (item for item in items if item.get("assembly_version")), - items[0] if items else {}, - ) - result = dict(selected) - result["version"] = ( - result.pop("assembly_version", None) - or result.pop("engine_version", None) - or "" - ) - result.pop("assembly_version", None) - result.pop("engine_version", None) - return result - def interfaces(self) -> list[dict]: ether_interfaces: dict = self.raw["interfaces"] interfaces: list[dict] = [] diff --git a/oxi/interfaces/models/templates/quasar.ttp b/oxi/interfaces/models/templates/quasar.ttp index 6cfbf67..98e20fa 100644 --- a/oxi/interfaces/models/templates/quasar.ttp +++ b/oxi/interfaces/models/templates/quasar.ttp @@ -46,16 +46,17 @@ default_system = { -#{{ ignore("\s+Assembly\s+") }}{{ assembly_version }} -#{{ ignore("\s+Product Name\s+") }}{{ model | ORPHRASE }} -#{{ ignore("\s+Product Serial Number\s+") }}{{ serial_number }} +# Component Version {{ _start_ }} +# Assembly {{ version }} +# Product Name {{ model | ORPHRASE }} +# Product Serial Number {{ serial_number }} + +# Subsystem Version {{ _start_ }} +# Engine {{ version }} +# Product Name {{ model | ORPHRASE }} +# Product Serial Number {{ serial_number }} - -#{{ ignore("\s+Engine\s+") }}{{ engine_version }} -#{{ ignore("\s+Product Name\s+") }}{{ model | ORPHRASE }} -#{{ ignore("\s+Product Serial Number\s+") }}{{ serial_number }} - {{ ignore("\\s*") }}config {{ interface }} ipv4 address {{ ip_address }}/{{ mask }} gateway {{ gateway }} {{ ignore }}