RBLNews/RBLNews.Shared/Services/FeedDataService.cs
iTob 5076367282
All checks were successful
Restart Docker Container on Production / build (pull_request) Successful in 3m35s
read backend api url from environment variables
2024-09-23 12:46:09 +02:00

39 lines
1023 B
C#

using System.Net.Http.Json;
using RBLFeederCommon.Models.RssFeed;
namespace RBLNews.Shared.Services
{
public interface IFeedDataService
{
public RssVM Feeds { get; }
public Action DataChanged { get; set; }
Task LoadFeeds();
}
public class FeedDataService : IFeedDataService
{
private readonly EnvironmentVariablesService _environmentVariablesService;
private static readonly HttpClient httpClient = new();
public RssVM Feeds { get; private set; }
public Action DataChanged { get; set; }
public FeedDataService(EnvironmentVariablesService environmentVariablesService)
{
this._environmentVariablesService = environmentVariablesService;
}
public async Task LoadFeeds()
{
Feeds = await httpClient.GetFromJsonAsync<RssVM>($"{this._environmentVariablesService.RblApiUrl}/api/feeds") ?? new RssVM();
DataChanged.Invoke();
}
}
}