From 2f77a80e6483d9ef657cbfb88a4cdf67f0ac854e Mon Sep 17 00:00:00 2001
From: Paul-Christian Volkmer <paul-christian.volkmer@mni.thm.de>
Date: Tue, 19 Feb 2013 17:22:25 +0100
Subject: [PATCH] Some refacs to session and course handling

---
 src/main/java/de/thm/arsnova/dao/CouchDBDao.java      | 11 -----------
 src/main/java/de/thm/arsnova/dao/IDatabaseDao.java    |  4 ----
 src/main/java/de/thm/arsnova/entities/Session.java    |  4 ++++
 .../java/de/thm/arsnova/services/SessionService.java  |  4 ++--
 src/test/java/de/thm/arsnova/dao/StubDatabaseDao.java | 10 ----------
 5 files changed, 6 insertions(+), 27 deletions(-)

diff --git a/src/main/java/de/thm/arsnova/dao/CouchDBDao.java b/src/main/java/de/thm/arsnova/dao/CouchDBDao.java
index bad940de..d1496a0b 100644
--- a/src/main/java/de/thm/arsnova/dao/CouchDBDao.java
+++ b/src/main/java/de/thm/arsnova/dao/CouchDBDao.java
@@ -1355,17 +1355,6 @@ public class CouchDBDao implements IDatabaseDao {
 		}
 	}
 	
-	@Override
-	public String getCourseId(String keyword) {
-		return this.getSession(keyword).getCourseId();
-	}
-	
-	@Override
-	public boolean isCourseSession(String keyword) {
-		return (this.getSession(keyword).getCourseId() != null) &&
-				(this.getSession(keyword).getCourseType() != null);
-	}
-	
 	@Override
 	public List<Session> getCourseSessions(List<Course> courses) {
 		ExtendedView view = new ExtendedView("logged_in/available_moodlesessions");
diff --git a/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java b/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java
index b4201ee2..1968ce84 100644
--- a/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java
+++ b/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java
@@ -130,9 +130,5 @@ public interface IDatabaseDao {
 
 	void deleteInterposedQuestion(InterposedQuestion question);
 
-	String getCourseId(String keyword);
-
-	boolean isCourseSession(String keyword);
-
 	List<Session> getCourseSessions(List<Course> courses);
 }
diff --git a/src/main/java/de/thm/arsnova/entities/Session.java b/src/main/java/de/thm/arsnova/entities/Session.java
index 5eece57b..0ed48230 100644
--- a/src/main/java/de/thm/arsnova/entities/Session.java
+++ b/src/main/java/de/thm/arsnova/entities/Session.java
@@ -124,4 +124,8 @@ public class Session {
 	public void setCourseId(String courseId) {
 		this.courseId = courseId;
 	}
+
+	public boolean isCourseSession() {
+		return (this.getCourseId() != null) && (!this.getCourseId().isEmpty());
+	}
 }
diff --git a/src/main/java/de/thm/arsnova/services/SessionService.java b/src/main/java/de/thm/arsnova/services/SessionService.java
index 7a1b6538..39525032 100644
--- a/src/main/java/de/thm/arsnova/services/SessionService.java
+++ b/src/main/java/de/thm/arsnova/services/SessionService.java
@@ -58,8 +58,8 @@ public class SessionService implements ISessionService {
 	public final Session joinSession(final String keyword) {
 		Session session = databaseDao.getSession(keyword);
 		
-		if (connectorClient != null && databaseDao.isCourseSession(keyword)) {
-			String courseid = databaseDao.getCourseId(keyword);
+		if (connectorClient != null && session.isCourseSession()) {
+			String courseid = session.getCourseId();
 			if (! connectorClient.getMembership(userService.getCurrentUser().getUsername(), courseid).isMember()) {
 				throw new ForbiddenException();
 			}
diff --git a/src/test/java/de/thm/arsnova/dao/StubDatabaseDao.java b/src/test/java/de/thm/arsnova/dao/StubDatabaseDao.java
index 5e7f8648..be578dbe 100644
--- a/src/test/java/de/thm/arsnova/dao/StubDatabaseDao.java
+++ b/src/test/java/de/thm/arsnova/dao/StubDatabaseDao.java
@@ -393,11 +393,6 @@ public class StubDatabaseDao implements IDatabaseDao {
 		return null;
 	}
 
-	public String getCourseId(String keyword) {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
 	@Override
 	public Answer updateAnswer(Answer answer) {
 		// TODO Auto-generated method stub
@@ -420,11 +415,6 @@ public class StubDatabaseDao implements IDatabaseDao {
 		// TODO Auto-generated method stub
 	}
 	
-	public boolean isCourseSession(String keyword) {
-		// TODO Auto-generated method stub
-		return false;
-	}
-	
 	@Override
 	public List<Session> getCourseSessions(List<Course> courses) {
 		return null;
-- 
GitLab