diff options
| author | transtrike <transtrike@gmail.com> | 2021-01-11 23:49:34 +0200 |
|---|---|---|
| committer | transtrike <transtrike@gmail.com> | 2021-01-11 23:49:34 +0200 |
| commit | 5d67bc4725c45515f0fdbd926cbf2752a794224f (patch) | |
| tree | 884a80c98d37d6292c14937c74df34f44e9189b0 /src/DevHive.Data | |
| parent | 0412b54d5ed02e1482a31c7f15866d5539adca7d (diff) | |
| parent | 407bc2cb7edd7b50967b691504176ca5c52586a0 (diff) | |
| download | DevHive-5d67bc4725c45515f0fdbd926cbf2752a794224f.tar DevHive-5d67bc4725c45515f0fdbd926cbf2752a794224f.tar.gz DevHive-5d67bc4725c45515f0fdbd926cbf2752a794224f.zip | |
Merge branch 'dev' of github.com:Team-Kaleidoscope/DevHive into dev
Diffstat (limited to 'src/DevHive.Data')
| -rw-r--r-- | src/DevHive.Data/Repositories/Contracts/ILanguageRepository.cs | 13 | ||||
| -rw-r--r-- | src/DevHive.Data/Repositories/Contracts/IPostRepository.cs | 21 | ||||
| -rw-r--r-- | src/DevHive.Data/Repositories/Contracts/IRepository.cs (renamed from src/DevHive.Data/Repositories/IRepository.cs) | 2 | ||||
| -rw-r--r-- | src/DevHive.Data/Repositories/Contracts/IRoleRepository.cs | 15 | ||||
| -rw-r--r-- | src/DevHive.Data/Repositories/Contracts/ITechnologyRepository.cs | 13 | ||||
| -rw-r--r-- | src/DevHive.Data/Repositories/Contracts/IUserRepository.cs | 26 | ||||
| -rw-r--r-- | src/DevHive.Data/Repositories/LanguageRepository.cs | 4 | ||||
| -rw-r--r-- | src/DevHive.Data/Repositories/PostRepository.cs | 4 | ||||
| -rw-r--r-- | src/DevHive.Data/Repositories/RoleRepository.cs | 4 | ||||
| -rw-r--r-- | src/DevHive.Data/Repositories/TechnologyRepository.cs | 6 | ||||
| -rw-r--r-- | src/DevHive.Data/Repositories/UserRepository.cs | 4 |
11 files changed, 100 insertions, 12 deletions
diff --git a/src/DevHive.Data/Repositories/Contracts/ILanguageRepository.cs b/src/DevHive.Data/Repositories/Contracts/ILanguageRepository.cs new file mode 100644 index 0000000..e44d27b --- /dev/null +++ b/src/DevHive.Data/Repositories/Contracts/ILanguageRepository.cs @@ -0,0 +1,13 @@ +using DevHive.Data.Models; +using System; +using System.Threading.Tasks; + +namespace DevHive.Data.Repositories.Contracts +{ + public interface ILanguageRepository : IRepository<Language> + { + public Task<bool> DoesLanguageNameExist(string languageName); + + public Task<bool> DoesLanguageExist(Guid id); + } +} diff --git a/src/DevHive.Data/Repositories/Contracts/IPostRepository.cs b/src/DevHive.Data/Repositories/Contracts/IPostRepository.cs new file mode 100644 index 0000000..930138a --- /dev/null +++ b/src/DevHive.Data/Repositories/Contracts/IPostRepository.cs @@ -0,0 +1,21 @@ +using DevHive.Data.Models; +using System; +using System.Threading.Tasks; + +namespace DevHive.Data.Repositories.Contracts +{ + public interface IPostRepository : IRepository<Post> + { + public Task<bool> AddCommentAsync(Comment entity); + + public Task<Comment> GetCommentByIdAsync(Guid id); + + public Task<bool> EditCommentAsync(Comment newEntity); + + public Task<bool> DeleteCommentAsync(Comment entity); + + public Task<bool> DoesPostExist(Guid postId); + + public Task<bool> DoesCommentExist(Guid id); + } +} diff --git a/src/DevHive.Data/Repositories/IRepository.cs b/src/DevHive.Data/Repositories/Contracts/IRepository.cs index 96762b9..37c5170 100644 --- a/src/DevHive.Data/Repositories/IRepository.cs +++ b/src/DevHive.Data/Repositories/Contracts/IRepository.cs @@ -1,7 +1,7 @@ using System; using System.Threading.Tasks; -namespace Data.Models.Interfaces.Database +namespace DevHive.Data.Repositories.Contracts { public interface IRepository<TEntity> where TEntity : class diff --git a/src/DevHive.Data/Repositories/Contracts/IRoleRepository.cs b/src/DevHive.Data/Repositories/Contracts/IRoleRepository.cs new file mode 100644 index 0000000..6cb8a4e --- /dev/null +++ b/src/DevHive.Data/Repositories/Contracts/IRoleRepository.cs @@ -0,0 +1,15 @@ +using DevHive.Data.Models; +using System; +using System.Threading.Tasks; + +namespace DevHive.Data.Repositories.Contracts +{ + public interface IRoleRepository : IRepository<Role> + { + public Task<Role> GetByNameAsync(string name); + + public Task<bool> DoesNameExist(string name); + + public Task<bool> DoesRoleExist(Guid id); + } +} diff --git a/src/DevHive.Data/Repositories/Contracts/ITechnologyRepository.cs b/src/DevHive.Data/Repositories/Contracts/ITechnologyRepository.cs new file mode 100644 index 0000000..3c4a6b6 --- /dev/null +++ b/src/DevHive.Data/Repositories/Contracts/ITechnologyRepository.cs @@ -0,0 +1,13 @@ +using DevHive.Data.Models; +using System; +using System.Threading.Tasks; + +namespace DevHive.Data.Repositories.Contracts +{ + public interface ITechnologyRepository : IRepository<Technology> + { + public Task<bool> DoesTechnologyNameExist(string technologyName); + + public Task<bool> DoesTechnologyExist(Guid id); + } +} diff --git a/src/DevHive.Data/Repositories/Contracts/IUserRepository.cs b/src/DevHive.Data/Repositories/Contracts/IUserRepository.cs new file mode 100644 index 0000000..74c4486 --- /dev/null +++ b/src/DevHive.Data/Repositories/Contracts/IUserRepository.cs @@ -0,0 +1,26 @@ +using DevHive.Data.Models; +using System; +using System.Collections.Generic; +using System.Threading.Tasks; + +namespace DevHive.Data.Repositories.Contracts +{ + public interface IUserRepository : IRepository<User> + { + public Task<bool> AddFriendAsync(User user, User friend); + + public IEnumerable<User> QueryAll(); + + public Task<User> GetByUsername(string username); + + public Task<bool> RemoveFriendAsync(User user, User friend); + + public bool DoesUserExist(Guid id); + + public bool DoesUserHaveThisUsername(Guid id, string username); + + public Task<bool> DoesUsernameExist(string username); + + public Task<bool> DoesEmailExist(string email); + } +} diff --git a/src/DevHive.Data/Repositories/LanguageRepository.cs b/src/DevHive.Data/Repositories/LanguageRepository.cs index 1ab870a..243192a 100644 --- a/src/DevHive.Data/Repositories/LanguageRepository.cs +++ b/src/DevHive.Data/Repositories/LanguageRepository.cs @@ -1,13 +1,13 @@ using System; using System.Threading.Tasks; -using Data.Models.Interfaces.Database; using DevHive.Common.Models.Misc; using DevHive.Data.Models; +using DevHive.Data.Repositories.Contracts; using Microsoft.EntityFrameworkCore; namespace DevHive.Data.Repositories { - public class LanguageRepository : IRepository<Language> + public class LanguageRepository : ILanguageRepository { private readonly DevHiveContext _context; diff --git a/src/DevHive.Data/Repositories/PostRepository.cs b/src/DevHive.Data/Repositories/PostRepository.cs index 5dfee0b..0acfc23 100644 --- a/src/DevHive.Data/Repositories/PostRepository.cs +++ b/src/DevHive.Data/Repositories/PostRepository.cs @@ -1,13 +1,13 @@ using System; using System.Threading.Tasks; -using Data.Models.Interfaces.Database; using DevHive.Common.Models.Misc; using DevHive.Data.Models; +using DevHive.Data.Repositories.Contracts; using Microsoft.EntityFrameworkCore; namespace DevHive.Data.Repositories { - public class PostRepository : IRepository<Post> + public class PostRepository : IPostRepository { private readonly DevHiveContext _context; diff --git a/src/DevHive.Data/Repositories/RoleRepository.cs b/src/DevHive.Data/Repositories/RoleRepository.cs index fd04866..d6f83a8 100644 --- a/src/DevHive.Data/Repositories/RoleRepository.cs +++ b/src/DevHive.Data/Repositories/RoleRepository.cs @@ -1,13 +1,13 @@ using System; using System.Threading.Tasks; -using Data.Models.Interfaces.Database; using DevHive.Common.Models.Misc; using DevHive.Data.Models; +using DevHive.Data.Repositories.Contracts; using Microsoft.EntityFrameworkCore; namespace DevHive.Data.Repositories { - public class RoleRepository : IRepository<Role> + public class RoleRepository : IRoleRepository { private readonly DevHiveContext _context; diff --git a/src/DevHive.Data/Repositories/TechnologyRepository.cs b/src/DevHive.Data/Repositories/TechnologyRepository.cs index 492c6d2..27918ca 100644 --- a/src/DevHive.Data/Repositories/TechnologyRepository.cs +++ b/src/DevHive.Data/Repositories/TechnologyRepository.cs @@ -1,16 +1,16 @@ using System; using System.Threading.Tasks; -using Data.Models.Interfaces.Database; using DevHive.Common.Models.Misc; using DevHive.Data.Models; +using DevHive.Data.Repositories.Contracts; using Microsoft.EntityFrameworkCore; namespace DevHive.Data.Repositories { - public class TechnologyRepository : IRepository<Technology> + public abstract class TechnologyRepository : ITechnologyRepository { - private readonly DevHiveContext _context; + private DevHiveContext _context; public TechnologyRepository(DevHiveContext context) { diff --git a/src/DevHive.Data/Repositories/UserRepository.cs b/src/DevHive.Data/Repositories/UserRepository.cs index 5600451..5142b82 100644 --- a/src/DevHive.Data/Repositories/UserRepository.cs +++ b/src/DevHive.Data/Repositories/UserRepository.cs @@ -2,14 +2,14 @@ using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; -using Data.Models.Interfaces.Database; using DevHive.Common.Models.Misc; using DevHive.Data.Models; +using DevHive.Data.Repositories.Contracts; using Microsoft.EntityFrameworkCore; namespace DevHive.Data.Repositories { - public class UserRepository : IRepository<User> + public class UserRepository : IUserRepository { private readonly DevHiveContext _context; |
