mirror of
https://github.com/4sval/FModel.git
synced 2026-03-21 17:24:26 -05:00
31 lines
1.0 KiB
C#
31 lines
1.0 KiB
C#
using System.Threading.Tasks;
|
|
using FModel.Framework;
|
|
using FModel.ViewModels.ApiEndpoints.Models;
|
|
using RestSharp;
|
|
|
|
namespace FModel.ViewModels.ApiEndpoints;
|
|
|
|
public class GitHubApiEndpoint : AbstractApiProvider
|
|
{
|
|
private GitHubCommit[] _commits;
|
|
|
|
public GitHubApiEndpoint(RestClient client) : base(client) { }
|
|
|
|
public async Task<GitHubCommit[]> GetCommitHistoryAsync(string branch = "dev", int page = 1, int limit = 20)
|
|
{
|
|
var request = new FRestRequest(Constants.GH_COMMITS_HISTORY);
|
|
request.AddParameter("sha", branch);
|
|
request.AddParameter("page", page);
|
|
request.AddParameter("per_page", limit);
|
|
var response = await _client.ExecuteAsync<GitHubCommit[]>(request).ConfigureAwait(false);
|
|
return response.Data;
|
|
}
|
|
|
|
public async Task<GitHubRelease> GetReleaseAsync(string tag)
|
|
{
|
|
var request = new FRestRequest($"{Constants.GH_RELEASES}/tags/{tag}");
|
|
var response = await _client.ExecuteAsync<GitHubRelease>(request).ConfigureAwait(false);
|
|
return response.Data;
|
|
}
|
|
}
|