aboutsummaryrefslogtreecommitdiff
path: root/src/DevHive.Data/Repositories/UserRepository.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/DevHive.Data/Repositories/UserRepository.cs')
-rw-r--r--src/DevHive.Data/Repositories/UserRepository.cs20
1 files changed, 18 insertions, 2 deletions
diff --git a/src/DevHive.Data/Repositories/UserRepository.cs b/src/DevHive.Data/Repositories/UserRepository.cs
index 5cd4264..d2a8830 100644
--- a/src/DevHive.Data/Repositories/UserRepository.cs
+++ b/src/DevHive.Data/Repositories/UserRepository.cs
@@ -11,9 +11,9 @@ namespace DevHive.Data.Repositories
{
public class UserRepository : IRepository<User>
{
- private readonly DbContext _context;
+ private readonly DevHiveContext _context;
- public UserRepository(DbContext context)
+ public UserRepository(DevHiveContext context)
{
this._context = context;
}
@@ -27,6 +27,14 @@ namespace DevHive.Data.Repositories
return await RepositoryMethods.SaveChangesAsync(this._context);
}
+
+ public async Task<bool> AddFriendAsync(User user, User friend)
+ {
+ this._context.Update(user);
+ user.Friends.Add(friend);
+
+ return await RepositoryMethods.SaveChangesAsync(this._context);
+ }
//Read
public IEnumerable<User> QueryAll()
@@ -77,6 +85,14 @@ namespace DevHive.Data.Repositories
return await RepositoryMethods.SaveChangesAsync(this._context);
}
+
+ public async Task<bool> RemoveFriendAsync(User user, User friend)
+ {
+ this._context.Update(user);
+ user.Friends.Remove(friend);
+
+ return await RepositoryMethods.SaveChangesAsync(this._context);
+ }
//Validations
public bool DoesUserExist(Guid id)