mirror of
https://github.com/element-hq/synapse
synced 2024-09-11 01:55:11 +00:00
Added RestServlet for /rooms/$roomid/initialSync
This commit is contained in:
parent
4e8d19ee2b
commit
f64887e15c
1 changed files with 30 additions and 0 deletions
|
@ -337,6 +337,35 @@ class RoomStateRestServlet(RestServlet):
|
||||||
defer.returnValue((200, []))
|
defer.returnValue((200, []))
|
||||||
|
|
||||||
|
|
||||||
|
# TODO: Needs unit testing
|
||||||
|
class RoomInitialSyncRestServlet(RestServlet):
|
||||||
|
PATTERN = client_path_pattern("/rooms/(?P<room_id>[^/]*)/initialSync$")
|
||||||
|
|
||||||
|
@defer.inlineCallbacks
|
||||||
|
def on_GET(self, request, room_id):
|
||||||
|
user = yield self.auth.get_user_by_req(request)
|
||||||
|
# TODO: Get all the initial sync data for this room and return in the
|
||||||
|
# same format as initial sync, that is:
|
||||||
|
# {
|
||||||
|
# membership: join,
|
||||||
|
# messages: [
|
||||||
|
# chunk: [ msg events ],
|
||||||
|
# start: s_tok,
|
||||||
|
# end: e_tok
|
||||||
|
# ],
|
||||||
|
# room_id: foo,
|
||||||
|
# state: [
|
||||||
|
# { state event } , { state event }
|
||||||
|
# ]
|
||||||
|
# }
|
||||||
|
# Probably worth keeping the keys room_id and membership for parity with
|
||||||
|
# /initialSync even though they must be joined to sync this and know the
|
||||||
|
# room ID, so clients can reuse the same code (room_id and membership
|
||||||
|
# are MANDATORY for /initialSync, so the code will expect it to be
|
||||||
|
# there)
|
||||||
|
defer.returnValue((200, {}))
|
||||||
|
|
||||||
|
|
||||||
class RoomTriggerBackfill(RestServlet):
|
class RoomTriggerBackfill(RestServlet):
|
||||||
PATTERN = client_path_pattern("/rooms/(?P<room_id>[^/]*)/backfill$")
|
PATTERN = client_path_pattern("/rooms/(?P<room_id>[^/]*)/backfill$")
|
||||||
|
|
||||||
|
@ -452,3 +481,4 @@ def register_servlets(hs, http_server):
|
||||||
RoomSendEventRestServlet(hs).register(http_server)
|
RoomSendEventRestServlet(hs).register(http_server)
|
||||||
PublicRoomListRestServlet(hs).register(http_server)
|
PublicRoomListRestServlet(hs).register(http_server)
|
||||||
RoomStateRestServlet(hs).register(http_server)
|
RoomStateRestServlet(hs).register(http_server)
|
||||||
|
RoomInitialSyncRestServlet(hs).register(http_server)
|
||||||
|
|
Loading…
Reference in a new issue