aboutsummaryrefslogtreecommitdiff
path: root/src/DevHive.Data/Interfaces/Models
diff options
context:
space:
mode:
authorVictor S <57849063+transtrike@users.noreply.github.com>2021-02-05 10:54:49 -0800
committerGitHub <noreply@github.com>2021-02-05 10:54:49 -0800
commitf4a70c6430db923af9fa9958a11c2d6612cb52cc (patch)
treeca0ea403ba5500df20bc8854ec50529a25c64245 /src/DevHive.Data/Interfaces/Models
parent1ccdefdac025b1b986ad2bd0bc3eda7505d6e7c3 (diff)
parent2269b5aa6c8d3dcb407c34fa256200bdc573585a (diff)
downloadDevHive-f4a70c6430db923af9fa9958a11c2d6612cb52cc.tar
DevHive-f4a70c6430db923af9fa9958a11c2d6612cb52cc.tar.gz
DevHive-f4a70c6430db923af9fa9958a11c2d6612cb52cc.zip
Merge pull request #18 from Team-Kaleidoscope/devv0.1
First stage: Complete. Awaiting further progress...
Diffstat (limited to 'src/DevHive.Data/Interfaces/Models')
-rw-r--r--src/DevHive.Data/Interfaces/Models/IComment.cs16
-rw-r--r--src/DevHive.Data/Interfaces/Models/ILanguage.cs11
-rw-r--r--src/DevHive.Data/Interfaces/Models/IModel.cs9
-rw-r--r--src/DevHive.Data/Interfaces/Models/IPost.cs22
-rw-r--r--src/DevHive.Data/Interfaces/Models/IProfilePicture.cs13
-rw-r--r--src/DevHive.Data/Interfaces/Models/IRating.cs14
-rw-r--r--src/DevHive.Data/Interfaces/Models/IRole.cs10
-rw-r--r--src/DevHive.Data/Interfaces/Models/ITechnology.cs11
-rw-r--r--src/DevHive.Data/Interfaces/Models/IUser.cs21
9 files changed, 127 insertions, 0 deletions
diff --git a/src/DevHive.Data/Interfaces/Models/IComment.cs b/src/DevHive.Data/Interfaces/Models/IComment.cs
new file mode 100644
index 0000000..97c1578
--- /dev/null
+++ b/src/DevHive.Data/Interfaces/Models/IComment.cs
@@ -0,0 +1,16 @@
+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/DevHive.Data/Interfaces/Models/ILanguage.cs b/src/DevHive.Data/Interfaces/Models/ILanguage.cs
new file mode 100644
index 0000000..9eed09d
--- /dev/null
+++ b/src/DevHive.Data/Interfaces/Models/ILanguage.cs
@@ -0,0 +1,11 @@
+using System.Collections.Generic;
+using DevHive.Data.Models;
+
+namespace DevHive.Data.Interfaces.Models
+{
+ public interface ILanguage : IModel
+ {
+ string Name { get; set; }
+ HashSet<User> Users { get; set; }
+ }
+}
diff --git a/src/DevHive.Data/Interfaces/Models/IModel.cs b/src/DevHive.Data/Interfaces/Models/IModel.cs
new file mode 100644
index 0000000..f903af3
--- /dev/null
+++ b/src/DevHive.Data/Interfaces/Models/IModel.cs
@@ -0,0 +1,9 @@
+using System;
+
+namespace DevHive.Data.Interfaces.Models
+{
+ public interface IModel
+ {
+ Guid Id { get; set; }
+ }
+}
diff --git a/src/DevHive.Data/Interfaces/Models/IPost.cs b/src/DevHive.Data/Interfaces/Models/IPost.cs
new file mode 100644
index 0000000..712d955
--- /dev/null
+++ b/src/DevHive.Data/Interfaces/Models/IPost.cs
@@ -0,0 +1,22 @@
+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<Comment> Comments { get; set; }
+
+ // Rating Rating { get; set; }
+
+ List<PostAttachments> Attachments { get; set; }
+ }
+}
diff --git a/src/DevHive.Data/Interfaces/Models/IProfilePicture.cs b/src/DevHive.Data/Interfaces/Models/IProfilePicture.cs
new file mode 100644
index 0000000..c3fcbea
--- /dev/null
+++ b/src/DevHive.Data/Interfaces/Models/IProfilePicture.cs
@@ -0,0 +1,13 @@
+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/DevHive.Data/Interfaces/Models/IRating.cs b/src/DevHive.Data/Interfaces/Models/IRating.cs
new file mode 100644
index 0000000..d1b968f
--- /dev/null
+++ b/src/DevHive.Data/Interfaces/Models/IRating.cs
@@ -0,0 +1,14 @@
+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<User> UsersThatRated { get; set; }
+ }
+}
diff --git a/src/DevHive.Data/Interfaces/Models/IRole.cs b/src/DevHive.Data/Interfaces/Models/IRole.cs
new file mode 100644
index 0000000..c8b7068
--- /dev/null
+++ b/src/DevHive.Data/Interfaces/Models/IRole.cs
@@ -0,0 +1,10 @@
+using System.Collections.Generic;
+using DevHive.Data.Models;
+
+namespace DevHive.Data.Interfaces.Models
+{
+ public interface IRole
+ {
+ HashSet<User> Users { get; set; }
+ }
+}
diff --git a/src/DevHive.Data/Interfaces/Models/ITechnology.cs b/src/DevHive.Data/Interfaces/Models/ITechnology.cs
new file mode 100644
index 0000000..153f75f
--- /dev/null
+++ b/src/DevHive.Data/Interfaces/Models/ITechnology.cs
@@ -0,0 +1,11 @@
+using System.Collections.Generic;
+using DevHive.Data.Models;
+
+namespace DevHive.Data.Interfaces.Models
+{
+ public interface ITechnology : IModel
+ {
+ string Name { get; set; }
+ HashSet<User> Users { get; set; }
+ }
+}
diff --git a/src/DevHive.Data/Interfaces/Models/IUser.cs b/src/DevHive.Data/Interfaces/Models/IUser.cs
new file mode 100644
index 0000000..fcd741c
--- /dev/null
+++ b/src/DevHive.Data/Interfaces/Models/IUser.cs
@@ -0,0 +1,21 @@
+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<Language> Languages { get; set; }
+
+ HashSet<Technology> Technologies { get; set; }
+
+ HashSet<Role> Roles { get; set; }
+ }
+}