mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-05-04 15:05:05 -04:00
Add most of the missing type hints to synapse.federation
. (#11483)
This skips a few methods which are difficult to type.
This commit is contained in:
parent
b50e39df57
commit
d2279f471b
10 changed files with 84 additions and 49 deletions
|
@ -1,4 +1,5 @@
|
|||
# Copyright 2014-2016 OpenMarket Ltd
|
||||
# Copyright 2021 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.
|
||||
|
@ -350,7 +351,7 @@ class BaseFederationRow:
|
|||
TypeId = "" # Unique string that ids the type. Must be overridden in sub classes.
|
||||
|
||||
@staticmethod
|
||||
def from_data(data):
|
||||
def from_data(data: JsonDict) -> "BaseFederationRow":
|
||||
"""Parse the data from the federation stream into a row.
|
||||
|
||||
Args:
|
||||
|
@ -359,7 +360,7 @@ class BaseFederationRow:
|
|||
"""
|
||||
raise NotImplementedError()
|
||||
|
||||
def to_data(self):
|
||||
def to_data(self) -> JsonDict:
|
||||
"""Serialize this row to be sent over the federation stream.
|
||||
|
||||
Returns:
|
||||
|
@ -368,7 +369,7 @@ class BaseFederationRow:
|
|||
"""
|
||||
raise NotImplementedError()
|
||||
|
||||
def add_to_buffer(self, buff):
|
||||
def add_to_buffer(self, buff: "ParsedFederationStreamData") -> None:
|
||||
"""Add this row to the appropriate field in the buffer ready for this
|
||||
to be sent over federation.
|
||||
|
||||
|
@ -391,15 +392,15 @@ class PresenceDestinationsRow(
|
|||
TypeId = "pd"
|
||||
|
||||
@staticmethod
|
||||
def from_data(data):
|
||||
def from_data(data: JsonDict) -> "PresenceDestinationsRow":
|
||||
return PresenceDestinationsRow(
|
||||
state=UserPresenceState.from_dict(data["state"]), destinations=data["dests"]
|
||||
)
|
||||
|
||||
def to_data(self):
|
||||
def to_data(self) -> JsonDict:
|
||||
return {"state": self.state.as_dict(), "dests": self.destinations}
|
||||
|
||||
def add_to_buffer(self, buff):
|
||||
def add_to_buffer(self, buff: "ParsedFederationStreamData") -> None:
|
||||
buff.presence_destinations.append((self.state, self.destinations))
|
||||
|
||||
|
||||
|
@ -417,13 +418,13 @@ class KeyedEduRow(
|
|||
TypeId = "k"
|
||||
|
||||
@staticmethod
|
||||
def from_data(data):
|
||||
def from_data(data: JsonDict) -> "KeyedEduRow":
|
||||
return KeyedEduRow(key=tuple(data["key"]), edu=Edu(**data["edu"]))
|
||||
|
||||
def to_data(self):
|
||||
def to_data(self) -> JsonDict:
|
||||
return {"key": self.key, "edu": self.edu.get_internal_dict()}
|
||||
|
||||
def add_to_buffer(self, buff):
|
||||
def add_to_buffer(self, buff: "ParsedFederationStreamData") -> None:
|
||||
buff.keyed_edus.setdefault(self.edu.destination, {})[self.key] = self.edu
|
||||
|
||||
|
||||
|
@ -433,13 +434,13 @@ class EduRow(BaseFederationRow, namedtuple("EduRow", ("edu",))): # Edu
|
|||
TypeId = "e"
|
||||
|
||||
@staticmethod
|
||||
def from_data(data):
|
||||
def from_data(data: JsonDict) -> "EduRow":
|
||||
return EduRow(Edu(**data))
|
||||
|
||||
def to_data(self):
|
||||
def to_data(self) -> JsonDict:
|
||||
return self.edu.get_internal_dict()
|
||||
|
||||
def add_to_buffer(self, buff):
|
||||
def add_to_buffer(self, buff: "ParsedFederationStreamData") -> None:
|
||||
buff.edus.setdefault(self.edu.destination, []).append(self.edu)
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue