mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-05-02 10:36:06 -04:00
Add type hints for most HomeServer
parameters (#11095)
This commit is contained in:
parent
b9ce53e878
commit
2b82ec425f
58 changed files with 342 additions and 143 deletions
|
@ -21,6 +21,7 @@ import typing
|
|||
import urllib.parse
|
||||
from io import BytesIO, StringIO
|
||||
from typing import (
|
||||
TYPE_CHECKING,
|
||||
Callable,
|
||||
Dict,
|
||||
Generic,
|
||||
|
@ -73,6 +74,9 @@ from synapse.util import json_decoder
|
|||
from synapse.util.async_helpers import timeout_deferred
|
||||
from synapse.util.metrics import Measure
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from synapse.server import HomeServer
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
outgoing_requests_counter = Counter(
|
||||
|
@ -319,7 +323,7 @@ class MatrixFederationHttpClient:
|
|||
requests.
|
||||
"""
|
||||
|
||||
def __init__(self, hs, tls_client_options_factory):
|
||||
def __init__(self, hs: "HomeServer", tls_client_options_factory):
|
||||
self.hs = hs
|
||||
self.signing_key = hs.signing_key
|
||||
self.server_name = hs.hostname
|
||||
|
@ -711,7 +715,7 @@ class MatrixFederationHttpClient:
|
|||
Returns:
|
||||
A list of headers to be added as "Authorization:" headers
|
||||
"""
|
||||
request = {
|
||||
request: JsonDict = {
|
||||
"method": method.decode("ascii"),
|
||||
"uri": url_bytes.decode("ascii"),
|
||||
"origin": self.server_name,
|
||||
|
|
|
@ -22,6 +22,7 @@ import urllib
|
|||
from http import HTTPStatus
|
||||
from inspect import isawaitable
|
||||
from typing import (
|
||||
TYPE_CHECKING,
|
||||
Any,
|
||||
Awaitable,
|
||||
Callable,
|
||||
|
@ -61,6 +62,9 @@ from synapse.util import json_encoder
|
|||
from synapse.util.caches import intern_dict
|
||||
from synapse.util.iterutils import chunk_seq
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from synapse.server import HomeServer
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
HTML_ERROR_TEMPLATE = """<!DOCTYPE html>
|
||||
|
@ -343,6 +347,11 @@ class DirectServeJsonResource(_AsyncResource):
|
|||
return_json_error(f, request)
|
||||
|
||||
|
||||
_PathEntry = collections.namedtuple(
|
||||
"_PathEntry", ["pattern", "callback", "servlet_classname"]
|
||||
)
|
||||
|
||||
|
||||
class JsonResource(DirectServeJsonResource):
|
||||
"""This implements the HttpServer interface and provides JSON support for
|
||||
Resources.
|
||||
|
@ -359,14 +368,10 @@ class JsonResource(DirectServeJsonResource):
|
|||
|
||||
isLeaf = True
|
||||
|
||||
_PathEntry = collections.namedtuple(
|
||||
"_PathEntry", ["pattern", "callback", "servlet_classname"]
|
||||
)
|
||||
|
||||
def __init__(self, hs, canonical_json=True, extract_context=False):
|
||||
def __init__(self, hs: "HomeServer", canonical_json=True, extract_context=False):
|
||||
super().__init__(canonical_json, extract_context)
|
||||
self.clock = hs.get_clock()
|
||||
self.path_regexs = {}
|
||||
self.path_regexs: Dict[bytes, List[_PathEntry]] = {}
|
||||
self.hs = hs
|
||||
|
||||
def register_paths(self, method, path_patterns, callback, servlet_classname):
|
||||
|
@ -391,7 +396,7 @@ class JsonResource(DirectServeJsonResource):
|
|||
for path_pattern in path_patterns:
|
||||
logger.debug("Registering for %s %s", method, path_pattern.pattern)
|
||||
self.path_regexs.setdefault(method, []).append(
|
||||
self._PathEntry(path_pattern, callback, servlet_classname)
|
||||
_PathEntry(path_pattern, callback, servlet_classname)
|
||||
)
|
||||
|
||||
def _get_handler_for_request(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue