using System.Application.Models; using System.Collections.Generic; using System.Threading.Tasks; namespace System.Application.Services.Implementation { internal sealed class SteamworksWebApiServiceImpl : ISteamworksWebApiService { readonly IHttpService s; public SteamworksWebApiServiceImpl(IHttpService s) { this.s = s; } public async Task GetAllSteamAppsString() { var rsp = await s.GetAsync(SteamApiUrls.STEAMAPP_LIST_URL); return rsp ?? string.Empty; } public async Task> GetAllSteamAppList() { var rsp = await s.GetAsync(SteamApiUrls.STEAMAPP_LIST_URL); return rsp?.AppList?.Apps ?? new List(); } public async Task GetUserInfo(long steamId64) { var requestUri = string.Format(SteamApiUrls.STEAM_USERINFO_XML_URL, steamId64); var rsp = await s.GetAsync(requestUri); return rsp ?? new SteamUser() { SteamId64 = steamId64 }; } } }