Reworking database implementation

This commit is contained in:
Max 2023-05-27 00:32:05 +02:00
parent 9c6c55316f
commit 2355da58b2
3 changed files with 24 additions and 20 deletions

View File

@ -29,9 +29,16 @@ namespace SharpRss.Services
public async Task<bool> CreateGroupAsync(GroupModel group) => await _dbService.SetGroupAsync(group); public async Task<bool> CreateGroupAsync(GroupModel group) => await _dbService.SetGroupAsync(group);
public async Task<HashSet<GroupModel>> GetGroupsAsync() => await _dbService.GetGroupsAsync(); public async Task<HashSet<GroupModel>> GetGroupsAsync() => await _dbService.GetGroupsAsync();
public async Task<bool> AddFeed(string rssUrl, GroupModel? group = null) //TODO: Need to rework this implementation!!!
/*public async Task<bool> FetchFeeds(string[]? rssUrls, GroupModel? group = null)
{ {
bool result = false; bool result = false;
if (rssUrls == null) return result;
HashSet<Feed> fetchedFeeds = new HashSet<Feed>();
foreach (var rssUrl in rssUrls)
{
fetchedFeeds.Add(await FetchFeed(rssUrl));
}
Feed fetched = await FetchFeed(rssUrl); Feed fetched = await FetchFeed(rssUrl);
if (fetched == null) if (fetched == null)
@ -56,7 +63,7 @@ namespace SharpRss.Services
if (await AddFeedItems(fetched.Items, dbFeed) == 0) if (await AddFeedItems(fetched.Items, dbFeed) == 0)
Log.Warning("No feed items added to feed: {FeedUrl}", dbFeed.Url); Log.Warning("No feed items added to feed: {FeedUrl}", dbFeed.Url);
return result; return result;
} }*/
public async Task<HashSet<FeedModel>> GetFeedsAsync(string? groupId = null) => await _dbService.GetFeedsAsync(groupId); public async Task<HashSet<FeedModel>> GetFeedsAsync(string? groupId = null) => await _dbService.GetFeedsAsync(groupId);
public async Task<HashSet<FeedModel>> GetUngroupedFeedsAsync() => await _dbService.GetFeedsAsync(""); public async Task<HashSet<FeedModel>> GetUngroupedFeedsAsync() => await _dbService.GetFeedsAsync("");
@ -108,10 +115,9 @@ namespace SharpRss.Services
groupRes = await CreateGroupAsync(new GroupModel() { Name = "News" }); groupRes = await CreateGroupAsync(new GroupModel() { Name = "News" });
groupRes = await CreateGroupAsync(new GroupModel() { Name = "Tech" }); groupRes = await CreateGroupAsync(new GroupModel() { Name = "Tech" });
groupRes = await CreateGroupAsync(new GroupModel() { Name = "Science" });*/ groupRes = await CreateGroupAsync(new GroupModel() { Name = "Science" });*/
/*var groups = await GetGroupsAsync(); /*Log.Verbose("Fetching feeds...");
var groups = await GetGroupsAsync();
GroupModel testGroup = groups.Single(x => x.Name == "Test"); GroupModel testGroup = groups.Single(x => x.Name == "Test");
await Task.Run(async () =>
{
try try
{ {
var res = await AddFeed("http://fedoramagazine.org/feed/", testGroup); var res = await AddFeed("http://fedoramagazine.org/feed/", testGroup);
@ -124,8 +130,7 @@ namespace SharpRss.Services
{ {
Log.Error(e, "Error fetching feeds!"); Log.Error(e, "Error fetching feeds!");
throw; throw;
} }*/
});*/
} }
public void Dispose() public void Dispose()

View File

@ -53,7 +53,6 @@
{ {
var fItems = await _rssService.GetFeedItemsAsync(Fid); var fItems = await _rssService.GetFeedItemsAsync(Fid);
items = fItems.Select(x => FeedItemData.FromModel(x)).OrderBy(x => x.PublishingDate).Reverse().ToHashSet(); items = fItems.Select(x => FeedItemData.FromModel(x)).OrderBy(x => x.PublishingDate).Reverse().ToHashSet();
_isLoading = false;
} }
else if (Gid != null) else if (Gid != null)
{ {

Binary file not shown.