fix cached property

This commit is contained in:
IluaAir
2025-06-30 21:56:43 +03:00
parent e1eeefd42d
commit 338b9e69a7

View File

@@ -86,7 +86,7 @@ class NodeView:
def model(self): def model(self):
return self._data.get('model') return self._data.get('model')
@property @cached_property
def config(self): def config(self):
return NodeConfig(self._session, self.full_name, self.model, self._base_url) return NodeConfig(self._session, self.full_name, self.model, self._base_url)
@@ -100,7 +100,7 @@ class NodeConfig:
self._device: type[BaseDevice] = device_registry.get(self._model.lower()) self._device: type[BaseDevice] = device_registry.get(self._model.lower())
if self._device is None: if self._device is None:
raise ValueError(f"Device model '{self._model}' not found in registry") raise ValueError(f"Device model '{self._model}' not found in registry")
self._data = None self._parsed_data = self._device(self.text).parse_config()
@cached_property @cached_property
def _response(self): def _response(self):
@@ -121,10 +121,10 @@ class NodeConfig:
return self.text return self.text
def vlans(self): def vlans(self):
return self._device(self.text).parse_config().vlans return self._parsed_data.vlans
def l3interfaces(self): def l3interfaces(self):
return self._device(self.text).parse_config().l3interfaces return self._parsed_data.l3interfaces
def vlaninterfaces(self): def vlaninterfaces(self):
return self._device(self.text).parse_config().vlaninterfaces return self._parsed_data.vlaninterfaces