mirror of
https://git.anonymousland.org/anonymousland/synapse-product.git
synced 2024-10-01 08:25:44 -04:00
Add type hints to the room member handler. (#9631)
This commit is contained in:
parent
27d2820c33
commit
b449af0379
1
changelog.d/9631.misc
Normal file
1
changelog.d/9631.misc
Normal file
@ -0,0 +1 @@
|
|||||||
|
Add additional type hints to the Homeserver object.
|
@ -437,10 +437,10 @@ class RegistrationHandler(BaseHandler):
|
|||||||
|
|
||||||
if RoomAlias.is_valid(r):
|
if RoomAlias.is_valid(r):
|
||||||
(
|
(
|
||||||
room_id,
|
room,
|
||||||
remote_room_hosts,
|
remote_room_hosts,
|
||||||
) = await room_member_handler.lookup_room_alias(room_alias)
|
) = await room_member_handler.lookup_room_alias(room_alias)
|
||||||
room_id = room_id.to_string()
|
room_id = room.to_string()
|
||||||
else:
|
else:
|
||||||
raise SynapseError(
|
raise SynapseError(
|
||||||
400, "%s was not legal room ID or room alias" % (r,)
|
400, "%s was not legal room ID or room alias" % (r,)
|
||||||
|
@ -155,6 +155,10 @@ class RoomMemberHandler(metaclass=abc.ABCMeta):
|
|||||||
"""
|
"""
|
||||||
raise NotImplementedError()
|
raise NotImplementedError()
|
||||||
|
|
||||||
|
@abc.abstractmethod
|
||||||
|
async def forget(self, user: UserID, room_id: str) -> None:
|
||||||
|
raise NotImplementedError()
|
||||||
|
|
||||||
def ratelimit_invite(self, room_id: Optional[str], invitee_user_id: str):
|
def ratelimit_invite(self, room_id: Optional[str], invitee_user_id: str):
|
||||||
"""Ratelimit invites by room and by target user.
|
"""Ratelimit invites by room and by target user.
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
from typing import List, Optional, Tuple
|
from typing import TYPE_CHECKING, List, Optional, Tuple
|
||||||
|
|
||||||
from synapse.api.errors import SynapseError
|
from synapse.api.errors import SynapseError
|
||||||
from synapse.handlers.room_member import RoomMemberHandler
|
from synapse.handlers.room_member import RoomMemberHandler
|
||||||
@ -25,11 +25,14 @@ from synapse.replication.http.membership import (
|
|||||||
)
|
)
|
||||||
from synapse.types import Requester, UserID
|
from synapse.types import Requester, UserID
|
||||||
|
|
||||||
|
if TYPE_CHECKING:
|
||||||
|
from synapse.app.homeserver import HomeServer
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
class RoomMemberWorkerHandler(RoomMemberHandler):
|
class RoomMemberWorkerHandler(RoomMemberHandler):
|
||||||
def __init__(self, hs):
|
def __init__(self, hs: "HomeServer"):
|
||||||
super().__init__(hs)
|
super().__init__(hs)
|
||||||
|
|
||||||
self._remote_join_client = ReplRemoteJoin.make_client(hs)
|
self._remote_join_client = ReplRemoteJoin.make_client(hs)
|
||||||
@ -83,3 +86,6 @@ class RoomMemberWorkerHandler(RoomMemberHandler):
|
|||||||
await self._notify_change_client(
|
await self._notify_change_client(
|
||||||
user_id=target.to_string(), room_id=room_id, change="left"
|
user_id=target.to_string(), room_id=room_id, change="left"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
async def forget(self, target: UserID, room_id: str) -> None:
|
||||||
|
raise RuntimeError("Cannot forget rooms on workers.")
|
||||||
|
@ -96,7 +96,7 @@ from synapse.handlers.room import (
|
|||||||
RoomShutdownHandler,
|
RoomShutdownHandler,
|
||||||
)
|
)
|
||||||
from synapse.handlers.room_list import RoomListHandler
|
from synapse.handlers.room_list import RoomListHandler
|
||||||
from synapse.handlers.room_member import RoomMemberMasterHandler
|
from synapse.handlers.room_member import RoomMemberHandler, RoomMemberMasterHandler
|
||||||
from synapse.handlers.room_member_worker import RoomMemberWorkerHandler
|
from synapse.handlers.room_member_worker import RoomMemberWorkerHandler
|
||||||
from synapse.handlers.search import SearchHandler
|
from synapse.handlers.search import SearchHandler
|
||||||
from synapse.handlers.set_password import SetPasswordHandler
|
from synapse.handlers.set_password import SetPasswordHandler
|
||||||
@ -630,7 +630,7 @@ class HomeServer(metaclass=abc.ABCMeta):
|
|||||||
return ThirdPartyEventRules(self)
|
return ThirdPartyEventRules(self)
|
||||||
|
|
||||||
@cache_in_self
|
@cache_in_self
|
||||||
def get_room_member_handler(self):
|
def get_room_member_handler(self) -> RoomMemberHandler:
|
||||||
if self.config.worker_app:
|
if self.config.worker_app:
|
||||||
return RoomMemberWorkerHandler(self)
|
return RoomMemberWorkerHandler(self)
|
||||||
return RoomMemberMasterHandler(self)
|
return RoomMemberMasterHandler(self)
|
||||||
|
Loading…
Reference in New Issue
Block a user