From 98e17766b203734a1817eed94338e2d25f4395f7 Mon Sep 17 00:00:00 2001 From: transtrike Date: Sat, 13 Feb 2021 16:20:18 +0200 Subject: Project Restructure P.1 --- src/DevHive.Services/Services/FeedService.cs | 84 ---------------------------- 1 file changed, 84 deletions(-) delete mode 100644 src/DevHive.Services/Services/FeedService.cs (limited to 'src/DevHive.Services/Services/FeedService.cs') diff --git a/src/DevHive.Services/Services/FeedService.cs b/src/DevHive.Services/Services/FeedService.cs deleted file mode 100644 index f2f4a3a..0000000 --- a/src/DevHive.Services/Services/FeedService.cs +++ /dev/null @@ -1,84 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using AutoMapper; -using DevHive.Data.Interfaces.Repositories; -using DevHive.Data.Models; -using DevHive.Services.Interfaces; -using DevHive.Services.Models; -using DevHive.Services.Models.Post; - -namespace DevHive.Services.Services -{ - public class FeedService : IFeedService - { - private readonly IMapper _mapper; - private readonly IFeedRepository _feedRepository; - private readonly IUserRepository _userRepository; - - public FeedService(IFeedRepository feedRepository, IUserRepository userRepository, IMapper mapper) - { - this._feedRepository = feedRepository; - this._userRepository = userRepository; - this._mapper = mapper; - } - - /// - /// This method is used in the feed page. - /// See the FeedRepository "GetFriendsPosts" menthod for more information on how it works. - /// - public async Task GetPage(GetPageServiceModel model) - { - User user = null; - - if (model.UserId != Guid.Empty) - user = await this._userRepository.GetByIdAsync(model.UserId); - else if (!string.IsNullOrEmpty(model.Username)) - user = await this._userRepository.GetByUsernameAsync(model.Username); - else - throw new ArgumentException("Invalid given data!"); - - if (user == null) - throw new ArgumentException("User doesn't exist!"); - - if (user.Friends.Count == 0) - throw new ArgumentException("User has no friends to get feed from!"); - - List posts = await this._feedRepository - .GetFriendsPosts(user.Friends.ToList(), model.FirstRequestIssued, model.PageNumber, model.PageSize); - - ReadPageServiceModel readPageServiceModel = new(); - foreach (Post post in posts) - readPageServiceModel.Posts.Add(this._mapper.Map(post)); - - return readPageServiceModel; - } - - /// - /// This method is used in the profile pages. - /// See the FeedRepository "GetUsersPosts" menthod for more information on how it works. - /// - public async Task GetUserPage(GetPageServiceModel model) - { - User user = null; - - if (!string.IsNullOrEmpty(model.Username)) - user = await this._userRepository.GetByUsernameAsync(model.Username); - else - throw new ArgumentException("Invalid given data!"); - - if (user == null) - throw new ArgumentException("User doesn't exist!"); - - List posts = await this._feedRepository - .GetUsersPosts(user, model.FirstRequestIssued, model.PageNumber, model.PageSize); - - ReadPageServiceModel readPageServiceModel = new(); - foreach (Post post in posts) - readPageServiceModel.Posts.Add(this._mapper.Map(post)); - - return readPageServiceModel; - } - } -} -- cgit v1.2.3