Add PaginatedWebRequest to handle request pagination

This commit is contained in:
smoogipoo
2019-07-19 15:33:09 +09:00
parent 9458bca58f
commit 99ab77b926
5 changed files with 43 additions and 26 deletions

View File

@ -7,23 +7,20 @@ using osu.Game.Online.API.Requests.Responses;
namespace osu.Game.Online.API.Requests
{
public class GetUserBeatmapsRequest : APIRequest<List<APIBeatmapSet>>
public class GetUserBeatmapsRequest : PaginatedAPIRequest<List<APIBeatmapSet>>
{
private readonly long userId;
private readonly int offset;
private readonly int limit;
private readonly BeatmapSetType type;
public GetUserBeatmapsRequest(long userId, BeatmapSetType type, int offset = 0, int limit = 6)
: base(offset, limit)
{
this.userId = userId;
this.offset = offset;
this.limit = limit;
this.type = type;
}
// ReSharper disable once ImpureMethodCallOnReadonlyValueField
protected override string Target => $@"users/{userId}/beatmapsets/{type.ToString().Underscore()}?offset={offset}&limit={limit}";
protected override string Target => $@"users/{userId}/beatmapsets/{type.ToString().Underscore()}";
}
public enum BeatmapSetType