|
|
|
@ -32,6 +32,7 @@ from synapse.api.errors import ( |
|
|
|
|
) |
|
|
|
|
from synapse.api.filtering import Filter |
|
|
|
|
from synapse.events.utils import format_event_for_client_v2 |
|
|
|
|
from synapse.http.endpoint import parse_and_validate_server_name |
|
|
|
|
from synapse.http.servlet import ( |
|
|
|
|
RestServlet, |
|
|
|
|
assert_params_in_dict, |
|
|
|
@ -347,8 +348,6 @@ class PublicRoomListRestServlet(TransactionRestServlet): |
|
|
|
|
# provided. |
|
|
|
|
if server: |
|
|
|
|
raise e |
|
|
|
|
else: |
|
|
|
|
pass |
|
|
|
|
|
|
|
|
|
limit = parse_integer(request, "limit", 0) |
|
|
|
|
since_token = parse_string(request, "since", None) |
|
|
|
@ -359,6 +358,14 @@ class PublicRoomListRestServlet(TransactionRestServlet): |
|
|
|
|
|
|
|
|
|
handler = self.hs.get_room_list_handler() |
|
|
|
|
if server and server != self.hs.config.server_name: |
|
|
|
|
# Ensure the server is valid. |
|
|
|
|
try: |
|
|
|
|
parse_and_validate_server_name(server) |
|
|
|
|
except ValueError: |
|
|
|
|
raise SynapseError( |
|
|
|
|
400, "Invalid server name: %s" % (server,), Codes.INVALID_PARAM, |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
try: |
|
|
|
|
data = await handler.get_remote_public_room_list( |
|
|
|
|
server, limit=limit, since_token=since_token |
|
|
|
@ -402,6 +409,14 @@ class PublicRoomListRestServlet(TransactionRestServlet): |
|
|
|
|
|
|
|
|
|
handler = self.hs.get_room_list_handler() |
|
|
|
|
if server and server != self.hs.config.server_name: |
|
|
|
|
# Ensure the server is valid. |
|
|
|
|
try: |
|
|
|
|
parse_and_validate_server_name(server) |
|
|
|
|
except ValueError: |
|
|
|
|
raise SynapseError( |
|
|
|
|
400, "Invalid server name: %s" % (server,), Codes.INVALID_PARAM, |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
try: |
|
|
|
|
data = await handler.get_remote_public_room_list( |
|
|
|
|
server, |
|
|
|
|