X-Git-Url: https://git.mar77i.info/?a=blobdiff_plain;f=hub%2Fwebsocket.py;h=89f11928d97938ee9bd5be669ecafed79fd823ce;hb=16c0b1e580f2c92baf6882ec4dfa655c267d23b9;hp=3d511168968e8386898623b9d70c6f84eba077fe;hpb=6d1d482531b77da3cff5616ee40cf558a45c9fda;p=hublib diff --git a/hub/websocket.py b/hub/websocket.py index 3d51116..89f1192 100644 --- a/hub/websocket.py +++ b/hub/websocket.py @@ -13,14 +13,13 @@ from .utils import get_redis_pass class BaseWebSocketHub: - first = True client_ids_sem = asyncio.Semaphore(0) @classmethod - def __class_init(cls, redis): - if not cls.first: + def _class_init(cls, redis): + if not hasattr(cls, "_class_init"): return - cls.first = False + delattr(cls, "_class_init") asyncio.create_task(cls.initialize_client_ids(redis)) @classmethod @@ -30,7 +29,8 @@ class BaseWebSocketHub: def __init__(self): self.redis = StrictRedis(password=get_redis_pass("/etc/redis/redis.conf")) - self.__class_init(self.redis) + if hasattr(BaseWebSocketHub, "_class_init"): + BaseWebSocketHub._class_init(self.redis) def task_done(self): self.task = None