Skip to content
Snippets Groups Projects
Commit 5f49914d authored by Paul "LeoNerd" Evans's avatar Paul "LeoNerd" Evans
Browse files

Avoid cyclic dependency in handler setup

parent 1a75ff5c
No related branches found
No related tags found
No related merge requests found
......@@ -183,10 +183,16 @@ class TypingNotificationHandler(BaseHandler):
class TypingNotificationEventSource(object):
def __init__(self, hs):
self.hs = hs
self.handler = hs.get_handlers().typing_notification_handler
self._handler = None
def handler(self):
# Avoid cyclic dependency in handler setup
if not self._handler:
self._handler = self.hs.get_handlers().typing_notification_handler
return self._handler
def _make_event_for(self, room_id):
typing = self.handler._room_typing[room_id]
typing = self.handler()._room_typing[room_id]
return {
"type": "m.typing",
"room_id": room_id,
......@@ -195,7 +201,7 @@ class TypingNotificationEventSource(object):
def get_new_events_for_user(self, user, from_key, limit):
from_key = int(from_key)
handler = self.handler
handler = self.handler()
events = []
for room_id in handler._room_serials:
......@@ -208,7 +214,7 @@ class TypingNotificationEventSource(object):
return (events, handler._latest_room_serial)
def get_current_key(self):
return self.handler._latest_room_serial
return self.handler()._latest_room_serial
def get_pagination_rows(self, user, pagination_config, key):
return ([], pagination_config.from_key)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment