mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-05-05 02:14:59 -04:00
Fix up types for the typing handler. (#9638)
By splitting this to two separate methods the callers know what methods they can expect on the handler.
This commit is contained in:
parent
73dbce5523
commit
cc324d53fe
4 changed files with 30 additions and 14 deletions
|
@ -49,7 +49,7 @@ from synapse.util import json_decoder
|
|||
from synapse.util.stringutils import parse_and_validate_server_name, random_string
|
||||
|
||||
if TYPE_CHECKING:
|
||||
import synapse.server
|
||||
from synapse.app.homeserver import HomeServer
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
@ -846,10 +846,10 @@ class RoomTypingRestServlet(RestServlet):
|
|||
"/rooms/(?P<room_id>[^/]*)/typing/(?P<user_id>[^/]*)$", v1=True
|
||||
)
|
||||
|
||||
def __init__(self, hs):
|
||||
def __init__(self, hs: "HomeServer"):
|
||||
super().__init__()
|
||||
self.hs = hs
|
||||
self.presence_handler = hs.get_presence_handler()
|
||||
self.typing_handler = hs.get_typing_handler()
|
||||
self.auth = hs.get_auth()
|
||||
|
||||
# If we're not on the typing writer instance we should scream if we get
|
||||
|
@ -874,16 +874,19 @@ class RoomTypingRestServlet(RestServlet):
|
|||
# Limit timeout to stop people from setting silly typing timeouts.
|
||||
timeout = min(content.get("timeout", 30000), 120000)
|
||||
|
||||
# Defer getting the typing handler since it will raise on workers.
|
||||
typing_handler = self.hs.get_typing_writer_handler()
|
||||
|
||||
try:
|
||||
if content["typing"]:
|
||||
await self.typing_handler.started_typing(
|
||||
await typing_handler.started_typing(
|
||||
target_user=target_user,
|
||||
requester=requester,
|
||||
room_id=room_id,
|
||||
timeout=timeout,
|
||||
)
|
||||
else:
|
||||
await self.typing_handler.stopped_typing(
|
||||
await typing_handler.stopped_typing(
|
||||
target_user=target_user, requester=requester, room_id=room_id
|
||||
)
|
||||
except ShadowBanError:
|
||||
|
@ -901,7 +904,7 @@ class RoomAliasListServlet(RestServlet):
|
|||
),
|
||||
]
|
||||
|
||||
def __init__(self, hs: "synapse.server.HomeServer"):
|
||||
def __init__(self, hs: "HomeServer"):
|
||||
super().__init__()
|
||||
self.auth = hs.get_auth()
|
||||
self.directory_handler = hs.get_directory_handler()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue