Add polling worker for watcher to probe
[pti/o2.git] / o2ims / service / watcher / base.py
index 4ea23ff..26c67da 100644 (file)
@@ -26,11 +26,17 @@ class BaseWatcher(object):
         super().__init__()\r
         self._client = client\r
 \r
+    def targetname(self) -> str:\r
+        return self._targetname()\r
+\r
     def probe(self):\r
         self._probe()\r
 \r
     def _probe(self):\r
-        pass\r
+        raise NotImplementedError\r
+\r
+    def _targetname(self):\r
+        raise NotImplementedError\r
 \r
 \r
 class OcloudWather(BaseWatcher):\r
@@ -39,6 +45,9 @@ class OcloudWather(BaseWatcher):
         super().__init__(ocloud_client)\r
         self._repo = repo\r
 \r
+    def _targetname(self):\r
+        return "ocloud"\r
+\r
     def _probe(self):\r
         ocloudmodel = self._client.get(None)\r
         if ocloudmodel:\r
@@ -58,11 +67,25 @@ class OcloudWather(BaseWatcher):
                 self._repo.update(localmodel)\r
 \r
 \r
-class ResourcePoolWatcher(object):\r
+class DmsWatcher(BaseWatcher):\r
+    def __init__(self, client: BaseClient) -> None:\r
+        super().__init__(client)\r
+\r
+    def _targetname(self):\r
+        return "dms"\r
+\r
+\r
+class ResourcePoolWatcher(BaseWatcher):\r
     def __init__(self) -> None:\r
         super().__init__()\r
 \r
+    def _targetname(self):\r
+        return "ocloud"\r
 \r
-class ResourceWatcher(object):\r
+\r
+class ResourceWatcher(BaseWatcher):\r
     def __init__(self) -> None:\r
         super().__init__()\r
+\r
+    def _targetname(self):\r
+        return "resource"\r