using System; using System.Threading.Tasks; using Serilog; using Newtonsoft.Json; using Landmark.OLA.Models.Core; using LCU.Library.Internal.LcuHttpClient.HttpRequest; namespace Landmark.OLA.Application.Services { public class CoreService : ICoreService { private readonly IGetRequest _getRequest; public CoreService(IGetRequest getRequest) { _getRequest = getRequest; } public async Task GetIndividual(string individualId) { try { var uri = new Uri($"core/individuals?userId={individualId}"); var responseString = await _getRequest.StringResponseAsync(uri); return JsonConvert.DeserializeObject(responseString); } catch (Exception ex) { Log.Error(ex, $"Failure to get Individual for IndividualId: {individualId} in {GetType().Name}"); return null; } } } }