diff options
author | Dirk Klimpel <5740567+dklimpel@users.noreply.github.com> | 2020-07-28 21:08:23 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-07-28 20:08:23 +0100 |
commit | e866e3b8966efc470038b48061a89aac513eb6e0 (patch) | |
tree | 6a2ab5d1d2c97c2cc765d59deb364d1369735fe6 /synapse | |
parent | Move some log lines from default logger to sql/transaction loggers (#7952) (diff) | |
download | synapse-e866e3b8966efc470038b48061a89aac513eb6e0.tar.xz |
Add an option to disable purge in delete room admin API (#7964)
Add option ```purge``` to ```POST /_synapse/admin/v1/rooms/<room_id>/delete``` Fixes: #3761 Signed-off-by: Dirk Klimpel dirk@klimpel.org
Diffstat (limited to 'synapse')
-rw-r--r-- | synapse/rest/admin/rooms.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/synapse/rest/admin/rooms.py b/synapse/rest/admin/rooms.py index b8c95d045a..a8364d9793 100644 --- a/synapse/rest/admin/rooms.py +++ b/synapse/rest/admin/rooms.py @@ -103,6 +103,14 @@ class DeleteRoomRestServlet(RestServlet): Codes.BAD_JSON, ) + purge = content.get("purge", True) + if not isinstance(purge, bool): + raise SynapseError( + HTTPStatus.BAD_REQUEST, + "Param 'purge' must be a boolean, if given", + Codes.BAD_JSON, + ) + ret = await self.room_shutdown_handler.shutdown_room( room_id=room_id, new_room_user_id=content.get("new_room_user_id"), @@ -113,7 +121,8 @@ class DeleteRoomRestServlet(RestServlet): ) # Purge room - await self.pagination_handler.purge_room(room_id) + if purge: + await self.pagination_handler.purge_room(room_id) return (200, ret) |