public int RemoveTwitterUserFromFavourites(UserDTO userDto, TwitterUserDto twitterUserDto) { if (userDto.IsNull()) { throw new NullUserException(nameof(userDto)); } if (twitterUserDto.IsNull()) { throw new NullTwitterUserException(nameof(twitterUserDto)); } var user = this.mapper.MapTo<User>(userDto); var twitterUser = this.mapper.MapTo<TwitterUser>(twitterUserDto); if (!IsFavourite(user.Id, twitterUser.Id)) { // TODO: throw adequate exception throw new ArgumentException(); // return -1; } var userTwitterUserToRemove = this.userTwitterUsers .All .SingleOrDefault(x => x.UserId.Equals(user.Id) && x.TwitterUserId.Equals(twitterUser.Id) ); userTwitterUsers.Delete(userTwitterUserToRemove); return this.saver.SaveChanges(); }
public int SaveTwitterUser(TwitterUserDto twitterUser) { if (twitterUser == null) { return -1; } if (twitterUsers.All.Any(x => x.TwitterId == twitterUser.TwitterId)) { return 1; } var user = new TwitterUser { TwitterId = twitterUser.TwitterId, Name = twitterUser.Name, ScreenName = twitterUser.ScreenName, Description = twitterUser.Description, ProfileImageUrl = twitterUser.ProfileImageUrl }; twitterUsers.Add(user); return this.saver.SaveChanges(); }
public int SaveTweet(TweetDto tweetDto, TwitterUserDto twitterUser) { if (tweetDto == null) { return(-1); } if (tweets.All.Any(x => x.TwitterId.Equals(tweetDto.TwitterId))) { return(1); } var tweet = this.mappingProvider.MapTo <Tweet>(tweetDto); var user = this.mappingProvider.MapTo <TwitterUser>(twitterUser); tweet.TwitterUser = user; tweet.TwitterUserId = user.Id; tweet.RetweetCount = 0; //var tweetToAdd = new Tweet //{ // TwitterId = tweet.TwitterId, // Text = tweet.Text, // CreatedAt = tweet.CreatedAt, // TwitterUser = user, // TwitterUserId = user.Id //}; this.tweets.Add(tweet); return(this.saver.SaveChanges()); }
public int AddTwitterUserToFavourites(UserDTO userDto, TwitterUserDto twitterUserDto) { if (userDto.IsNull()) { throw new NullUserException(nameof(userDto)); } if (twitterUserDto.IsNull()) { throw new NullTwitterUserException(nameof(twitterUserDto)); } var user = this.mapper.MapTo<User>(userDto); var twitterUser = this.mapper.MapTo<TwitterUser>(twitterUserDto); UserTwitterUser userTwitterUser = null; if (this.IsActuallyFavourite(user.Id, twitterUser.Id)) { if (!this.IsDeleted(user.Id, twitterUser.Id)) { // TODO: throw adequate exception throw new ArgumentException(); // return -1; } userTwitterUser = this.userTwitterUsers .AllAndDeleted .SingleOrDefault(x => x.UserId.Equals(user.Id) && x.TwitterUserId.Equals(twitterUser.Id) ); userTwitterUser.IsDeleted = false; userTwitterUsers.Update(userTwitterUser); } else { userTwitterUser = new UserTwitterUser { User = user, UserId = user.Id, TwitterUser = twitterUser, TwitterUserId = twitterUser.Id }; userTwitterUsers.Add(userTwitterUser); } return this.saver.SaveChanges(); }