Registered Games and Files CFCore endpoints to main library class.

This commit is contained in:
Harrison Deng 2022-05-19 22:27:18 -05:00
parent 498bb5a782
commit 0192bd4a21

View File

@ -1,11 +1,28 @@
namespace CFCoreAPI;
public class CFCoreAPI
{
private readonly string _apiKey;
using System.Net.Http;
using CFCoreAPI.Endpoints.Files;
using CFCoreAPI.Endpoints.Games;
public CFCoreAPI(string key)
namespace CFCoreAPI
{
public class CFCoreAPI
{
this._apiKey = key;
private readonly string _apiKey;
public HttpClient HttpClient { get; private set; }
public CFCoreAPI(string key)
{
this._apiKey = key;
this.HttpClient = new HttpClient();
this.HttpClient.BaseAddress = new Uri("https://api.curseforge.com");
this.HttpClient.DefaultRequestHeaders.Add("x-api-key", _apiKey);
this._gamesAPI = new Lazy<GamesAPI>(() => new GamesAPI(HttpClient));
this._filesAPI = new Lazy<FilesAPI>(() => new FilesAPI(HttpClient));
}
private Lazy<GamesAPI> _gamesAPI;
public GamesAPI GamesAPI => this._gamesAPI.Value;
private Lazy<FilesAPI> _filesAPI;
public FilesAPI FilesAPI => this._filesAPI.Value;
}
}
}