Remove the deprecated Handlers object (#8494)

All handlers now available via get_*_handler() methods on the HomeServer.
This commit is contained in:
Patrick Cloke 2020-10-09 07:24:34 -04:00 committed by GitHub
parent a93f3121f8
commit c9c0ad5e20
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
40 changed files with 116 additions and 157 deletions

1
changelog.d/8494.misc Normal file
View File

@ -0,0 +1 @@
Remove the deprecated `Handlers` object.

View File

@ -89,7 +89,7 @@ async def export_data_command(hs, args):
user_id = args.user_id user_id = args.user_id
directory = args.output_directory directory = args.output_directory
res = await hs.get_handlers().admin_handler.export_user_data( res = await hs.get_admin_handler().export_user_data(
user_id, FileExfiltrationWriter(user_id, directory=directory) user_id, FileExfiltrationWriter(user_id, directory=directory)
) )
print(res) print(res)

View File

@ -99,10 +99,15 @@ class FederationServer(FederationBase):
super().__init__(hs) super().__init__(hs)
self.auth = hs.get_auth() self.auth = hs.get_auth()
self.handler = hs.get_handlers().federation_handler self.handler = hs.get_federation_handler()
self.state = hs.get_state_handler() self.state = hs.get_state_handler()
self.device_handler = hs.get_device_handler() self.device_handler = hs.get_device_handler()
# Ensure the following handlers are loaded since they register callbacks
# with FederationHandlerRegistry.
hs.get_directory_handler()
self._federation_ratelimiter = hs.get_federation_ratelimiter() self._federation_ratelimiter = hs.get_federation_ratelimiter()
self._server_linearizer = Linearizer("fed_server") self._server_linearizer = Linearizer("fed_server")

View File

@ -12,36 +12,3 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
from .admin import AdminHandler
from .directory import DirectoryHandler
from .federation import FederationHandler
from .identity import IdentityHandler
from .search import SearchHandler
class Handlers:
""" Deprecated. A collection of handlers.
At some point most of the classes whose name ended "Handler" were
accessed through this class.
However this makes it painful to unit test the handlers and to run cut
down versions of synapse that only use specific handlers because using a
single handler required creating all of the handlers. So some of the
handlers have been lifted out of the Handlers object and are now accessed
directly through the homeserver object itself.
Any new handlers should follow the new pattern of being accessed through
the homeserver object and should not be added to the Handlers object.
The remaining handlers should be moved out of the handlers object.
"""
def __init__(self, hs):
self.federation_handler = FederationHandler(hs)
self.directory_handler = DirectoryHandler(hs)
self.admin_handler = AdminHandler(hs)
self.identity_handler = IdentityHandler(hs)
self.search_handler = SearchHandler(hs)

View File

@ -1080,7 +1080,7 @@ class AuthHandler(BaseHandler):
if medium == "email": if medium == "email":
address = canonicalise_email(address) address = canonicalise_email(address)
identity_handler = self.hs.get_handlers().identity_handler identity_handler = self.hs.get_identity_handler()
result = await identity_handler.try_unbind_threepid( result = await identity_handler.try_unbind_threepid(
user_id, {"medium": medium, "address": address, "id_server": id_server} user_id, {"medium": medium, "address": address, "id_server": id_server}
) )

View File

@ -37,7 +37,7 @@ class DeactivateAccountHandler(BaseHandler):
self._auth_handler = hs.get_auth_handler() self._auth_handler = hs.get_auth_handler()
self._device_handler = hs.get_device_handler() self._device_handler = hs.get_device_handler()
self._room_member_handler = hs.get_room_member_handler() self._room_member_handler = hs.get_room_member_handler()
self._identity_handler = hs.get_handlers().identity_handler self._identity_handler = hs.get_identity_handler()
self.user_directory_handler = hs.get_user_directory_handler() self.user_directory_handler = hs.get_user_directory_handler()
# Flag that indicates whether the process to part users from rooms is running # Flag that indicates whether the process to part users from rooms is running

View File

@ -1014,7 +1014,7 @@ class EventCreationHandler:
# Check the alias is currently valid (if it has changed). # Check the alias is currently valid (if it has changed).
room_alias_str = event.content.get("alias", None) room_alias_str = event.content.get("alias", None)
directory_handler = self.hs.get_handlers().directory_handler directory_handler = self.hs.get_directory_handler()
if room_alias_str and room_alias_str != original_alias: if room_alias_str and room_alias_str != original_alias:
await self._validate_canonical_alias( await self._validate_canonical_alias(
directory_handler, room_alias_str, event.room_id directory_handler, room_alias_str, event.room_id
@ -1040,7 +1040,7 @@ class EventCreationHandler:
directory_handler, alias_str, event.room_id directory_handler, alias_str, event.room_id
) )
federation_handler = self.hs.get_handlers().federation_handler federation_handler = self.hs.get_federation_handler()
if event.type == EventTypes.Member: if event.type == EventTypes.Member:
if event.content["membership"] == Membership.INVITE: if event.content["membership"] == Membership.INVITE:

View File

@ -383,7 +383,7 @@ class PaginationHandler:
"room_key", leave_token "room_key", leave_token
) )
await self.hs.get_handlers().federation_handler.maybe_backfill( await self.hs.get_federation_handler().maybe_backfill(
room_id, curr_topo, limit=pagin_config.limit, room_id, curr_topo, limit=pagin_config.limit,
) )

View File

@ -48,7 +48,7 @@ class RegistrationHandler(BaseHandler):
self._auth_handler = hs.get_auth_handler() self._auth_handler = hs.get_auth_handler()
self.profile_handler = hs.get_profile_handler() self.profile_handler = hs.get_profile_handler()
self.user_directory_handler = hs.get_user_directory_handler() self.user_directory_handler = hs.get_user_directory_handler()
self.identity_handler = self.hs.get_handlers().identity_handler self.identity_handler = self.hs.get_identity_handler()
self.ratelimiter = hs.get_registration_ratelimiter() self.ratelimiter = hs.get_registration_ratelimiter()
self.macaroon_gen = hs.get_macaroon_generator() self.macaroon_gen = hs.get_macaroon_generator()
self._server_notices_mxid = hs.config.server_notices_mxid self._server_notices_mxid = hs.config.server_notices_mxid

View File

@ -691,7 +691,7 @@ class RoomCreationHandler(BaseHandler):
if not allowed_by_third_party_rules: if not allowed_by_third_party_rules:
raise SynapseError(403, "Room visibility value not allowed.") raise SynapseError(403, "Room visibility value not allowed.")
directory_handler = self.hs.get_handlers().directory_handler directory_handler = self.hs.get_directory_handler()
if room_alias: if room_alias:
await directory_handler.create_association( await directory_handler.create_association(
requester=requester, requester=requester,

View File

@ -64,9 +64,9 @@ class RoomMemberHandler(metaclass=abc.ABCMeta):
self.state_handler = hs.get_state_handler() self.state_handler = hs.get_state_handler()
self.config = hs.config self.config = hs.config
self.federation_handler = hs.get_handlers().federation_handler self.federation_handler = hs.get_federation_handler()
self.directory_handler = hs.get_handlers().directory_handler self.directory_handler = hs.get_directory_handler()
self.identity_handler = hs.get_handlers().identity_handler self.identity_handler = hs.get_identity_handler()
self.registration_handler = hs.get_registration_handler() self.registration_handler = hs.get_registration_handler()
self.profile_handler = hs.get_profile_handler() self.profile_handler = hs.get_profile_handler()
self.event_creation_handler = hs.get_event_creation_handler() self.event_creation_handler = hs.get_event_creation_handler()

View File

@ -143,7 +143,7 @@ class _BaseThreepidAuthChecker:
threepid_creds = authdict["threepid_creds"] threepid_creds = authdict["threepid_creds"]
identity_handler = self.hs.get_handlers().identity_handler identity_handler = self.hs.get_identity_handler()
logger.info("Getting validated threepid. threepidcreds: %r", (threepid_creds,)) logger.info("Getting validated threepid. threepidcreds: %r", (threepid_creds,))

View File

@ -62,7 +62,7 @@ class ReplicationFederationSendEventsRestServlet(ReplicationEndpoint):
self.store = hs.get_datastore() self.store = hs.get_datastore()
self.storage = hs.get_storage() self.storage = hs.get_storage()
self.clock = hs.get_clock() self.clock = hs.get_clock()
self.federation_handler = hs.get_handlers().federation_handler self.federation_handler = hs.get_federation_handler()
@staticmethod @staticmethod
async def _serialize_payload(store, room_id, event_and_contexts, backfilled): async def _serialize_payload(store, room_id, event_and_contexts, backfilled):

View File

@ -47,7 +47,7 @@ class ReplicationRemoteJoinRestServlet(ReplicationEndpoint):
def __init__(self, hs): def __init__(self, hs):
super().__init__(hs) super().__init__(hs)
self.federation_handler = hs.get_handlers().federation_handler self.federation_handler = hs.get_federation_handler()
self.store = hs.get_datastore() self.store = hs.get_datastore()
self.clock = hs.get_clock() self.clock = hs.get_clock()

View File

@ -138,7 +138,7 @@ class ListRoomRestServlet(RestServlet):
def __init__(self, hs): def __init__(self, hs):
self.store = hs.get_datastore() self.store = hs.get_datastore()
self.auth = hs.get_auth() self.auth = hs.get_auth()
self.admin_handler = hs.get_handlers().admin_handler self.admin_handler = hs.get_admin_handler()
async def on_GET(self, request): async def on_GET(self, request):
requester = await self.auth.get_user_by_req(request) requester = await self.auth.get_user_by_req(request)
@ -273,7 +273,7 @@ class JoinRoomAliasServlet(RestServlet):
self.hs = hs self.hs = hs
self.auth = hs.get_auth() self.auth = hs.get_auth()
self.room_member_handler = hs.get_room_member_handler() self.room_member_handler = hs.get_room_member_handler()
self.admin_handler = hs.get_handlers().admin_handler self.admin_handler = hs.get_admin_handler()
self.state_handler = hs.get_state_handler() self.state_handler = hs.get_state_handler()
async def on_POST(self, request, room_identifier): async def on_POST(self, request, room_identifier):

View File

@ -45,7 +45,7 @@ class UsersRestServlet(RestServlet):
self.hs = hs self.hs = hs
self.store = hs.get_datastore() self.store = hs.get_datastore()
self.auth = hs.get_auth() self.auth = hs.get_auth()
self.admin_handler = hs.get_handlers().admin_handler self.admin_handler = hs.get_admin_handler()
async def on_GET(self, request, user_id): async def on_GET(self, request, user_id):
target_user = UserID.from_string(user_id) target_user = UserID.from_string(user_id)
@ -82,7 +82,7 @@ class UsersRestServletV2(RestServlet):
self.hs = hs self.hs = hs
self.store = hs.get_datastore() self.store = hs.get_datastore()
self.auth = hs.get_auth() self.auth = hs.get_auth()
self.admin_handler = hs.get_handlers().admin_handler self.admin_handler = hs.get_admin_handler()
async def on_GET(self, request): async def on_GET(self, request):
await assert_requester_is_admin(self.auth, request) await assert_requester_is_admin(self.auth, request)
@ -135,7 +135,7 @@ class UserRestServletV2(RestServlet):
def __init__(self, hs): def __init__(self, hs):
self.hs = hs self.hs = hs
self.auth = hs.get_auth() self.auth = hs.get_auth()
self.admin_handler = hs.get_handlers().admin_handler self.admin_handler = hs.get_admin_handler()
self.store = hs.get_datastore() self.store = hs.get_datastore()
self.auth_handler = hs.get_auth_handler() self.auth_handler = hs.get_auth_handler()
self.profile_handler = hs.get_profile_handler() self.profile_handler = hs.get_profile_handler()
@ -448,7 +448,7 @@ class WhoisRestServlet(RestServlet):
def __init__(self, hs): def __init__(self, hs):
self.hs = hs self.hs = hs
self.auth = hs.get_auth() self.auth = hs.get_auth()
self.handlers = hs.get_handlers() self.admin_handler = hs.get_admin_handler()
async def on_GET(self, request, user_id): async def on_GET(self, request, user_id):
target_user = UserID.from_string(user_id) target_user = UserID.from_string(user_id)
@ -461,7 +461,7 @@ class WhoisRestServlet(RestServlet):
if not self.hs.is_mine(target_user): if not self.hs.is_mine(target_user):
raise SynapseError(400, "Can only whois a local user") raise SynapseError(400, "Can only whois a local user")
ret = await self.handlers.admin_handler.get_whois(target_user) ret = await self.admin_handler.get_whois(target_user)
return 200, ret return 200, ret
@ -591,7 +591,6 @@ class SearchUsersRestServlet(RestServlet):
self.hs = hs self.hs = hs
self.store = hs.get_datastore() self.store = hs.get_datastore()
self.auth = hs.get_auth() self.auth = hs.get_auth()
self.handlers = hs.get_handlers()
async def on_GET(self, request, target_user_id): async def on_GET(self, request, target_user_id):
"""Get request to search user table for specific users according to """Get request to search user table for specific users according to
@ -612,7 +611,7 @@ class SearchUsersRestServlet(RestServlet):
term = parse_string(request, "term", required=True) term = parse_string(request, "term", required=True)
logger.info("term: %s ", term) logger.info("term: %s ", term)
ret = await self.handlers.store.search_users(term) ret = await self.store.search_users(term)
return 200, ret return 200, ret

View File

@ -42,14 +42,13 @@ class ClientDirectoryServer(RestServlet):
def __init__(self, hs): def __init__(self, hs):
super().__init__() super().__init__()
self.store = hs.get_datastore() self.store = hs.get_datastore()
self.handlers = hs.get_handlers() self.directory_handler = hs.get_directory_handler()
self.auth = hs.get_auth() self.auth = hs.get_auth()
async def on_GET(self, request, room_alias): async def on_GET(self, request, room_alias):
room_alias = RoomAlias.from_string(room_alias) room_alias = RoomAlias.from_string(room_alias)
dir_handler = self.handlers.directory_handler res = await self.directory_handler.get_association(room_alias)
res = await dir_handler.get_association(room_alias)
return 200, res return 200, res
@ -79,19 +78,19 @@ class ClientDirectoryServer(RestServlet):
requester = await self.auth.get_user_by_req(request) requester = await self.auth.get_user_by_req(request)
await self.handlers.directory_handler.create_association( await self.directory_handler.create_association(
requester, room_alias, room_id, servers requester, room_alias, room_id, servers
) )
return 200, {} return 200, {}
async def on_DELETE(self, request, room_alias): async def on_DELETE(self, request, room_alias):
dir_handler = self.handlers.directory_handler
try: try:
service = self.auth.get_appservice_by_req(request) service = self.auth.get_appservice_by_req(request)
room_alias = RoomAlias.from_string(room_alias) room_alias = RoomAlias.from_string(room_alias)
await dir_handler.delete_appservice_association(service, room_alias) await self.directory_handler.delete_appservice_association(
service, room_alias
)
logger.info( logger.info(
"Application service at %s deleted alias %s", "Application service at %s deleted alias %s",
service.url, service.url,
@ -107,7 +106,7 @@ class ClientDirectoryServer(RestServlet):
room_alias = RoomAlias.from_string(room_alias) room_alias = RoomAlias.from_string(room_alias)
await dir_handler.delete_association(requester, room_alias) await self.directory_handler.delete_association(requester, room_alias)
logger.info( logger.info(
"User %s deleted alias %s", user.to_string(), room_alias.to_string() "User %s deleted alias %s", user.to_string(), room_alias.to_string()
@ -122,7 +121,7 @@ class ClientDirectoryListServer(RestServlet):
def __init__(self, hs): def __init__(self, hs):
super().__init__() super().__init__()
self.store = hs.get_datastore() self.store = hs.get_datastore()
self.handlers = hs.get_handlers() self.directory_handler = hs.get_directory_handler()
self.auth = hs.get_auth() self.auth = hs.get_auth()
async def on_GET(self, request, room_id): async def on_GET(self, request, room_id):
@ -138,7 +137,7 @@ class ClientDirectoryListServer(RestServlet):
content = parse_json_object_from_request(request) content = parse_json_object_from_request(request)
visibility = content.get("visibility", "public") visibility = content.get("visibility", "public")
await self.handlers.directory_handler.edit_published_room_list( await self.directory_handler.edit_published_room_list(
requester, room_id, visibility requester, room_id, visibility
) )
@ -147,7 +146,7 @@ class ClientDirectoryListServer(RestServlet):
async def on_DELETE(self, request, room_id): async def on_DELETE(self, request, room_id):
requester = await self.auth.get_user_by_req(request) requester = await self.auth.get_user_by_req(request)
await self.handlers.directory_handler.edit_published_room_list( await self.directory_handler.edit_published_room_list(
requester, room_id, "private" requester, room_id, "private"
) )
@ -162,7 +161,7 @@ class ClientAppserviceDirectoryListServer(RestServlet):
def __init__(self, hs): def __init__(self, hs):
super().__init__() super().__init__()
self.store = hs.get_datastore() self.store = hs.get_datastore()
self.handlers = hs.get_handlers() self.directory_handler = hs.get_directory_handler()
self.auth = hs.get_auth() self.auth = hs.get_auth()
def on_PUT(self, request, network_id, room_id): def on_PUT(self, request, network_id, room_id):
@ -180,7 +179,7 @@ class ClientAppserviceDirectoryListServer(RestServlet):
403, "Only appservices can edit the appservice published room list" 403, "Only appservices can edit the appservice published room list"
) )
await self.handlers.directory_handler.edit_published_appservice_room_list( await self.directory_handler.edit_published_appservice_room_list(
requester.app_service.id, network_id, room_id, visibility requester.app_service.id, network_id, room_id, visibility
) )

View File

@ -67,7 +67,6 @@ class LoginRestServlet(RestServlet):
self.auth_handler = self.hs.get_auth_handler() self.auth_handler = self.hs.get_auth_handler()
self.registration_handler = hs.get_registration_handler() self.registration_handler = hs.get_registration_handler()
self.handlers = hs.get_handlers()
self._well_known_builder = WellKnownBuilder(hs) self._well_known_builder = WellKnownBuilder(hs)
self._address_ratelimiter = Ratelimiter( self._address_ratelimiter = Ratelimiter(
clock=hs.get_clock(), clock=hs.get_clock(),

View File

@ -112,7 +112,6 @@ class RoomCreateRestServlet(TransactionRestServlet):
class RoomStateEventRestServlet(TransactionRestServlet): class RoomStateEventRestServlet(TransactionRestServlet):
def __init__(self, hs): def __init__(self, hs):
super().__init__(hs) super().__init__(hs)
self.handlers = hs.get_handlers()
self.event_creation_handler = hs.get_event_creation_handler() self.event_creation_handler = hs.get_event_creation_handler()
self.room_member_handler = hs.get_room_member_handler() self.room_member_handler = hs.get_room_member_handler()
self.message_handler = hs.get_message_handler() self.message_handler = hs.get_message_handler()
@ -798,7 +797,6 @@ class RoomMembershipRestServlet(TransactionRestServlet):
class RoomRedactEventRestServlet(TransactionRestServlet): class RoomRedactEventRestServlet(TransactionRestServlet):
def __init__(self, hs): def __init__(self, hs):
super().__init__(hs) super().__init__(hs)
self.handlers = hs.get_handlers()
self.event_creation_handler = hs.get_event_creation_handler() self.event_creation_handler = hs.get_event_creation_handler()
self.auth = hs.get_auth() self.auth = hs.get_auth()
@ -903,7 +901,7 @@ class RoomAliasListServlet(RestServlet):
def __init__(self, hs: "synapse.server.HomeServer"): def __init__(self, hs: "synapse.server.HomeServer"):
super().__init__() super().__init__()
self.auth = hs.get_auth() self.auth = hs.get_auth()
self.directory_handler = hs.get_handlers().directory_handler self.directory_handler = hs.get_directory_handler()
async def on_GET(self, request, room_id): async def on_GET(self, request, room_id):
requester = await self.auth.get_user_by_req(request) requester = await self.auth.get_user_by_req(request)
@ -920,7 +918,7 @@ class SearchRestServlet(RestServlet):
def __init__(self, hs): def __init__(self, hs):
super().__init__() super().__init__()
self.handlers = hs.get_handlers() self.search_handler = hs.get_search_handler()
self.auth = hs.get_auth() self.auth = hs.get_auth()
async def on_POST(self, request): async def on_POST(self, request):
@ -929,9 +927,7 @@ class SearchRestServlet(RestServlet):
content = parse_json_object_from_request(request) content = parse_json_object_from_request(request)
batch = parse_string(request, "next_batch") batch = parse_string(request, "next_batch")
results = await self.handlers.search_handler.search( results = await self.search_handler.search(requester.user, content, batch)
requester.user, content, batch
)
return 200, results return 200, results

View File

@ -56,7 +56,7 @@ class EmailPasswordRequestTokenRestServlet(RestServlet):
self.hs = hs self.hs = hs
self.datastore = hs.get_datastore() self.datastore = hs.get_datastore()
self.config = hs.config self.config = hs.config
self.identity_handler = hs.get_handlers().identity_handler self.identity_handler = hs.get_identity_handler()
if self.config.threepid_behaviour_email == ThreepidBehaviour.LOCAL: if self.config.threepid_behaviour_email == ThreepidBehaviour.LOCAL:
self.mailer = Mailer( self.mailer = Mailer(
@ -327,7 +327,7 @@ class EmailThreepidRequestTokenRestServlet(RestServlet):
super().__init__() super().__init__()
self.hs = hs self.hs = hs
self.config = hs.config self.config = hs.config
self.identity_handler = hs.get_handlers().identity_handler self.identity_handler = hs.get_identity_handler()
self.store = self.hs.get_datastore() self.store = self.hs.get_datastore()
if self.config.threepid_behaviour_email == ThreepidBehaviour.LOCAL: if self.config.threepid_behaviour_email == ThreepidBehaviour.LOCAL:
@ -424,7 +424,7 @@ class MsisdnThreepidRequestTokenRestServlet(RestServlet):
self.hs = hs self.hs = hs
super().__init__() super().__init__()
self.store = self.hs.get_datastore() self.store = self.hs.get_datastore()
self.identity_handler = hs.get_handlers().identity_handler self.identity_handler = hs.get_identity_handler()
async def on_POST(self, request): async def on_POST(self, request):
body = parse_json_object_from_request(request) body = parse_json_object_from_request(request)
@ -574,7 +574,7 @@ class AddThreepidMsisdnSubmitTokenServlet(RestServlet):
self.config = hs.config self.config = hs.config
self.clock = hs.get_clock() self.clock = hs.get_clock()
self.store = hs.get_datastore() self.store = hs.get_datastore()
self.identity_handler = hs.get_handlers().identity_handler self.identity_handler = hs.get_identity_handler()
async def on_POST(self, request): async def on_POST(self, request):
if not self.config.account_threepid_delegate_msisdn: if not self.config.account_threepid_delegate_msisdn:
@ -604,7 +604,7 @@ class ThreepidRestServlet(RestServlet):
def __init__(self, hs): def __init__(self, hs):
super().__init__() super().__init__()
self.hs = hs self.hs = hs
self.identity_handler = hs.get_handlers().identity_handler self.identity_handler = hs.get_identity_handler()
self.auth = hs.get_auth() self.auth = hs.get_auth()
self.auth_handler = hs.get_auth_handler() self.auth_handler = hs.get_auth_handler()
self.datastore = self.hs.get_datastore() self.datastore = self.hs.get_datastore()
@ -660,7 +660,7 @@ class ThreepidAddRestServlet(RestServlet):
def __init__(self, hs): def __init__(self, hs):
super().__init__() super().__init__()
self.hs = hs self.hs = hs
self.identity_handler = hs.get_handlers().identity_handler self.identity_handler = hs.get_identity_handler()
self.auth = hs.get_auth() self.auth = hs.get_auth()
self.auth_handler = hs.get_auth_handler() self.auth_handler = hs.get_auth_handler()
@ -711,7 +711,7 @@ class ThreepidBindRestServlet(RestServlet):
def __init__(self, hs): def __init__(self, hs):
super().__init__() super().__init__()
self.hs = hs self.hs = hs
self.identity_handler = hs.get_handlers().identity_handler self.identity_handler = hs.get_identity_handler()
self.auth = hs.get_auth() self.auth = hs.get_auth()
async def on_POST(self, request): async def on_POST(self, request):
@ -740,7 +740,7 @@ class ThreepidUnbindRestServlet(RestServlet):
def __init__(self, hs): def __init__(self, hs):
super().__init__() super().__init__()
self.hs = hs self.hs = hs
self.identity_handler = hs.get_handlers().identity_handler self.identity_handler = hs.get_identity_handler()
self.auth = hs.get_auth() self.auth = hs.get_auth()
self.datastore = self.hs.get_datastore() self.datastore = self.hs.get_datastore()

View File

@ -78,7 +78,7 @@ class EmailRegisterRequestTokenRestServlet(RestServlet):
""" """
super().__init__() super().__init__()
self.hs = hs self.hs = hs
self.identity_handler = hs.get_handlers().identity_handler self.identity_handler = hs.get_identity_handler()
self.config = hs.config self.config = hs.config
if self.hs.config.threepid_behaviour_email == ThreepidBehaviour.LOCAL: if self.hs.config.threepid_behaviour_email == ThreepidBehaviour.LOCAL:
@ -176,7 +176,7 @@ class MsisdnRegisterRequestTokenRestServlet(RestServlet):
""" """
super().__init__() super().__init__()
self.hs = hs self.hs = hs
self.identity_handler = hs.get_handlers().identity_handler self.identity_handler = hs.get_identity_handler()
async def on_POST(self, request): async def on_POST(self, request):
body = parse_json_object_from_request(request) body = parse_json_object_from_request(request)
@ -370,7 +370,7 @@ class RegisterRestServlet(RestServlet):
self.store = hs.get_datastore() self.store = hs.get_datastore()
self.auth_handler = hs.get_auth_handler() self.auth_handler = hs.get_auth_handler()
self.registration_handler = hs.get_registration_handler() self.registration_handler = hs.get_registration_handler()
self.identity_handler = hs.get_handlers().identity_handler self.identity_handler = hs.get_identity_handler()
self.room_member_handler = hs.get_room_member_handler() self.room_member_handler = hs.get_room_member_handler()
self.macaroon_gen = hs.get_macaroon_generator() self.macaroon_gen = hs.get_macaroon_generator()
self.ratelimiter = hs.get_registration_ratelimiter() self.ratelimiter = hs.get_registration_ratelimiter()

View File

@ -54,19 +54,22 @@ from synapse.federation.sender import FederationSender
from synapse.federation.transport.client import TransportLayerClient from synapse.federation.transport.client import TransportLayerClient
from synapse.groups.attestations import GroupAttestationSigning, GroupAttestionRenewer from synapse.groups.attestations import GroupAttestationSigning, GroupAttestionRenewer
from synapse.groups.groups_server import GroupsServerHandler, GroupsServerWorkerHandler from synapse.groups.groups_server import GroupsServerHandler, GroupsServerWorkerHandler
from synapse.handlers import Handlers
from synapse.handlers.account_validity import AccountValidityHandler from synapse.handlers.account_validity import AccountValidityHandler
from synapse.handlers.acme import AcmeHandler from synapse.handlers.acme import AcmeHandler
from synapse.handlers.admin import AdminHandler
from synapse.handlers.appservice import ApplicationServicesHandler from synapse.handlers.appservice import ApplicationServicesHandler
from synapse.handlers.auth import AuthHandler, MacaroonGenerator from synapse.handlers.auth import AuthHandler, MacaroonGenerator
from synapse.handlers.cas_handler import CasHandler from synapse.handlers.cas_handler import CasHandler
from synapse.handlers.deactivate_account import DeactivateAccountHandler from synapse.handlers.deactivate_account import DeactivateAccountHandler
from synapse.handlers.device import DeviceHandler, DeviceWorkerHandler from synapse.handlers.device import DeviceHandler, DeviceWorkerHandler
from synapse.handlers.devicemessage import DeviceMessageHandler from synapse.handlers.devicemessage import DeviceMessageHandler
from synapse.handlers.directory import DirectoryHandler
from synapse.handlers.e2e_keys import E2eKeysHandler from synapse.handlers.e2e_keys import E2eKeysHandler
from synapse.handlers.e2e_room_keys import E2eRoomKeysHandler from synapse.handlers.e2e_room_keys import E2eRoomKeysHandler
from synapse.handlers.events import EventHandler, EventStreamHandler from synapse.handlers.events import EventHandler, EventStreamHandler
from synapse.handlers.federation import FederationHandler
from synapse.handlers.groups_local import GroupsLocalHandler, GroupsLocalWorkerHandler from synapse.handlers.groups_local import GroupsLocalHandler, GroupsLocalWorkerHandler
from synapse.handlers.identity import IdentityHandler
from synapse.handlers.initial_sync import InitialSyncHandler from synapse.handlers.initial_sync import InitialSyncHandler
from synapse.handlers.message import EventCreationHandler, MessageHandler from synapse.handlers.message import EventCreationHandler, MessageHandler
from synapse.handlers.pagination import PaginationHandler from synapse.handlers.pagination import PaginationHandler
@ -84,6 +87,7 @@ from synapse.handlers.room import (
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 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.set_password import SetPasswordHandler from synapse.handlers.set_password import SetPasswordHandler
from synapse.handlers.stats import StatsHandler from synapse.handlers.stats import StatsHandler
from synapse.handlers.sync import SyncHandler from synapse.handlers.sync import SyncHandler
@ -318,10 +322,6 @@ class HomeServer(metaclass=abc.ABCMeta):
def get_federation_server(self) -> FederationServer: def get_federation_server(self) -> FederationServer:
return FederationServer(self) return FederationServer(self)
@cache_in_self
def get_handlers(self) -> Handlers:
return Handlers(self)
@cache_in_self @cache_in_self
def get_notifier(self) -> Notifier: def get_notifier(self) -> Notifier:
return Notifier(self) return Notifier(self)
@ -408,6 +408,10 @@ class HomeServer(metaclass=abc.ABCMeta):
def get_device_message_handler(self) -> DeviceMessageHandler: def get_device_message_handler(self) -> DeviceMessageHandler:
return DeviceMessageHandler(self) return DeviceMessageHandler(self)
@cache_in_self
def get_directory_handler(self) -> DirectoryHandler:
return DirectoryHandler(self)
@cache_in_self @cache_in_self
def get_e2e_keys_handler(self) -> E2eKeysHandler: def get_e2e_keys_handler(self) -> E2eKeysHandler:
return E2eKeysHandler(self) return E2eKeysHandler(self)
@ -420,6 +424,10 @@ class HomeServer(metaclass=abc.ABCMeta):
def get_acme_handler(self) -> AcmeHandler: def get_acme_handler(self) -> AcmeHandler:
return AcmeHandler(self) return AcmeHandler(self)
@cache_in_self
def get_admin_handler(self) -> AdminHandler:
return AdminHandler(self)
@cache_in_self @cache_in_self
def get_application_service_api(self) -> ApplicationServiceApi: def get_application_service_api(self) -> ApplicationServiceApi:
return ApplicationServiceApi(self) return ApplicationServiceApi(self)
@ -440,6 +448,14 @@ class HomeServer(metaclass=abc.ABCMeta):
def get_event_stream_handler(self) -> EventStreamHandler: def get_event_stream_handler(self) -> EventStreamHandler:
return EventStreamHandler(self) return EventStreamHandler(self)
@cache_in_self
def get_federation_handler(self) -> FederationHandler:
return FederationHandler(self)
@cache_in_self
def get_identity_handler(self) -> IdentityHandler:
return IdentityHandler(self)
@cache_in_self @cache_in_self
def get_initial_sync_handler(self) -> InitialSyncHandler: def get_initial_sync_handler(self) -> InitialSyncHandler:
return InitialSyncHandler(self) return InitialSyncHandler(self)
@ -459,6 +475,10 @@ class HomeServer(metaclass=abc.ABCMeta):
def get_deactivate_account_handler(self) -> DeactivateAccountHandler: def get_deactivate_account_handler(self) -> DeactivateAccountHandler:
return DeactivateAccountHandler(self) return DeactivateAccountHandler(self)
@cache_in_self
def get_search_handler(self) -> SearchHandler:
return SearchHandler(self)
@cache_in_self @cache_in_self
def get_set_password_handler(self) -> SetPasswordHandler: def get_set_password_handler(self) -> SetPasswordHandler:
return SetPasswordHandler(self) return SetPasswordHandler(self)

View File

@ -19,7 +19,6 @@ import pymacaroons
from twisted.internet import defer from twisted.internet import defer
import synapse.handlers.auth
from synapse.api.auth import Auth from synapse.api.auth import Auth
from synapse.api.constants import UserTypes from synapse.api.constants import UserTypes
from synapse.api.errors import ( from synapse.api.errors import (
@ -36,20 +35,15 @@ from tests import unittest
from tests.utils import mock_getRawHeaders, setup_test_homeserver from tests.utils import mock_getRawHeaders, setup_test_homeserver
class TestHandlers:
def __init__(self, hs):
self.auth_handler = synapse.handlers.auth.AuthHandler(hs)
class AuthTestCase(unittest.TestCase): class AuthTestCase(unittest.TestCase):
@defer.inlineCallbacks @defer.inlineCallbacks
def setUp(self): def setUp(self):
self.state_handler = Mock() self.state_handler = Mock()
self.store = Mock() self.store = Mock()
self.hs = yield setup_test_homeserver(self.addCleanup, handlers=None) self.hs = yield setup_test_homeserver(self.addCleanup)
self.hs.get_datastore = Mock(return_value=self.store) self.hs.get_datastore = Mock(return_value=self.store)
self.hs.handlers = TestHandlers(self.hs) self.hs.get_auth_handler().store = self.store
self.auth = Auth(self.hs) self.auth = Auth(self.hs)
# AuthBlocking reads from the hs' config on initialization. We need to # AuthBlocking reads from the hs' config on initialization. We need to
@ -283,7 +277,7 @@ class AuthTestCase(unittest.TestCase):
self.store.get_device = Mock(return_value=defer.succeed(None)) self.store.get_device = Mock(return_value=defer.succeed(None))
token = yield defer.ensureDeferred( token = yield defer.ensureDeferred(
self.hs.handlers.auth_handler.get_access_token_for_user_id( self.hs.get_auth_handler().get_access_token_for_user_id(
USER_ID, "DEVICE", valid_until_ms=None USER_ID, "DEVICE", valid_until_ms=None
) )
) )

View File

@ -50,10 +50,7 @@ class FilteringTestCase(unittest.TestCase):
self.mock_http_client.put_json = DeferredMockCallable() self.mock_http_client.put_json = DeferredMockCallable()
hs = yield setup_test_homeserver( hs = yield setup_test_homeserver(
self.addCleanup, self.addCleanup, http_client=self.mock_http_client, keyring=Mock(),
handlers=None,
http_client=self.mock_http_client,
keyring=Mock(),
) )
self.filtering = hs.get_filtering() self.filtering = hs.get_filtering()

View File

@ -315,7 +315,7 @@ class KeyringTestCase(unittest.HomeserverTestCase):
class ServerKeyFetcherTestCase(unittest.HomeserverTestCase): class ServerKeyFetcherTestCase(unittest.HomeserverTestCase):
def make_homeserver(self, reactor, clock): def make_homeserver(self, reactor, clock):
self.http_client = Mock() self.http_client = Mock()
hs = self.setup_test_homeserver(handlers=None, http_client=self.http_client) hs = self.setup_test_homeserver(http_client=self.http_client)
return hs return hs
def test_get_keys_from_server(self): def test_get_keys_from_server(self):
@ -395,9 +395,7 @@ class PerspectivesKeyFetcherTestCase(unittest.HomeserverTestCase):
} }
] ]
return self.setup_test_homeserver( return self.setup_test_homeserver(http_client=self.http_client, config=config)
handlers=None, http_client=self.http_client, config=config
)
def build_perspectives_response( def build_perspectives_response(
self, server_name: str, signing_key: SigningKey, valid_until_ts: int, self, server_name: str, signing_key: SigningKey, valid_until_ts: int,

View File

@ -35,7 +35,7 @@ class ExfiltrateData(unittest.HomeserverTestCase):
] ]
def prepare(self, reactor, clock, hs): def prepare(self, reactor, clock, hs):
self.admin_handler = hs.get_handlers().admin_handler self.admin_handler = hs.get_admin_handler()
self.user1 = self.register_user("user1", "password") self.user1 = self.register_user("user1", "password")
self.token1 = self.login("user1", "password") self.token1 = self.login("user1", "password")

View File

@ -21,24 +21,17 @@ from twisted.internet import defer
import synapse import synapse
import synapse.api.errors import synapse.api.errors
from synapse.api.errors import ResourceLimitError from synapse.api.errors import ResourceLimitError
from synapse.handlers.auth import AuthHandler
from tests import unittest from tests import unittest
from tests.test_utils import make_awaitable from tests.test_utils import make_awaitable
from tests.utils import setup_test_homeserver from tests.utils import setup_test_homeserver
class AuthHandlers:
def __init__(self, hs):
self.auth_handler = AuthHandler(hs)
class AuthTestCase(unittest.TestCase): class AuthTestCase(unittest.TestCase):
@defer.inlineCallbacks @defer.inlineCallbacks
def setUp(self): def setUp(self):
self.hs = yield setup_test_homeserver(self.addCleanup, handlers=None) self.hs = yield setup_test_homeserver(self.addCleanup)
self.hs.handlers = AuthHandlers(self.hs) self.auth_handler = self.hs.get_auth_handler()
self.auth_handler = self.hs.handlers.auth_handler
self.macaroon_generator = self.hs.get_macaroon_generator() self.macaroon_generator = self.hs.get_macaroon_generator()
# MAU tests # MAU tests

View File

@ -48,7 +48,7 @@ class DirectoryTestCase(unittest.HomeserverTestCase):
federation_registry=self.mock_registry, federation_registry=self.mock_registry,
) )
self.handler = hs.get_handlers().directory_handler self.handler = hs.get_directory_handler()
self.store = hs.get_datastore() self.store = hs.get_datastore()
@ -110,7 +110,7 @@ class TestCreateAlias(unittest.HomeserverTestCase):
] ]
def prepare(self, reactor, clock, hs): def prepare(self, reactor, clock, hs):
self.handler = hs.get_handlers().directory_handler self.handler = hs.get_directory_handler()
# Create user # Create user
self.admin_user = self.register_user("admin", "pass", admin=True) self.admin_user = self.register_user("admin", "pass", admin=True)
@ -173,7 +173,7 @@ class TestDeleteAlias(unittest.HomeserverTestCase):
def prepare(self, reactor, clock, hs): def prepare(self, reactor, clock, hs):
self.store = hs.get_datastore() self.store = hs.get_datastore()
self.handler = hs.get_handlers().directory_handler self.handler = hs.get_directory_handler()
self.state_handler = hs.get_state_handler() self.state_handler = hs.get_state_handler()
# Create user # Create user
@ -289,7 +289,7 @@ class CanonicalAliasTestCase(unittest.HomeserverTestCase):
def prepare(self, reactor, clock, hs): def prepare(self, reactor, clock, hs):
self.store = hs.get_datastore() self.store = hs.get_datastore()
self.handler = hs.get_handlers().directory_handler self.handler = hs.get_directory_handler()
self.state_handler = hs.get_state_handler() self.state_handler = hs.get_state_handler()
# Create user # Create user
@ -442,7 +442,7 @@ class TestRoomListSearchDisabled(unittest.HomeserverTestCase):
self.assertEquals(200, channel.code, channel.result) self.assertEquals(200, channel.code, channel.result)
self.room_list_handler = hs.get_room_list_handler() self.room_list_handler = hs.get_room_list_handler()
self.directory_handler = hs.get_handlers().directory_handler self.directory_handler = hs.get_directory_handler()
return hs return hs

View File

@ -38,7 +38,7 @@ class E2eKeysHandlerTestCase(unittest.TestCase):
@defer.inlineCallbacks @defer.inlineCallbacks
def setUp(self): def setUp(self):
self.hs = yield utils.setup_test_homeserver( self.hs = yield utils.setup_test_homeserver(
self.addCleanup, handlers=None, federation_client=mock.Mock() self.addCleanup, federation_client=mock.Mock()
) )
self.handler = synapse.handlers.e2e_keys.E2eKeysHandler(self.hs) self.handler = synapse.handlers.e2e_keys.E2eKeysHandler(self.hs)
self.store = self.hs.get_datastore() self.store = self.hs.get_datastore()

View File

@ -54,7 +54,7 @@ class E2eRoomKeysHandlerTestCase(unittest.TestCase):
@defer.inlineCallbacks @defer.inlineCallbacks
def setUp(self): def setUp(self):
self.hs = yield utils.setup_test_homeserver( self.hs = yield utils.setup_test_homeserver(
self.addCleanup, handlers=None, replication_layer=mock.Mock() self.addCleanup, replication_layer=mock.Mock()
) )
self.handler = synapse.handlers.e2e_room_keys.E2eRoomKeysHandler(self.hs) self.handler = synapse.handlers.e2e_room_keys.E2eRoomKeysHandler(self.hs)
self.local_user = "@boris:" + self.hs.hostname self.local_user = "@boris:" + self.hs.hostname

View File

@ -38,7 +38,7 @@ class FederationTestCase(unittest.HomeserverTestCase):
def make_homeserver(self, reactor, clock): def make_homeserver(self, reactor, clock):
hs = self.setup_test_homeserver(http_client=None) hs = self.setup_test_homeserver(http_client=None)
self.handler = hs.get_handlers().federation_handler self.handler = hs.get_federation_handler()
self.store = hs.get_datastore() self.store = hs.get_datastore()
return hs return hs

View File

@ -470,7 +470,7 @@ class PresenceJoinTestCase(unittest.HomeserverTestCase):
def prepare(self, reactor, clock, hs): def prepare(self, reactor, clock, hs):
self.federation_sender = hs.get_federation_sender() self.federation_sender = hs.get_federation_sender()
self.event_builder_factory = hs.get_event_builder_factory() self.event_builder_factory = hs.get_event_builder_factory()
self.federation_handler = hs.get_handlers().federation_handler self.federation_handler = hs.get_federation_handler()
self.presence_handler = hs.get_presence_handler() self.presence_handler = hs.get_presence_handler()
# self.event_builder_for_2 = EventBuilderFactory(hs) # self.event_builder_for_2 = EventBuilderFactory(hs)

View File

@ -20,7 +20,6 @@ from twisted.internet import defer
import synapse.types import synapse.types
from synapse.api.errors import AuthError, SynapseError from synapse.api.errors import AuthError, SynapseError
from synapse.handlers.profile import MasterProfileHandler
from synapse.types import UserID from synapse.types import UserID
from tests import unittest from tests import unittest
@ -28,11 +27,6 @@ from tests.test_utils import make_awaitable
from tests.utils import setup_test_homeserver from tests.utils import setup_test_homeserver
class ProfileHandlers:
def __init__(self, hs):
self.profile_handler = MasterProfileHandler(hs)
class ProfileTestCase(unittest.TestCase): class ProfileTestCase(unittest.TestCase):
""" Tests profile management. """ """ Tests profile management. """
@ -51,7 +45,6 @@ class ProfileTestCase(unittest.TestCase):
hs = yield setup_test_homeserver( hs = yield setup_test_homeserver(
self.addCleanup, self.addCleanup,
http_client=None, http_client=None,
handlers=None,
resource_for_federation=Mock(), resource_for_federation=Mock(),
federation_client=self.mock_federation, federation_client=self.mock_federation,
federation_server=Mock(), federation_server=Mock(),

View File

@ -18,7 +18,6 @@ from mock import Mock
from synapse.api.auth import Auth from synapse.api.auth import Auth
from synapse.api.constants import UserTypes from synapse.api.constants import UserTypes
from synapse.api.errors import Codes, ResourceLimitError, SynapseError from synapse.api.errors import Codes, ResourceLimitError, SynapseError
from synapse.handlers.register import RegistrationHandler
from synapse.spam_checker_api import RegistrationBehaviour from synapse.spam_checker_api import RegistrationBehaviour
from synapse.types import RoomAlias, UserID, create_requester from synapse.types import RoomAlias, UserID, create_requester
@ -29,11 +28,6 @@ from tests.utils import mock_getRawHeaders
from .. import unittest from .. import unittest
class RegistrationHandlers:
def __init__(self, hs):
self.registration_handler = RegistrationHandler(hs)
class RegistrationTestCase(unittest.HomeserverTestCase): class RegistrationTestCase(unittest.HomeserverTestCase):
""" Tests the RegistrationHandler. """ """ Tests the RegistrationHandler. """
@ -154,7 +148,7 @@ class RegistrationTestCase(unittest.HomeserverTestCase):
room_alias_str = "#room:test" room_alias_str = "#room:test"
user_id = self.get_success(self.handler.register_user(localpart="jeff")) user_id = self.get_success(self.handler.register_user(localpart="jeff"))
rooms = self.get_success(self.store.get_rooms_for_user(user_id)) rooms = self.get_success(self.store.get_rooms_for_user(user_id))
directory_handler = self.hs.get_handlers().directory_handler directory_handler = self.hs.get_directory_handler()
room_alias = RoomAlias.from_string(room_alias_str) room_alias = RoomAlias.from_string(room_alias_str)
room_id = self.get_success(directory_handler.get_association(room_alias)) room_id = self.get_success(directory_handler.get_association(room_alias))
@ -193,7 +187,7 @@ class RegistrationTestCase(unittest.HomeserverTestCase):
user_id = self.get_success(self.handler.register_user(localpart="support")) user_id = self.get_success(self.handler.register_user(localpart="support"))
rooms = self.get_success(self.store.get_rooms_for_user(user_id)) rooms = self.get_success(self.store.get_rooms_for_user(user_id))
self.assertEqual(len(rooms), 0) self.assertEqual(len(rooms), 0)
directory_handler = self.hs.get_handlers().directory_handler directory_handler = self.hs.get_directory_handler()
room_alias = RoomAlias.from_string(room_alias_str) room_alias = RoomAlias.from_string(room_alias_str)
self.get_failure(directory_handler.get_association(room_alias), SynapseError) self.get_failure(directory_handler.get_association(room_alias), SynapseError)
@ -205,7 +199,7 @@ class RegistrationTestCase(unittest.HomeserverTestCase):
self.store.is_real_user = Mock(return_value=make_awaitable(True)) self.store.is_real_user = Mock(return_value=make_awaitable(True))
user_id = self.get_success(self.handler.register_user(localpart="real")) user_id = self.get_success(self.handler.register_user(localpart="real"))
rooms = self.get_success(self.store.get_rooms_for_user(user_id)) rooms = self.get_success(self.store.get_rooms_for_user(user_id))
directory_handler = self.hs.get_handlers().directory_handler directory_handler = self.hs.get_directory_handler()
room_alias = RoomAlias.from_string(room_alias_str) room_alias = RoomAlias.from_string(room_alias_str)
room_id = self.get_success(directory_handler.get_association(room_alias)) room_id = self.get_success(directory_handler.get_association(room_alias))
@ -237,7 +231,7 @@ class RegistrationTestCase(unittest.HomeserverTestCase):
user_id = self.get_success(self.handler.register_user(localpart="jeff")) user_id = self.get_success(self.handler.register_user(localpart="jeff"))
# Ensure the room was created. # Ensure the room was created.
directory_handler = self.hs.get_handlers().directory_handler directory_handler = self.hs.get_directory_handler()
room_alias = RoomAlias.from_string(room_alias_str) room_alias = RoomAlias.from_string(room_alias_str)
room_id = self.get_success(directory_handler.get_association(room_alias)) room_id = self.get_success(directory_handler.get_association(room_alias))
@ -266,7 +260,7 @@ class RegistrationTestCase(unittest.HomeserverTestCase):
user_id = self.get_success(self.handler.register_user(localpart="jeff")) user_id = self.get_success(self.handler.register_user(localpart="jeff"))
# Ensure the room was created. # Ensure the room was created.
directory_handler = self.hs.get_handlers().directory_handler directory_handler = self.hs.get_directory_handler()
room_alias = RoomAlias.from_string(room_alias_str) room_alias = RoomAlias.from_string(room_alias_str)
room_id = self.get_success(directory_handler.get_association(room_alias)) room_id = self.get_success(directory_handler.get_association(room_alias))
@ -304,7 +298,7 @@ class RegistrationTestCase(unittest.HomeserverTestCase):
user_id = self.get_success(self.handler.register_user(localpart="jeff")) user_id = self.get_success(self.handler.register_user(localpart="jeff"))
# Ensure the room was created. # Ensure the room was created.
directory_handler = self.hs.get_handlers().directory_handler directory_handler = self.hs.get_directory_handler()
room_alias = RoomAlias.from_string(room_alias_str) room_alias = RoomAlias.from_string(room_alias_str)
room_id = self.get_success(directory_handler.get_association(room_alias)) room_id = self.get_success(directory_handler.get_association(room_alias))
@ -347,7 +341,7 @@ class RegistrationTestCase(unittest.HomeserverTestCase):
) )
# Ensure the room was created. # Ensure the room was created.
directory_handler = self.hs.get_handlers().directory_handler directory_handler = self.hs.get_directory_handler()
room_alias = RoomAlias.from_string(room_alias_str) room_alias = RoomAlias.from_string(room_alias_str)
room_id = self.get_success(directory_handler.get_association(room_alias)) room_id = self.get_success(directory_handler.get_association(room_alias))
@ -384,7 +378,7 @@ class RegistrationTestCase(unittest.HomeserverTestCase):
user_id = self.get_success(self.handler.register_user(localpart="jeff")) user_id = self.get_success(self.handler.register_user(localpart="jeff"))
# Ensure the room was created. # Ensure the room was created.
directory_handler = self.hs.get_handlers().directory_handler directory_handler = self.hs.get_directory_handler()
room_alias = RoomAlias.from_string(room_alias_str) room_alias = RoomAlias.from_string(room_alias_str)
room_id = self.get_success(directory_handler.get_association(room_alias)) room_id = self.get_success(directory_handler.get_association(room_alias))

View File

@ -207,7 +207,7 @@ class FederationSenderTestCase(BaseMultiWorkerStreamTestCase):
def create_room_with_remote_server(self, user, token, remote_server="other_server"): def create_room_with_remote_server(self, user, token, remote_server="other_server"):
room = self.helper.create_room_as(user, tok=token) room = self.helper.create_room_as(user, tok=token)
store = self.hs.get_datastore() store = self.hs.get_datastore()
federation = self.hs.get_handlers().federation_handler federation = self.hs.get_federation_handler()
prev_event_ids = self.get_success(store.get_latest_event_ids_in_room(room)) prev_event_ids = self.get_success(store.get_latest_event_ids_in_room(room))
room_version = self.get_success(store.get_room_version(room)) room_version = self.get_success(store.get_room_version(room))

View File

@ -78,7 +78,7 @@ class RoomTestCase(_ShadowBannedBase):
def test_invite_3pid(self): def test_invite_3pid(self):
"""Ensure that a 3PID invite does not attempt to contact the identity server.""" """Ensure that a 3PID invite does not attempt to contact the identity server."""
identity_handler = self.hs.get_handlers().identity_handler identity_handler = self.hs.get_identity_handler()
identity_handler.lookup_3pid = Mock( identity_handler.lookup_3pid = Mock(
side_effect=AssertionError("This should not get called") side_effect=AssertionError("This should not get called")
) )

View File

@ -42,7 +42,7 @@ class EventStreamPermissionsTestCase(unittest.HomeserverTestCase):
hs = self.setup_test_homeserver(config=config) hs = self.setup_test_homeserver(config=config)
hs.get_handlers().federation_handler = Mock() hs.get_federation_handler = Mock()
return hs return hs

View File

@ -32,6 +32,7 @@ from synapse.types import JsonDict, RoomAlias, UserID
from synapse.util.stringutils import random_string from synapse.util.stringutils import random_string
from tests import unittest from tests import unittest
from tests.test_utils import make_awaitable
PATH_PREFIX = b"/_matrix/client/api/v1" PATH_PREFIX = b"/_matrix/client/api/v1"
@ -47,7 +48,10 @@ class RoomBase(unittest.HomeserverTestCase):
"red", http_client=None, federation_client=Mock(), "red", http_client=None, federation_client=Mock(),
) )
self.hs.get_federation_handler = Mock(return_value=Mock()) self.hs.get_federation_handler = Mock()
self.hs.get_federation_handler.return_value.maybe_backfill = Mock(
return_value=make_awaitable(None)
)
async def _insert_client_ip(*args, **kwargs): async def _insert_client_ip(*args, **kwargs):
return None return None

View File

@ -44,7 +44,7 @@ class RoomTypingTestCase(unittest.HomeserverTestCase):
self.event_source = hs.get_event_sources().sources["typing"] self.event_source = hs.get_event_sources().sources["typing"]
hs.get_handlers().federation_handler = Mock() hs.get_federation_handler = Mock()
async def get_user_by_access_token(token=None, allow_guest=False): async def get_user_by_access_token(token=None, allow_guest=False):
return { return {

View File

@ -75,7 +75,7 @@ class MessageAcceptTests(unittest.HomeserverTestCase):
} }
) )
self.handler = self.homeserver.get_handlers().federation_handler self.handler = self.homeserver.get_federation_handler()
self.handler.do_auth = lambda origin, event, context, auth_events: succeed( self.handler.do_auth = lambda origin, event, context, auth_events: succeed(
context context
) )