From c5b27c7eb62cc5428a0c01ffcf381f429d776122 Mon Sep 17 00:00:00 2001 From: transtrike Date: Sat, 13 Feb 2021 17:57:54 +0200 Subject: Removed all references --- src/Data/DevHive.Data.Models/Comment.cs | 2 +- .../DevHive.Data.Models/DevHive.Data.Models.csproj | 6 ------ .../DevHive.Data.Models/Interfaces/IComment.cs | 16 ++++++++++++++++ .../DevHive.Data.Models/Interfaces/ILanguage.cs | 11 +++++++++++ src/Data/DevHive.Data.Models/Interfaces/IModel.cs | 9 +++++++++ src/Data/DevHive.Data.Models/Interfaces/IPost.cs | 22 ++++++++++++++++++++++ .../Interfaces/IProfilePicture.cs | 13 +++++++++++++ src/Data/DevHive.Data.Models/Interfaces/IRating.cs | 14 ++++++++++++++ src/Data/DevHive.Data.Models/Interfaces/IRole.cs | 10 ++++++++++ .../DevHive.Data.Models/Interfaces/ITechnology.cs | 11 +++++++++++ src/Data/DevHive.Data.Models/Interfaces/IUser.cs | 21 +++++++++++++++++++++ src/Data/DevHive.Data.Models/Language.cs | 2 +- src/Data/DevHive.Data.Models/Post.cs | 2 +- src/Data/DevHive.Data.Models/ProfilePicture.cs | 2 +- src/Data/DevHive.Data.Models/Rating.cs | 4 ++-- src/Data/DevHive.Data.Models/Role.cs | 2 +- src/Data/DevHive.Data.Models/Technology.cs | 2 +- src/Data/DevHive.Data.Models/User.cs | 2 +- .../DevHive.Data.Tests/DevHive.Data.Tests.csproj | 8 -------- src/Data/DevHive.Data/DevHive.Data.csproj | 8 -------- .../DevHive.Data/Interfaces/ICommentRepository.cs | 16 ++++++++++++++++ .../DevHive.Data/Interfaces/IFeedRepository.cs | 13 +++++++++++++ .../DevHive.Data/Interfaces/ILanguageRepository.cs | 17 +++++++++++++++++ .../DevHive.Data/Interfaces/IPostRepository.cs | 19 +++++++++++++++++++ .../DevHive.Data/Interfaces/IRatingRepository.cs | 13 +++++++++++++ src/Data/DevHive.Data/Interfaces/IRepository.cs | 21 +++++++++++++++++++++ .../DevHive.Data/Interfaces/IRoleRepository.cs | 15 +++++++++++++++ .../Interfaces/ITechnologyRepository.cs | 17 +++++++++++++++++ .../DevHive.Data/Interfaces/IUserRepository.cs | 22 ++++++++++++++++++++++ .../DevHive.Data/Interfaces/Models/IComment.cs | 16 ---------------- .../DevHive.Data/Interfaces/Models/ILanguage.cs | 11 ----------- src/Data/DevHive.Data/Interfaces/Models/IModel.cs | 9 --------- src/Data/DevHive.Data/Interfaces/Models/IPost.cs | 22 ---------------------- .../Interfaces/Models/IProfilePicture.cs | 13 ------------- src/Data/DevHive.Data/Interfaces/Models/IRating.cs | 14 -------------- src/Data/DevHive.Data/Interfaces/Models/IRole.cs | 10 ---------- .../DevHive.Data/Interfaces/Models/ITechnology.cs | 11 ----------- src/Data/DevHive.Data/Interfaces/Models/IUser.cs | 21 --------------------- .../Interfaces/Repositories/ICommentRepository.cs | 16 ---------------- .../Interfaces/Repositories/IFeedRepository.cs | 13 ------------- .../Interfaces/Repositories/ILanguageRepository.cs | 17 ----------------- .../Interfaces/Repositories/IPostRepository.cs | 19 ------------------- .../Interfaces/Repositories/IRatingRepository.cs | 13 ------------- .../Interfaces/Repositories/IRepository.cs | 21 --------------------- .../Interfaces/Repositories/IRoleRepository.cs | 15 --------------- .../Repositories/ITechnologyRepository.cs | 17 ----------------- .../Interfaces/Repositories/IUserRepository.cs | 22 ---------------------- 47 files changed, 289 insertions(+), 311 deletions(-) create mode 100644 src/Data/DevHive.Data.Models/Interfaces/IComment.cs create mode 100644 src/Data/DevHive.Data.Models/Interfaces/ILanguage.cs create mode 100644 src/Data/DevHive.Data.Models/Interfaces/IModel.cs create mode 100644 src/Data/DevHive.Data.Models/Interfaces/IPost.cs create mode 100644 src/Data/DevHive.Data.Models/Interfaces/IProfilePicture.cs create mode 100644 src/Data/DevHive.Data.Models/Interfaces/IRating.cs create mode 100644 src/Data/DevHive.Data.Models/Interfaces/IRole.cs create mode 100644 src/Data/DevHive.Data.Models/Interfaces/ITechnology.cs create mode 100644 src/Data/DevHive.Data.Models/Interfaces/IUser.cs create mode 100644 src/Data/DevHive.Data/Interfaces/ICommentRepository.cs create mode 100644 src/Data/DevHive.Data/Interfaces/IFeedRepository.cs create mode 100644 src/Data/DevHive.Data/Interfaces/ILanguageRepository.cs create mode 100644 src/Data/DevHive.Data/Interfaces/IPostRepository.cs create mode 100644 src/Data/DevHive.Data/Interfaces/IRatingRepository.cs create mode 100644 src/Data/DevHive.Data/Interfaces/IRepository.cs create mode 100644 src/Data/DevHive.Data/Interfaces/IRoleRepository.cs create mode 100644 src/Data/DevHive.Data/Interfaces/ITechnologyRepository.cs create mode 100644 src/Data/DevHive.Data/Interfaces/IUserRepository.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Models/IComment.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Models/ILanguage.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Models/IModel.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Models/IPost.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Models/IProfilePicture.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Models/IRating.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Models/IRole.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Models/ITechnology.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Models/IUser.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Repositories/ICommentRepository.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Repositories/IFeedRepository.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Repositories/ILanguageRepository.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Repositories/IPostRepository.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Repositories/IRatingRepository.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Repositories/IRepository.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Repositories/IRoleRepository.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Repositories/ITechnologyRepository.cs delete mode 100644 src/Data/DevHive.Data/Interfaces/Repositories/IUserRepository.cs (limited to 'src/Data') diff --git a/src/Data/DevHive.Data.Models/Comment.cs b/src/Data/DevHive.Data.Models/Comment.cs index e2bb21d..10a3aaf 100644 --- a/src/Data/DevHive.Data.Models/Comment.cs +++ b/src/Data/DevHive.Data.Models/Comment.cs @@ -1,5 +1,5 @@ using System; -using DevHive.Data.Interfaces.Models; +using DevHive.Data.Models.Interfaces; namespace DevHive.Data.Models { diff --git a/src/Data/DevHive.Data.Models/DevHive.Data.Models.csproj b/src/Data/DevHive.Data.Models/DevHive.Data.Models.csproj index ebf5f9c..628e361 100644 --- a/src/Data/DevHive.Data.Models/DevHive.Data.Models.csproj +++ b/src/Data/DevHive.Data.Models/DevHive.Data.Models.csproj @@ -1,11 +1,5 @@ - net5.0 - - - - - diff --git a/src/Data/DevHive.Data.Models/Interfaces/IComment.cs b/src/Data/DevHive.Data.Models/Interfaces/IComment.cs new file mode 100644 index 0000000..c8f1f6a --- /dev/null +++ b/src/Data/DevHive.Data.Models/Interfaces/IComment.cs @@ -0,0 +1,16 @@ +using System; +using DevHive.Data.Models; + +namespace DevHive.Data.Models.Interfaces +{ + public interface IComment : IModel + { + Post Post { get; set; } + + User Creator { get; set; } + + string Message { get; set; } + + DateTime TimeCreated { get; set; } + } +} diff --git a/src/Data/DevHive.Data.Models/Interfaces/ILanguage.cs b/src/Data/DevHive.Data.Models/Interfaces/ILanguage.cs new file mode 100644 index 0000000..06e11b4 --- /dev/null +++ b/src/Data/DevHive.Data.Models/Interfaces/ILanguage.cs @@ -0,0 +1,11 @@ +using System.Collections.Generic; +using DevHive.Data.Models; + +namespace DevHive.Data.Models.Interfaces +{ + public interface ILanguage : IModel + { + string Name { get; set; } + HashSet Users { get; set; } + } +} diff --git a/src/Data/DevHive.Data.Models/Interfaces/IModel.cs b/src/Data/DevHive.Data.Models/Interfaces/IModel.cs new file mode 100644 index 0000000..3226dce --- /dev/null +++ b/src/Data/DevHive.Data.Models/Interfaces/IModel.cs @@ -0,0 +1,9 @@ +using System; + +namespace DevHive.Data.Models.Interfaces +{ + public interface IModel + { + Guid Id { get; set; } + } +} diff --git a/src/Data/DevHive.Data.Models/Interfaces/IPost.cs b/src/Data/DevHive.Data.Models/Interfaces/IPost.cs new file mode 100644 index 0000000..b1f0cb7 --- /dev/null +++ b/src/Data/DevHive.Data.Models/Interfaces/IPost.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using DevHive.Data.Models; +using DevHive.Data.RelationModels; + +namespace DevHive.Data.Models.Interfaces +{ + public interface IPost : IModel + { + User Creator { get; set; } + + string Message { get; set; } + + DateTime TimeCreated { get; set; } + + List Comments { get; set; } + + // Rating Rating { get; set; } + + List Attachments { get; set; } + } +} diff --git a/src/Data/DevHive.Data.Models/Interfaces/IProfilePicture.cs b/src/Data/DevHive.Data.Models/Interfaces/IProfilePicture.cs new file mode 100644 index 0000000..550af24 --- /dev/null +++ b/src/Data/DevHive.Data.Models/Interfaces/IProfilePicture.cs @@ -0,0 +1,13 @@ +using System; +using DevHive.Data.Models; + +namespace DevHive.Data.Models.Interfaces +{ + public interface IProfilePicture : IModel + { + Guid UserId { get; set; } + User User { get; set; } + + string PictureURL { get; set; } + } +} diff --git a/src/Data/DevHive.Data.Models/Interfaces/IRating.cs b/src/Data/DevHive.Data.Models/Interfaces/IRating.cs new file mode 100644 index 0000000..1b081b0 --- /dev/null +++ b/src/Data/DevHive.Data.Models/Interfaces/IRating.cs @@ -0,0 +1,14 @@ +using System.Collections.Generic; +using DevHive.Data.Models; + +namespace DevHive.Data.Models.Interfaces +{ + public interface IRating : IModel + { + // Post Post { get; set; } + + int Rate { get; set; } + + // HashSet UsersThatRated { get; set; } + } +} diff --git a/src/Data/DevHive.Data.Models/Interfaces/IRole.cs b/src/Data/DevHive.Data.Models/Interfaces/IRole.cs new file mode 100644 index 0000000..3a87e12 --- /dev/null +++ b/src/Data/DevHive.Data.Models/Interfaces/IRole.cs @@ -0,0 +1,10 @@ +using System.Collections.Generic; +using DevHive.Data.Models; + +namespace DevHive.Data.Models.Interfaces +{ + public interface IRole + { + HashSet Users { get; set; } + } +} diff --git a/src/Data/DevHive.Data.Models/Interfaces/ITechnology.cs b/src/Data/DevHive.Data.Models/Interfaces/ITechnology.cs new file mode 100644 index 0000000..575aea6 --- /dev/null +++ b/src/Data/DevHive.Data.Models/Interfaces/ITechnology.cs @@ -0,0 +1,11 @@ +using System.Collections.Generic; +using DevHive.Data.Models; + +namespace DevHive.Data.Models.Interfaces +{ + public interface ITechnology : IModel + { + string Name { get; set; } + HashSet Users { get; set; } + } +} diff --git a/src/Data/DevHive.Data.Models/Interfaces/IUser.cs b/src/Data/DevHive.Data.Models/Interfaces/IUser.cs new file mode 100644 index 0000000..7606ba2 --- /dev/null +++ b/src/Data/DevHive.Data.Models/Interfaces/IUser.cs @@ -0,0 +1,21 @@ +using System.Collections.Generic; +using DevHive.Data.Models; +using DevHive.Data.RelationModels; + +namespace DevHive.Data.Models.Interfaces +{ + public interface IUser : IModel + { + string FirstName { get; set; } + + string LastName { get; set; } + + ProfilePicture ProfilePicture { get; set; } + + HashSet Languages { get; set; } + + HashSet Technologies { get; set; } + + HashSet Roles { get; set; } + } +} diff --git a/src/Data/DevHive.Data.Models/Language.cs b/src/Data/DevHive.Data.Models/Language.cs index 7ad8ff2..fdcfb07 100644 --- a/src/Data/DevHive.Data.Models/Language.cs +++ b/src/Data/DevHive.Data.Models/Language.cs @@ -1,6 +1,6 @@ using System; using System.Collections.Generic; -using DevHive.Data.Interfaces.Models; +using DevHive.Data.Models.Interfaces; namespace DevHive.Data.Models { diff --git a/src/Data/DevHive.Data.Models/Post.cs b/src/Data/DevHive.Data.Models/Post.cs index 3f3d8c9..5138d19 100644 --- a/src/Data/DevHive.Data.Models/Post.cs +++ b/src/Data/DevHive.Data.Models/Post.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations.Schema; -using DevHive.Data.Interfaces.Models; +using DevHive.Data.Models.Interfaces; using DevHive.Data.RelationModels; namespace DevHive.Data.Models diff --git a/src/Data/DevHive.Data.Models/ProfilePicture.cs b/src/Data/DevHive.Data.Models/ProfilePicture.cs index d5cc397..c5dec68 100644 --- a/src/Data/DevHive.Data.Models/ProfilePicture.cs +++ b/src/Data/DevHive.Data.Models/ProfilePicture.cs @@ -1,5 +1,5 @@ using System; -using DevHive.Data.Interfaces.Models; +using DevHive.Data.Models.Interfaces; namespace DevHive.Data.Models { diff --git a/src/Data/DevHive.Data.Models/Rating.cs b/src/Data/DevHive.Data.Models/Rating.cs index e1bedd2..13fdbce 100644 --- a/src/Data/DevHive.Data.Models/Rating.cs +++ b/src/Data/DevHive.Data.Models/Rating.cs @@ -1,6 +1,6 @@ using System; using System.Collections.Generic; -using DevHive.Data.Interfaces.Models; +using DevHive.Data.Models.Interfaces; namespace DevHive.Data.Models { @@ -11,7 +11,7 @@ namespace DevHive.Data.Models public Guid PostId { get; set; } public Post Post { get; set; } - + public int Rate { get; set; } } } diff --git a/src/Data/DevHive.Data.Models/Role.cs b/src/Data/DevHive.Data.Models/Role.cs index 259d867..0df556c 100644 --- a/src/Data/DevHive.Data.Models/Role.cs +++ b/src/Data/DevHive.Data.Models/Role.cs @@ -1,6 +1,6 @@ using System.ComponentModel.DataAnnotations.Schema; using System.Collections.Generic; -using DevHive.Data.Interfaces.Models; +using DevHive.Data.Models.Interfaces; using Microsoft.AspNetCore.Identity; using System; diff --git a/src/Data/DevHive.Data.Models/Technology.cs b/src/Data/DevHive.Data.Models/Technology.cs index 6f98f0b..9354d5b 100644 --- a/src/Data/DevHive.Data.Models/Technology.cs +++ b/src/Data/DevHive.Data.Models/Technology.cs @@ -1,6 +1,6 @@ using System; using System.Collections.Generic; -using DevHive.Data.Interfaces.Models; +using DevHive.Data.Models.Interfaces; namespace DevHive.Data.Models { diff --git a/src/Data/DevHive.Data.Models/User.cs b/src/Data/DevHive.Data.Models/User.cs index 983d073..806397a 100644 --- a/src/Data/DevHive.Data.Models/User.cs +++ b/src/Data/DevHive.Data.Models/User.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations.Schema; -using DevHive.Data.Interfaces.Models; +using DevHive.Data.Models.Interfaces; using DevHive.Data.RelationModels; using Microsoft.AspNetCore.Identity; diff --git a/src/Data/DevHive.Data.Tests/DevHive.Data.Tests.csproj b/src/Data/DevHive.Data.Tests/DevHive.Data.Tests.csproj index 42a3273..d6d0876 100644 --- a/src/Data/DevHive.Data.Tests/DevHive.Data.Tests.csproj +++ b/src/Data/DevHive.Data.Tests/DevHive.Data.Tests.csproj @@ -14,14 +14,6 @@ - - - - - - - - true latest diff --git a/src/Data/DevHive.Data/DevHive.Data.csproj b/src/Data/DevHive.Data/DevHive.Data.csproj index 62b61dc..e8f38ee 100644 --- a/src/Data/DevHive.Data/DevHive.Data.csproj +++ b/src/Data/DevHive.Data/DevHive.Data.csproj @@ -18,14 +18,6 @@ - - - - - - - - true latest diff --git a/src/Data/DevHive.Data/Interfaces/ICommentRepository.cs b/src/Data/DevHive.Data/Interfaces/ICommentRepository.cs new file mode 100644 index 0000000..f85849f --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/ICommentRepository.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Threading.Tasks; +using DevHive.Data.Models; +using DevHive.Data.Repositories.Interfaces; + +namespace DevHive.Data.Interfaces +{ + public interface ICommentRepository : IRepository + { + Task> GetPostComments(Guid postId); + + Task DoesCommentExist(Guid id); + Task GetCommentByIssuerAndTimeCreatedAsync(Guid issuerId, DateTime timeCreated); + } +} diff --git a/src/Data/DevHive.Data/Interfaces/IFeedRepository.cs b/src/Data/DevHive.Data/Interfaces/IFeedRepository.cs new file mode 100644 index 0000000..bda51fa --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/IFeedRepository.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Threading.Tasks; +using DevHive.Data.Models; + +namespace DevHive.Data.Interfaces +{ + public interface IFeedRepository + { + Task> GetFriendsPosts(List friendsList, DateTime firstRequestIssued, int pageNumber, int pageSize); + Task> GetUsersPosts(User user, DateTime firstRequestIssued, int pageNumber, int pageSize); + } +} diff --git a/src/Data/DevHive.Data/Interfaces/ILanguageRepository.cs b/src/Data/DevHive.Data/Interfaces/ILanguageRepository.cs new file mode 100644 index 0000000..4771f91 --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/ILanguageRepository.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Threading.Tasks; +using DevHive.Data.Models; +using DevHive.Data.Repositories.Interfaces; + +namespace DevHive.Data.Interfaces +{ + public interface ILanguageRepository : IRepository + { + HashSet GetLanguages(); + Task GetByNameAsync(string name); + + Task DoesLanguageExistAsync(Guid id); + Task DoesLanguageNameExistAsync(string languageName); + } +} diff --git a/src/Data/DevHive.Data/Interfaces/IPostRepository.cs b/src/Data/DevHive.Data/Interfaces/IPostRepository.cs new file mode 100644 index 0000000..c24d596 --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/IPostRepository.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Threading.Tasks; +using DevHive.Data.Models; +using DevHive.Data.Repositories.Interfaces; + +namespace DevHive.Data.Interfaces +{ + public interface IPostRepository : IRepository + { + Task AddNewPostToCreator(Guid userId, Post post); + + Task GetPostByCreatorAndTimeCreatedAsync(Guid issuerId, DateTime timeCreated); + Task> GetFileUrls(Guid postId); + + Task DoesPostExist(Guid postId); + Task DoesPostHaveFiles(Guid postId); + } +} diff --git a/src/Data/DevHive.Data/Interfaces/IRatingRepository.cs b/src/Data/DevHive.Data/Interfaces/IRatingRepository.cs new file mode 100644 index 0000000..b5aff88 --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/IRatingRepository.cs @@ -0,0 +1,13 @@ +using System; +using System.Threading.Tasks; +using DevHive.Data.Models; +using DevHive.Data.Repositories.Interfaces; + +namespace DevHive.Data.Interfaces +{ + public interface IRatingRepository : IRepository + { + Task GetRatingByPostId(Guid postId); + Task UserRatedPost(Guid userId, Guid postId); + } +} diff --git a/src/Data/DevHive.Data/Interfaces/IRepository.cs b/src/Data/DevHive.Data/Interfaces/IRepository.cs new file mode 100644 index 0000000..0d11cd3 --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/IRepository.cs @@ -0,0 +1,21 @@ +using System; +using System.Threading.Tasks; + +namespace DevHive.Data.Repositories.Interfaces +{ + public interface IRepository + where TEntity : class + { + //Add Entity to database + Task AddAsync(TEntity entity); + + //Find entity by id + Task GetByIdAsync(Guid id); + + //Modify Entity from database + Task EditAsync(Guid id, TEntity newEntity); + + //Delete Entity from database + Task DeleteAsync(TEntity entity); + } +} diff --git a/src/Data/DevHive.Data/Interfaces/IRoleRepository.cs b/src/Data/DevHive.Data/Interfaces/IRoleRepository.cs new file mode 100644 index 0000000..a1080bb --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/IRoleRepository.cs @@ -0,0 +1,15 @@ +using System; +using System.Threading.Tasks; +using DevHive.Data.Models; +using DevHive.Data.Repositories.Interfaces; + +namespace DevHive.Data.Interfaces +{ + public interface IRoleRepository : IRepository + { + Task GetByNameAsync(string name); + + Task DoesNameExist(string name); + Task DoesRoleExist(Guid id); + } +} diff --git a/src/Data/DevHive.Data/Interfaces/ITechnologyRepository.cs b/src/Data/DevHive.Data/Interfaces/ITechnologyRepository.cs new file mode 100644 index 0000000..3e55b2d --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/ITechnologyRepository.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Threading.Tasks; +using DevHive.Data.Models; +using DevHive.Data.Repositories.Interfaces; + +namespace DevHive.Data.Interfaces +{ + public interface ITechnologyRepository : IRepository + { + Task GetByNameAsync(string name); + HashSet GetTechnologies(); + + Task DoesTechnologyExistAsync(Guid id); + Task DoesTechnologyNameExistAsync(string technologyName); + } +} diff --git a/src/Data/DevHive.Data/Interfaces/IUserRepository.cs b/src/Data/DevHive.Data/Interfaces/IUserRepository.cs new file mode 100644 index 0000000..917809d --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/IUserRepository.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Threading.Tasks; +using DevHive.Data.Models; +using DevHive.Data.Repositories.Interfaces; + +namespace DevHive.Data.Interfaces +{ + public interface IUserRepository : IRepository + { + //Read + Task GetByUsernameAsync(string username); + Task UpdateProfilePicture(Guid userId, string pictureUrl); + + //Validations + Task ValidateFriendsCollectionAsync(List usernames); + Task DoesEmailExistAsync(string email); + Task DoesUserExistAsync(Guid id); + Task DoesUsernameExistAsync(string username); + bool DoesUserHaveThisUsername(Guid id, string username); + } +} diff --git a/src/Data/DevHive.Data/Interfaces/Models/IComment.cs b/src/Data/DevHive.Data/Interfaces/Models/IComment.cs deleted file mode 100644 index 97c1578..0000000 --- a/src/Data/DevHive.Data/Interfaces/Models/IComment.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System; -using DevHive.Data.Models; - -namespace DevHive.Data.Interfaces.Models -{ - public interface IComment : IModel - { - Post Post { get; set; } - - User Creator { get; set; } - - string Message { get; set; } - - DateTime TimeCreated { get; set; } - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Models/ILanguage.cs b/src/Data/DevHive.Data/Interfaces/Models/ILanguage.cs deleted file mode 100644 index 9eed09d..0000000 --- a/src/Data/DevHive.Data/Interfaces/Models/ILanguage.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System.Collections.Generic; -using DevHive.Data.Models; - -namespace DevHive.Data.Interfaces.Models -{ - public interface ILanguage : IModel - { - string Name { get; set; } - HashSet Users { get; set; } - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Models/IModel.cs b/src/Data/DevHive.Data/Interfaces/Models/IModel.cs deleted file mode 100644 index f903af3..0000000 --- a/src/Data/DevHive.Data/Interfaces/Models/IModel.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System; - -namespace DevHive.Data.Interfaces.Models -{ - public interface IModel - { - Guid Id { get; set; } - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Models/IPost.cs b/src/Data/DevHive.Data/Interfaces/Models/IPost.cs deleted file mode 100644 index 712d955..0000000 --- a/src/Data/DevHive.Data/Interfaces/Models/IPost.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System; -using System.Collections.Generic; -using DevHive.Data.Models; -using DevHive.Data.RelationModels; - -namespace DevHive.Data.Interfaces.Models -{ - public interface IPost : IModel - { - User Creator { get; set; } - - string Message { get; set; } - - DateTime TimeCreated { get; set; } - - List Comments { get; set; } - - // Rating Rating { get; set; } - - List Attachments { get; set; } - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Models/IProfilePicture.cs b/src/Data/DevHive.Data/Interfaces/Models/IProfilePicture.cs deleted file mode 100644 index c3fcbea..0000000 --- a/src/Data/DevHive.Data/Interfaces/Models/IProfilePicture.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System; -using DevHive.Data.Models; - -namespace DevHive.Data.Interfaces.Models -{ - public interface IProfilePicture : IModel - { - Guid UserId { get; set; } - User User { get; set; } - - string PictureURL { get; set; } - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Models/IRating.cs b/src/Data/DevHive.Data/Interfaces/Models/IRating.cs deleted file mode 100644 index d1b968f..0000000 --- a/src/Data/DevHive.Data/Interfaces/Models/IRating.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System.Collections.Generic; -using DevHive.Data.Models; - -namespace DevHive.Data.Interfaces.Models -{ - public interface IRating : IModel - { - // Post Post { get; set; } - - int Rate { get; set; } - - // HashSet UsersThatRated { get; set; } - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Models/IRole.cs b/src/Data/DevHive.Data/Interfaces/Models/IRole.cs deleted file mode 100644 index c8b7068..0000000 --- a/src/Data/DevHive.Data/Interfaces/Models/IRole.cs +++ /dev/null @@ -1,10 +0,0 @@ -using System.Collections.Generic; -using DevHive.Data.Models; - -namespace DevHive.Data.Interfaces.Models -{ - public interface IRole - { - HashSet Users { get; set; } - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Models/ITechnology.cs b/src/Data/DevHive.Data/Interfaces/Models/ITechnology.cs deleted file mode 100644 index 153f75f..0000000 --- a/src/Data/DevHive.Data/Interfaces/Models/ITechnology.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System.Collections.Generic; -using DevHive.Data.Models; - -namespace DevHive.Data.Interfaces.Models -{ - public interface ITechnology : IModel - { - string Name { get; set; } - HashSet Users { get; set; } - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Models/IUser.cs b/src/Data/DevHive.Data/Interfaces/Models/IUser.cs deleted file mode 100644 index fcd741c..0000000 --- a/src/Data/DevHive.Data/Interfaces/Models/IUser.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System.Collections.Generic; -using DevHive.Data.Models; -using DevHive.Data.RelationModels; - -namespace DevHive.Data.Interfaces.Models -{ - public interface IUser : IModel - { - string FirstName { get; set; } - - string LastName { get; set; } - - ProfilePicture ProfilePicture { get; set; } - - HashSet Languages { get; set; } - - HashSet Technologies { get; set; } - - HashSet Roles { get; set; } - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Repositories/ICommentRepository.cs b/src/Data/DevHive.Data/Interfaces/Repositories/ICommentRepository.cs deleted file mode 100644 index 267f251..0000000 --- a/src/Data/DevHive.Data/Interfaces/Repositories/ICommentRepository.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading.Tasks; -using DevHive.Data.Models; -using DevHive.Data.Repositories.Interfaces; - -namespace DevHive.Data.Interfaces.Repositories -{ - public interface ICommentRepository : IRepository - { - Task> GetPostComments(Guid postId); - - Task DoesCommentExist(Guid id); - Task GetCommentByIssuerAndTimeCreatedAsync(Guid issuerId, DateTime timeCreated); - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Repositories/IFeedRepository.cs b/src/Data/DevHive.Data/Interfaces/Repositories/IFeedRepository.cs deleted file mode 100644 index 7262510..0000000 --- a/src/Data/DevHive.Data/Interfaces/Repositories/IFeedRepository.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading.Tasks; -using DevHive.Data.Models; - -namespace DevHive.Data.Interfaces.Repositories -{ - public interface IFeedRepository - { - Task> GetFriendsPosts(List friendsList, DateTime firstRequestIssued, int pageNumber, int pageSize); - Task> GetUsersPosts(User user, DateTime firstRequestIssued, int pageNumber, int pageSize); - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Repositories/ILanguageRepository.cs b/src/Data/DevHive.Data/Interfaces/Repositories/ILanguageRepository.cs deleted file mode 100644 index db2949a..0000000 --- a/src/Data/DevHive.Data/Interfaces/Repositories/ILanguageRepository.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading.Tasks; -using DevHive.Data.Models; -using DevHive.Data.Repositories.Interfaces; - -namespace DevHive.Data.Interfaces.Repositories -{ - public interface ILanguageRepository : IRepository - { - HashSet GetLanguages(); - Task GetByNameAsync(string name); - - Task DoesLanguageExistAsync(Guid id); - Task DoesLanguageNameExistAsync(string languageName); - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Repositories/IPostRepository.cs b/src/Data/DevHive.Data/Interfaces/Repositories/IPostRepository.cs deleted file mode 100644 index 9f7cf85..0000000 --- a/src/Data/DevHive.Data/Interfaces/Repositories/IPostRepository.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading.Tasks; -using DevHive.Data.Models; -using DevHive.Data.Repositories.Interfaces; - -namespace DevHive.Data.Interfaces.Repositories -{ - public interface IPostRepository : IRepository - { - Task AddNewPostToCreator(Guid userId, Post post); - - Task GetPostByCreatorAndTimeCreatedAsync(Guid issuerId, DateTime timeCreated); - Task> GetFileUrls(Guid postId); - - Task DoesPostExist(Guid postId); - Task DoesPostHaveFiles(Guid postId); - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Repositories/IRatingRepository.cs b/src/Data/DevHive.Data/Interfaces/Repositories/IRatingRepository.cs deleted file mode 100644 index f77f301..0000000 --- a/src/Data/DevHive.Data/Interfaces/Repositories/IRatingRepository.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System; -using System.Threading.Tasks; -using DevHive.Data.Models; -using DevHive.Data.Repositories.Interfaces; - -namespace DevHive.Data.Interfaces.Repositories -{ - public interface IRatingRepository : IRepository - { - Task GetRatingByPostId(Guid postId); - Task UserRatedPost(Guid userId, Guid postId); - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Repositories/IRepository.cs b/src/Data/DevHive.Data/Interfaces/Repositories/IRepository.cs deleted file mode 100644 index 0d11cd3..0000000 --- a/src/Data/DevHive.Data/Interfaces/Repositories/IRepository.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System; -using System.Threading.Tasks; - -namespace DevHive.Data.Repositories.Interfaces -{ - public interface IRepository - where TEntity : class - { - //Add Entity to database - Task AddAsync(TEntity entity); - - //Find entity by id - Task GetByIdAsync(Guid id); - - //Modify Entity from database - Task EditAsync(Guid id, TEntity newEntity); - - //Delete Entity from database - Task DeleteAsync(TEntity entity); - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Repositories/IRoleRepository.cs b/src/Data/DevHive.Data/Interfaces/Repositories/IRoleRepository.cs deleted file mode 100644 index e834369..0000000 --- a/src/Data/DevHive.Data/Interfaces/Repositories/IRoleRepository.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System; -using System.Threading.Tasks; -using DevHive.Data.Models; -using DevHive.Data.Repositories.Interfaces; - -namespace DevHive.Data.Interfaces.Repositories -{ - public interface IRoleRepository : IRepository - { - Task GetByNameAsync(string name); - - Task DoesNameExist(string name); - Task DoesRoleExist(Guid id); - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Repositories/ITechnologyRepository.cs b/src/Data/DevHive.Data/Interfaces/Repositories/ITechnologyRepository.cs deleted file mode 100644 index 9126bfc..0000000 --- a/src/Data/DevHive.Data/Interfaces/Repositories/ITechnologyRepository.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading.Tasks; -using DevHive.Data.Models; -using DevHive.Data.Repositories.Interfaces; - -namespace DevHive.Data.Interfaces.Repositories -{ - public interface ITechnologyRepository : IRepository - { - Task GetByNameAsync(string name); - HashSet GetTechnologies(); - - Task DoesTechnologyExistAsync(Guid id); - Task DoesTechnologyNameExistAsync(string technologyName); - } -} diff --git a/src/Data/DevHive.Data/Interfaces/Repositories/IUserRepository.cs b/src/Data/DevHive.Data/Interfaces/Repositories/IUserRepository.cs deleted file mode 100644 index 5ebe3d3..0000000 --- a/src/Data/DevHive.Data/Interfaces/Repositories/IUserRepository.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading.Tasks; -using DevHive.Data.Models; -using DevHive.Data.Repositories.Interfaces; - -namespace DevHive.Data.Interfaces.Repositories -{ - public interface IUserRepository : IRepository - { - //Read - Task GetByUsernameAsync(string username); - Task UpdateProfilePicture(Guid userId, string pictureUrl); - - //Validations - Task ValidateFriendsCollectionAsync(List usernames); - Task DoesEmailExistAsync(string email); - Task DoesUserExistAsync(Guid id); - Task DoesUsernameExistAsync(string username); - bool DoesUserHaveThisUsername(Guid id, string username); - } -} -- cgit v1.2.3