From b947a09960b9fa384927d381b1bc33c5a91746a8 Mon Sep 17 00:00:00 2001
From: Heinrichs <Heinrichs@itc.rwth-aachen.de>
Date: Mon, 25 May 2020 15:46:16 +0200
Subject: [PATCH] New: TOSModel (coscine/issues#798)

---
 src/Database/Database.csproj    |  1 +
 src/Database/Models/TOSModel.cs | 25 +++++++++++++++++++++++++
 2 files changed, 26 insertions(+)
 create mode 100644 src/Database/Models/TOSModel.cs

diff --git a/src/Database/Database.csproj b/src/Database/Database.csproj
index de0a93a..13cd606 100644
--- a/src/Database/Database.csproj
+++ b/src/Database/Database.csproj
@@ -79,6 +79,7 @@
     <Compile Include="Models\ExternalAuthenticatorModel.cs" />
     <Compile Include="Models\ExternalIdModel.cs" />
     <Compile Include="Models\FeaturesModel.cs" />
+    <Compile Include="Models\TOSModel.cs" />
     <Compile Include="ReturnObjects\ActivatedFeatureObject.cs" />
     <Compile Include="Models\LogModel.cs" />
     <Compile Include="ReturnObjects\DisciplineObject.cs" />
diff --git a/src/Database/Models/TOSModel.cs b/src/Database/Models/TOSModel.cs
new file mode 100644
index 0000000..e085abd
--- /dev/null
+++ b/src/Database/Models/TOSModel.cs
@@ -0,0 +1,25 @@
+using Coscine.Database.DataModel;
+using LinqToDB;
+using System;
+using System.Linq.Expressions;
+
+namespace Coscine.Database.Models
+{
+    public class TOSModel : DatabaseModel<TOSAccepted>
+    {
+        public override Expression<Func<TOSAccepted, Guid>> GetIdFromObject()
+        {
+            return (tosAccepted) => tosAccepted.RelationId;
+        }
+
+        public override ITable<TOSAccepted> GetITableFromDatabase(CoscineDB db)
+        {
+            return db.TOSAccepteds;
+        }
+
+        public override void SetObjectId(TOSAccepted databaseObject, Guid id)
+        {
+            databaseObject.RelationId = id;
+        }
+    }
+}
-- 
GitLab