public async Task <NewsFeedResponse> InsertNewsFeedQuery(IDbConnection db, NewsFeedInsertRequest newsFeed) { NewsFeedResponse newsFeedItem = await db.QueryFirstOrDefaultAsync <NewsFeedResponse>( sql : "[Houses].[NewsFeeds_Insert]", commandType : CommandType.StoredProcedure, param : newsFeed ); return(newsFeedItem); }
private async Task ProcessFeedUpdates(NewsFeedResponse results) { _dataCacheService.BeginWrite(); foreach (var item in results.Feeds) //foreach (var item in results.feeds.FeedItems.Where(t => t.properties.feed_title == "AnandTech")) { //TODO: dependency inject the realmness var thisFeed = (await _dataCacheService.GetNewsFeeds(fe => fe.Id == item.Id)).FirstOrDefault(); if (thisFeed == null) { try { Debug.WriteLine(item.LastStoryDate); thisFeed = new NewsFeed() { Id = item.Id, FeedUri = item.FeedAddress, Title = item.FeedTitle, IconUri = item.FaviconUrl, Active = item.Active, LastStoryDateFromService = !string.IsNullOrEmpty(item.LastStoryDate) ? DateTimeOffset.Parse(item.LastStoryDate) : DateTimeOffset.MinValue }; _dataCacheService.AddFeed(thisFeed); } catch (Exception ex) { Debug.WriteLine(ex.Message); } } else { if (item.LastStoryDate != null) { thisFeed.LastStoryDateFromService = DateTimeOffset.Parse(item.LastStoryDate); } } //thisFeed.UnreadCount = DataModelManager.RealmInstance.All<Story>().Where(st => st.ReadStatus == 0 && st.FeedId == thisFeed.Id).Count(); } _dataCacheService.Commit(); }
public async Task GetFeedsPopulatesFeeds() { NewsFeedResponse feeds = await _subject.GetFeedsAsync(); Assert.NotNull(feeds); }