From 43cec5063d7a8ed12bae1ae6d932b78dd9ce6cca Mon Sep 17 00:00:00 2001 From: Paul-Christian Volkmer <paul-christian.volkmer@mni.thm.de> Date: Wed, 24 Oct 2012 12:41:15 +0200 Subject: [PATCH] Task #4048: Added resource "/session/{sessenkey}/feedback/count" --- .../de/thm/arsnova/controller/FeedbackController.java | 6 ++++++ .../java/de/thm/arsnova/controller/SessionController.java | 3 --- .../java/de/thm/arsnova/services/ISessionService.java | 1 + src/main/java/de/thm/arsnova/services/SessionService.java | 8 ++++++++ 4 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/main/java/de/thm/arsnova/controller/FeedbackController.java b/src/main/java/de/thm/arsnova/controller/FeedbackController.java index f816e93f4..677803281 100644 --- a/src/main/java/de/thm/arsnova/controller/FeedbackController.java +++ b/src/main/java/de/thm/arsnova/controller/FeedbackController.java @@ -57,6 +57,12 @@ public class FeedbackController extends AbstractController { return sessionService.getFeedback(sessionkey); } + @RequestMapping(value="/session/{sessionkey}/feedback/count", method=RequestMethod.GET) + @ResponseBody + public int getFeedbackCount(@PathVariable String sessionkey) { + return sessionService.getFeedbackCount(sessionkey); + } + @RequestMapping(value="/session/{sessionkey}/feedback", method=RequestMethod.POST) @ResponseBody public Feedback postFeedback(@PathVariable String sessionkey, @RequestBody int value, HttpServletResponse response) { diff --git a/src/main/java/de/thm/arsnova/controller/SessionController.java b/src/main/java/de/thm/arsnova/controller/SessionController.java index b4a71cf4e..8c7169405 100644 --- a/src/main/java/de/thm/arsnova/controller/SessionController.java +++ b/src/main/java/de/thm/arsnova/controller/SessionController.java @@ -34,11 +34,8 @@ import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; -import de.thm.arsnova.entities.Feedback; -import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.LoggedIn; import de.thm.arsnova.entities.Session; import de.thm.arsnova.entities.User; diff --git a/src/main/java/de/thm/arsnova/services/ISessionService.java b/src/main/java/de/thm/arsnova/services/ISessionService.java index e2f058b1e..cb50769c1 100644 --- a/src/main/java/de/thm/arsnova/services/ISessionService.java +++ b/src/main/java/de/thm/arsnova/services/ISessionService.java @@ -36,6 +36,7 @@ public interface ISessionService { public Session joinSession(String keyword); public Session saveSession(Session session); public Feedback getFeedback(String keyword); + public int getFeedbackCount(String keyword); public boolean saveFeedback(String keyword, int value, User user); public boolean sessionKeyAvailable(String keyword); public String generateKeyword(); diff --git a/src/main/java/de/thm/arsnova/services/SessionService.java b/src/main/java/de/thm/arsnova/services/SessionService.java index 2aae2b224..bf7e2475f 100644 --- a/src/main/java/de/thm/arsnova/services/SessionService.java +++ b/src/main/java/de/thm/arsnova/services/SessionService.java @@ -98,6 +98,14 @@ public class SessionService implements ISessionService { public Feedback getFeedback(String keyword) { return databaseDao.getFeedback(keyword); } + + @Override + @Authenticated + public int getFeedbackCount(String keyword) { + Feedback feedback = databaseDao.getFeedback(keyword); + List<Integer> values = feedback.getValues(); + return values.get(0) + values.get(1) + values.get(2) + values.get(3); + } @Override @Authenticated -- GitLab