From 56804c90b06ee750ae983300af4d569401180c8a Mon Sep 17 00:00:00 2001
From: Christoph Thelen <christoph.thelen@mni.thm.de>
Date: Wed, 29 Oct 2014 13:33:52 +0100
Subject: [PATCH] Do not include connector data in 'my sessions' list

---
 .../java/de/thm/arsnova/dao/CouchDBDao.java   |  6 ---
 .../java/de/thm/arsnova/dao/IDatabaseDao.java |  2 -
 .../thm/arsnova/services/SessionService.java  | 37 ++-----------------
 .../de/thm/arsnova/dao/StubDatabaseDao.java   |  6 ---
 4 files changed, 4 insertions(+), 47 deletions(-)

diff --git a/src/main/java/de/thm/arsnova/dao/CouchDBDao.java b/src/main/java/de/thm/arsnova/dao/CouchDBDao.java
index d6056693..cf546a3e 100644
--- a/src/main/java/de/thm/arsnova/dao/CouchDBDao.java
+++ b/src/main/java/de/thm/arsnova/dao/CouchDBDao.java
@@ -1139,12 +1139,6 @@ public class CouchDBDao implements IDatabaseDao {
 		return result;
 	}
 
-	@Override
-	public List<SessionInfo> getCourseSessionsInfo(final List<Course> courses) {
-		List<Session> sessions = this.getCourseSessions(courses);
-		return getInfosForSessions(sessions);
-	}
-
 	private static class ExtendedView extends NovaView {
 
 		public ExtendedView(final String fullname) {
diff --git a/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java b/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java
index 7ae33cbc..37e1a211 100644
--- a/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java
+++ b/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java
@@ -172,7 +172,5 @@ public interface IDatabaseDao {
 
 	List<SessionInfo> getMySessionsInfo(User user);
 
-	List<SessionInfo> getCourseSessionsInfo(List<Course> myCourses);
-
 	List<SessionInfo> getMyVisitedSessionsInfo(User currentUser);
 }
diff --git a/src/main/java/de/thm/arsnova/services/SessionService.java b/src/main/java/de/thm/arsnova/services/SessionService.java
index 22a42547..98f88e1f 100644
--- a/src/main/java/de/thm/arsnova/services/SessionService.java
+++ b/src/main/java/de/thm/arsnova/services/SessionService.java
@@ -24,8 +24,10 @@ import java.util.AbstractMap.SimpleEntry;
 import java.util.ArrayList;
 import java.util.Comparator;
 import java.util.HashMap;
+import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 import java.util.UUID;
 
 import org.springframework.beans.factory.annotation.Autowired;
@@ -159,45 +161,14 @@ public class SessionService implements ISessionService {
 	@Override
 	@PreAuthorize("isAuthenticated()")
 	public final List<Session> getMySessions() {
-		final List<Session> mySessions = databaseDao.getMySessions(userService.getCurrentUser());
-		if (connectorClient == null) {
-			return mySessions;
-		}
-
-		final List<Session> courseSessions = databaseDao.getCourseSessions(
-				connectorClient.getCourses(userService.getCurrentUser().getUsername()).getCourse()
-				);
-
-		return combineSessions(mySessions, courseSessions);
-	}
-
-	private List<Session> combineSessions(final List<Session> mySessions,
-			final List<Session> courseSessions) {
-		final Map<String, Session> allAvailableSessions = new HashMap<String, Session>();
-
-		for (final Session session : mySessions) {
-			allAvailableSessions.put(session.get_id(), session);
-		}
-		for (final Session session : courseSessions) {
-			allAvailableSessions.put(session.get_id(), session);
-		}
-		return new ArrayList<Session>(allAvailableSessions.values());
+		return databaseDao.getMySessions(userService.getCurrentUser());
 	}
 
 	@Override
 	@PreAuthorize("isAuthenticated()")
 	public final List<SessionInfo> getMySessionsInfo() {
 		final User user = userService.getCurrentUser();
-		final List<SessionInfo> mySessions = databaseDao.getMySessionsInfo(user);
-		if (connectorClient == null) {
-			return mySessions;
-		}
-
-		final List<Course> myCourses = connectorClient.getCourses(user.getUsername()).getCourse();
-		final List<SessionInfo> courseSessions = databaseDao.getCourseSessionsInfo(myCourses);
-		// assume that my sessions and my course sessions are distinct
-		mySessions.addAll(courseSessions);
-		return mySessions;
+		return databaseDao.getMySessionsInfo(user);
 	}
 
 	@Override
diff --git a/src/test/java/de/thm/arsnova/dao/StubDatabaseDao.java b/src/test/java/de/thm/arsnova/dao/StubDatabaseDao.java
index b799f688..4a48df93 100644
--- a/src/test/java/de/thm/arsnova/dao/StubDatabaseDao.java
+++ b/src/test/java/de/thm/arsnova/dao/StubDatabaseDao.java
@@ -526,12 +526,6 @@ public class StubDatabaseDao implements IDatabaseDao {
 		return null;
 	}
 
-	@Override
-	public List<SessionInfo> getCourseSessionsInfo(List<Course> myCourses) {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
 	@Override
 	public List<SessionInfo> getMyVisitedSessionsInfo(User currentUser) {
 		// TODO Auto-generated method stub
-- 
GitLab