From 82501e492743c7325c5e40e2e70d20a5ceab2b2a Mon Sep 17 00:00:00 2001 From: Paul-Christian Volkmer <paul-christian.volkmer@mni.thm.de> Date: Mon, 26 May 2014 09:04:01 +0200 Subject: [PATCH] Added DeprecatedApi annotation and replaced explicit response header --- .../AudienceQuestionController.java | 38 ++----- .../controller/FeedbackController.java | 38 +++---- .../LecturerQuestionController.java | 69 ++++------- .../arsnova/controller/LegacyController.java | 107 ++++++------------ .../arsnova/controller/SessionController.java | 17 +-- .../controller/StatisticsController.java | 18 ++- .../webapp/WEB-INF/spring/arsnova-servlet.xml | 1 + 7 files changed, 90 insertions(+), 198 deletions(-) diff --git a/src/main/java/de/thm/arsnova/controller/AudienceQuestionController.java b/src/main/java/de/thm/arsnova/controller/AudienceQuestionController.java index 89f8ee6c..3f42d627 100644 --- a/src/main/java/de/thm/arsnova/controller/AudienceQuestionController.java +++ b/src/main/java/de/thm/arsnova/controller/AudienceQuestionController.java @@ -20,8 +20,6 @@ package de.thm.arsnova.controller; import java.util.List; -import javax.servlet.http.HttpServletResponse; - import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -39,6 +37,7 @@ import de.thm.arsnova.entities.InterposedReadingCount; import de.thm.arsnova.exceptions.BadRequestException; import de.thm.arsnova.exceptions.PreconditionFailedException; import de.thm.arsnova.services.IQuestionService; +import de.thm.arsnova.web.DeprecatedApi; @RestController @RequestMapping("/audiencequestion") @@ -50,38 +49,24 @@ public class AudienceQuestionController extends AbstractController { private IQuestionService questionService; @RequestMapping(value = "/count", method = RequestMethod.GET) - public final int getInterposedCount( - @RequestParam final String sessionkey, - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); - + @DeprecatedApi + public final int getInterposedCount(@RequestParam final String sessionkey) { return questionService.getInterposedCount(sessionkey); } @RequestMapping(value = "/readcount", method = RequestMethod.GET) - public final InterposedReadingCount getUnreadInterposedCount( - @RequestParam("sessionkey") final String sessionkey, - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); - + @DeprecatedApi + public final InterposedReadingCount getUnreadInterposedCount(@RequestParam("sessionkey") final String sessionkey) { return questionService.getInterposedReadingCount(sessionkey); } @RequestMapping(value = "/", method = RequestMethod.GET) - public final List<InterposedQuestion> getInterposedQuestions( - @RequestParam final String sessionkey, - final HttpServletResponse response - ) { + public final List<InterposedQuestion> getInterposedQuestions(@RequestParam final String sessionkey) { return questionService.getInterposedQuestions(sessionkey); } @RequestMapping(value = "/{questionId}", method = RequestMethod.GET) - public final InterposedQuestion getInterposedQuestion( - @PathVariable final String questionId, - final HttpServletResponse response - ) { + public final InterposedQuestion getInterposedQuestion(@PathVariable final String questionId) { return questionService.readInterposedQuestion(questionId); } @@ -89,8 +74,7 @@ public class AudienceQuestionController extends AbstractController { @ResponseStatus(HttpStatus.CREATED) public final void postInterposedQuestion( @RequestParam final String sessionkey, - @RequestBody final InterposedQuestion question, - final HttpServletResponse response + @RequestBody final InterposedQuestion question ) { if (!sessionkey.equals(question.getSessionId())) { throw new PreconditionFailedException(); @@ -104,11 +88,7 @@ public class AudienceQuestionController extends AbstractController { } @RequestMapping(value = "/{questionId}", method = RequestMethod.DELETE) - public final void deleteInterposedQuestion( - @PathVariable final String questionId, - final HttpServletResponse response - ) { + public final void deleteInterposedQuestion(@PathVariable final String questionId) { questionService.deleteInterposedQuestion(questionId); } - } diff --git a/src/main/java/de/thm/arsnova/controller/FeedbackController.java b/src/main/java/de/thm/arsnova/controller/FeedbackController.java index e1e8b29d..74cc2f7d 100644 --- a/src/main/java/de/thm/arsnova/controller/FeedbackController.java +++ b/src/main/java/de/thm/arsnova/controller/FeedbackController.java @@ -18,8 +18,6 @@ */ package de.thm.arsnova.controller; -import javax.servlet.http.HttpServletResponse; - import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -36,6 +34,7 @@ import de.thm.arsnova.entities.User; import de.thm.arsnova.exceptions.NotFoundException; import de.thm.arsnova.services.IFeedbackService; import de.thm.arsnova.services.IUserService; +import de.thm.arsnova.web.DeprecatedApi; @RestController public class FeedbackController extends AbstractController { @@ -48,58 +47,47 @@ public class FeedbackController extends AbstractController { @Autowired private IUserService userService; + @DeprecatedApi @RequestMapping(value = "/session/{sessionkey}/feedback", method = RequestMethod.GET) - public final Feedback getFeedback(@PathVariable final String sessionkey, final HttpServletResponse response) { - response.addHeader(X_DEPRECATED_API, "1"); - + public final Feedback getFeedback(@PathVariable final String sessionkey) { return feedbackService.getFeedback(sessionkey); } + @DeprecatedApi @RequestMapping(value = "/session/{sessionkey}/myfeedback", method = RequestMethod.GET) - public final Integer getMyFeedback(@PathVariable final String sessionkey, final HttpServletResponse response) { + public final Integer getMyFeedback(@PathVariable final String sessionkey) { Integer value = feedbackService.getMyFeedback(sessionkey, userService.getCurrentUser()); - - response.addHeader(X_DEPRECATED_API, "1"); - if (value != null && value >= Feedback.MIN_FEEDBACK_TYPE && value <= Feedback.MAX_FEEDBACK_TYPE) { return value; } throw new NotFoundException(); } + @DeprecatedApi @RequestMapping(value = "/session/{sessionkey}/feedbackcount", method = RequestMethod.GET) - public final int getFeedbackCount(@PathVariable final String sessionkey, final HttpServletResponse response) { - response.addHeader(X_DEPRECATED_API, "1"); - + public final int getFeedbackCount(@PathVariable final String sessionkey) { return feedbackService.getFeedbackCount(sessionkey); } + @DeprecatedApi @RequestMapping(value = "/session/{sessionkey}/roundedaveragefeedback", method = RequestMethod.GET) - public final long getAverageFeedbackRounded( - @PathVariable final String sessionkey, - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); - + public final long getAverageFeedbackRounded(@PathVariable final String sessionkey) { return feedbackService.getAverageFeedbackRounded(sessionkey); } + @DeprecatedApi @RequestMapping(value = "/session/{sessionkey}/averagefeedback", method = RequestMethod.GET) - public final double getAverageFeedback(@PathVariable final String sessionkey, final HttpServletResponse response) { - response.addHeader(X_DEPRECATED_API, "1"); - + public final double getAverageFeedback(@PathVariable final String sessionkey) { return feedbackService.getAverageFeedback(sessionkey); } + @DeprecatedApi @RequestMapping(value = "/session/{sessionkey}/feedback", method = RequestMethod.POST) @ResponseStatus(HttpStatus.CREATED) public final Feedback postFeedback( @PathVariable final String sessionkey, - @RequestBody final int value, - final HttpServletResponse response + @RequestBody final int value ) { - response.addHeader(X_DEPRECATED_API, "1"); - User user = userService.getCurrentUser(); if (feedbackService.saveFeedback(sessionkey, value, user)) { Feedback feedback = feedbackService.getFeedback(sessionkey); diff --git a/src/main/java/de/thm/arsnova/controller/LecturerQuestionController.java b/src/main/java/de/thm/arsnova/controller/LecturerQuestionController.java index ce5f97ca..ec70bfd4 100644 --- a/src/main/java/de/thm/arsnova/controller/LecturerQuestionController.java +++ b/src/main/java/de/thm/arsnova/controller/LecturerQuestionController.java @@ -42,6 +42,7 @@ import de.thm.arsnova.exceptions.ForbiddenException; import de.thm.arsnova.exceptions.NoContentException; import de.thm.arsnova.exceptions.NotFoundException; import de.thm.arsnova.services.IQuestionService; +import de.thm.arsnova.web.DeprecatedApi; @RestController @RequestMapping("/lecturerquestion") @@ -53,10 +54,7 @@ public class LecturerQuestionController extends AbstractController { private IQuestionService questionService; @RequestMapping(value = "/{questionId}", method = RequestMethod.GET) - public final Question getQuestion( - @PathVariable final String questionId, - final HttpServletResponse response - ) { + public final Question getQuestion(@PathVariable final String questionId) { Question question = questionService.getQuestion(questionId); if (question != null) { return question; @@ -67,7 +65,7 @@ public class LecturerQuestionController extends AbstractController { @RequestMapping(value = "/", method = RequestMethod.POST) @ResponseStatus(HttpStatus.CREATED) - public final Question postQuestion(@RequestBody final Question question, final HttpServletResponse response) { + public final Question postQuestion(@RequestBody final Question question) { if (questionService.saveQuestion(question) != null) { return question; } @@ -77,8 +75,7 @@ public class LecturerQuestionController extends AbstractController { @RequestMapping(value = "/{questionId}", method = RequestMethod.PUT) public final Question updateQuestion( @PathVariable final String questionId, - @RequestBody final Question question, - final HttpServletResponse response + @RequestBody final Question question ) { try { return this.questionService.update(question); @@ -90,8 +87,7 @@ public class LecturerQuestionController extends AbstractController { public final void publishQuestion( @PathVariable final String questionId, @RequestParam(required = false) final Boolean publish, - @RequestBody final Question question, - final HttpServletResponse response + @RequestBody final Question question ) { if (publish != null) { question.setActive(publish); @@ -102,8 +98,7 @@ public class LecturerQuestionController extends AbstractController { @RequestMapping(value = "/publish", method = RequestMethod.POST) public final void publishAllQuestions( @RequestParam final String sessionkey, - @RequestParam(required = false) final Boolean publish, - final HttpServletResponse response + @RequestParam(required = false) final Boolean publish ) { boolean p = true; if (publish != null) { @@ -116,8 +111,7 @@ public class LecturerQuestionController extends AbstractController { public final void publishStatistics( @PathVariable final String questionId, @RequestParam(required = false) final Boolean showStatistics, - @RequestBody final Question question, - final HttpServletResponse response + @RequestBody final Question question ) { if (showStatistics != null) { question.setShowStatistic(showStatistics); @@ -129,8 +123,7 @@ public class LecturerQuestionController extends AbstractController { public final void publishCorrectAnswer( @PathVariable final String questionId, @RequestParam(required = false) final Boolean showCorrectAnswer, - @RequestBody final Question question, - final HttpServletResponse response + @RequestBody final Question question ) { if (showCorrectAnswer != null) { question.setShowAnswer(showCorrectAnswer); @@ -182,15 +175,14 @@ public class LecturerQuestionController extends AbstractController { } } + @DeprecatedApi @RequestMapping(value = "/count", method = RequestMethod.GET) public final int getSkillQuestionCount( @RequestParam final String sessionkey, @RequestParam(value = "lecturequestionsonly", defaultValue = "false") final boolean lectureQuestionsOnly, @RequestParam(value = "flashcardsonly", defaultValue = "false") final boolean flashcardsOnly, - @RequestParam(value = "preparationquestionsonly", defaultValue = "false") final boolean preparationQuestionsOnly, - final HttpServletResponse response) { - response.addHeader(X_DEPRECATED_API, "1"); - + @RequestParam(value = "preparationquestionsonly", defaultValue = "false") final boolean preparationQuestionsOnly + ) { if (lectureQuestionsOnly) { return questionService.getLectureQuestionCount(sessionkey); } else if (flashcardsOnly) { @@ -204,18 +196,17 @@ public class LecturerQuestionController extends AbstractController { @RequestMapping(value = "/{questionId}", method = RequestMethod.DELETE) public final void deleteAnswersAndQuestion( - @PathVariable final String questionId, - final HttpServletResponse response + @PathVariable final String questionId ) { questionService.deleteQuestion(questionId); } + @DeprecatedApi @RequestMapping(value = "/unanswered", method = RequestMethod.GET) public final List<String> getUnAnsweredSkillQuestionIds( @RequestParam final String sessionkey, @RequestParam(value = "lecturequestionsonly", defaultValue = "false") final boolean lectureQuestionsOnly, - @RequestParam(value = "preparationquestionsonly", defaultValue = "false") final boolean preparationQuestionsOnly, - final HttpServletResponse response + @RequestParam(value = "preparationquestionsonly", defaultValue = "false") final boolean preparationQuestionsOnly ) { List<String> answers; if (lectureQuestionsOnly) { @@ -228,7 +219,6 @@ public class LecturerQuestionController extends AbstractController { if (answers == null || answers.isEmpty()) { throw new NoContentException(); } - response.addHeader(X_DEPRECATED_API, "1"); return answers; } @@ -248,6 +238,7 @@ public class LecturerQuestionController extends AbstractController { * @throws ForbiddenException * if not logged in */ + @DeprecatedApi @RequestMapping(value = "/{questionId}/myanswer", method = RequestMethod.GET) public final Answer getMyAnswer( @PathVariable final String questionId, @@ -259,8 +250,6 @@ public class LecturerQuestionController extends AbstractController { return null; } - response.addHeader(X_DEPRECATED_API, "1"); - return answer; } @@ -361,43 +350,30 @@ public class LecturerQuestionController extends AbstractController { * @throws ForbiddenException * if not logged in */ + @DeprecatedApi @RequestMapping(value = "/{questionId}/answercount", method = RequestMethod.GET) - public final int getAnswerCount( - @PathVariable final String questionId, - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); - + public final int getAnswerCount(@PathVariable final String questionId) { return questionService.getAnswerCount(questionId); } @RequestMapping(value = "/{questionId}/freetextanswer/", method = RequestMethod.GET) - public final List<Answer> getFreetextAnswers( - @PathVariable final String questionId, - final HttpServletResponse response - ) { + public final List<Answer> getFreetextAnswers(@PathVariable final String questionId) { return questionService.getFreetextAnswers(questionId); } + @DeprecatedApi @RequestMapping(value = "/myanswers", method = RequestMethod.GET) - public final List<Answer> getMyAnswers( - @RequestParam final String sessionkey, - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); - + public final List<Answer> getMyAnswers(@RequestParam final String sessionkey) { return questionService.getMyAnswers(sessionkey); } + @DeprecatedApi @RequestMapping(value = "/answercount", method = RequestMethod.GET) public final int getTotalAnswerCount( @RequestParam final String sessionkey, @RequestParam(value = "lecturequestionsonly", defaultValue = "false") final boolean lectureQuestionsOnly, - @RequestParam(value = "preparationquestionsonly", defaultValue = "false") final boolean preparationQuestionsOnly, - final HttpServletResponse response + @RequestParam(value = "preparationquestionsonly", defaultValue = "false") final boolean preparationQuestionsOnly ) { - response.addHeader(X_DEPRECATED_API, "1"); - if (lectureQuestionsOnly) { return questionService.countLectureQuestionAnswers(sessionkey); } else if (preparationQuestionsOnly) { @@ -406,5 +382,4 @@ public class LecturerQuestionController extends AbstractController { return questionService.getTotalAnswerCount(sessionkey); } } - } diff --git a/src/main/java/de/thm/arsnova/controller/LegacyController.java b/src/main/java/de/thm/arsnova/controller/LegacyController.java index acd93535..d0a724d2 100644 --- a/src/main/java/de/thm/arsnova/controller/LegacyController.java +++ b/src/main/java/de/thm/arsnova/controller/LegacyController.java @@ -18,8 +18,6 @@ */ package de.thm.arsnova.controller; -import javax.servlet.http.HttpServletResponse; - import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -30,6 +28,7 @@ import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.ResponseBody; import de.thm.arsnova.services.IQuestionService; +import de.thm.arsnova.web.DeprecatedApi; @Controller public class LegacyController extends AbstractController { @@ -41,158 +40,118 @@ public class LegacyController extends AbstractController { /* specific routes */ + @DeprecatedApi @RequestMapping(value = "/session/mysessions", method = RequestMethod.GET) - public final String redirectSessionMy( - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); - + public final String redirectSessionMy() { return "forward:/session/?ownedonly=true"; } + @DeprecatedApi @RequestMapping(value = "/session/visitedsessions", method = RequestMethod.GET) - public final String redirectSessionVisited( - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); - + public final String redirectSessionVisited() { return "forward:/session/?visitedonly=true"; } + @DeprecatedApi @RequestMapping(value = "/session/{sessionKey}/question") - public final String redirectQuestionByLecturer( - @PathVariable final String sessionKey, - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); + public final String redirectQuestionByLecturer(@PathVariable final String sessionKey) { return String.format("forward:/lecturerquestion/?sessionkey=%s", sessionKey); } + @DeprecatedApi @RequestMapping(value = "/session/{sessionKey}/skillquestions", method = RequestMethod.GET) - public final String redirectQuestionByLecturerList( - @PathVariable final String sessionKey, - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); + public final String redirectQuestionByLecturerList(@PathVariable final String sessionKey) { return String.format("forward:/lecturerquestion/?sessionkey=%s", sessionKey); } + @DeprecatedApi @RequestMapping(value = "/session/{sessionKey}/skillquestioncount", method = RequestMethod.GET) - public final String redirectQuestionByLecturerCount( - @PathVariable final String sessionKey, - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); + public final String redirectQuestionByLecturerCount(@PathVariable final String sessionKey) { return String.format("forward:/lecturerquestion/count?sessionkey=%s", sessionKey); } + @DeprecatedApi @RequestMapping(value = "/session/{sessionKey}/answercount", method = RequestMethod.GET) - public final String redirectQuestionByLecturerAnswerCount( - @PathVariable final String sessionKey, - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); + public final String redirectQuestionByLecturerAnswerCount(@PathVariable final String sessionKey) { return String.format("forward:/lecturerquestion/answercount?sessionkey=%s", sessionKey); } + @DeprecatedApi @RequestMapping(value = "/session/{sessionKey}/unanswered", method = RequestMethod.GET) - public final String redirectQuestionByLecturerUnnsweredCount( - @PathVariable final String sessionKey, - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); + public final String redirectQuestionByLecturerUnnsweredCount(@PathVariable final String sessionKey) { return String.format("forward:/lecturerquestion/answercount?sessionkey=%s", sessionKey); } + @DeprecatedApi @RequestMapping(value = "/session/{sessionKey}/myanswers", method = RequestMethod.GET) - public final String redirectQuestionByLecturerMyAnswers( - @PathVariable final String sessionKey, - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); + public final String redirectQuestionByLecturerMyAnswers(@PathVariable final String sessionKey) { return String.format("forward:/lecturerquestion/myanswers?sessionkey=%s", sessionKey); } + @DeprecatedApi @RequestMapping(value = "/session/{sessionKey}/interposed") - public final String redirectQuestionByAudience( - @PathVariable final String sessionKey, - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); + public final String redirectQuestionByAudience(@PathVariable final String sessionKey) { return String.format("forward:/audiencequestion/?sessionkey=%s", sessionKey); } + @DeprecatedApi @RequestMapping(value = "/session/{sessionKey}/interposed", method = RequestMethod.DELETE) @ResponseBody - public final void deleteAllInterposedQuestions( - @PathVariable final String sessionKey, - final HttpServletResponse response - ) { + public final void deleteAllInterposedQuestions(@PathVariable final String sessionKey) { questionService.deleteAllInterposedQuestions(sessionKey); } + @DeprecatedApi @RequestMapping(value = "/session/{sessionKey}/interposedcount", method = RequestMethod.GET) - public final String redirectQuestionByAudienceCount( - @PathVariable final String sessionKey, - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); + public final String redirectQuestionByAudienceCount(@PathVariable final String sessionKey) { return String.format("forward:/audiencequestion/count?sessionkey=%s", sessionKey); } + @DeprecatedApi @RequestMapping(value = "/session/{sessionKey}/interposedreadingcount", method = RequestMethod.GET) - public final String redirectQuestionByAudienceReadCount( - @PathVariable final String sessionKey, - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); + public final String redirectQuestionByAudienceReadCount(@PathVariable final String sessionKey) { return String.format("forward:/audiencequestion/readcount?sessionkey=%s", sessionKey); } /* generalized routes */ + @DeprecatedApi @RequestMapping(value = { "/session/{sessionKey}/question/{arg1}", "/session/{sessionKey}/questions/{arg1}" }) public final String redirectQuestionByLecturerWithOneArgument( @PathVariable final String sessionKey, - @PathVariable final String arg1, - final HttpServletResponse response + @PathVariable final String arg1 ) { - response.addHeader(X_DEPRECATED_API, "1"); return String.format("forward:/lecturerquestion/%s/?sessionkey=%s", arg1, sessionKey); } + @DeprecatedApi @RequestMapping( value = { "/session/{sessionKey}/question/{arg1}/{arg2}", "/session/{sessionKey}/questions/{arg1}/{arg2}" } ) public final String redirectQuestionByLecturerWithTwoArguments( @PathVariable final String sessionKey, @PathVariable final String arg1, - @PathVariable final String arg2, - final HttpServletResponse response + @PathVariable final String arg2 ) { - response.addHeader(X_DEPRECATED_API, "1"); return String.format("forward:/lecturerquestion/%s/%s/?sessionkey=%s", arg1, arg2, sessionKey); } + @DeprecatedApi @RequestMapping(value = "/session/{sessionKey}/interposed/{arg1}") public final String redirectQuestionByAudienceWithOneArgument( @PathVariable final String sessionKey, - @PathVariable final String arg1, - final HttpServletResponse response + @PathVariable final String arg1 ) { - response.addHeader(X_DEPRECATED_API, "1"); return String.format("forward:/audiencequestion/%s/?sessionkey=%s", arg1, sessionKey); } + @DeprecatedApi @RequestMapping(value = "/session/{sessionKey}/interposed/{arg1}/{arg2}") public final String redirectQuestionByAudienceWithTwoArguments( @PathVariable final String sessionKey, @PathVariable final String arg1, - @PathVariable final String arg2, - final HttpServletResponse response + @PathVariable final String arg2 ) { - response.addHeader(X_DEPRECATED_API, "1"); return String.format("forward:/audiencequestion/%s/%s/?sessionkey=%s", arg1, arg2, sessionKey); } - } diff --git a/src/main/java/de/thm/arsnova/controller/SessionController.java b/src/main/java/de/thm/arsnova/controller/SessionController.java index 47da7bbb..6a0120a4 100644 --- a/src/main/java/de/thm/arsnova/controller/SessionController.java +++ b/src/main/java/de/thm/arsnova/controller/SessionController.java @@ -44,6 +44,7 @@ import de.thm.arsnova.services.ISessionService; import de.thm.arsnova.services.IUserService; import de.thm.arsnova.services.SessionService.SessionNameComperator; import de.thm.arsnova.services.SessionService.SessionShortNameComperator; +import de.thm.arsnova.web.DeprecatedApi; @RestController @RequestMapping("/session") @@ -68,14 +69,10 @@ public class SessionController extends AbstractController { sessionService.deleteSession(sessionkey, user); } + @DeprecatedApi @RequestMapping(value = "/{sessionkey}/online", method = RequestMethod.POST) @ResponseStatus(HttpStatus.CREATED) - public final LoggedIn registerAsOnlineUser( - @PathVariable final String sessionkey, - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); - + public final LoggedIn registerAsOnlineUser(@PathVariable final String sessionkey) { User user = userService.getCurrentUser(); LoggedIn loggedIn = sessionService.registerAsOnlineUser(user, sessionkey); if (loggedIn != null) { @@ -85,13 +82,9 @@ public class SessionController extends AbstractController { throw new RuntimeException(); } + @DeprecatedApi @RequestMapping(value = "/{sessionkey}/activeusercount", method = RequestMethod.GET) - public final int countActiveUsers( - @PathVariable final String sessionkey, - final HttpServletResponse response - ) { - response.addHeader(X_DEPRECATED_API, "1"); - + public final int countActiveUsers(@PathVariable final String sessionkey) { return userService.getUsersInSessionCount(sessionkey); } diff --git a/src/main/java/de/thm/arsnova/controller/StatisticsController.java b/src/main/java/de/thm/arsnova/controller/StatisticsController.java index 3da74456..9a584b06 100644 --- a/src/main/java/de/thm/arsnova/controller/StatisticsController.java +++ b/src/main/java/de/thm/arsnova/controller/StatisticsController.java @@ -2,8 +2,6 @@ package de.thm.arsnova.controller; import java.util.concurrent.Callable; -import javax.servlet.http.HttpServletResponse; - import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @@ -12,6 +10,7 @@ import org.springframework.web.bind.annotation.RestController; import de.thm.arsnova.entities.Statistics; import de.thm.arsnova.services.IStatisticsService; import de.thm.arsnova.web.CacheControl; +import de.thm.arsnova.web.DeprecatedApi; @RestController public class StatisticsController extends AbstractController { @@ -36,24 +35,21 @@ public class StatisticsController extends AbstractController { }; } + @DeprecatedApi @RequestMapping(method = RequestMethod.GET, value = "/statistics/activeusercount", produces = "text/plain") - public final String countActiveUsers(HttpServletResponse response) { - response.addHeader(X_DEPRECATED_API, "1"); - + public final String countActiveUsers() { return Integer.toString(statisticsService.countActiveUsers()); } + @DeprecatedApi @RequestMapping(method = RequestMethod.GET, value = "/statistics/loggedinusercount", produces = "text/plain") - public final String countLoggedInUsers(HttpServletResponse response) { - response.addHeader(X_DEPRECATED_API, "1"); - + public final String countLoggedInUsers() { return Integer.toString(statisticsService.countLoggedInUsers()); } + @DeprecatedApi @RequestMapping(method = RequestMethod.GET, value = "/statistics/sessioncount", produces = "text/plain") - public final String countSessions(HttpServletResponse response) { - response.addHeader(X_DEPRECATED_API, "1"); - + public final String countSessions() { return Integer.toString(statisticsService.getStatistics().getOpenSessions() + statisticsService.getStatistics().getClosedSessions()); } diff --git a/src/main/webapp/WEB-INF/spring/arsnova-servlet.xml b/src/main/webapp/WEB-INF/spring/arsnova-servlet.xml index 38376efa..586f28e3 100644 --- a/src/main/webapp/WEB-INF/spring/arsnova-servlet.xml +++ b/src/main/webapp/WEB-INF/spring/arsnova-servlet.xml @@ -15,6 +15,7 @@ <mvc:interceptors> <bean class="de.thm.arsnova.web.CacheControlInterceptorHandler" /> + <bean class="de.thm.arsnova.web.DeprecatedApiInterceptorHandler" /> </mvc:interceptors> <bean id="contentNegotiationManager" -- GitLab