From 17bc5ce5a931d31cbc1bd87dd57431c2c888f13f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bart=C5=82omiej=20Dach?= <dach.bartlomiej@gmail.com> Date: Tue, 8 Oct 2024 14:05:27 +0200 Subject: [PATCH] Use lookup request in user lookup cache Doing this alleviates https://github.com/ppy/osu/issues/29982, as the currently online display utilises the user lookup cache, and currently is hitting rate limits due to the amount of data retrieved from the `GET /users` endpoint. Switching to `GET /users/lookup` reduces the chance of this happening. --- osu.Game/Database/UserLookupCache.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/osu.Game/Database/UserLookupCache.cs b/osu.Game/Database/UserLookupCache.cs index e581d5ce82..8c96b34666 100644 --- a/osu.Game/Database/UserLookupCache.cs +++ b/osu.Game/Database/UserLookupCache.cs @@ -10,7 +10,7 @@ using osu.Game.Online.API.Requests.Responses; namespace osu.Game.Database { - public partial class UserLookupCache : OnlineLookupCache<int, APIUser, GetUsersRequest> + public partial class UserLookupCache : OnlineLookupCache<int, APIUser, LookupUsersRequest> { /// <summary> /// Perform an API lookup on the specified user, populating a <see cref="APIUser"/> model. @@ -28,8 +28,8 @@ namespace osu.Game.Database /// <returns>The populated users. May include null results for failed retrievals.</returns> public Task<APIUser?[]> GetUsersAsync(int[] userIds, CancellationToken token = default) => LookupAsync(userIds, token); - protected override GetUsersRequest CreateRequest(IEnumerable<int> ids) => new GetUsersRequest(ids.ToArray()); + protected override LookupUsersRequest CreateRequest(IEnumerable<int> ids) => new LookupUsersRequest(ids.ToArray()); - protected override IEnumerable<APIUser>? RetrieveResults(GetUsersRequest request) => request.Response?.Users; + protected override IEnumerable<APIUser>? RetrieveResults(LookupUsersRequest request) => request.Response?.Users; } }