Browse Source

Add more typing as per request from @sedwards2009

ChrisTerBeke 6 years ago
parent
commit
e4d8fb36ab
1 changed files with 11 additions and 24 deletions
  1. 11 24
      plugins/UM3NetworkPrinting/src/Models.py

+ 11 - 24
plugins/UM3NetworkPrinting/src/Models.py

@@ -14,43 +14,30 @@ class BaseModel:
 
 ##  Class representing a material that was fetched from the cluster API.
 class ClusterMaterial(BaseModel):
-    def __init__(self, **kwargs) -> None:
-        self.guid = None  # type: str
-        self.material = None  # type: str
-        self.brand = None  # type: str
-        self.version = None  # type: int
-        self.color = None  # type: str
-        self.density = None  # type: str
+    def __init__(self, guid = str, version = str, **kwargs) -> None:
+        self.guid = guid  # type: str
+        self.version = version  # type: int
         super().__init__(**kwargs)
 
     def validate(self) -> None:
         if not self.guid:
             raise ValueError("guid is required on ClusterMaterial")
+        if not self.version:
+            raise ValueError("version is required on ClusterMaterial")
 
 
 ##  Class representing a local material that was fetched from the container registry.
 class LocalMaterial(BaseModel):
-    def __init__(self, **kwargs) -> None:
-        self.GUID = None  # type: str
-        self.id = None  # type: str
-        self.type = None  # type: str
-        self.status = None  # type: str
-        self.base_file = None  # type: str
-        self.setting_version = None  # type: int
-        self.version = None  # type: int
-        self.brand = None  # type: str
-        self.material = None  # type: str
-        self.color_name = None  # type: str
-        self.color_code = None  # type: str
-        self.description = None  # type: str
-        self.adhesion_info = None  # type: str
-        self.approximate_diameter = None  # type: str
-        self.definition = None  # type: str
-        self.compatible = None  # type: bool
+    def __init__(self, GUID = str, id = str, version = str, **kwargs) -> None:
+        self.GUID = GUID  # type: str
+        self.id = id  # type: str
+        self.version = version  # type: int
         super().__init__(**kwargs)
 
     def validate(self) -> None:
         if not self.GUID:
             raise ValueError("guid is required on LocalMaterial")
+        if not self.version:
+            raise ValueError("version is required on LocalMaterial")
         if not self.id:
             raise ValueError("id is required on LocalMaterial")