From 769e315f6c26ea0403056f557d06ffca3ed02db2 Mon Sep 17 00:00:00 2001
From: Julian Dehne <julian.dehne@uni-potsdam.de>
Date: Mon, 23 Jul 2018 12:24:56 +0200
Subject: [PATCH] feat: added better logging to activities Test

---
 .../unipotsdam/gf/assignments/Assignee.java   | 15 ++++
 .../gf/assignments/NotImplementedLogger.java  | 69 +++++++++++++++++++
 .../gf/config/GFDatabaseConfig.java           |  4 +-
 .../gf/interfaces/ICommunication.java         |  5 +-
 .../gf/interfaces/IGroupFinding.java          |  1 +
 .../unipotsdam/gf/interfaces/IJournal.java    | 13 ++--
 .../gf/interfaces/IPeerAssessment.java        |  3 +-
 .../service/PeerAssessmentDummy.java          |  5 +-
 .../service/CommunicationDummyService.java    | 27 +++++---
 .../groupfinding/DummyGroupfinding.java       | 16 +++--
 .../gf/modules/journal/DummyJournalImpl.java  | 23 ++++---
 .../peer2peerfeedback/DummyFeedback.java      |  8 ++-
 .../DummyResearchReportManagement.java        | 11 ++-
 .../ResearchReportManagement.java             | 10 +--
 14 files changed, 163 insertions(+), 47 deletions(-)
 create mode 100644 gemeinsamforschen/src/main/java/unipotsdam/gf/assignments/Assignee.java
 create mode 100644 gemeinsamforschen/src/main/java/unipotsdam/gf/assignments/NotImplementedLogger.java

diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/assignments/Assignee.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/assignments/Assignee.java
new file mode 100644
index 00000000..3e3df152
--- /dev/null
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/assignments/Assignee.java
@@ -0,0 +1,15 @@
+package unipotsdam.gf.assignments;
+
+    public enum Assignee {
+        AXEL,
+        CHRISTIAN,
+        KATHARINA,
+        LUDWIG,
+        MARTIN,
+        MIRJAM,
+        QUARK,
+        SVEN,
+        THOMAS
+
+
+}
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/assignments/NotImplementedLogger.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/assignments/NotImplementedLogger.java
new file mode 100644
index 00000000..67e379f9
--- /dev/null
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/assignments/NotImplementedLogger.java
@@ -0,0 +1,69 @@
+package unipotsdam.gf.assignments;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import unipotsdam.gf.modules.communication.view.CommunicationView;
+import unipotsdam.gf.modules.researchreport.ResearchReportManagement;
+
+import java.util.HashMap;
+import java.util.concurrent.ConcurrentHashMap;
+
+public class NotImplementedLogger {
+
+    private static final Logger log = LoggerFactory.getLogger(NotImplementedLogger.class);
+    private static final ConcurrentHashMap<String, Boolean> messagesSend = new ConcurrentHashMap<String, Boolean>();
+
+    public static synchronized void logAssignment(Assignee assignee, Class element) {
+        StringBuilder stringBuilder = new StringBuilder();
+        stringBuilder.append(assignee.name());
+        stringBuilder.append(": Please implement ");
+        stringBuilder.append(element);
+        String result = stringBuilder.toString();
+
+        if (!getMessageMap().keySet().contains(result)) {
+            log.info(result);
+        }
+        messagesSend.put(result, true);
+    }
+
+    public static synchronized void logAssignment(Assignee assignee, Class element, String fakeMessage) {
+        StringBuilder stringBuilder = new StringBuilder();
+        stringBuilder.append(assignee.name());
+        stringBuilder.append(": Please implement ");
+        stringBuilder.append(element + "\n");
+        stringBuilder.append("process: " + fakeMessage + "\n");
+        String result = stringBuilder.toString();
+
+        if (!getMessageMap().keySet().contains(result)) {
+            log.info(result);
+        }
+        messagesSend.put(result, true);
+    }
+
+
+
+    public static void logAssignment(Assignee assignee, Class className, String method, String fakeMessage) {
+        StringBuilder stringBuilder = new StringBuilder();
+        stringBuilder.append(assignee.name());
+        stringBuilder.append(": Please implement ");
+        stringBuilder.append(className.getCanonicalName());
+        stringBuilder.append(":");
+        stringBuilder.append(method);
+        stringBuilder.append("\n");
+        stringBuilder.append(fakeMessage);
+        String result = stringBuilder.toString();
+
+        if (!getMessageMap().keySet().contains(result)) {
+            log.info(result);
+        }
+        messagesSend.put(result, true);
+    }
+
+    public static synchronized ConcurrentHashMap<String, Boolean> getMessageMap() {
+        if (messagesSend == null) {
+            return new ConcurrentHashMap<String, Boolean>();
+        }
+        return messagesSend;
+    }
+
+}
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/config/GFDatabaseConfig.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/config/GFDatabaseConfig.java
index 25290510..cefe2e28 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/config/GFDatabaseConfig.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/config/GFDatabaseConfig.java
@@ -7,7 +7,7 @@ public class GFDatabaseConfig {
     public static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
     public static final String DB_URL = "jdbc:mysql://localhost";
     //  Database credentials
-    public static final String USER = "root";
-    public static final String PASS = "";
+    public static final String USER = "root2";
+    public static final String PASS = "voyager2";
     public static final String DB_NAME = "fltrail";
 }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/ICommunication.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/ICommunication.java
index 3370fa65..2705893f 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/ICommunication.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/ICommunication.java
@@ -2,6 +2,7 @@ package unipotsdam.gf.interfaces;
 
 import unipotsdam.gf.core.management.project.Project;
 import unipotsdam.gf.core.management.user.User;
+import unipotsdam.gf.assignments.NotImplementedLogger;
 import unipotsdam.gf.modules.communication.model.Message;
 import unipotsdam.gf.modules.communication.model.chat.ChatMessage;
 import unipotsdam.gf.modules.communication.model.chat.ChatRoom;
@@ -23,7 +24,7 @@ public interface ICommunication {
     List<ChatMessage> getChatHistory(String roomId);
 
 
-    boolean sendMessageToChat(Message message, String roomId);
+    boolean sendMessageToChat(Message message, String roomId) ;
 
     /**
      * endpoint: https://rocket.chat/docs/developer-guides/rest-api/groups/create/
@@ -45,7 +46,7 @@ public interface ICommunication {
      */
     boolean addUserToChatRoom(String roomId, User user);
 
-    boolean removeUserFromChatRoom(User user, String roomId);
+    boolean removeUserFromChatRoom(User user, String roomId) ;
 
     /**
      * endpoint: https://rocket.chat/docs/developer-guides/rest-api/groups/settopic/
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IGroupFinding.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IGroupFinding.java
index f776d8f2..9b7f6705 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IGroupFinding.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IGroupFinding.java
@@ -2,6 +2,7 @@ package unipotsdam.gf.interfaces;
 
 import unipotsdam.gf.core.management.group.Group;
 import unipotsdam.gf.core.management.project.Project;
+import unipotsdam.gf.assignments.NotImplementedLogger;
 import unipotsdam.gf.modules.groupfinding.GroupFormationMechanism;
 import unipotsdam.gf.modules.groupfinding.GroupfindingCriteria;
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IJournal.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IJournal.java
index 8f11eec4..6630d9f8 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IJournal.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IJournal.java
@@ -3,6 +3,7 @@ package unipotsdam.gf.interfaces;
 
 import unipotsdam.gf.core.management.project.Project;
 import unipotsdam.gf.core.management.user.User;
+import unipotsdam.gf.assignments.NotImplementedLogger;
 import unipotsdam.gf.modules.assessment.controller.model.StudentIdentifier;
 import unipotsdam.gf.modules.journal.model.Journal;
 import unipotsdam.gf.modules.researchreport.ResearchReport;
@@ -22,27 +23,27 @@ public interface IJournal {
      * @param student StudentIdentifier
      * @return the journal as String (may change)
      */
-    String exportJournal (StudentIdentifier student);
+    String exportJournal (StudentIdentifier student) ;
 
     /**
      * check if all students have prepared their portfolios to be evaluated
      * @return
      * @param project
      */
-    Boolean getPortfoliosForEvaluationPrepared(Project project);
+    Boolean getPortfoliosForEvaluationPrepared(Project project) ;
 
     /**
      * find out, who hasn't prepared their portfolio for evaluation and send message or highlight in view
      * @param project
      */
-    void assignMissingPortfolioTasks(Project project);
+    void assignMissingPortfolioTasks(Project project) ;
 
     /**
      * after user has uploaded a journal entry this function is called
      * @param journalEntry
      * @param student
      */
-    void uploadJournalEntry(Journal journalEntry, User student);
+    void uploadJournalEntry(Journal journalEntry, User student) ;
 
     /**
      * persist final portfolio for assessment
@@ -53,12 +54,12 @@ public interface IJournal {
      * @param presentation
      */
     void uploadFinalPortfolio(Project project, List<Journal> journalEntries, ResearchReport finalResearchReport, File
-            presentation, User user);
+            presentation, User user) ;
 
     /**
      *
      * @param project
      * @return
      */
-    HTML getFinalPortfolioForAssessment(Project project, User user);
+    HTML getFinalPortfolioForAssessment(Project project, User user) ;
 }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java
index 07ccd75f..e204835e 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java
@@ -1,5 +1,6 @@
 package unipotsdam.gf.interfaces;
 
+import unipotsdam.gf.assignments.NotImplementedLogger;
 import unipotsdam.gf.modules.assessment.QuizAnswer;
 import unipotsdam.gf.modules.assessment.controller.model.*;
 
@@ -32,7 +33,7 @@ public interface IPeerAssessment {
      *
      * @param studentAndQuiz
      */
-    void createQuiz(StudentAndQuiz studentAndQuiz);
+    void createQuiz(StudentAndQuiz studentAndQuiz) ;
 
     /**
      * calculate grades for everyone in a list.
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessmentDummy.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessmentDummy.java
index 368c39df..fced4060 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessmentDummy.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessmentDummy.java
@@ -1,5 +1,7 @@
 package unipotsdam.gf.modules.assessment.controller.service;
 
+import unipotsdam.gf.assignments.Assignee;
+import unipotsdam.gf.assignments.NotImplementedLogger;
 import unipotsdam.gf.interfaces.IPeerAssessment;
 import unipotsdam.gf.modules.assessment.QuizAnswer;
 import unipotsdam.gf.modules.assessment.controller.model.*;
@@ -67,7 +69,7 @@ public class PeerAssessmentDummy implements IPeerAssessment {
 
     @Override
     public void answerQuiz(StudentAndQuiz studentAndQuiz, QuizAnswer quizAnswer) {
-
+        NotImplementedLogger.logAssignment(Assignee.AXEL, IPeerAssessment.class);
     }
 
     @Override
@@ -81,6 +83,7 @@ public class PeerAssessmentDummy implements IPeerAssessment {
 
     @Override
     public void createQuiz(StudentAndQuiz studentAndQuiz) {
+        NotImplementedLogger.logAssignment(Assignee.AXEL, PeerAssessmentDummy.class);
     }
 
     @Override
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/communication/service/CommunicationDummyService.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/communication/service/CommunicationDummyService.java
index c9c17f71..1aa5c32f 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/communication/service/CommunicationDummyService.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/communication/service/CommunicationDummyService.java
@@ -4,6 +4,8 @@ import unipotsdam.gf.config.Constants;
 import unipotsdam.gf.core.management.Management;
 import unipotsdam.gf.core.management.project.Project;
 import unipotsdam.gf.core.management.user.User;
+import unipotsdam.gf.assignments.Assignee;
+import unipotsdam.gf.assignments.NotImplementedLogger;
 import unipotsdam.gf.interfaces.ICommunication;
 import unipotsdam.gf.modules.communication.model.Message;
 import unipotsdam.gf.modules.communication.model.chat.ChatMessage;
@@ -39,7 +41,8 @@ public class CommunicationDummyService implements ICommunication {
 
     @Override
     public boolean sendMessageToChat(Message message, String roomId) {
-        return true;
+        NotImplementedLogger.logAssignment(Assignee.MARTIN, CommunicationDummyService.class);
+        return false;
     }
 
     @Override
@@ -52,18 +55,22 @@ public class CommunicationDummyService implements ICommunication {
     }
 
     @Override
-    public boolean addUserToChatRoom(String roomId, User user) {
-        return true;
+    public boolean addUserToChatRoom(String roomId, User user)  {
+        NotImplementedLogger.logAssignment(Assignee.MARTIN, CommunicationDummyService.class, "addUserToChatRoom");
+        return false;
     }
 
     @Override
-    public boolean removeUserFromChatRoom(User user, String roomId) {
-        return true;
+    public boolean removeUserFromChatRoom(User user, String roomId)  {
+        NotImplementedLogger.logAssignment(Assignee.MARTIN, CommunicationDummyService.class, "removing user from chat " +
+                "room");
+        return false;
     }
 
     @Override
     public boolean setChatRoomTopic(String roomId, String topic) {
-        return true;
+        NotImplementedLogger.logAssignment(Assignee.MARTIN, CommunicationDummyService.class, "setting chat room topic");
+        return false;
     }
 
     @Override
@@ -102,15 +109,17 @@ public class CommunicationDummyService implements ICommunication {
     }
 
     @Override
-    public void sendSingleMessage(Message message, User user) {
+    public void sendSingleMessage(Message message, User user)  {
         // TODO implement as email or directed message, popup after login or whatever
-        System.out.println("sending email with message: "+ message.getMessage() + " to: "+ user.getEmail());
+        String message2 = "sending email with message: "+ message.getMessage() + " to: "+ user.getEmail();
+        NotImplementedLogger.logAssignment(Assignee.MARTIN, CommunicationDummyService.class, message2);
     }
 
     @Override
     public void sendMessageToUsers(Project project, String message) {
         // TODO implement as email or directed message, popup after login or whatever
-        System.out.println("sending email with message: "+ message + " to: "+ project.getId());
+        String message2 = "sending email with message: "+ message + " to: "+ project.getId();
+        NotImplementedLogger.logAssignment(Assignee.MARTIN, CommunicationDummyService.class, message2);
     }
 
     // TODO: remove after done implementing
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/DummyGroupfinding.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/DummyGroupfinding.java
index 1afe5314..c7f3f457 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/DummyGroupfinding.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/DummyGroupfinding.java
@@ -2,29 +2,33 @@ package unipotsdam.gf.modules.groupfinding;
 
 import unipotsdam.gf.core.management.group.Group;
 import unipotsdam.gf.core.management.project.Project;
+import unipotsdam.gf.assignments.Assignee;
+import unipotsdam.gf.assignments.NotImplementedLogger;
 import unipotsdam.gf.interfaces.IGroupFinding;
 
+import java.util.ArrayList;
 import java.util.List;
 
 public class DummyGroupfinding implements IGroupFinding {
     @Override
-    public void selectGroupfindingCriteria(GroupfindingCriteria groupfindingCriteria) {
-
+    public void selectGroupfindingCriteria(GroupfindingCriteria groupfindingCriteria)  {
+        NotImplementedLogger.logAssignment(Assignee.MIRJAM, IGroupFinding.class);
     }
 
     @Override
     public void persistGroups(
-            List<Group> groupComposition, Project project) {
-
+            List<Group> groupComposition, Project project){
+        NotImplementedLogger.logAssignment(Assignee.MIRJAM, IGroupFinding.class);
     }
 
     @Override
     public List<Group> getGroups(Project project) {
-        return null;
+        NotImplementedLogger.logAssignment(Assignee.MIRJAM, IGroupFinding.class);
+        return new ArrayList<>();
     }
 
     @Override
     public void formGroups(GroupFormationMechanism groupFindingMechanism) {
-
+        NotImplementedLogger.logAssignment(Assignee.MIRJAM, IGroupFinding.class);
     }
 }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/DummyJournalImpl.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/DummyJournalImpl.java
index ea5bc7e4..6ea1ea35 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/DummyJournalImpl.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/DummyJournalImpl.java
@@ -4,6 +4,8 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import unipotsdam.gf.core.management.project.Project;
 import unipotsdam.gf.core.management.user.User;
+import unipotsdam.gf.assignments.Assignee;
+import unipotsdam.gf.assignments.NotImplementedLogger;
 import unipotsdam.gf.interfaces.IJournal;
 import unipotsdam.gf.modules.assessment.controller.model.StudentIdentifier;
 import unipotsdam.gf.modules.journal.model.Journal;
@@ -19,39 +21,38 @@ public class DummyJournalImpl implements IJournal {
     private Logger log = LoggerFactory.getLogger(DummyJournalImpl.class);
 
     @Override
-    public String exportJournal(StudentIdentifier student) {
-        // TODO Impl was macht das hier?
-
+    public String exportJournal(StudentIdentifier student)  {
+        NotImplementedLogger.logAssignment(Assignee.THOMAS, IJournal.class);
         return null;
     }
 
     @Override
-    public Boolean getPortfoliosForEvaluationPrepared(Project project) {
-
-        log.debug("checking fake constraints for the portfolio evaluation");
+    public Boolean getPortfoliosForEvaluationPrepared(Project project)  {
+        NotImplementedLogger.logAssignment(Assignee.THOMAS, IJournal.class);
         return false;
     }
 
     @Override
     public void assignMissingPortfolioTasks(Project project) {
-        log.debug("assigning fake MissingPortfolioTasks");
+        NotImplementedLogger.logAssignment(Assignee.THOMAS, IJournal.class);
     }
 
     @Override
     public void uploadJournalEntry(Journal journalEntry, User student) {
-
+        NotImplementedLogger.logAssignment(Assignee.THOMAS, IJournal.class);
     }
 
     @Override
     public void uploadFinalPortfolio(
             Project project, List<Journal> journalEntries, ResearchReport finalResearchReport, File presentation,
-            User user) {
-
+            User user)  {
+        NotImplementedLogger.logAssignment(Assignee.THOMAS, IJournal.class);
     }
 
     @Override
     public HTML getFinalPortfolioForAssessment(
-            Project project, User user) {
+            Project project, User user)  {
+        NotImplementedLogger.logAssignment(Assignee.THOMAS, IJournal.class);
         return null;
     }
 }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/peer2peerfeedback/DummyFeedback.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/peer2peerfeedback/DummyFeedback.java
index c24769c3..b8098beb 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/peer2peerfeedback/DummyFeedback.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/peer2peerfeedback/DummyFeedback.java
@@ -3,6 +3,8 @@ package unipotsdam.gf.modules.peer2peerfeedback;
 import org.mockito.Mockito;
 import uk.co.jemos.podam.api.PodamFactory;
 import uk.co.jemos.podam.api.PodamFactoryImpl;
+import unipotsdam.gf.assignments.Assignee;
+import unipotsdam.gf.assignments.NotImplementedLogger;
 import unipotsdam.gf.core.management.project.Project;
 import unipotsdam.gf.core.management.user.User;
 import unipotsdam.gf.interfaces.Feedback;
@@ -49,13 +51,15 @@ public class DummyFeedback implements Feedback {
     @Override
     public Boolean checkFeedbackConstraints(Project project) {
         // TODO implement cornstaints
-        System.out.println("Checking fake constraints");
+        NotImplementedLogger.logAssignment(Assignee.KATHARINA, Feedback.class, "check Feedback constraints",
+                "checking feedback constraints ");
         return missingTaskAssigned;
     }
 
     @Override
     public void assigningMissingFeedbackTasks(Project project) {
-        System.out.println("assigning fake tasks");
+        NotImplementedLogger.logAssignment(Assignee.KATHARINA, Feedback.class, "assigningMissingFeedbackTasks",
+                "assigning feedback tasks ");
         missingTaskAssigned = true;
     }
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/researchreport/DummyResearchReportManagement.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/researchreport/DummyResearchReportManagement.java
index 7f7c0967..b383fe36 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/researchreport/DummyResearchReportManagement.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/researchreport/DummyResearchReportManagement.java
@@ -4,6 +4,8 @@ import uk.co.jemos.podam.api.PodamFactory;
 import uk.co.jemos.podam.api.PodamFactoryImpl;
 import unipotsdam.gf.core.management.project.Project;
 import unipotsdam.gf.core.management.user.User;
+import unipotsdam.gf.assignments.Assignee;
+import unipotsdam.gf.assignments.NotImplementedLogger;
 import unipotsdam.gf.interfaces.Feedback;
 
 import javax.inject.Inject;
@@ -37,24 +39,27 @@ public class DummyResearchReportManagement implements ResearchReportManagement {
     }
 
     @Override
-    public boolean updateResearchReport(ResearchReport researchReport) {
+    public boolean updateResearchReport(ResearchReport researchReport)  {
+        NotImplementedLogger.logAssignment(Assignee.QUARK, ResearchReportManagement.class, null, "updateResearchReport");
         return false;
     }
 
     @Override
-    public boolean deleteReport(ResearchReport researchReport) {
+    public boolean deleteReport(ResearchReport researchReport)  {
+        NotImplementedLogger.logAssignment(Assignee.QUARK, ResearchReportManagement.class);
         return false;
     }
 
     @Override
     public File getResearchReport(ResearchReport researchReport) {
+        NotImplementedLogger.logAssignment(Assignee.QUARK, ResearchReportManagement.class);
         return null;
     }
 
     @Override
     public void createFinalResearchReport(
             ResearchReport researchReport, Project project, User student) {
-
+        NotImplementedLogger.logAssignment(Assignee.QUARK, ResearchReportManagement.class);
     }
 
     @Override
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/researchreport/ResearchReportManagement.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/researchreport/ResearchReportManagement.java
index edcce596..c2226c52 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/researchreport/ResearchReportManagement.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/researchreport/ResearchReportManagement.java
@@ -2,6 +2,7 @@ package unipotsdam.gf.modules.researchreport;
 
 import unipotsdam.gf.core.management.project.Project;
 import unipotsdam.gf.core.management.user.User;
+import unipotsdam.gf.assignments.NotImplementedLogger;
 import unipotsdam.gf.interfaces.Feedback;
 
 import java.io.File;
@@ -31,14 +32,14 @@ public interface ResearchReportManagement {
      * @param researchReport Name of the Report
      * @return Returns if the report is updated
      */
-    boolean updateResearchReport(ResearchReport researchReport);
+    boolean updateResearchReport(ResearchReport researchReport) ;
 
     /**
      * Delete a File
      *
      * @param researchReport Name of the Report
      */
-    boolean deleteReport(ResearchReport researchReport);
+    boolean deleteReport(ResearchReport researchReport) ;
 
 
     /**
@@ -46,7 +47,7 @@ public interface ResearchReportManagement {
      * @param researchReport Name of the Report
      * @return Returns the Report
      */
-    File getResearchReport(ResearchReport researchReport);
+    File getResearchReport(ResearchReport researchReport) ;
 
 
     /**
@@ -57,7 +58,8 @@ public interface ResearchReportManagement {
      * @param project
      * @param student
      */
-    void createFinalResearchReport(ResearchReport researchReport, Project project, User student);
+    void createFinalResearchReport(ResearchReport researchReport, Project project, User student)
+            ;
 
     /**
      * the dependency to feedback should be settable externally for test reasons
-- 
GitLab