mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-06-19 19:44:06 -04:00
Convert status codes to HTTPStatus
in synapse.rest.admin
(#11452)
This commit is contained in:
parent
fb58611d21
commit
e8ae94a223
12 changed files with 276 additions and 171 deletions
|
@ -14,6 +14,7 @@
|
|||
# limitations under the License.
|
||||
|
||||
import logging
|
||||
from http import HTTPStatus
|
||||
from typing import TYPE_CHECKING, Tuple
|
||||
|
||||
from synapse.api.errors import AuthError, Codes, NotFoundError, SynapseError
|
||||
|
@ -62,7 +63,7 @@ class QuarantineMediaInRoom(RestServlet):
|
|||
room_id, requester.user.to_string()
|
||||
)
|
||||
|
||||
return 200, {"num_quarantined": num_quarantined}
|
||||
return HTTPStatus.OK, {"num_quarantined": num_quarantined}
|
||||
|
||||
|
||||
class QuarantineMediaByUser(RestServlet):
|
||||
|
@ -89,7 +90,7 @@ class QuarantineMediaByUser(RestServlet):
|
|||
user_id, requester.user.to_string()
|
||||
)
|
||||
|
||||
return 200, {"num_quarantined": num_quarantined}
|
||||
return HTTPStatus.OK, {"num_quarantined": num_quarantined}
|
||||
|
||||
|
||||
class QuarantineMediaByID(RestServlet):
|
||||
|
@ -118,7 +119,7 @@ class QuarantineMediaByID(RestServlet):
|
|||
server_name, media_id, requester.user.to_string()
|
||||
)
|
||||
|
||||
return 200, {}
|
||||
return HTTPStatus.OK, {}
|
||||
|
||||
|
||||
class UnquarantineMediaByID(RestServlet):
|
||||
|
@ -147,7 +148,7 @@ class UnquarantineMediaByID(RestServlet):
|
|||
# Remove from quarantine this media id
|
||||
await self.store.quarantine_media_by_id(server_name, media_id, None)
|
||||
|
||||
return 200, {}
|
||||
return HTTPStatus.OK, {}
|
||||
|
||||
|
||||
class ProtectMediaByID(RestServlet):
|
||||
|
@ -170,7 +171,7 @@ class ProtectMediaByID(RestServlet):
|
|||
# Protect this media id
|
||||
await self.store.mark_local_media_as_safe(media_id, safe=True)
|
||||
|
||||
return 200, {}
|
||||
return HTTPStatus.OK, {}
|
||||
|
||||
|
||||
class UnprotectMediaByID(RestServlet):
|
||||
|
@ -193,7 +194,7 @@ class UnprotectMediaByID(RestServlet):
|
|||
# Unprotect this media id
|
||||
await self.store.mark_local_media_as_safe(media_id, safe=False)
|
||||
|
||||
return 200, {}
|
||||
return HTTPStatus.OK, {}
|
||||
|
||||
|
||||
class ListMediaInRoom(RestServlet):
|
||||
|
@ -211,11 +212,11 @@ class ListMediaInRoom(RestServlet):
|
|||
requester = await self.auth.get_user_by_req(request)
|
||||
is_admin = await self.auth.is_server_admin(requester.user)
|
||||
if not is_admin:
|
||||
raise AuthError(403, "You are not a server admin")
|
||||
raise AuthError(HTTPStatus.FORBIDDEN, "You are not a server admin")
|
||||
|
||||
local_mxcs, remote_mxcs = await self.store.get_media_mxcs_in_room(room_id)
|
||||
|
||||
return 200, {"local": local_mxcs, "remote": remote_mxcs}
|
||||
return HTTPStatus.OK, {"local": local_mxcs, "remote": remote_mxcs}
|
||||
|
||||
|
||||
class PurgeMediaCacheRestServlet(RestServlet):
|
||||
|
@ -233,13 +234,13 @@ class PurgeMediaCacheRestServlet(RestServlet):
|
|||
|
||||
if before_ts < 0:
|
||||
raise SynapseError(
|
||||
400,
|
||||
HTTPStatus.BAD_REQUEST,
|
||||
"Query parameter before_ts must be a positive integer.",
|
||||
errcode=Codes.INVALID_PARAM,
|
||||
)
|
||||
elif before_ts < 30000000000: # Dec 1970 in milliseconds, Aug 2920 in seconds
|
||||
raise SynapseError(
|
||||
400,
|
||||
HTTPStatus.BAD_REQUEST,
|
||||
"Query parameter before_ts you provided is from the year 1970. "
|
||||
+ "Double check that you are providing a timestamp in milliseconds.",
|
||||
errcode=Codes.INVALID_PARAM,
|
||||
|
@ -247,7 +248,7 @@ class PurgeMediaCacheRestServlet(RestServlet):
|
|||
|
||||
ret = await self.media_repository.delete_old_remote_media(before_ts)
|
||||
|
||||
return 200, ret
|
||||
return HTTPStatus.OK, ret
|
||||
|
||||
|
||||
class DeleteMediaByID(RestServlet):
|
||||
|
@ -267,7 +268,7 @@ class DeleteMediaByID(RestServlet):
|
|||
await assert_requester_is_admin(self.auth, request)
|
||||
|
||||
if self.server_name != server_name:
|
||||
raise SynapseError(400, "Can only delete local media")
|
||||
raise SynapseError(HTTPStatus.BAD_REQUEST, "Can only delete local media")
|
||||
|
||||
if await self.store.get_local_media(media_id) is None:
|
||||
raise NotFoundError("Unknown media")
|
||||
|
@ -277,7 +278,7 @@ class DeleteMediaByID(RestServlet):
|
|||
deleted_media, total = await self.media_repository.delete_local_media_ids(
|
||||
[media_id]
|
||||
)
|
||||
return 200, {"deleted_media": deleted_media, "total": total}
|
||||
return HTTPStatus.OK, {"deleted_media": deleted_media, "total": total}
|
||||
|
||||
|
||||
class DeleteMediaByDateSize(RestServlet):
|
||||
|
@ -304,26 +305,26 @@ class DeleteMediaByDateSize(RestServlet):
|
|||
|
||||
if before_ts < 0:
|
||||
raise SynapseError(
|
||||
400,
|
||||
HTTPStatus.BAD_REQUEST,
|
||||
"Query parameter before_ts must be a positive integer.",
|
||||
errcode=Codes.INVALID_PARAM,
|
||||
)
|
||||
elif before_ts < 30000000000: # Dec 1970 in milliseconds, Aug 2920 in seconds
|
||||
raise SynapseError(
|
||||
400,
|
||||
HTTPStatus.BAD_REQUEST,
|
||||
"Query parameter before_ts you provided is from the year 1970. "
|
||||
+ "Double check that you are providing a timestamp in milliseconds.",
|
||||
errcode=Codes.INVALID_PARAM,
|
||||
)
|
||||
if size_gt < 0:
|
||||
raise SynapseError(
|
||||
400,
|
||||
HTTPStatus.BAD_REQUEST,
|
||||
"Query parameter size_gt must be a string representing a positive integer.",
|
||||
errcode=Codes.INVALID_PARAM,
|
||||
)
|
||||
|
||||
if self.server_name != server_name:
|
||||
raise SynapseError(400, "Can only delete local media")
|
||||
raise SynapseError(HTTPStatus.BAD_REQUEST, "Can only delete local media")
|
||||
|
||||
logging.info(
|
||||
"Deleting local media by timestamp: %s, size larger than: %s, keep profile media: %s"
|
||||
|
@ -333,7 +334,7 @@ class DeleteMediaByDateSize(RestServlet):
|
|||
deleted_media, total = await self.media_repository.delete_old_local_media(
|
||||
before_ts, size_gt, keep_profiles
|
||||
)
|
||||
return 200, {"deleted_media": deleted_media, "total": total}
|
||||
return HTTPStatus.OK, {"deleted_media": deleted_media, "total": total}
|
||||
|
||||
|
||||
class UserMediaRestServlet(RestServlet):
|
||||
|
@ -369,7 +370,7 @@ class UserMediaRestServlet(RestServlet):
|
|||
await assert_requester_is_admin(self.auth, request)
|
||||
|
||||
if not self.is_mine(UserID.from_string(user_id)):
|
||||
raise SynapseError(400, "Can only look up local users")
|
||||
raise SynapseError(HTTPStatus.BAD_REQUEST, "Can only look up local users")
|
||||
|
||||
user = await self.store.get_user_by_id(user_id)
|
||||
if user is None:
|
||||
|
@ -380,14 +381,14 @@ class UserMediaRestServlet(RestServlet):
|
|||
|
||||
if start < 0:
|
||||
raise SynapseError(
|
||||
400,
|
||||
HTTPStatus.BAD_REQUEST,
|
||||
"Query parameter from must be a string representing a positive integer.",
|
||||
errcode=Codes.INVALID_PARAM,
|
||||
)
|
||||
|
||||
if limit < 0:
|
||||
raise SynapseError(
|
||||
400,
|
||||
HTTPStatus.BAD_REQUEST,
|
||||
"Query parameter limit must be a string representing a positive integer.",
|
||||
errcode=Codes.INVALID_PARAM,
|
||||
)
|
||||
|
@ -425,7 +426,7 @@ class UserMediaRestServlet(RestServlet):
|
|||
if (start + limit) < total:
|
||||
ret["next_token"] = start + len(media)
|
||||
|
||||
return 200, ret
|
||||
return HTTPStatus.OK, ret
|
||||
|
||||
async def on_DELETE(
|
||||
self, request: SynapseRequest, user_id: str
|
||||
|
@ -436,7 +437,7 @@ class UserMediaRestServlet(RestServlet):
|
|||
await assert_requester_is_admin(self.auth, request)
|
||||
|
||||
if not self.is_mine(UserID.from_string(user_id)):
|
||||
raise SynapseError(400, "Can only look up local users")
|
||||
raise SynapseError(HTTPStatus.BAD_REQUEST, "Can only look up local users")
|
||||
|
||||
user = await self.store.get_user_by_id(user_id)
|
||||
if user is None:
|
||||
|
@ -447,14 +448,14 @@ class UserMediaRestServlet(RestServlet):
|
|||
|
||||
if start < 0:
|
||||
raise SynapseError(
|
||||
400,
|
||||
HTTPStatus.BAD_REQUEST,
|
||||
"Query parameter from must be a string representing a positive integer.",
|
||||
errcode=Codes.INVALID_PARAM,
|
||||
)
|
||||
|
||||
if limit < 0:
|
||||
raise SynapseError(
|
||||
400,
|
||||
HTTPStatus.BAD_REQUEST,
|
||||
"Query parameter limit must be a string representing a positive integer.",
|
||||
errcode=Codes.INVALID_PARAM,
|
||||
)
|
||||
|
@ -492,7 +493,7 @@ class UserMediaRestServlet(RestServlet):
|
|||
([row["media_id"] for row in media])
|
||||
)
|
||||
|
||||
return 200, {"deleted_media": deleted_media, "total": total}
|
||||
return HTTPStatus.OK, {"deleted_media": deleted_media, "total": total}
|
||||
|
||||
|
||||
def register_servlets_for_media_repo(hs: "HomeServer", http_server: HttpServer) -> None:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue