diff --git a/src/main/java/de/thm/arsnova/CASLogoutSuccessHandler.java b/src/main/java/de/thm/arsnova/CASLogoutSuccessHandler.java index ad223ea279f8dcc5b97a0ef3633400bc51bfc2df..5d73848f3222c3a269aa1a2144420fe91e3f0f74 100644 --- a/src/main/java/de/thm/arsnova/CASLogoutSuccessHandler.java +++ b/src/main/java/de/thm/arsnova/CASLogoutSuccessHandler.java @@ -30,6 +30,9 @@ import org.springframework.security.web.DefaultRedirectStrategy; import org.springframework.security.web.RedirectStrategy; import org.springframework.security.web.authentication.logout.LogoutSuccessHandler; +/** + * This class gets called when a user has been successfully logged out from CAS. + */ public class CASLogoutSuccessHandler implements LogoutSuccessHandler { public static final Logger LOGGER = LoggerFactory.getLogger(CASLogoutSuccessHandler.class); diff --git a/src/main/java/de/thm/arsnova/CasUserDetailsService.java b/src/main/java/de/thm/arsnova/CasUserDetailsService.java index 66bf0eff76ce839352ad7c5e1ffd1bb0b39b8ec2..5998d96e82f257570c991e960675c6208c451625 100644 --- a/src/main/java/de/thm/arsnova/CasUserDetailsService.java +++ b/src/main/java/de/thm/arsnova/CasUserDetailsService.java @@ -28,6 +28,9 @@ import org.springframework.security.core.userdetails.User; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.stereotype.Service; +/** + * Class to load a user based on the results from CAS. + */ @Service public class CasUserDetailsService extends AbstractCasAssertionUserDetailsService { diff --git a/src/main/java/de/thm/arsnova/FeedbackStorage.java b/src/main/java/de/thm/arsnova/FeedbackStorage.java index 96636e8521df3cef50a0d60cc85a2e59e4bb1de0..07a203b4af61c69b497dadd970c27556acc9b507 100644 --- a/src/main/java/de/thm/arsnova/FeedbackStorage.java +++ b/src/main/java/de/thm/arsnova/FeedbackStorage.java @@ -32,6 +32,9 @@ import de.thm.arsnova.entities.Feedback; import de.thm.arsnova.entities.Session; import de.thm.arsnova.entities.User; +/** + * In-memory storage of feedback data. + */ public class FeedbackStorage { private static class FeedbackStorageObject { private final int value; diff --git a/src/main/java/de/thm/arsnova/LoginAuthenticationFailureHandler.java b/src/main/java/de/thm/arsnova/LoginAuthenticationFailureHandler.java index 18d2b1cfb7208159984cb4e8abb4f667f000d5bc..706fb388b72d5918c37672207ac9aa4ae505adbd 100644 --- a/src/main/java/de/thm/arsnova/LoginAuthenticationFailureHandler.java +++ b/src/main/java/de/thm/arsnova/LoginAuthenticationFailureHandler.java @@ -31,6 +31,10 @@ import org.springframework.security.web.DefaultRedirectStrategy; import org.springframework.security.web.RedirectStrategy; import org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler; + +/** + * This class gets called when a user failed to login. + */ public class LoginAuthenticationFailureHandler extends SimpleUrlAuthenticationFailureHandler { diff --git a/src/main/java/de/thm/arsnova/LoginAuthenticationSucessHandler.java b/src/main/java/de/thm/arsnova/LoginAuthenticationSucessHandler.java index fafaff40001c64989f6a323e346689246a6579f1..68ccd362dd0f707538f0332bbc2053cb4508db80 100644 --- a/src/main/java/de/thm/arsnova/LoginAuthenticationSucessHandler.java +++ b/src/main/java/de/thm/arsnova/LoginAuthenticationSucessHandler.java @@ -25,6 +25,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.security.web.authentication.SimpleUrlAuthenticationSuccessHandler; +/** + * This class gets called when a user successfully logged in. + */ public class LoginAuthenticationSucessHandler extends SimpleUrlAuthenticationSuccessHandler { diff --git a/src/main/java/de/thm/arsnova/aop/UserSessionAspect.java b/src/main/java/de/thm/arsnova/aop/UserSessionAspect.java index 202558acfbcaa0206f3e870bcac878cae3c8e239..ee9b6a90c88eeadd7322d7e7b41d4f46b41f6a4a 100644 --- a/src/main/java/de/thm/arsnova/aop/UserSessionAspect.java +++ b/src/main/java/de/thm/arsnova/aop/UserSessionAspect.java @@ -25,6 +25,10 @@ import org.springframework.beans.factory.annotation.Autowired; import de.thm.arsnova.entities.Session; import de.thm.arsnova.services.UserSessionService; +/** + * Assigns a session to the {@link de.thm.arsnova.services.UserSessionService} whenever a user joins a + * session. + */ @Aspect public class UserSessionAspect { diff --git a/src/main/java/de/thm/arsnova/aop/package-info.java b/src/main/java/de/thm/arsnova/aop/package-info.java index e23654023f09fb2f9c94ec2ea3d9c1ed16e21b9d..b39e67531f983fae4917abe2d58a45aba9db2494 100644 --- a/src/main/java/de/thm/arsnova/aop/package-info.java +++ b/src/main/java/de/thm/arsnova/aop/package-info.java @@ -1 +1,4 @@ +/** + * Classes and interfaces to support aspect-oriented programming + */ package de.thm.arsnova.aop; diff --git a/src/main/java/de/thm/arsnova/config/ExtraConfig.java b/src/main/java/de/thm/arsnova/config/ExtraConfig.java index f971a219a76f02030d1b4aa025b1d22dd222bd8a..c6966dc1f9a93650af922f06eb60280235a3f5b3 100644 --- a/src/main/java/de/thm/arsnova/config/ExtraConfig.java +++ b/src/main/java/de/thm/arsnova/config/ExtraConfig.java @@ -37,6 +37,9 @@ import de.thm.arsnova.socket.ARSnovaSocket; import de.thm.arsnova.socket.ARSnovaSocketIOServer; import de.thm.arsnova.ImageUtils; +/** + * Loads property file and configures non-security related beans and components. + */ @Configuration @EnableCaching public class ExtraConfig { diff --git a/src/main/java/de/thm/arsnova/config/SecurityConfig.java b/src/main/java/de/thm/arsnova/config/SecurityConfig.java index 76a5b047af7bd9615457edc40f32fc0860457224..c63911006a5466cfb9e1850e4601302075fc059b 100644 --- a/src/main/java/de/thm/arsnova/config/SecurityConfig.java +++ b/src/main/java/de/thm/arsnova/config/SecurityConfig.java @@ -80,6 +80,9 @@ import de.thm.arsnova.LoginAuthenticationSucessHandler; import de.thm.arsnova.security.ApplicationPermissionEvaluator; import de.thm.arsnova.security.DbUserDetailsService; +/** + * Loads property file and configures components used for authentication. + */ @Configuration @EnableGlobalMethodSecurity(prePostEnabled = true) @EnableWebSecurity diff --git a/src/main/java/de/thm/arsnova/config/package-info.java b/src/main/java/de/thm/arsnova/config/package-info.java index 87aa446414d10c887a085626b792f718940b9b29..817ab1d11e5d1a2b3a4202a1723e045bb60386a6 100644 --- a/src/main/java/de/thm/arsnova/config/package-info.java +++ b/src/main/java/de/thm/arsnova/config/package-info.java @@ -1 +1,4 @@ +/** + * Configuration of Spring's and ARSnova's components + */ package de.thm.arsnova.config; diff --git a/src/main/java/de/thm/arsnova/controller/AbstractController.java b/src/main/java/de/thm/arsnova/controller/AbstractController.java index 4f20a2cfd1e9c63d9fae1e0e47ac687791d42282..bdb2d8f7eb724935efa44e643ef44611b98bb254 100644 --- a/src/main/java/de/thm/arsnova/controller/AbstractController.java +++ b/src/main/java/de/thm/arsnova/controller/AbstractController.java @@ -17,6 +17,9 @@ */ package de.thm.arsnova.controller; +/** + * Base class of all controllers. + */ public class AbstractController { protected static final String X_DEPRECATED_API = "X-Deprecated-API"; protected static final String X_FORWARDED = "X-Forwarded"; diff --git a/src/main/java/de/thm/arsnova/controller/AudienceQuestionController.java b/src/main/java/de/thm/arsnova/controller/AudienceQuestionController.java index da4da99a44352a06c90d828b90bec0d25cd80408..2202338ca018ba719237f5251c2eba8b44f6c07c 100644 --- a/src/main/java/de/thm/arsnova/controller/AudienceQuestionController.java +++ b/src/main/java/de/thm/arsnova/controller/AudienceQuestionController.java @@ -37,6 +37,9 @@ import de.thm.arsnova.exceptions.BadRequestException; import de.thm.arsnova.services.IQuestionService; import de.thm.arsnova.web.DeprecatedApi; +/** + * Handles requests related to audience questions, which are also called interposed or feedback questions. + */ @RestController @RequestMapping("/audiencequestion") public class AudienceQuestionController extends AbstractController { diff --git a/src/main/java/de/thm/arsnova/controller/CourseController.java b/src/main/java/de/thm/arsnova/controller/CourseController.java index f35bb4f9683c06db94781b383314ddc994340add..a7104db07fade0def1f882ebf2393addddbec869 100644 --- a/src/main/java/de/thm/arsnova/controller/CourseController.java +++ b/src/main/java/de/thm/arsnova/controller/CourseController.java @@ -39,6 +39,9 @@ import de.thm.arsnova.exceptions.NotImplementedException; import de.thm.arsnova.exceptions.UnauthorizedException; import de.thm.arsnova.services.IUserService; +/** + * Provides access to a user's courses in an LMS such as Moodle. + */ @RestController public class CourseController extends AbstractController { diff --git a/src/main/java/de/thm/arsnova/controller/FeedbackController.java b/src/main/java/de/thm/arsnova/controller/FeedbackController.java index a9b2397c182e9db3d21d81c1000170954c423d11..cee5de523fc42842e7e586063bd0f0d2240edba3 100644 --- a/src/main/java/de/thm/arsnova/controller/FeedbackController.java +++ b/src/main/java/de/thm/arsnova/controller/FeedbackController.java @@ -35,6 +35,12 @@ import de.thm.arsnova.services.IFeedbackService; import de.thm.arsnova.services.IUserService; import de.thm.arsnova.web.DeprecatedApi; +/** + * Handles requests concerning the user's feedback, i.e., "too fast" or "faster, please". This HTTP API is + * deprecated in favor of the socket implementation. + * + * @see de.thm.arsnova.socket.ARSnovaSocketIOServer + */ @RestController public class FeedbackController extends AbstractController { diff --git a/src/main/java/de/thm/arsnova/controller/LecturerQuestionController.java b/src/main/java/de/thm/arsnova/controller/LecturerQuestionController.java index cd2577a1e17fc906d828aab36ff8887ebd969f07..59df5aaa872815340e4f142213e4d2a13ea52009 100644 --- a/src/main/java/de/thm/arsnova/controller/LecturerQuestionController.java +++ b/src/main/java/de/thm/arsnova/controller/LecturerQuestionController.java @@ -44,6 +44,9 @@ import de.thm.arsnova.exceptions.NotFoundException; import de.thm.arsnova.services.IQuestionService; import de.thm.arsnova.web.DeprecatedApi; +/** + * Handles requests related to questions teachers are asking their students. + */ @RestController @RequestMapping("/lecturerquestion") public class LecturerQuestionController extends AbstractController { diff --git a/src/main/java/de/thm/arsnova/controller/LegacyController.java b/src/main/java/de/thm/arsnova/controller/LegacyController.java index caeb383ad7d7610dadc41393235e1f69b468ded9..c15295d0671d31dbb7c5aed0396721ea56716965 100644 --- a/src/main/java/de/thm/arsnova/controller/LegacyController.java +++ b/src/main/java/de/thm/arsnova/controller/LegacyController.java @@ -29,6 +29,9 @@ import org.springframework.web.bind.annotation.ResponseBody; import de.thm.arsnova.services.IQuestionService; import de.thm.arsnova.web.DeprecatedApi; +/** + * This controller forwards requests from deprecated URLs to their new controller, where the requests are handled. + */ @Controller public class LegacyController extends AbstractController { diff --git a/src/main/java/de/thm/arsnova/controller/LoginController.java b/src/main/java/de/thm/arsnova/controller/LoginController.java index ca1667641414f83698f2cd1d334e0b5017870ad7..3b6d96803ec6ae2f34f9f0575d97a4aa87ce5fcf 100644 --- a/src/main/java/de/thm/arsnova/controller/LoginController.java +++ b/src/main/java/de/thm/arsnova/controller/LoginController.java @@ -64,6 +64,9 @@ import de.thm.arsnova.exceptions.UnauthorizedException; import de.thm.arsnova.services.IUserService; import de.thm.arsnova.services.UserSessionService; +/** + * Handles authentication specific requests. + */ @Controller public class LoginController extends AbstractController { diff --git a/src/main/java/de/thm/arsnova/controller/SecurityExceptionControllerAdvice.java b/src/main/java/de/thm/arsnova/controller/SecurityExceptionControllerAdvice.java index f1cb01dfae18dcc8336c4a9d253b3e8da2354583..d1a472a24af02881b73b6a71ed7ac201ca8d6064 100644 --- a/src/main/java/de/thm/arsnova/controller/SecurityExceptionControllerAdvice.java +++ b/src/main/java/de/thm/arsnova/controller/SecurityExceptionControllerAdvice.java @@ -39,6 +39,9 @@ import de.thm.arsnova.exceptions.PreconditionFailedException; import de.thm.arsnova.exceptions.UnauthorizedException; import de.thm.arsnova.exceptions.PayloadTooLargeException; +/** + * Translates security/authentication related exceptions into HTTP status codes. + */ @ControllerAdvice public class SecurityExceptionControllerAdvice { diff --git a/src/main/java/de/thm/arsnova/controller/SessionController.java b/src/main/java/de/thm/arsnova/controller/SessionController.java index d777e1a4d33f69a9f02e6a61254035d41a6b0876..4a75665e843c9962e15737b00c51f32cf875ad93 100644 --- a/src/main/java/de/thm/arsnova/controller/SessionController.java +++ b/src/main/java/de/thm/arsnova/controller/SessionController.java @@ -51,6 +51,9 @@ import de.thm.arsnova.services.SessionService.SessionNameComparator; import de.thm.arsnova.services.SessionService.SessionShortNameComparator; import de.thm.arsnova.web.DeprecatedApi; +/** + * Handles requests related to ARSnova sessions. + */ @RestController @RequestMapping("/session") public class SessionController extends AbstractController { diff --git a/src/main/java/de/thm/arsnova/controller/SocketController.java b/src/main/java/de/thm/arsnova/controller/SocketController.java index bbe1bdd485406913a700ff18f9c4b43ffb7802d1..64a58710ff65f74e4a79c52d916c09a672bb9702 100644 --- a/src/main/java/de/thm/arsnova/controller/SocketController.java +++ b/src/main/java/de/thm/arsnova/controller/SocketController.java @@ -37,6 +37,9 @@ import de.thm.arsnova.services.IUserService; import de.thm.arsnova.services.UserSessionService; import de.thm.arsnova.socket.ARSnovaSocket; +/** + * Initiates the socket communication. + */ @RestController @RequestMapping("/socket") public class SocketController extends AbstractController { diff --git a/src/main/java/de/thm/arsnova/controller/StatisticsController.java b/src/main/java/de/thm/arsnova/controller/StatisticsController.java index a7bad05c97678e2a3df2c30ab07972a9e379ca80..0acfb9d613a77685849d272adb1c799602f06757 100644 --- a/src/main/java/de/thm/arsnova/controller/StatisticsController.java +++ b/src/main/java/de/thm/arsnova/controller/StatisticsController.java @@ -27,6 +27,9 @@ import de.thm.arsnova.services.IStatisticsService; import de.thm.arsnova.web.CacheControl; import de.thm.arsnova.web.DeprecatedApi; +/** + * Allows retrieval of several statistics such as the number of active users. + */ @RestController public class StatisticsController extends AbstractController { diff --git a/src/main/java/de/thm/arsnova/controller/UserController.java b/src/main/java/de/thm/arsnova/controller/UserController.java index 3bc7a769b6e951edc68136416284e3439454960b..a113f184a4569d881391c552f900580f4775234f 100644 --- a/src/main/java/de/thm/arsnova/controller/UserController.java +++ b/src/main/java/de/thm/arsnova/controller/UserController.java @@ -35,6 +35,9 @@ import de.thm.arsnova.entities.DbUser; import de.thm.arsnova.services.IUserService; import de.thm.arsnova.services.UserSessionService; +/** + * Handles requests related to ARSnova's own user registration and login process. + */ @Controller @RequestMapping("/user") public class UserController extends AbstractController { diff --git a/src/main/java/de/thm/arsnova/controller/WelcomeController.java b/src/main/java/de/thm/arsnova/controller/WelcomeController.java index 509ed38cd69f28549423d4462721f2ff30677a37..6688df712e4b11647cdcae012cddd01904365cfb 100644 --- a/src/main/java/de/thm/arsnova/controller/WelcomeController.java +++ b/src/main/java/de/thm/arsnova/controller/WelcomeController.java @@ -38,6 +38,9 @@ import org.springframework.web.servlet.view.RedirectView; import de.thm.arsnova.exceptions.NoContentException; +/** + * Default controller that handles requests which have not set a path. + */ @Controller public class WelcomeController extends AbstractController { diff --git a/src/main/java/de/thm/arsnova/controller/package-info.java b/src/main/java/de/thm/arsnova/controller/package-info.java index ab9a862ae0e0599f236cf9d7d1914a8180be16cd..71e44bcf6adccfb619a7b805fe327bc6eee1c587 100644 --- a/src/main/java/de/thm/arsnova/controller/package-info.java +++ b/src/main/java/de/thm/arsnova/controller/package-info.java @@ -1 +1,4 @@ +/** + * The 'C' in MVC + */ package de.thm.arsnova.controller; diff --git a/src/main/java/de/thm/arsnova/dao/CouchDBDao.java b/src/main/java/de/thm/arsnova/dao/CouchDBDao.java index 374d9705a5f1a7a3dcf0ee583937a52ad12d8a12..cad6b9d1e6c27cb6f1735798b1f9573b7c3ac1f9 100644 --- a/src/main/java/de/thm/arsnova/dao/CouchDBDao.java +++ b/src/main/java/de/thm/arsnova/dao/CouchDBDao.java @@ -82,6 +82,9 @@ import de.thm.arsnova.events.NewAnswerEvent; import de.thm.arsnova.exceptions.NotFoundException; import de.thm.arsnova.services.ISessionService; +/** + * Database implementation based on CouchDB. + */ @Component("databaseDao") public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware { @@ -1421,6 +1424,9 @@ public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware return result; } + /** + * Adds convenience methods to CouchDB4J's view class. + */ 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 0f6255948f30d502166fd1e81de8d86d498dd997..833761262ac58c9861eaddf7067100f3a96437e5 100644 --- a/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java +++ b/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java @@ -34,6 +34,9 @@ import de.thm.arsnova.entities.Statistics; import de.thm.arsnova.entities.User; import de.thm.arsnova.entities.transport.ImportExportSession; +/** + * All methods the database must support. + */ public interface IDatabaseDao { Session getSessionFromKeyword(String keyword); diff --git a/src/main/java/de/thm/arsnova/dao/package-info.java b/src/main/java/de/thm/arsnova/dao/package-info.java index 1178f0094e38c4a606d9fb7d96f4ff4747522b98..1b1c0dd99512dc8a48b58c97a9d33b92f34b43a3 100644 --- a/src/main/java/de/thm/arsnova/dao/package-info.java +++ b/src/main/java/de/thm/arsnova/dao/package-info.java @@ -1 +1,4 @@ +/** + * Classes and interfaces for accessing the database + */ package de.thm.arsnova.dao; diff --git a/src/main/java/de/thm/arsnova/domain/CourseScore.java b/src/main/java/de/thm/arsnova/domain/CourseScore.java index 6065b8e0145c5e5cacd72911c35bed70f95e2466..8a689b75cfe359aa01aa39b7dd56ae611310a2c7 100644 --- a/src/main/java/de/thm/arsnova/domain/CourseScore.java +++ b/src/main/java/de/thm/arsnova/domain/CourseScore.java @@ -26,6 +26,9 @@ import java.util.Set; import de.thm.arsnova.entities.User; +/** + * Calculates the learning progress for users and their courses. + */ public class CourseScore implements Iterable<QuestionScore> { private final Map<String, QuestionScore> scores; diff --git a/src/main/java/de/thm/arsnova/domain/ILearningProgressFactory.java b/src/main/java/de/thm/arsnova/domain/ILearningProgressFactory.java index 586b283810a371a80a934e713b267e69895f3712..1504a1498628369e051795e41a64132b2f11f30f 100644 --- a/src/main/java/de/thm/arsnova/domain/ILearningProgressFactory.java +++ b/src/main/java/de/thm/arsnova/domain/ILearningProgressFactory.java @@ -17,6 +17,9 @@ */ package de.thm.arsnova.domain; +/** + * Interface for Spring dependency injection. + */ public interface ILearningProgressFactory { public abstract LearningProgress create(String progressType, String questionVariant); diff --git a/src/main/java/de/thm/arsnova/domain/LearningProgress.java b/src/main/java/de/thm/arsnova/domain/LearningProgress.java index 3cb8d49c6ef47b7ce6abf07a10bece72b62b2d3f..28e8f03f5a07e896b9f7ad4f51beb9563aad6a0a 100644 --- a/src/main/java/de/thm/arsnova/domain/LearningProgress.java +++ b/src/main/java/de/thm/arsnova/domain/LearningProgress.java @@ -21,6 +21,9 @@ import de.thm.arsnova.entities.Session; import de.thm.arsnova.entities.User; import de.thm.arsnova.entities.transport.LearningProgressValues; +/** + * Defines the core functionality which the learning progress calculation should provide. + */ public interface LearningProgress { public LearningProgressValues getCourseProgress(Session session); diff --git a/src/main/java/de/thm/arsnova/domain/LearningProgressFactory.java b/src/main/java/de/thm/arsnova/domain/LearningProgressFactory.java index 2ef264989613cc62cdf1d868dd9e1513b88abe59..4de4fa37c2cf07aac7f421cafd264bf099e399f8 100644 --- a/src/main/java/de/thm/arsnova/domain/LearningProgressFactory.java +++ b/src/main/java/de/thm/arsnova/domain/LearningProgressFactory.java @@ -54,6 +54,11 @@ import de.thm.arsnova.events.StatusSessionEvent; import de.thm.arsnova.events.UnlockVoteEvent; import de.thm.arsnova.events.UnlockVotesEvent; +/** + * Creates a learning progress implementation. + * + * This class additionally clears all learning progress caches and reports this via event system. + */ @Component public class LearningProgressFactory implements NovaEventVisitor, ILearningProgressFactory, ApplicationEventPublisherAware { diff --git a/src/main/java/de/thm/arsnova/domain/LearningProgressListener.java b/src/main/java/de/thm/arsnova/domain/LearningProgressListener.java index 28bc8e0eed4adb152d2c82e6b3ce86795a46225a..641e26ae614ab1475475b58ade2fc851644dcc31 100644 --- a/src/main/java/de/thm/arsnova/domain/LearningProgressListener.java +++ b/src/main/java/de/thm/arsnova/domain/LearningProgressListener.java @@ -24,6 +24,11 @@ import org.springframework.stereotype.Component; import de.thm.arsnova.events.NovaEvent; import de.thm.arsnova.events.NovaEventVisitor; +/** + * Listener registration for the learning progress. + * + * Note that this class is necessary in order for the annotations to work. + */ @Component public class LearningProgressListener implements ApplicationListener<NovaEvent> { diff --git a/src/main/java/de/thm/arsnova/domain/PointBasedLearningProgress.java b/src/main/java/de/thm/arsnova/domain/PointBasedLearningProgress.java index ef718b4f430a8c0a4bec987a32132b2e50e23ae9..72be81b2aa1d7a78106e982986a15f3ce96a3d63 100644 --- a/src/main/java/de/thm/arsnova/domain/PointBasedLearningProgress.java +++ b/src/main/java/de/thm/arsnova/domain/PointBasedLearningProgress.java @@ -21,6 +21,9 @@ import de.thm.arsnova.dao.IDatabaseDao; import de.thm.arsnova.entities.User; import de.thm.arsnova.entities.transport.LearningProgressValues; +/** + * Calculates learning progress based on a question's value. + */ public class PointBasedLearningProgress extends VariantLearningProgress { public PointBasedLearningProgress(IDatabaseDao dao) { diff --git a/src/main/java/de/thm/arsnova/domain/QuestionBasedLearningProgress.java b/src/main/java/de/thm/arsnova/domain/QuestionBasedLearningProgress.java index 9cb4a92d0de1fb7597a7228dac8b873bb13d8458..327174e04eaee30eec92df3a0f7a9f8a1c9a97f9 100644 --- a/src/main/java/de/thm/arsnova/domain/QuestionBasedLearningProgress.java +++ b/src/main/java/de/thm/arsnova/domain/QuestionBasedLearningProgress.java @@ -21,6 +21,10 @@ import de.thm.arsnova.dao.IDatabaseDao; import de.thm.arsnova.entities.User; import de.thm.arsnova.entities.transport.LearningProgressValues; +/** + * Calculates learning progress based on overall correctness of an answer. A question is answered correctly iff the + * maximum question value possible has been achieved. + */ public class QuestionBasedLearningProgress extends VariantLearningProgress { public QuestionBasedLearningProgress(IDatabaseDao dao) { diff --git a/src/main/java/de/thm/arsnova/domain/QuestionScore.java b/src/main/java/de/thm/arsnova/domain/QuestionScore.java index d5c1f8c298e841f88facc4d65164e644cc90ae3e..c2021f15ce4bd4d92aa35602561d6a24b98b302c 100644 --- a/src/main/java/de/thm/arsnova/domain/QuestionScore.java +++ b/src/main/java/de/thm/arsnova/domain/QuestionScore.java @@ -24,6 +24,9 @@ import java.util.Set; import de.thm.arsnova.entities.User; +/** + * Calculates learning progress score for a specific question. + */ public class QuestionScore implements Iterable<UserScore> { private String questionId; diff --git a/src/main/java/de/thm/arsnova/domain/UserScore.java b/src/main/java/de/thm/arsnova/domain/UserScore.java index 282fd06e7e73692997fee753e597b91e0c84cfde..2f33a753994cfc3a55f66bb35f2930f9f861ab4c 100644 --- a/src/main/java/de/thm/arsnova/domain/UserScore.java +++ b/src/main/java/de/thm/arsnova/domain/UserScore.java @@ -19,6 +19,9 @@ package de.thm.arsnova.domain; import de.thm.arsnova.entities.User; +/** + * The learning progress answer score of a particular user. + */ public class UserScore { private String username; diff --git a/src/main/java/de/thm/arsnova/domain/VariantLearningProgress.java b/src/main/java/de/thm/arsnova/domain/VariantLearningProgress.java index 74d67138dc1131d43ddddca3fecac51f259fefb7..c394277acfbfc988ca3a1879a6ae269a6f0f507c 100644 --- a/src/main/java/de/thm/arsnova/domain/VariantLearningProgress.java +++ b/src/main/java/de/thm/arsnova/domain/VariantLearningProgress.java @@ -23,7 +23,7 @@ import de.thm.arsnova.entities.User; import de.thm.arsnova.entities.transport.LearningProgressValues; /** - * Base class for the Learning Progress feature that allows filtering on the question variant. + * Base class for the learning progress feature that allows filtering on the question variant. */ abstract class VariantLearningProgress implements LearningProgress { diff --git a/src/main/java/de/thm/arsnova/domain/package-info.java b/src/main/java/de/thm/arsnova/domain/package-info.java index ee2d2f1de66118173509e1ba7b8f66e6acf2343f..0733c68fb4c53a0c7fd357e3d6967e4fd21fc6c3 100644 --- a/src/main/java/de/thm/arsnova/domain/package-info.java +++ b/src/main/java/de/thm/arsnova/domain/package-info.java @@ -1 +1,4 @@ +/** + * The 'M' in MVC + */ package de.thm.arsnova.domain; \ No newline at end of file diff --git a/src/main/java/de/thm/arsnova/entities/Answer.java b/src/main/java/de/thm/arsnova/entities/Answer.java index dcc3bc317f960ce65599e2f5b00a0028f1de58e8..ef2d18d82045650a7a9ac816cdf8260cb323e41e 100644 --- a/src/main/java/de/thm/arsnova/entities/Answer.java +++ b/src/main/java/de/thm/arsnova/entities/Answer.java @@ -19,6 +19,11 @@ package de.thm.arsnova.entities; import com.fasterxml.jackson.annotation.JsonIgnore; +/** + * Both a regular (single choice, evaluation, etc.) as well as a freetext answer. + * + * This class has additional fields to transport generated answer statistics. + */ public class Answer { private String _id; diff --git a/src/main/java/de/thm/arsnova/entities/DbUser.java b/src/main/java/de/thm/arsnova/entities/DbUser.java index 84217b5b7cb89151a6fedad0d37b09144e147df1..dbdbd7e97448bcb9b91033b3a79a7a36dcdbc4fc 100644 --- a/src/main/java/de/thm/arsnova/entities/DbUser.java +++ b/src/main/java/de/thm/arsnova/entities/DbUser.java @@ -17,6 +17,9 @@ */ package de.thm.arsnova.entities; +/** + * A user account for ARSnova's own registration and login process. + */ public class DbUser { private String id; private String rev; diff --git a/src/main/java/de/thm/arsnova/entities/Feedback.java b/src/main/java/de/thm/arsnova/entities/Feedback.java index e2949c913a2259ffde2fbe75e75939ededb5f80e..102002ac856b76fb8667dd4e87d24e1ec8914d0c 100644 --- a/src/main/java/de/thm/arsnova/entities/Feedback.java +++ b/src/main/java/de/thm/arsnova/entities/Feedback.java @@ -20,6 +20,9 @@ package de.thm.arsnova.entities; import java.util.ArrayList; import java.util.List; +/** + * The feedback values of a single session. + */ public class Feedback { public static final int MIN_FEEDBACK_TYPE = 0; public static final int MAX_FEEDBACK_TYPE = 3; diff --git a/src/main/java/de/thm/arsnova/entities/InterposedQuestion.java b/src/main/java/de/thm/arsnova/entities/InterposedQuestion.java index ce9cc6adb28a1e2ba004d9496476b6af1f81ac6a..807297687f75ca4a27db0eb14b8db347de43f943 100644 --- a/src/main/java/de/thm/arsnova/entities/InterposedQuestion.java +++ b/src/main/java/de/thm/arsnova/entities/InterposedQuestion.java @@ -19,6 +19,9 @@ package de.thm.arsnova.entities; import com.fasterxml.jackson.annotation.JsonIgnore; +/** + * A question the user is asking the teacher. Also known as feedback or audience question. + */ public class InterposedQuestion { private String _id; diff --git a/src/main/java/de/thm/arsnova/entities/InterposedReadingCount.java b/src/main/java/de/thm/arsnova/entities/InterposedReadingCount.java index d6550faa1d9962b645c62ba62a3abdee9bd31ff8..179cc1b4b6796e0354832e84d5982f91be4a5803 100644 --- a/src/main/java/de/thm/arsnova/entities/InterposedReadingCount.java +++ b/src/main/java/de/thm/arsnova/entities/InterposedReadingCount.java @@ -17,6 +17,9 @@ */ package de.thm.arsnova.entities; +/** + * Wrapper class for counting read and unread interposed questions for a session or a single user. + */ public class InterposedReadingCount { private int read; diff --git a/src/main/java/de/thm/arsnova/entities/LearningProgressOptions.java b/src/main/java/de/thm/arsnova/entities/LearningProgressOptions.java index f51d77aea8996157eab8903fd3a8480025b7255d..fcde16cf3731b929d4102ecd74832cbe68b2fc91 100644 --- a/src/main/java/de/thm/arsnova/entities/LearningProgressOptions.java +++ b/src/main/java/de/thm/arsnova/entities/LearningProgressOptions.java @@ -17,6 +17,9 @@ */ package de.thm.arsnova.entities; +/** + * A session's settings regarding the calculation of the learning progress. + */ public class LearningProgressOptions { private String type = "questions"; diff --git a/src/main/java/de/thm/arsnova/entities/LoggedIn.java b/src/main/java/de/thm/arsnova/entities/LoggedIn.java index 796935621856cab0e1ef07bb22ce0b43c562f78b..213f37c697707bc0333186b1b4286591bf737c2d 100644 --- a/src/main/java/de/thm/arsnova/entities/LoggedIn.java +++ b/src/main/java/de/thm/arsnova/entities/LoggedIn.java @@ -20,6 +20,9 @@ package de.thm.arsnova.entities; import java.util.ArrayList; import java.util.List; +/** + * Once a user joins a session, this class is used to identify a returning user. + */ public class LoggedIn { private String _id; diff --git a/src/main/java/de/thm/arsnova/entities/PossibleAnswer.java b/src/main/java/de/thm/arsnova/entities/PossibleAnswer.java index b6648fbd5779cb5b2792b2a2f9c6fd193def9ab7..f66842389ae8a3e8383503960f58522a4f531ded 100644 --- a/src/main/java/de/thm/arsnova/entities/PossibleAnswer.java +++ b/src/main/java/de/thm/arsnova/entities/PossibleAnswer.java @@ -17,6 +17,9 @@ */ package de.thm.arsnova.entities; +/** + * This class represents an answer option of a question. + */ public class PossibleAnswer { private String id; diff --git a/src/main/java/de/thm/arsnova/entities/Question.java b/src/main/java/de/thm/arsnova/entities/Question.java index 6a87f338f8cdf15ce418c3b8e6ee86c7e4489f9a..2f449a15c10d9029ef2534212a8180c82857123b 100644 --- a/src/main/java/de/thm/arsnova/entities/Question.java +++ b/src/main/java/de/thm/arsnova/entities/Question.java @@ -20,6 +20,9 @@ package de.thm.arsnova.entities; import java.util.Date; import java.util.List; +/** + * A question the teacher is asking. + */ public class Question { private String type; diff --git a/src/main/java/de/thm/arsnova/entities/ServiceDescription.java b/src/main/java/de/thm/arsnova/entities/ServiceDescription.java index 6d37ad730301bc70b3a147523ef7b37be2620eab..1f756cfa5202936477fb564273bcc12790dcb8b9 100644 --- a/src/main/java/de/thm/arsnova/entities/ServiceDescription.java +++ b/src/main/java/de/thm/arsnova/entities/ServiceDescription.java @@ -17,6 +17,9 @@ */ package de.thm.arsnova.entities; +/** + * A login service description. For example, this class is used to display the login buttons in ARSnova mobile. + */ public class ServiceDescription { private String id; private String name; diff --git a/src/main/java/de/thm/arsnova/entities/Session.java b/src/main/java/de/thm/arsnova/entities/Session.java index 61cd50cfaadef032051b628248e93c4ac62cc971..5994c219a56becb9d3775e41b3ed8c551e8f6799 100644 --- a/src/main/java/de/thm/arsnova/entities/Session.java +++ b/src/main/java/de/thm/arsnova/entities/Session.java @@ -22,6 +22,9 @@ import java.util.List; import com.fasterxml.jackson.annotation.JsonIgnore; +/** + * Represents an ARSnova session. + */ public class Session implements Serializable { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/entities/SessionFeature.java b/src/main/java/de/thm/arsnova/entities/SessionFeature.java index 4f2879f58c4e3efd9bd9cbf7aca5b33b312c388c..b8f59b38a6eb16bee4f9966bce04368bdfc19bdb 100644 --- a/src/main/java/de/thm/arsnova/entities/SessionFeature.java +++ b/src/main/java/de/thm/arsnova/entities/SessionFeature.java @@ -17,6 +17,9 @@ */ package de.thm.arsnova.entities; +/** + * Contains fields that describe which specific feature is activated for a session. + */ public class SessionFeature { private boolean jitt = true; diff --git a/src/main/java/de/thm/arsnova/entities/SessionInfo.java b/src/main/java/de/thm/arsnova/entities/SessionInfo.java index c83d21d1cfda5030c475e5b9d9111c23e389e2e5..9ef283b9fef1168f5ba27f729d00ef3132af8a66 100644 --- a/src/main/java/de/thm/arsnova/entities/SessionInfo.java +++ b/src/main/java/de/thm/arsnova/entities/SessionInfo.java @@ -20,6 +20,10 @@ package de.thm.arsnova.entities; import java.util.ArrayList; import java.util.List; +/** + * Summary information of a specific session. For example, this is used to display list entries of 'my sessions' as well + * as 'my visited sessions'. + */ public class SessionInfo { private String name; diff --git a/src/main/java/de/thm/arsnova/entities/SortOrder.java b/src/main/java/de/thm/arsnova/entities/SortOrder.java index f6356f131881f588e6d1d4f9a49b4708335511b6..7eb83a1e7fa2675a0650f95afc52ccc6d81f9fcd 100644 --- a/src/main/java/de/thm/arsnova/entities/SortOrder.java +++ b/src/main/java/de/thm/arsnova/entities/SortOrder.java @@ -19,6 +19,9 @@ package de.thm.arsnova.entities; import java.util.List; +/** + * Defines how a question list should be sorted. + */ public class SortOrder { private String sessionId; diff --git a/src/main/java/de/thm/arsnova/entities/Statistics.java b/src/main/java/de/thm/arsnova/entities/Statistics.java index 1caa6a18cf189a514030c8cc079b509b8776b744..919e24234e66edd820141109befed3efce615cbf 100644 --- a/src/main/java/de/thm/arsnova/entities/Statistics.java +++ b/src/main/java/de/thm/arsnova/entities/Statistics.java @@ -17,6 +17,9 @@ */ package de.thm.arsnova.entities; +/** + * Collection of several statistics about ARSnova. + */ public class Statistics { private int answers; diff --git a/src/main/java/de/thm/arsnova/entities/User.java b/src/main/java/de/thm/arsnova/entities/User.java index 710f909d2ad765dd32d7b0ae60f837b70f8615db..f7bf65ad804d8c79f7db05135c169aef2e780a25 100644 --- a/src/main/java/de/thm/arsnova/entities/User.java +++ b/src/main/java/de/thm/arsnova/entities/User.java @@ -28,6 +28,9 @@ import org.springframework.security.authentication.UsernamePasswordAuthenticatio import de.thm.arsnova.services.UserSessionService; +/** + * Represents a user. + */ public class User implements Serializable { public static final String GOOGLE = "google"; public static final String TWITTER = "twitter"; diff --git a/src/main/java/de/thm/arsnova/entities/VisitedSession.java b/src/main/java/de/thm/arsnova/entities/VisitedSession.java index e5af42dfabae4b56d96b5443148c7d7087f0b912..47e961357ae37bbb7297ecb3dfd1855b383cc025 100644 --- a/src/main/java/de/thm/arsnova/entities/VisitedSession.java +++ b/src/main/java/de/thm/arsnova/entities/VisitedSession.java @@ -17,7 +17,9 @@ */ package de.thm.arsnova.entities; - +/** + * A session a user has visited previously. + */ public class VisitedSession { private String _id; private String name; diff --git a/src/main/java/de/thm/arsnova/entities/package-info.java b/src/main/java/de/thm/arsnova/entities/package-info.java index 97e2a5dae5dc067b6a2ba8010f1ec3a88b9b7858..ed8a4656b1050c9d4e0df681eb85c80d97d4a64e 100644 --- a/src/main/java/de/thm/arsnova/entities/package-info.java +++ b/src/main/java/de/thm/arsnova/entities/package-info.java @@ -1 +1,4 @@ +/** + * Classes to translate objects to and from JSON + */ package de.thm.arsnova.entities; diff --git a/src/main/java/de/thm/arsnova/entities/transport/Answer.java b/src/main/java/de/thm/arsnova/entities/transport/Answer.java index 7bc7e8b43048892ab8ed256c5b221bd8efa6c661..dcc884721952a184478406e279105901fad17a6e 100644 --- a/src/main/java/de/thm/arsnova/entities/transport/Answer.java +++ b/src/main/java/de/thm/arsnova/entities/transport/Answer.java @@ -24,6 +24,9 @@ import com.fasterxml.jackson.annotation.JsonInclude; import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.User; +/** + * A user's answer to a question. + */ @JsonInclude(JsonInclude.Include.NON_DEFAULT) public class Answer { diff --git a/src/main/java/de/thm/arsnova/entities/transport/AnswerQueueElement.java b/src/main/java/de/thm/arsnova/entities/transport/AnswerQueueElement.java index a47f9e7f905df569aedb7134ceabcf645f680bc8..d8b987ad43d9585cde8ae330468745d9711a3ec9 100644 --- a/src/main/java/de/thm/arsnova/entities/transport/AnswerQueueElement.java +++ b/src/main/java/de/thm/arsnova/entities/transport/AnswerQueueElement.java @@ -22,6 +22,10 @@ import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; import de.thm.arsnova.entities.User; +/** + * An answer that is about to get saved in the database. Answers are not saved immediately, they are instead stored + * in a queue that is cleared at specific intervals. + */ public class AnswerQueueElement { private final Session session; diff --git a/src/main/java/de/thm/arsnova/entities/transport/ImportExportSession.java b/src/main/java/de/thm/arsnova/entities/transport/ImportExportSession.java index 3b223628faeaac1470052eb9c0ccf216517153cf..6ce7606c3936805e48c42fbc2f60b31721382277 100644 --- a/src/main/java/de/thm/arsnova/entities/transport/ImportExportSession.java +++ b/src/main/java/de/thm/arsnova/entities/transport/ImportExportSession.java @@ -24,6 +24,9 @@ import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; import de.thm.arsnova.entities.User; +/** + * This class is used to allow the import and export of a session. + */ public class ImportExportSession { private ImportExportSesssion session; diff --git a/src/main/java/de/thm/arsnova/entities/transport/InterposedQuestion.java b/src/main/java/de/thm/arsnova/entities/transport/InterposedQuestion.java index 692ddf955380e0bd4868ec528761e4af9e58b7a4..7cf960a08c356ee6d68854fc7974fb30553db37f 100644 --- a/src/main/java/de/thm/arsnova/entities/transport/InterposedQuestion.java +++ b/src/main/java/de/thm/arsnova/entities/transport/InterposedQuestion.java @@ -20,6 +20,9 @@ package de.thm.arsnova.entities.transport; import java.util.ArrayList; import java.util.List; +/** + * A question a student is asking. Also known as feedback or audience question. + */ public class InterposedQuestion { private String id; diff --git a/src/main/java/de/thm/arsnova/entities/transport/LearningProgressOptions.java b/src/main/java/de/thm/arsnova/entities/transport/LearningProgressOptions.java index 081bc4fac60c84b2ed858552ed3ce1da2463c839..be5ccdf79f336b361d8e3d2acc66753ba6841bc9 100644 --- a/src/main/java/de/thm/arsnova/entities/transport/LearningProgressOptions.java +++ b/src/main/java/de/thm/arsnova/entities/transport/LearningProgressOptions.java @@ -17,6 +17,9 @@ */ package de.thm.arsnova.entities.transport; +/** + * A session's settings regarding the calculation of the learning progress. + */ public class LearningProgressOptions { private String sessionKeyword; diff --git a/src/main/java/de/thm/arsnova/entities/transport/LearningProgressValues.java b/src/main/java/de/thm/arsnova/entities/transport/LearningProgressValues.java index 554f793a3ad78311afeb68e259a349f4f78c489d..22dc4ac87b187b530f5a1436a653ab9c6bc0671d 100644 --- a/src/main/java/de/thm/arsnova/entities/transport/LearningProgressValues.java +++ b/src/main/java/de/thm/arsnova/entities/transport/LearningProgressValues.java @@ -17,6 +17,9 @@ */ package de.thm.arsnova.entities.transport; +/** + * The calculated learning progress along with meta-data. + */ public class LearningProgressValues { private int courseProgress; diff --git a/src/main/java/de/thm/arsnova/entities/transport/package-info.java b/src/main/java/de/thm/arsnova/entities/transport/package-info.java index accb5a5a2d5ddff85d97fd393087bcc996dc35b9..a6920b7c81f41a1c752a0ea3e72ab880ec59016c 100644 --- a/src/main/java/de/thm/arsnova/entities/transport/package-info.java +++ b/src/main/java/de/thm/arsnova/entities/transport/package-info.java @@ -1 +1,7 @@ +/** + * Contains classes similar to regular entities, but with a reduced set of properties. + * + * Since sometimes only a subset of properties are needed, sending the whole entity is a waste of bandwith. Therefore, + * entities optimized for data transport are located here. + */ package de.thm.arsnova.entities.transport; diff --git a/src/main/java/de/thm/arsnova/events/ChangeLearningProgressEvent.java b/src/main/java/de/thm/arsnova/events/ChangeLearningProgressEvent.java index 418711c262f03adbf29fa0fa9273b90495fcf6b8..57bc07686a38b0ae1dfc3b8f83b0c007a5cb50a7 100644 --- a/src/main/java/de/thm/arsnova/events/ChangeLearningProgressEvent.java +++ b/src/main/java/de/thm/arsnova/events/ChangeLearningProgressEvent.java @@ -19,6 +19,9 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.Session; +/** + * Fires whenever a learning progress related value changes. + */ public class ChangeLearningProgressEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/DeleteAllLectureAnswersEvent.java b/src/main/java/de/thm/arsnova/events/DeleteAllLectureAnswersEvent.java index 132f2f4504a8f6d07e395a16df78cb71c29b2fc3..f7ab96dd8136573e2ea15b99ed4a7aa2e3599075 100644 --- a/src/main/java/de/thm/arsnova/events/DeleteAllLectureAnswersEvent.java +++ b/src/main/java/de/thm/arsnova/events/DeleteAllLectureAnswersEvent.java @@ -19,6 +19,9 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.Session; +/** + * Fires whenever all answers of all lecture questions of a session are deleted. + */ public class DeleteAllLectureAnswersEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/DeleteAllPreparationAnswersEvent.java b/src/main/java/de/thm/arsnova/events/DeleteAllPreparationAnswersEvent.java index 4c823f7683e0346acb36a273205ef7921d8fdb8e..ad7739791366b9b884932196999663d06092b307 100644 --- a/src/main/java/de/thm/arsnova/events/DeleteAllPreparationAnswersEvent.java +++ b/src/main/java/de/thm/arsnova/events/DeleteAllPreparationAnswersEvent.java @@ -19,6 +19,9 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.Session; +/** + * Fires whenever all answers of all preparation questions of a session are deleted. + */ public class DeleteAllPreparationAnswersEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/DeleteAllQuestionsAnswersEvent.java b/src/main/java/de/thm/arsnova/events/DeleteAllQuestionsAnswersEvent.java index 6ac6683c41951aaf442fe2848620a3a10ab1bc42..28ce03cfa0437b680e4fd4f2342a080d622fce32 100644 --- a/src/main/java/de/thm/arsnova/events/DeleteAllQuestionsAnswersEvent.java +++ b/src/main/java/de/thm/arsnova/events/DeleteAllQuestionsAnswersEvent.java @@ -19,6 +19,9 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.Session; +/** + * Fires whenever all answers of all questions of a session are deleted. + */ public class DeleteAllQuestionsAnswersEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/DeleteAllQuestionsEvent.java b/src/main/java/de/thm/arsnova/events/DeleteAllQuestionsEvent.java index e0bb0421f469f86ee4bf5c88554c58e9e3485312..03ece7d5394a8a433dc93cb349f696de22baf44c 100644 --- a/src/main/java/de/thm/arsnova/events/DeleteAllQuestionsEvent.java +++ b/src/main/java/de/thm/arsnova/events/DeleteAllQuestionsEvent.java @@ -19,6 +19,10 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.Session; +/** + * Fires whenever all questions of a session are deleted. Note that this implies that all answers are deleted as well, + * even though the specific answer events are not fired. + */ public class DeleteAllQuestionsEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/DeleteAnswerEvent.java b/src/main/java/de/thm/arsnova/events/DeleteAnswerEvent.java index 02ed5a9c00fefe3935c064557964adfe6263077e..5480b5c39ee6ce12b42f2b4692a4aaef55371aba 100644 --- a/src/main/java/de/thm/arsnova/events/DeleteAnswerEvent.java +++ b/src/main/java/de/thm/arsnova/events/DeleteAnswerEvent.java @@ -20,6 +20,9 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; +/** + * Fires whenever a single answer is deleted. + */ public class DeleteAnswerEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/DeleteFeedbackForSessionsEvent.java b/src/main/java/de/thm/arsnova/events/DeleteFeedbackForSessionsEvent.java index 857e59374c9ca1a8bf87ae40229ff38478bbe38e..54e233819aed20bd996fcb2a8c12ee53afdb0beb 100644 --- a/src/main/java/de/thm/arsnova/events/DeleteFeedbackForSessionsEvent.java +++ b/src/main/java/de/thm/arsnova/events/DeleteFeedbackForSessionsEvent.java @@ -22,6 +22,9 @@ import java.util.Set; import de.thm.arsnova.entities.Session; import de.thm.arsnova.entities.User; +/** + * Fires whenever the feedback of a specific user has been reset. + */ public class DeleteFeedbackForSessionsEvent extends NovaEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/DeleteInterposedQuestionEvent.java b/src/main/java/de/thm/arsnova/events/DeleteInterposedQuestionEvent.java index a0dbfdef447db7d91c55773d8dc9ecbc625e3b00..6daca8979de7bdbbb5495cd3a6a25dbb7bdfd9ac 100644 --- a/src/main/java/de/thm/arsnova/events/DeleteInterposedQuestionEvent.java +++ b/src/main/java/de/thm/arsnova/events/DeleteInterposedQuestionEvent.java @@ -20,6 +20,9 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.InterposedQuestion; import de.thm.arsnova.entities.Session; +/** + * Fires whenever an interposed question is deleted. + */ public class DeleteInterposedQuestionEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/DeleteQuestionEvent.java b/src/main/java/de/thm/arsnova/events/DeleteQuestionEvent.java index e92f2e6a19a93d96de5af23e8b0d80cfa505fc70..37e4ada10f6714f3d6084a215bfa524eeb471a3a 100644 --- a/src/main/java/de/thm/arsnova/events/DeleteQuestionEvent.java +++ b/src/main/java/de/thm/arsnova/events/DeleteQuestionEvent.java @@ -20,6 +20,9 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; +/** + * Fires whenever a question is deleted. + */ public class DeleteQuestionEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/DeleteSessionEvent.java b/src/main/java/de/thm/arsnova/events/DeleteSessionEvent.java index a4eee9df225da7a299adc2783d0aee8a25c4d3e8..2ad03793e27ea5cb4899b6a1b9bd3d7636845882 100644 --- a/src/main/java/de/thm/arsnova/events/DeleteSessionEvent.java +++ b/src/main/java/de/thm/arsnova/events/DeleteSessionEvent.java @@ -19,6 +19,10 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.Session; +/** + * Fires whenever a session is deleted. Note that this implies that all related data such as interposed questions, + * lecturer questions, and answers are deleted as well, even though those events are not fired. + */ public class DeleteSessionEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/LockQuestionEvent.java b/src/main/java/de/thm/arsnova/events/LockQuestionEvent.java index 72d1239b8a0a4ac3734b5efcfb346c4dc1160a1d..c251753086c5c8a17a53541766f7ca6b5ce8ae4a 100644 --- a/src/main/java/de/thm/arsnova/events/LockQuestionEvent.java +++ b/src/main/java/de/thm/arsnova/events/LockQuestionEvent.java @@ -20,6 +20,9 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; +/** + * Fires whenever a question is disabled, i.e., it is hidden from students. + */ public class LockQuestionEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/LockQuestionsEvent.java b/src/main/java/de/thm/arsnova/events/LockQuestionsEvent.java index 0b00e9b6dce738b4f5e1dd642151c5262e8ce6ec..0d382bbe1e4029ef608da5b004f0e0245f7519ec 100644 --- a/src/main/java/de/thm/arsnova/events/LockQuestionsEvent.java +++ b/src/main/java/de/thm/arsnova/events/LockQuestionsEvent.java @@ -22,6 +22,9 @@ import java.util.List; import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; +/** + * Fires whenever a set of questions are disabled, i.e., they are hidden from students. + */ public class LockQuestionsEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/LockVoteEvent.java b/src/main/java/de/thm/arsnova/events/LockVoteEvent.java index 8a695a109268a298f65cc30d3e63644c0723deab..11167ff2356be54ce34e1361fbc13b8356d1cc9c 100644 --- a/src/main/java/de/thm/arsnova/events/LockVoteEvent.java +++ b/src/main/java/de/thm/arsnova/events/LockVoteEvent.java @@ -22,6 +22,9 @@ import java.util.HashMap; import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; +/** + * Fires whenever voting on a question is disabled. + */ public class LockVoteEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/LockVotesEvent.java b/src/main/java/de/thm/arsnova/events/LockVotesEvent.java index 2f42f00a14058a223583ecb926e17e85f90d24fd..58a47610c4ec64361b8e013ffdf6a2cdfb58fe4f 100644 --- a/src/main/java/de/thm/arsnova/events/LockVotesEvent.java +++ b/src/main/java/de/thm/arsnova/events/LockVotesEvent.java @@ -22,6 +22,9 @@ import java.util.List; import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; +/** + * Fires whenever voting of multiple questions is disabled. + */ public class LockVotesEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/NewAnswerEvent.java b/src/main/java/de/thm/arsnova/events/NewAnswerEvent.java index 624258732ead93d8e8f9e4421a03da45dbe1e3e0..760ca29fbe282fd4d2afb9f8ae53337f5fe4c1bc 100644 --- a/src/main/java/de/thm/arsnova/events/NewAnswerEvent.java +++ b/src/main/java/de/thm/arsnova/events/NewAnswerEvent.java @@ -22,6 +22,9 @@ import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; import de.thm.arsnova.entities.User; +/** + * Fires whenever a new answer is added. + */ public class NewAnswerEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/NewFeedbackEvent.java b/src/main/java/de/thm/arsnova/events/NewFeedbackEvent.java index c06f84cac7eb727f92425427794b6d1ce194932a..1aa43cbcb211c896d22f512f4c442b208c935de3 100644 --- a/src/main/java/de/thm/arsnova/events/NewFeedbackEvent.java +++ b/src/main/java/de/thm/arsnova/events/NewFeedbackEvent.java @@ -19,6 +19,9 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.Session; +/** + * Fires whenever the feedback changes. + */ public class NewFeedbackEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/NewInterposedQuestionEvent.java b/src/main/java/de/thm/arsnova/events/NewInterposedQuestionEvent.java index 2d0fbfceebae7774ae967ee40be4e67e35d1ae60..f5e45a02ea85544a3b5e3dae979f9f87c5abd42e 100644 --- a/src/main/java/de/thm/arsnova/events/NewInterposedQuestionEvent.java +++ b/src/main/java/de/thm/arsnova/events/NewInterposedQuestionEvent.java @@ -20,6 +20,9 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.InterposedQuestion; import de.thm.arsnova.entities.Session; +/** + * Fires whenever a new interposed (aka. feedback or audience) question is added. + */ public class NewInterposedQuestionEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/NewQuestionEvent.java b/src/main/java/de/thm/arsnova/events/NewQuestionEvent.java index 898104edca8d15b5d69f28cbda2ebe266b3de3b2..7996993ac4958313cefd3a2438a33bd5be82005e 100644 --- a/src/main/java/de/thm/arsnova/events/NewQuestionEvent.java +++ b/src/main/java/de/thm/arsnova/events/NewQuestionEvent.java @@ -20,6 +20,9 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; +/** + * Fires whenever a new question is added. + */ public class NewQuestionEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/NewSessionEvent.java b/src/main/java/de/thm/arsnova/events/NewSessionEvent.java index 1565443bf254f06a1676566ccf5f1b48871707f0..510bdee8010adfabe82344aa0ac9bf56fc61a58a 100644 --- a/src/main/java/de/thm/arsnova/events/NewSessionEvent.java +++ b/src/main/java/de/thm/arsnova/events/NewSessionEvent.java @@ -19,6 +19,9 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.Session; +/** + * Fires whenever a new session is created. + */ public class NewSessionEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/NovaEvent.java b/src/main/java/de/thm/arsnova/events/NovaEvent.java index 47117d8d645c3b7fc5c2722b50c093de1391f177..1ceb0fd89fd4fba0031eebda90e1d256f05bd2f8 100644 --- a/src/main/java/de/thm/arsnova/events/NovaEvent.java +++ b/src/main/java/de/thm/arsnova/events/NovaEvent.java @@ -19,6 +19,9 @@ package de.thm.arsnova.events; import org.springframework.context.ApplicationEvent; +/** + * Base class of an ARSnova event. + */ public abstract class NovaEvent extends ApplicationEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/NovaEventVisitor.java b/src/main/java/de/thm/arsnova/events/NovaEventVisitor.java index eba55e64ed22a2391ae3b5d13ec23d8a0460e97a..216c38f8e6b9b803dc18a76a6f13b24939f14c43 100644 --- a/src/main/java/de/thm/arsnova/events/NovaEventVisitor.java +++ b/src/main/java/de/thm/arsnova/events/NovaEventVisitor.java @@ -17,6 +17,9 @@ */ package de.thm.arsnova.events; +/** + * Listeners wanting to receive ARSnova's internal events should implement this interface. + */ public interface NovaEventVisitor { void visit(NewInterposedQuestionEvent newInterposedQuestionEvent); diff --git a/src/main/java/de/thm/arsnova/events/PiRoundCancelEvent.java b/src/main/java/de/thm/arsnova/events/PiRoundCancelEvent.java index adca0cdfde55a92729282445216ceadd0a52f828..d40a6e17a9098ecdc571bfb54f2ac0d73738f33f 100644 --- a/src/main/java/de/thm/arsnova/events/PiRoundCancelEvent.java +++ b/src/main/java/de/thm/arsnova/events/PiRoundCancelEvent.java @@ -20,6 +20,9 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; +/** + * Fires whenever a peer instruction round is canceled. + */ public class PiRoundCancelEvent extends PiRoundEndEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/PiRoundDelayedStartEvent.java b/src/main/java/de/thm/arsnova/events/PiRoundDelayedStartEvent.java index db39ab1017a7c83fa84530b4a4c15c467aed5ba5..df301caa22616bcedffad630887e0abb3a972e1e 100644 --- a/src/main/java/de/thm/arsnova/events/PiRoundDelayedStartEvent.java +++ b/src/main/java/de/thm/arsnova/events/PiRoundDelayedStartEvent.java @@ -22,6 +22,10 @@ import java.util.HashMap; import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; +/** + * Fires whenever a delayed peer instruction round is initiated. The delayed part denotes that this round might not + * have been started yet. + */ public class PiRoundDelayedStartEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/PiRoundEndEvent.java b/src/main/java/de/thm/arsnova/events/PiRoundEndEvent.java index 2a26f2716b048be7e270bbda0aa4b07d67f220f3..16344c6ac717f1c5dd096beee28538a7da754cfa 100644 --- a/src/main/java/de/thm/arsnova/events/PiRoundEndEvent.java +++ b/src/main/java/de/thm/arsnova/events/PiRoundEndEvent.java @@ -22,6 +22,9 @@ import java.util.HashMap; import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; +/** + * Fires whenever a peer instruction round has ended. + */ public class PiRoundEndEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/PiRoundResetEvent.java b/src/main/java/de/thm/arsnova/events/PiRoundResetEvent.java index 0215f9b2e73e8280e0892b971f1e1bc1b7c4d59e..626fd0e1f40b75d33db709e259abb86e5c062285 100644 --- a/src/main/java/de/thm/arsnova/events/PiRoundResetEvent.java +++ b/src/main/java/de/thm/arsnova/events/PiRoundResetEvent.java @@ -22,6 +22,9 @@ import java.util.HashMap; import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; +/** + * Fires whenever a peer instruction round is reset. + */ public class PiRoundResetEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/SessionEvent.java b/src/main/java/de/thm/arsnova/events/SessionEvent.java index 2c34956c0365d3fcdf37d3fd9a35902eb242558e..9536db104f1af83b8310640adb00c4455b396a6d 100644 --- a/src/main/java/de/thm/arsnova/events/SessionEvent.java +++ b/src/main/java/de/thm/arsnova/events/SessionEvent.java @@ -19,6 +19,9 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.Session; +/** + * Base class for all {@link NovaEvent}s that are related to a session. + */ public abstract class SessionEvent extends NovaEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/StatusSessionEvent.java b/src/main/java/de/thm/arsnova/events/StatusSessionEvent.java index 19034dc9ae13ab7f3ee000cc90d9c99be876a26b..2a2baf65e1da239a3021c68980d095c5a4f158ec 100644 --- a/src/main/java/de/thm/arsnova/events/StatusSessionEvent.java +++ b/src/main/java/de/thm/arsnova/events/StatusSessionEvent.java @@ -19,6 +19,9 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.Session; +/** + * Fires whenever the status of a session changes, i.e., it is enabled or disabled. + */ public class StatusSessionEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/UnlockQuestionEvent.java b/src/main/java/de/thm/arsnova/events/UnlockQuestionEvent.java index acd1b6d0cb5787dd17b9628bd1a21e4d0a79dacb..272f26f6fe7c4b6a22b2d5867db5774a26cb134d 100644 --- a/src/main/java/de/thm/arsnova/events/UnlockQuestionEvent.java +++ b/src/main/java/de/thm/arsnova/events/UnlockQuestionEvent.java @@ -20,6 +20,9 @@ package de.thm.arsnova.events; import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; +/** + * Fires whenever a question is enabled, i.e., it becomes visible to students. + */ public class UnlockQuestionEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/UnlockQuestionsEvent.java b/src/main/java/de/thm/arsnova/events/UnlockQuestionsEvent.java index 5f1e4617e6a2207a8af634ef7daf715792519a99..d8b6a5363b8bb5a0dfe7a295129b6125e1b183ac 100644 --- a/src/main/java/de/thm/arsnova/events/UnlockQuestionsEvent.java +++ b/src/main/java/de/thm/arsnova/events/UnlockQuestionsEvent.java @@ -22,6 +22,9 @@ import java.util.List; import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; +/** + * Fires whenever a set of questions are enabled, i.e., they become visible to students. + */ public class UnlockQuestionsEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/UnlockVoteEvent.java b/src/main/java/de/thm/arsnova/events/UnlockVoteEvent.java index eb8441179fe2124c5a4a351a8df03e24aa457a42..6eb0af7df5eb24d9ebe3b430c8c68bb988e7342d 100644 --- a/src/main/java/de/thm/arsnova/events/UnlockVoteEvent.java +++ b/src/main/java/de/thm/arsnova/events/UnlockVoteEvent.java @@ -22,6 +22,9 @@ import java.util.HashMap; import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; +/** + * Fires whenever voting on a question is enabled. + */ public class UnlockVoteEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/UnlockVotesEvent.java b/src/main/java/de/thm/arsnova/events/UnlockVotesEvent.java index 90ce5127baba0ccbf2accb92d730a59688df513a..231fef7b8c29d2d65752cf6574ba408d1b8c35d3 100644 --- a/src/main/java/de/thm/arsnova/events/UnlockVotesEvent.java +++ b/src/main/java/de/thm/arsnova/events/UnlockVotesEvent.java @@ -22,6 +22,9 @@ import java.util.List; import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.Session; +/** + * Fires whenever voting of multiple questions is enabled. + */ public class UnlockVotesEvent extends SessionEvent { private static final long serialVersionUID = 1L; diff --git a/src/main/java/de/thm/arsnova/events/package-info.java b/src/main/java/de/thm/arsnova/events/package-info.java index acecfa4e5ef8424c1dd8e1c30ee9f49d06cba7e1..838fc4cd66928cc72c857d8cef1f65a2b1fb1cd7 100644 --- a/src/main/java/de/thm/arsnova/events/package-info.java +++ b/src/main/java/de/thm/arsnova/events/package-info.java @@ -1,5 +1,4 @@ /** - * @author Christoph Thelen - * + * ARSnova's internal event system */ package de.thm.arsnova.events; diff --git a/src/main/java/de/thm/arsnova/exceptions/BadRequestException.java b/src/main/java/de/thm/arsnova/exceptions/BadRequestException.java index f2289bf5157b2f9d60e0467023113a4f2a5fa9c5..c9b728742518288d38a567ed398dab1677c6de6a 100644 --- a/src/main/java/de/thm/arsnova/exceptions/BadRequestException.java +++ b/src/main/java/de/thm/arsnova/exceptions/BadRequestException.java @@ -1,5 +1,8 @@ package de.thm.arsnova.exceptions; +/** + * Bad Request means status code 400. + */ public class BadRequestException extends RuntimeException { private static final long serialVersionUID = 1L; } diff --git a/src/main/java/de/thm/arsnova/exceptions/ForbiddenException.java b/src/main/java/de/thm/arsnova/exceptions/ForbiddenException.java index 8f1f74d51b90f97c572c9a72d7043a5ea50c4638..05ed5bf3bb633258cdecade7a5ec1621bfe76752 100644 --- a/src/main/java/de/thm/arsnova/exceptions/ForbiddenException.java +++ b/src/main/java/de/thm/arsnova/exceptions/ForbiddenException.java @@ -1,5 +1,8 @@ package de.thm.arsnova.exceptions; +/** + * Forbidden means status code 403. + */ public class ForbiddenException extends RuntimeException { private static final long serialVersionUID = 1L; } diff --git a/src/main/java/de/thm/arsnova/exceptions/NoContentException.java b/src/main/java/de/thm/arsnova/exceptions/NoContentException.java index adb0e1140eec966d08b85592ca88fc962cb0b84a..f0de3c46c0f629be82b65e8b425d44c410c6e1c6 100644 --- a/src/main/java/de/thm/arsnova/exceptions/NoContentException.java +++ b/src/main/java/de/thm/arsnova/exceptions/NoContentException.java @@ -1,5 +1,8 @@ package de.thm.arsnova.exceptions; +/** + * No Content means status code 204. + */ public class NoContentException extends RuntimeException { private static final long serialVersionUID = 1L; } diff --git a/src/main/java/de/thm/arsnova/exceptions/NotFoundException.java b/src/main/java/de/thm/arsnova/exceptions/NotFoundException.java index caca267d47096bb3d1e3777ff14959f400e5e2e4..0937ebde41a488665a864a5aac53cbc295fd3af5 100644 --- a/src/main/java/de/thm/arsnova/exceptions/NotFoundException.java +++ b/src/main/java/de/thm/arsnova/exceptions/NotFoundException.java @@ -1,5 +1,8 @@ package de.thm.arsnova.exceptions; +/** + * Not Found means status code 404. + */ public class NotFoundException extends RuntimeException { private static final long serialVersionUID = 1L; } diff --git a/src/main/java/de/thm/arsnova/exceptions/NotImplementedException.java b/src/main/java/de/thm/arsnova/exceptions/NotImplementedException.java index 3e05521971c8e5db16a1d3b1e71d2af08c7ad59d..ed5e30f6516458b30faa96adc3010389e6baf57e 100644 --- a/src/main/java/de/thm/arsnova/exceptions/NotImplementedException.java +++ b/src/main/java/de/thm/arsnova/exceptions/NotImplementedException.java @@ -1,5 +1,8 @@ package de.thm.arsnova.exceptions; +/** + * Not Implemented means status code 501. + */ public class NotImplementedException extends RuntimeException { private static final long serialVersionUID = 1L; } diff --git a/src/main/java/de/thm/arsnova/exceptions/PayloadTooLargeException.java b/src/main/java/de/thm/arsnova/exceptions/PayloadTooLargeException.java index 756d8300cf6c514f3142cf7d9a977498fa818420..6562a149b6ddf8e5dc7521ae70ec54165b1be75a 100644 --- a/src/main/java/de/thm/arsnova/exceptions/PayloadTooLargeException.java +++ b/src/main/java/de/thm/arsnova/exceptions/PayloadTooLargeException.java @@ -1,5 +1,8 @@ package de.thm.arsnova.exceptions; +/** + * Payload Too Large means status code 413. + */ public class PayloadTooLargeException extends RuntimeException { private static final long serialVersionUID = 1L; } diff --git a/src/main/java/de/thm/arsnova/exceptions/PreconditionFailedException.java b/src/main/java/de/thm/arsnova/exceptions/PreconditionFailedException.java index 827f0c5bf6899a518217abae5ba93effebe78699..423b3a4f88440f23c6413f02520d17a11b4f5d5b 100644 --- a/src/main/java/de/thm/arsnova/exceptions/PreconditionFailedException.java +++ b/src/main/java/de/thm/arsnova/exceptions/PreconditionFailedException.java @@ -1,5 +1,8 @@ package de.thm.arsnova.exceptions; +/** + * Precondition Failed means status code 412. + */ public class PreconditionFailedException extends RuntimeException { private static final long serialVersionUID = 1L; } diff --git a/src/main/java/de/thm/arsnova/exceptions/UnauthorizedException.java b/src/main/java/de/thm/arsnova/exceptions/UnauthorizedException.java index 4b3e9498408dcf6476029d127e23184e6e33584e..7a4c3dc8a2ef623705b780e29c7d03c167f8fdd9 100644 --- a/src/main/java/de/thm/arsnova/exceptions/UnauthorizedException.java +++ b/src/main/java/de/thm/arsnova/exceptions/UnauthorizedException.java @@ -1,5 +1,8 @@ package de.thm.arsnova.exceptions; +/** + * Unauthorized means status code 401. + */ public class UnauthorizedException extends RuntimeException { private static final long serialVersionUID = 1L; } diff --git a/src/main/java/de/thm/arsnova/exceptions/package-info.java b/src/main/java/de/thm/arsnova/exceptions/package-info.java index 8eb89c8019f1eb2130d93eca2c90b6215046937a..ea831c868e3cc413cf3d9f4dba472116c3ed569d 100644 --- a/src/main/java/de/thm/arsnova/exceptions/package-info.java +++ b/src/main/java/de/thm/arsnova/exceptions/package-info.java @@ -1 +1,4 @@ +/** + * Contains exceptions used to return HTTP status codes + */ package de.thm.arsnova.exceptions; diff --git a/src/main/java/de/thm/arsnova/package-info.java b/src/main/java/de/thm/arsnova/package-info.java index b789ffca356d7378501dd2f890115fedd2e1fdc6..b0aeba268cb560b8c09bcc127d146b1ac6d3bf80 100644 --- a/src/main/java/de/thm/arsnova/package-info.java +++ b/src/main/java/de/thm/arsnova/package-info.java @@ -1 +1,4 @@ +/** + * Miscellaneous classes and interfaces that do not fit in any of the given sub-packages + */ package de.thm.arsnova; diff --git a/src/main/java/de/thm/arsnova/security/ApplicationPermissionEvaluator.java b/src/main/java/de/thm/arsnova/security/ApplicationPermissionEvaluator.java index 167d1dd06e279b86f73e058a3bb712776a8cf187..488f890cc838ed4e653d130d39a1fb8a8acc86c5 100644 --- a/src/main/java/de/thm/arsnova/security/ApplicationPermissionEvaluator.java +++ b/src/main/java/de/thm/arsnova/security/ApplicationPermissionEvaluator.java @@ -36,6 +36,9 @@ import de.thm.arsnova.entities.Session; import de.thm.arsnova.entities.User; import de.thm.arsnova.exceptions.UnauthorizedException; +/** + * Provides access control methods that can be used in annotations. + */ public class ApplicationPermissionEvaluator implements PermissionEvaluator { @Autowired diff --git a/src/main/java/de/thm/arsnova/security/DbUserDetailsService.java b/src/main/java/de/thm/arsnova/security/DbUserDetailsService.java index 0b55e02476ed35c5e3805675059fe604cc89b492..9eb476e8d794ee1d39e0ba17a02a71163e1220c0 100644 --- a/src/main/java/de/thm/arsnova/security/DbUserDetailsService.java +++ b/src/main/java/de/thm/arsnova/security/DbUserDetailsService.java @@ -34,6 +34,9 @@ import org.springframework.stereotype.Service; import de.thm.arsnova.dao.IDatabaseDao; import de.thm.arsnova.entities.DbUser; +/** + * Class to load a user based on the username. + */ @Service public class DbUserDetailsService implements UserDetailsService { @Autowired diff --git a/src/main/java/de/thm/arsnova/services/FeedbackService.java b/src/main/java/de/thm/arsnova/services/FeedbackService.java index 9fadfbd0712f5e0762ee7f7f8d33d56649a365b1..03112362a8f0eaaab6536dfbfd9c2290417c4ce5 100644 --- a/src/main/java/de/thm/arsnova/services/FeedbackService.java +++ b/src/main/java/de/thm/arsnova/services/FeedbackService.java @@ -42,6 +42,9 @@ import de.thm.arsnova.events.NewFeedbackEvent; import de.thm.arsnova.exceptions.NoContentException; import de.thm.arsnova.exceptions.NotFoundException; +/** + * Performs all feedback related operations. + */ @Service public class FeedbackService implements IFeedbackService, ApplicationEventPublisherAware { diff --git a/src/main/java/de/thm/arsnova/services/IFeedbackService.java b/src/main/java/de/thm/arsnova/services/IFeedbackService.java index 8fd8b679ab298a218a8a3933f090168d0af6f915..407f323fddaf8966b5182c335c01150cfbb18913 100644 --- a/src/main/java/de/thm/arsnova/services/IFeedbackService.java +++ b/src/main/java/de/thm/arsnova/services/IFeedbackService.java @@ -20,6 +20,9 @@ package de.thm.arsnova.services; import de.thm.arsnova.entities.Feedback; import de.thm.arsnova.entities.User; +/** + * The functionality the feedback service should provide. + */ public interface IFeedbackService { void cleanFeedbackVotes(); diff --git a/src/main/java/de/thm/arsnova/services/IQuestionService.java b/src/main/java/de/thm/arsnova/services/IQuestionService.java index 521fbd02fdd303bdc4ee9ec591343a9fe5c7d78d..0a2f1fce3b1c1ff30cd71d6a2a44ea8b5dcf5b4e 100644 --- a/src/main/java/de/thm/arsnova/services/IQuestionService.java +++ b/src/main/java/de/thm/arsnova/services/IQuestionService.java @@ -27,6 +27,9 @@ import de.thm.arsnova.entities.Question; import de.thm.arsnova.entities.SortOrder; import de.thm.arsnova.entities.User; +/** + * The functionality the question service should provide. + */ public interface IQuestionService { Question saveQuestion(Question question); diff --git a/src/main/java/de/thm/arsnova/services/ISessionService.java b/src/main/java/de/thm/arsnova/services/ISessionService.java index a46d51a2ae49d082f823fac7b7d961531f20677c..ab4a395af089c95b1b10df0dec667112b4601b34 100644 --- a/src/main/java/de/thm/arsnova/services/ISessionService.java +++ b/src/main/java/de/thm/arsnova/services/ISessionService.java @@ -28,6 +28,9 @@ import de.thm.arsnova.entities.User; import de.thm.arsnova.entities.transport.ImportExportSession; import de.thm.arsnova.entities.transport.LearningProgressValues; +/** + * The functionality the session service should provide. + */ public interface ISessionService { Session getSession(String keyword); diff --git a/src/main/java/de/thm/arsnova/services/IStatisticsService.java b/src/main/java/de/thm/arsnova/services/IStatisticsService.java index a2cbb17534ef4add1e62b415715576f9b348da5b..ca1b2df94b1fa4275677581f4f76d7b80f58a108 100644 --- a/src/main/java/de/thm/arsnova/services/IStatisticsService.java +++ b/src/main/java/de/thm/arsnova/services/IStatisticsService.java @@ -19,6 +19,9 @@ package de.thm.arsnova.services; import de.thm.arsnova.entities.Statistics; +/** + * The functionality the statistics service should provide. + */ public interface IStatisticsService { Statistics getStatistics(); } diff --git a/src/main/java/de/thm/arsnova/services/IUserService.java b/src/main/java/de/thm/arsnova/services/IUserService.java index 6428fb03d00983d5fbe91fd3deff77590bf8ef37..4049a48ac933280cabed6102a340fb6f460f7036 100644 --- a/src/main/java/de/thm/arsnova/services/IUserService.java +++ b/src/main/java/de/thm/arsnova/services/IUserService.java @@ -24,6 +24,9 @@ import java.util.UUID; import de.thm.arsnova.entities.DbUser; import de.thm.arsnova.entities.User; +/** + * The functionality the user service should provide. + */ public interface IUserService { User getCurrentUser(); diff --git a/src/main/java/de/thm/arsnova/services/QuestionService.java b/src/main/java/de/thm/arsnova/services/QuestionService.java index 103b9374bd725f67e440ce5b6790e140419fd55a..4504565269c2e3d79140d08a8199aedd7305ab65 100644 --- a/src/main/java/de/thm/arsnova/services/QuestionService.java +++ b/src/main/java/de/thm/arsnova/services/QuestionService.java @@ -74,6 +74,9 @@ import de.thm.arsnova.exceptions.ForbiddenException; import de.thm.arsnova.exceptions.NotFoundException; import de.thm.arsnova.exceptions.UnauthorizedException; +/** + * Performs all question, interposed question, and answer related operations. + */ @Service public class QuestionService implements IQuestionService, ApplicationEventPublisherAware { diff --git a/src/main/java/de/thm/arsnova/services/SessionService.java b/src/main/java/de/thm/arsnova/services/SessionService.java index 01abb9275e98b637988b3ec5f55dd702b716c776..f9a49bf2fb55819968ed35692de6b853f46d6929 100644 --- a/src/main/java/de/thm/arsnova/services/SessionService.java +++ b/src/main/java/de/thm/arsnova/services/SessionService.java @@ -55,6 +55,9 @@ import de.thm.arsnova.exceptions.NotFoundException; import de.thm.arsnova.exceptions.PayloadTooLargeException; import de.thm.arsnova.exceptions.UnauthorizedException; +/** + * Performs all session related operations. + */ @Service public class SessionService implements ISessionService, ApplicationEventPublisherAware { diff --git a/src/main/java/de/thm/arsnova/services/StatisticsService.java b/src/main/java/de/thm/arsnova/services/StatisticsService.java index 979c03126217bc179a0c2c0985d0a90e2dbcb993..ace061a60e86e771eefe6b01e623b4fa78f963bf 100644 --- a/src/main/java/de/thm/arsnova/services/StatisticsService.java +++ b/src/main/java/de/thm/arsnova/services/StatisticsService.java @@ -23,6 +23,9 @@ import org.springframework.stereotype.Service; import de.thm.arsnova.dao.IDatabaseDao; import de.thm.arsnova.entities.Statistics; +/** + * Performs all statistics related operations. + */ @Service public class StatisticsService implements IStatisticsService { diff --git a/src/main/java/de/thm/arsnova/services/UserService.java b/src/main/java/de/thm/arsnova/services/UserService.java index ced1cd28f6984f6f6a9fb1a45608816fd938ea98..bf0777c9fc24c304279a8b35f77a05e479ebb2a9 100644 --- a/src/main/java/de/thm/arsnova/services/UserService.java +++ b/src/main/java/de/thm/arsnova/services/UserService.java @@ -71,6 +71,9 @@ import de.thm.arsnova.exceptions.BadRequestException; import de.thm.arsnova.exceptions.NotFoundException; import de.thm.arsnova.exceptions.UnauthorizedException; +/** + * Performs all user related operations. + */ @Service public class UserService implements IUserService { diff --git a/src/main/java/de/thm/arsnova/services/UserSessionService.java b/src/main/java/de/thm/arsnova/services/UserSessionService.java index 56b7f7fb39355fb7a2b0e61ea5dccc63791b9f38..03df6b27079c635944a3c0ef02c05edb63b59559 100644 --- a/src/main/java/de/thm/arsnova/services/UserSessionService.java +++ b/src/main/java/de/thm/arsnova/services/UserSessionService.java @@ -22,6 +22,9 @@ import java.util.UUID; import de.thm.arsnova.entities.Session; import de.thm.arsnova.entities.User; +/** + * The functionality the user-session service should provide. + */ public interface UserSessionService { enum Role { diff --git a/src/main/java/de/thm/arsnova/services/UserSessionServiceImpl.java b/src/main/java/de/thm/arsnova/services/UserSessionServiceImpl.java index 9d18f826f2f1411d72fe4432b21d92372838bb9b..98f817773b670a185dac4875014095e178ce9dd5 100644 --- a/src/main/java/de/thm/arsnova/services/UserSessionServiceImpl.java +++ b/src/main/java/de/thm/arsnova/services/UserSessionServiceImpl.java @@ -27,6 +27,9 @@ import org.springframework.stereotype.Component; import de.thm.arsnova.entities.Session; import de.thm.arsnova.entities.User; +/** + * This service is used to assign and check for a specific role. + */ @Component @Scope(value = "session", proxyMode = ScopedProxyMode.TARGET_CLASS) public class UserSessionServiceImpl implements UserSessionService, Serializable { diff --git a/src/main/java/de/thm/arsnova/services/package-info.java b/src/main/java/de/thm/arsnova/services/package-info.java index ff6c1eba938b0bfbed079b7c9d7ceeb621115f6d..d87d15a849a564276d79631c8f75dc5a420e6d3d 100644 --- a/src/main/java/de/thm/arsnova/services/package-info.java +++ b/src/main/java/de/thm/arsnova/services/package-info.java @@ -1 +1,4 @@ +/** + * Classes and interfaces for the service layer + */ package de.thm.arsnova.services; diff --git a/src/main/java/de/thm/arsnova/socket/ARSnovaSocketIOServer.java b/src/main/java/de/thm/arsnova/socket/ARSnovaSocketIOServer.java index bbed7ccefd8ceee56ebf39db836d3154a68920a2..b764d11f0847e49def5a67e29dd0266700108cb1 100644 --- a/src/main/java/de/thm/arsnova/socket/ARSnovaSocketIOServer.java +++ b/src/main/java/de/thm/arsnova/socket/ARSnovaSocketIOServer.java @@ -90,6 +90,9 @@ import de.thm.arsnova.socket.message.Feedback; import de.thm.arsnova.socket.message.Question; import de.thm.arsnova.socket.message.Session; +/** + * Web socket implementation based on Socket.io. + */ @Component public class ARSnovaSocketIOServer implements ARSnovaSocket, NovaEventVisitor { diff --git a/src/main/java/de/thm/arsnova/socket/message/Feedback.java b/src/main/java/de/thm/arsnova/socket/message/Feedback.java index 58ea04f774e65c2bcbd9b28cc07358c898e69a0d..b7ca3899b553ba5a01b4caefa0f08fa9e9fce71f 100644 --- a/src/main/java/de/thm/arsnova/socket/message/Feedback.java +++ b/src/main/java/de/thm/arsnova/socket/message/Feedback.java @@ -17,6 +17,9 @@ */ package de.thm.arsnova.socket.message; +/** + * The feedback values. + */ public class Feedback { private int value; diff --git a/src/main/java/de/thm/arsnova/socket/message/Question.java b/src/main/java/de/thm/arsnova/socket/message/Question.java index e47c72d12395c35c084c057260a0b40bc0fef619..0481221866c3dc715933d7dc0af419c69ac77578 100644 --- a/src/main/java/de/thm/arsnova/socket/message/Question.java +++ b/src/main/java/de/thm/arsnova/socket/message/Question.java @@ -17,6 +17,9 @@ */ package de.thm.arsnova.socket.message; +/** + * Represents a question. + */ public class Question { private final String _id; diff --git a/src/main/java/de/thm/arsnova/socket/message/Session.java b/src/main/java/de/thm/arsnova/socket/message/Session.java index 83688e24d4fd98ae7ade17024ca9709b1808b23e..15f49d7fef918c2d044421a29fd88c923074be16 100644 --- a/src/main/java/de/thm/arsnova/socket/message/Session.java +++ b/src/main/java/de/thm/arsnova/socket/message/Session.java @@ -17,6 +17,9 @@ */ package de.thm.arsnova.socket.message; +/** + * Represents a session. + */ public class Session { private String keyword; diff --git a/src/main/java/de/thm/arsnova/socket/message/package-info.java b/src/main/java/de/thm/arsnova/socket/message/package-info.java index 8267a40404236cc5ca088172168a378698fbe453..98beea04a699cb10d38d1a3d1cac7edf0cef847c 100644 --- a/src/main/java/de/thm/arsnova/socket/message/package-info.java +++ b/src/main/java/de/thm/arsnova/socket/message/package-info.java @@ -1 +1,4 @@ +/** + * Contains classes that are used as web socket messages + */ package de.thm.arsnova.socket.message; diff --git a/src/main/java/de/thm/arsnova/socket/package-info.java b/src/main/java/de/thm/arsnova/socket/package-info.java index 93c3360d8652f3adb4e2cae9a188620e6f14bc7f..d4f65e727417e57da0546892bab342168a7d09d4 100644 --- a/src/main/java/de/thm/arsnova/socket/package-info.java +++ b/src/main/java/de/thm/arsnova/socket/package-info.java @@ -1 +1,4 @@ +/** + * Classes and interfaces for communication over web sockets + */ package de.thm.arsnova.socket; diff --git a/src/main/java/de/thm/arsnova/web/CacheControl.java b/src/main/java/de/thm/arsnova/web/CacheControl.java index a391c980e85966e377a630f6cc845e3e09ba3bcd..c11893b576b678c145637519e6a7ecaaa72e9ba7 100644 --- a/src/main/java/de/thm/arsnova/web/CacheControl.java +++ b/src/main/java/de/thm/arsnova/web/CacheControl.java @@ -22,6 +22,9 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; +/** + * Allows specifying HTTP cache headers. + */ @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface CacheControl { diff --git a/src/main/java/de/thm/arsnova/web/CacheControlInterceptorHandler.java b/src/main/java/de/thm/arsnova/web/CacheControlInterceptorHandler.java index 7546eb16db517574711d0ded215a9f009b89f95f..7c721d6a720cdd641e46c15798a71627bc2defed 100644 --- a/src/main/java/de/thm/arsnova/web/CacheControlInterceptorHandler.java +++ b/src/main/java/de/thm/arsnova/web/CacheControlInterceptorHandler.java @@ -24,6 +24,9 @@ import org.springframework.stereotype.Component; import org.springframework.web.method.HandlerMethod; import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; +/** + * Adds caching headers to a HTTP request based on {@link CacheControl} annotation. + */ @Component public class CacheControlInterceptorHandler extends HandlerInterceptorAdapter { diff --git a/src/main/java/de/thm/arsnova/web/CorsFilter.java b/src/main/java/de/thm/arsnova/web/CorsFilter.java index 49c65a3461040767add009f80a1b3855ac4cf76f..a250689f22770073b0cf9fb71a6a14126cf386f5 100644 --- a/src/main/java/de/thm/arsnova/web/CorsFilter.java +++ b/src/main/java/de/thm/arsnova/web/CorsFilter.java @@ -27,6 +27,9 @@ import javax.servlet.http.HttpServletResponse; import org.springframework.stereotype.Component; import org.springframework.web.filter.OncePerRequestFilter; +/** + * Sets response headers to allow CORS requests. + */ @Component public class CorsFilter extends OncePerRequestFilter { diff --git a/src/main/java/de/thm/arsnova/web/DeprecatedApi.java b/src/main/java/de/thm/arsnova/web/DeprecatedApi.java index 763442d33e0d6a28ba480bcbeb6001081709d697..63db68586f52a2af797e7bd72a4e626062dd3cc5 100644 --- a/src/main/java/de/thm/arsnova/web/DeprecatedApi.java +++ b/src/main/java/de/thm/arsnova/web/DeprecatedApi.java @@ -22,6 +22,9 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; +/** + * Annotation to denote the deprecation of a controller method. + */ @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface DeprecatedApi { diff --git a/src/main/java/de/thm/arsnova/web/DeprecatedApiInterceptorHandler.java b/src/main/java/de/thm/arsnova/web/DeprecatedApiInterceptorHandler.java index edbd54ccf1bdd9783974e11376ee1a1d1ade7e2e..d7b7d81078269eebd45b80a52b6673f8aa95a2c7 100644 --- a/src/main/java/de/thm/arsnova/web/DeprecatedApiInterceptorHandler.java +++ b/src/main/java/de/thm/arsnova/web/DeprecatedApiInterceptorHandler.java @@ -24,6 +24,10 @@ import org.springframework.stereotype.Component; import org.springframework.web.method.HandlerMethod; import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; +/** + * Adds a "deprecated" header to any HTTP response that is served by a controller method with the {@link DeprecatedApi} + * annotation. + */ @Component public class DeprecatedApiInterceptorHandler extends HandlerInterceptorAdapter { diff --git a/src/main/java/de/thm/arsnova/web/package-info.java b/src/main/java/de/thm/arsnova/web/package-info.java new file mode 100644 index 0000000000000000000000000000000000000000..c22db2a2257baadce499d0129eb9529b9a5d77af --- /dev/null +++ b/src/main/java/de/thm/arsnova/web/package-info.java @@ -0,0 +1,4 @@ +/** + * Contains HTTP related classes and interfaces + */ +package de.thm.arsnova.web;