summary refs log tree commit diff
path: root/synapse/rest
diff options
context:
space:
mode:
authorAndrew Morgan <andrew@amorgan.xyz>2020-09-25 13:36:33 +0100
committerAndrew Morgan <andrew@amorgan.xyz>2020-09-25 13:36:33 +0100
commitf73d4de6918a0925f244a90601bc839925bcc027 (patch)
treea2ba8d447186864515e0a6effe3ea5daf5d26868 /synapse/rest
parentUpdate max migration schema version (diff)
downloadsynapse-f73d4de6918a0925f244a90601bc839925bcc027.tar.xz
Added typing, docstrings, comments
Diffstat (limited to 'synapse/rest')
-rw-r--r--synapse/rest/client/v2_alpha/knock.py38
1 files changed, 24 insertions, 14 deletions
diff --git a/synapse/rest/client/v2_alpha/knock.py b/synapse/rest/client/v2_alpha/knock.py
index 5f4da8d918..de9f9a5b32 100644
--- a/synapse/rest/client/v2_alpha/knock.py
+++ b/synapse/rest/client/v2_alpha/knock.py
@@ -1,5 +1,6 @@
 # -*- coding: utf-8 -*-
 # Copyright 2020 Sorunome
+# Copyright 2020 The Matrix.org Foundation C.I.C.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -12,14 +13,19 @@
 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 # See the License for the specific language governing permissions and
 # limitations under the License.
-
 import logging
+from typing import TYPE_CHECKING, List, Optional, Tuple
+
+from twisted.web.server import Request
 
 from synapse.api.errors import SynapseError
 from synapse.http.servlet import RestServlet, parse_json_object_from_request
 from synapse.logging.opentracing import set_tag
 from synapse.rest.client.transactions import HttpTransactionCache
-from synapse.types import RoomAlias, RoomID
+from synapse.types import JsonDict, RoomAlias, RoomID
+
+if TYPE_CHECKING:
+    from synapse.app.homeserver import HomeServer
 
 from ._base import client_patterns
 
@@ -27,7 +33,7 @@ logger = logging.getLogger(__name__)
 
 
 class TransactionRestServlet(RestServlet):
-    def __init__(self, hs):
+    def __init__(self, hs: "HomeServer"):
         super(TransactionRestServlet, self).__init__()
         self.txns = HttpTransactionCache(hs)
 
@@ -39,12 +45,14 @@ class KnockServlet(TransactionRestServlet):
 
     PATTERNS = client_patterns("/rooms/(?P<room_id>[^/]*)/knock")
 
-    def __init__(self, hs):
-        super(KnockServlet, self).__init__(hs)
+    def __init__(self, hs: "HomeServer"):
+        super().__init__(hs)
         self.room_member_handler = hs.get_room_member_handler()
         self.auth = hs.get_auth()
 
-    async def on_POST(self, request, room_id, txn_id=None):
+    async def on_POST(
+        self, request: Request, room_id: str, txn_id: Optional[str] = None
+    ):
         requester = await self.auth.get_user_by_req(request)
 
         content = parse_json_object_from_request(request)
@@ -64,7 +72,7 @@ class KnockServlet(TransactionRestServlet):
 
         return 200, {}
 
-    def on_PUT(self, request, room_id, txn_id):
+    def on_PUT(self, request: Request, room_id: str, txn_id: str):
         set_tag("txn_id", txn_id)
 
         return self.txns.fetch_or_execute_request(
@@ -79,12 +87,14 @@ class KnockRoomAliasServlet(TransactionRestServlet):
 
     PATTERNS = client_patterns("/knock/(?P<room_identifier>[^/]*)")
 
-    def __init__(self, hs):
-        super(KnockRoomAliasServlet, self).__init__(hs)
+    def __init__(self, hs: "HomeServer"):
+        super().__init__(hs)
         self.room_member_handler = hs.get_room_member_handler()
         self.auth = hs.get_auth()
 
-    async def on_POST(self, request, room_identifier, txn_id=None):
+    async def on_POST(
+        self, request: Request, room_identifier: str, txn_id: Optional[str] = None,
+    ) -> Tuple[int, JsonDict]:
         requester = await self.auth.get_user_by_req(request)
 
         content = parse_json_object_from_request(request)
@@ -97,14 +107,14 @@ class KnockRoomAliasServlet(TransactionRestServlet):
             try:
                 remote_room_hosts = [
                     x.decode("ascii") for x in request.args[b"server_name"]
-                ]
+                ]  # type: Optional[List[str]]
             except Exception:
                 remote_room_hosts = None
         elif RoomAlias.is_valid(room_identifier):
             handler = self.room_member_handler
             room_alias = RoomAlias.from_string(room_identifier)
-            room_id, remote_room_hosts = await handler.lookup_room_alias(room_alias)
-            room_id = room_id.to_string()
+            room_id_obj, remote_room_hosts = await handler.lookup_room_alias(room_alias)
+            room_id = room_id_obj.to_string()
         else:
             raise SynapseError(
                 400, "%s was not legal room ID or room alias" % (room_identifier,)
@@ -123,7 +133,7 @@ class KnockRoomAliasServlet(TransactionRestServlet):
 
         return 200, {}
 
-    def on_PUT(self, request, room_identifier, txn_id):
+    def on_PUT(self, request: Request, room_identifier: str, txn_id: str):
         set_tag("txn_id", txn_id)
 
         return self.txns.fetch_or_execute_request(