mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-05-02 11:16:07 -04:00
Allow paginating both forwards and backwards
This commit is contained in:
parent
4131381123
commit
f3eead0660
2 changed files with 66 additions and 25 deletions
|
@ -23,7 +23,9 @@ from synapse.api.constants import EventTypes, Membership
|
|||
from synapse.api.filtering import Filter
|
||||
from synapse.types import UserID, RoomID, RoomAlias
|
||||
from synapse.events.utils import serialize_event, format_event_for_client_v2
|
||||
from synapse.http.servlet import parse_json_object_from_request, parse_string
|
||||
from synapse.http.servlet import (
|
||||
parse_json_object_from_request, parse_string, parse_integer
|
||||
)
|
||||
|
||||
import logging
|
||||
import urllib
|
||||
|
@ -317,11 +319,21 @@ class PublicRoomListRestServlet(ClientV1RestServlet):
|
|||
else:
|
||||
pass
|
||||
|
||||
limit = parse_integer(request, "limit", 0)
|
||||
next_batch = parse_string(request, "since", None)
|
||||
|
||||
handler = self.hs.get_room_list_handler()
|
||||
if server:
|
||||
data = yield handler.get_remote_public_room_list(server)
|
||||
data = yield handler.get_remote_public_room_list(
|
||||
server,
|
||||
limit=limit,
|
||||
next_batch=next_batch,
|
||||
)
|
||||
else:
|
||||
data = yield handler.get_local_public_room_list()
|
||||
data = yield handler.get_local_public_room_list(
|
||||
limit=limit,
|
||||
next_batch=next_batch,
|
||||
)
|
||||
|
||||
defer.returnValue((200, data))
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue