X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=code%2Fnetwork-generator%2Fmodel%2Fpython%2Ftop.py;h=ea6010aec291e4233eee42d2afc8c81f6e80e521;hb=cbdb3c52ee47d804b4202c77082109ef3c561594;hp=486b023f77d488a6abbd425b4f742122425a9b6f;hpb=9ea4e241e3ec0c9dffd3db7fd7ab5a2cf3d13e7d;p=oam.git diff --git a/code/network-generator/model/python/top.py b/code/network-generator/model/python/top.py index 486b023..ea6010a 100644 --- a/code/network-generator/model/python/top.py +++ b/code/network-generator/model/python/top.py @@ -19,7 +19,7 @@ An abstract Class for all classes """ import uuid from abc import ABC, abstractmethod -from typing import Optional, Dict, Union +from typing import Any from model.python.type_definitions import ( AddressType, AdministrativeState, @@ -57,101 +57,99 @@ class ITop: # Define the Top class class Top(ABC, ITop): - def __init__(self, data=None): - self._id = data.id if data and data.id else str(uuid.uuid4()) + def __init__(self, data: [dict[str, Any] | None] = None): + self._id = data["id"] if data and "id" in data else str(uuid.uuid4()) self._name = ( - data.name if data and data.name else " ".join(["Name", "of", self._id]) + data["name"] + if data and "name" in data + else " ".join(["Name", "of", self._id]) ) self._administrativeState = ( - data.administrativeState - if data and data.administrativeState + data["administrativeState"] + if data and "administrativeState" in data else AdministrativeState.LOCKED ) self._operationalState = ( - data.operationalState - if data and data.operationalState + data["operationalState"] + if data and "operationalState" in data else OperationalState.DISABLED ) self._lifeCycleState = ( - data.lifeCycleState - if data and data.lifeCycleState + data["lifeCycleState"] + if data and "lifeCycleState" in data else LifeCycleState.PLANNED ) - self._alarmState = ( - data.alarmState if data and data.alarmState else 0 - ) + self._alarmState = data["alarmState"] if data and "alarmState" in data else 0 self._usageState = ( - data.usageState if data and data.usageState else UsageState.UNUSED - ) - self._utilization = ( - data.utilization if data and data.utilization else 0 + data["usageState"] if data and "usageState" in data else UsageState.UNUSED ) + self._utilization = data["utilization"] if data and "utilization" in data else 0 @property - def id(self): + def id(self) -> str: return self._id @id.setter - def id(self, value): + def id(self, value: str): self._id = value @property - def name(self): + def name(self) -> str: return self._name @name.setter - def name(self, value): + def name(self, value: str): self._name = value @property - def administrativeState(self): + def administrativeState(self) -> AdministrativeState: return self._administrativeState @administrativeState.setter - def administrativeState(self, value): + def administrativeState(self, value: AdministrativeState): self._administrativeState = value @property - def operationalState(self): + def operationalState(self) -> OperationalState: return self._operationalState @operationalState.setter - def operationalState(self, value): + def operationalState(self, value: OperationalState): self._operationalState = value @property - def lifeCycleState(self): + def lifeCycleState(self) -> LifeCycleState: return self._lifeCycleState @lifeCycleState.setter - def lifeCycleState(self, value): + def lifeCycleState(self, value: LifeCycleState): self._lifeCycleState = value @property - def alarmState(self): + def alarmState(self) -> AlarmState: return self._alarmState @alarmState.setter - def alarmState(self, value): + def alarmState(self, value: AlarmState): self._alarmState = value @property - def usageState(self): + def usageState(self) -> UsageState: return self._usageState @usageState.setter - def usageState(self, value): + def usageState(self, value: UsageState): self._usageState = value @property - def utilization(self): + def utilization(self) -> Utilization: return self._utilization @utilization.setter - def utilization(self, value): + def utilization(self, value: Utilization): self._utilization = value - def json(self): + def json(self) -> dict[str, Any]: return { "id": self.id, "name": self.name, @@ -163,5 +161,5 @@ class Top(ABC, ITop): "utilization": self.utilization, } - def __str__(self): + def __str__(self) -> str: return str(self.json())