Making main async
[osm/LCM.git] / osm_lcm / lcm.py
index 1edc960..2fc479f 100644 (file)
@@ -705,9 +705,9 @@ class Lcm:
     async def kafka_read_ping(self):
         await asyncio.gather(self.kafka_read(), self.kafka_ping())
 
-    def start(self):
+    async def start(self):
         # check RO version
-        asyncio.run(self.check_RO_version())
+        await self.check_RO_version()
 
         self.ns = ns.NsLcm(self.msg, self.lcm_tasks, self.main_config)
         # TODO: modify the rest of classes to use the LcmCfg object instead of dicts
@@ -725,7 +725,7 @@ class Lcm:
             self.msg, self.lcm_tasks, self.main_config.to_dict()
         )
 
-        asyncio.run(self.kafka_read_ping())
+        await self.kafka_read_ping()
 
         # TODO
         # self.logger.debug("Terminating cancelling creation tasks")
@@ -844,7 +844,7 @@ if __name__ == "__main__":
                 )
                 exit(1)
         lcm = Lcm(config_file)
-        lcm.start()
+        asyncio.run(lcm.start())
     except (LcmException, getopt.GetoptError) as e:
         print(str(e), file=sys.stderr)
         # usage()