diff --git a/checkstyle.xml b/checkstyle.xml index 89f130ae3dbb0a54965d330c4a65818c1ac7771c..b95092f43b6e811e7950451ef132fc91ca246dbe 100644 --- a/checkstyle.xml +++ b/checkstyle.xml @@ -271,5 +271,11 @@ <property name="exceptionVariableName" value="expected"/> </module> <module name="CommentsIndentation"/> + + <!-- ARSnova-specific rules --> + <module name="FinalLocalVariable"> + <property name="tokens" value="VARIABLE_DEF,PARAMETER_DEF"/> + <property name="validateEnhancedForLoopVariable" value="true"/> + </module> </module> </module> diff --git a/src/main/java/de/thm/arsnova/cache/CacheBusterImpl.java b/src/main/java/de/thm/arsnova/cache/CacheBusterImpl.java index 2eb5a718b31dcb409dfcd001019c9c037040d821..4d8a7ed9289f6979627e961cd53ffe925b2aff60 100644 --- a/src/main/java/de/thm/arsnova/cache/CacheBusterImpl.java +++ b/src/main/java/de/thm/arsnova/cache/CacheBusterImpl.java @@ -38,37 +38,37 @@ public class CacheBusterImpl implements CacheBuster { @CacheEvict(value = "statistics", allEntries = true) @EventListener - public void handleAfterCommentCreation(AfterCreationEvent<Comment> event) { + public void handleAfterCommentCreation(final AfterCreationEvent<Comment> event) { } @CacheEvict(value = "statistics", allEntries = true) @EventListener - public void handleAfterCommentDeletion(AfterDeletionEvent<Comment> event) { + public void handleAfterCommentDeletion(final AfterDeletionEvent<Comment> event) { } @CacheEvict(value = "answerlists", key = "#event.content.id") @EventListener - public void handleAfterAnswerCreation(AfterCreationEvent<Answer> event) { + public void handleAfterAnswerCreation(final AfterCreationEvent<Answer> event) { } @CacheEvict(value = "statistics", allEntries = true) @EventListener - public void handleChangeScore(ChangeScoreEvent event) { + public void handleChangeScore(final ChangeScoreEvent event) { } @CacheEvict(value = "statistics", allEntries = true) @EventListener - public void handleAfterRoomCreation(AfterCreationEvent<Room> event) { + public void handleAfterRoomCreation(final AfterCreationEvent<Room> event) { } @CacheEvict(value = "statistics", allEntries = true) @EventListener - public void handleAfterRoomDeletion(AfterDeletionEvent<Room> event) { + public void handleAfterRoomDeletion(final AfterDeletionEvent<Room> event) { } } diff --git a/src/main/java/de/thm/arsnova/config/AppConfig.java b/src/main/java/de/thm/arsnova/config/AppConfig.java index ec88034756b958d5be953a4c240c307a023e6605..fc360c599a66a0a15f3e026c7ac4e00050508e4f 100644 --- a/src/main/java/de/thm/arsnova/config/AppConfig.java +++ b/src/main/java/de/thm/arsnova/config/AppConfig.java @@ -122,7 +122,7 @@ public class AppConfig implements WebMvcConfigurer { @Value(value = "${api.indent-response-body:false}") private boolean apiIndent; @Override - public void configureMessageConverters(List<HttpMessageConverter<?>> converters) { + public void configureMessageConverters(final List<HttpMessageConverter<?>> converters) { converters.add(defaultJsonMessageConverter()); converters.add(apiV2JsonMessageConverter()); converters.add(stringMessageConverter()); @@ -130,8 +130,8 @@ public class AppConfig implements WebMvcConfigurer { } @Override - public void configureContentNegotiation(ContentNegotiationConfigurer configurer) { - PathApiVersionContentNegotiationStrategy strategy = + public void configureContentNegotiation(final ContentNegotiationConfigurer configurer) { + final PathApiVersionContentNegotiationStrategy strategy = new PathApiVersionContentNegotiationStrategy(API_V3_MEDIA_TYPE); configurer.mediaType("json", MediaType.APPLICATION_JSON_UTF8); configurer.mediaType("xml", MediaType.APPLICATION_XML); @@ -147,19 +147,19 @@ public class AppConfig implements WebMvcConfigurer { } @Override - public void configureViewResolvers(ViewResolverRegistry registry) { + public void configureViewResolvers(final ViewResolverRegistry registry) { registry.viewResolver(new InternalResourceViewResolver()); } @Override - public void addInterceptors(InterceptorRegistry registry) { + public void addInterceptors(final InterceptorRegistry registry) { registry.addInterceptor(cacheControlInterceptorHandler()); registry.addInterceptor(deprecatedApiInterceptorHandler()); registry.addInterceptor(responseInterceptorHandler()); } @Override - public void addResourceHandlers(ResourceHandlerRegistry registry) { + public void addResourceHandlers(final ResourceHandlerRegistry registry) { registry.addResourceHandler("swagger.json").addResourceLocations("classpath:/"); } @@ -180,10 +180,10 @@ public class AppConfig implements WebMvcConfigurer { @Bean public StringHttpMessageConverter stringMessageConverter() { - StringHttpMessageConverter messageConverter = new StringHttpMessageConverter(); + final StringHttpMessageConverter messageConverter = new StringHttpMessageConverter(); messageConverter.setDefaultCharset(Charset.forName("UTF-8")); messageConverter.setWriteAcceptCharset(false); - List<MediaType> mediaTypes = new ArrayList<>(); + final List<MediaType> mediaTypes = new ArrayList<>(); mediaTypes.add(MediaType.TEXT_PLAIN); messageConverter.setSupportedMediaTypes(mediaTypes); @@ -192,16 +192,16 @@ public class AppConfig implements WebMvcConfigurer { @Bean public MappingJackson2HttpMessageConverter defaultJsonMessageConverter() { - Jackson2ObjectMapperBuilder builder = new Jackson2ObjectMapperBuilder(); + final Jackson2ObjectMapperBuilder builder = new Jackson2ObjectMapperBuilder(); builder .serializationInclusion(JsonInclude.Include.NON_EMPTY) .defaultViewInclusion(false) .indentOutput(apiIndent) .simpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ"); - ObjectMapper mapper = builder.build(); + final ObjectMapper mapper = builder.build(); mapper.setConfig(mapper.getSerializationConfig().withView(View.Public.class)); - MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter(mapper); - List<MediaType> mediaTypes = new ArrayList<>(); + final MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter(mapper); + final List<MediaType> mediaTypes = new ArrayList<>(); mediaTypes.add(API_V3_MEDIA_TYPE); mediaTypes.add(MediaType.APPLICATION_JSON_UTF8); converter.setSupportedMediaTypes(mediaTypes); @@ -211,7 +211,7 @@ public class AppConfig implements WebMvcConfigurer { @Bean public MappingJackson2HttpMessageConverter apiV2JsonMessageConverter() { - Jackson2ObjectMapperBuilder builder = new Jackson2ObjectMapperBuilder(); + final Jackson2ObjectMapperBuilder builder = new Jackson2ObjectMapperBuilder(); builder .serializationInclusion(JsonInclude.Include.NON_NULL) .defaultViewInclusion(false) @@ -219,10 +219,10 @@ public class AppConfig implements WebMvcConfigurer { .featuresToEnable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS) .featuresToEnable(SerializationFeature.WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS) .modules(new CouchDbDocumentModule()); - ObjectMapper mapper = builder.build(); + final ObjectMapper mapper = builder.build(); mapper.setConfig(mapper.getSerializationConfig().withView(View.Public.class)); - MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter(mapper); - List<MediaType> mediaTypes = new ArrayList<>(); + final MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter(mapper); + final List<MediaType> mediaTypes = new ArrayList<>(); mediaTypes.add(API_V2_MEDIA_TYPE); mediaTypes.add(MediaType.APPLICATION_JSON_UTF8); converter.setSupportedMediaTypes(mediaTypes); @@ -240,7 +240,7 @@ public class AppConfig implements WebMvcConfigurer { @Bean public PropertiesFactoryBean versionInfoProperties() { - PropertiesFactoryBean propertiesFactoryBean = new PropertiesFactoryBean(); + final PropertiesFactoryBean propertiesFactoryBean = new PropertiesFactoryBean(); propertiesFactoryBean.setLocation(new ClassPathResource("version.properties")); return propertiesFactoryBean; diff --git a/src/main/java/de/thm/arsnova/config/AppInitializer.java b/src/main/java/de/thm/arsnova/config/AppInitializer.java index 780b342f0c028deb681ef513916034af76dee41a..74e069a743af0bc36b2bebd1e8cd6df9426a6c7b 100644 --- a/src/main/java/de/thm/arsnova/config/AppInitializer.java +++ b/src/main/java/de/thm/arsnova/config/AppInitializer.java @@ -49,10 +49,10 @@ public class AppInitializer extends AbstractAnnotationConfigDispatcherServletIni @Override protected Filter[] getServletFilters() { - CharacterEncodingFilter characterEncodingFilter = new CharacterEncodingFilter("UTF-8"); - DelegatingFilterProxy corsFilter = new DelegatingFilterProxy("corsFilter"); - DelegatingFilterProxy maintenanceModeFilter = new DelegatingFilterProxy("maintenanceModeFilter"); - DelegatingFilterProxy v2ContentTypeOverrideFilter = new DelegatingFilterProxy("v2ContentTypeOverrideFilter"); + final CharacterEncodingFilter characterEncodingFilter = new CharacterEncodingFilter("UTF-8"); + final DelegatingFilterProxy corsFilter = new DelegatingFilterProxy("corsFilter"); + final DelegatingFilterProxy maintenanceModeFilter = new DelegatingFilterProxy("maintenanceModeFilter"); + final DelegatingFilterProxy v2ContentTypeOverrideFilter = new DelegatingFilterProxy("v2ContentTypeOverrideFilter"); return new Filter[] { characterEncodingFilter, diff --git a/src/main/java/de/thm/arsnova/config/SecurityConfig.java b/src/main/java/de/thm/arsnova/config/SecurityConfig.java index eb10e7ff92b5d42f44e04a818d9b92f68de7528d..bd832e20f6d7c258bc31bd964851f0d4df1d679a 100644 --- a/src/main/java/de/thm/arsnova/config/SecurityConfig.java +++ b/src/main/java/de/thm/arsnova/config/SecurityConfig.java @@ -144,7 +144,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { public class HttpSecurityConfig extends WebSecurityConfigurerAdapter { @Override - protected void configure(HttpSecurity http) throws Exception { + protected void configure(final HttpSecurity http) throws Exception { http.exceptionHandling().authenticationEntryPoint(restAuthenticationEntryPoint()); http.csrf().disable(); http.headers().addHeaderWriter(new HstsHeaderWriter(false)); @@ -166,7 +166,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Profile("!test") public class StatelessHttpSecurityConfig extends HttpSecurityConfig { @Override - protected void configure(HttpSecurity http) throws Exception { + protected void configure(final HttpSecurity http) throws Exception { super.configure(http); http.antMatcher("/**"); http.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS); @@ -178,7 +178,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Profile("!test") public class StatefulHttpSecurityConfig extends HttpSecurityConfig { @Override - protected void configure(HttpSecurity http) throws Exception { + protected void configure(final HttpSecurity http) throws Exception { super.configure(http); http.antMatcher("/v2/**"); http.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.IF_REQUIRED); @@ -190,8 +190,8 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { public class MethodSecurityConfig extends GlobalMethodSecurityConfiguration { @Override protected RunAsManager runAsManager() { - StringKeyGenerator keyGenerator = new Base64StringKeyGenerator(); - RunAsManagerImpl runAsManager = new RunAsManagerImpl(); + final StringKeyGenerator keyGenerator = new Base64StringKeyGenerator(); + final RunAsManagerImpl runAsManager = new RunAsManagerImpl(); /* Since RunAsTokens should currently only be used internally, we generate a random key. */ runAsManager.setKey(RUN_AS_KEY_PREFIX + keyGenerator.generateKey()); @@ -207,8 +207,8 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { } @Override - protected void configure(AuthenticationManagerBuilder auth) throws Exception { - List<String> providers = new ArrayList<>(); + protected void configure(final AuthenticationManagerBuilder auth) throws Exception { + final List<String> providers = new ArrayList<>(); auth.authenticationProvider(jwtAuthenticationProvider()); if (ldapEnabled) { providers.add("ldap"); @@ -270,7 +270,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Bean public JwtTokenFilter jwtTokenFilter() throws Exception { - JwtTokenFilter jwtTokenFilter = new JwtTokenFilter(); + final JwtTokenFilter jwtTokenFilter = new JwtTokenFilter(); return jwtTokenFilter; } @@ -320,7 +320,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Bean public LdapAuthenticationProvider ldapAuthenticationProvider() { - LdapAuthenticationProvider ldapAuthenticationProvider = + final LdapAuthenticationProvider ldapAuthenticationProvider = new LdapAuthenticationProvider(ldapAuthenticator(), ldapAuthoritiesPopulator()); ldapAuthenticationProvider.setUserDetailsContextMapper(customLdapUserDetailsMapper()); @@ -329,7 +329,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Bean public LdapContextSource ldapContextSource() { - DefaultSpringSecurityContextSource contextSource = new DefaultSpringSecurityContextSource(ldapUrl); + final DefaultSpringSecurityContextSource contextSource = new DefaultSpringSecurityContextSource(ldapUrl); /* TODO: implement support for LDAP bind using manager credentials */ if (!"".equals(ldapManagerUserDn) && !"".equals(ldapManagerPassword)) { logger.debug("ldapManagerUserDn: {}", ldapManagerUserDn); @@ -342,7 +342,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Bean public LdapAuthenticator ldapAuthenticator() { - BindAuthenticator authenticator = new BindAuthenticator(ldapContextSource()); + final BindAuthenticator authenticator = new BindAuthenticator(ldapContextSource()); authenticator.setUserAttributes(new String[] {ldapUserIdAttr}); if (!"".equals(ldapSearchFilter)) { logger.debug("ldapSearch: {} {}", ldapSearchBase, ldapSearchFilter); @@ -371,7 +371,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Bean public CasAuthenticationProvider casAuthenticationProvider() { - CasAuthenticationProvider authProvider = new CasAuthenticationProvider(); + final CasAuthenticationProvider authProvider = new CasAuthenticationProvider(); authProvider.setAuthenticationUserDetailsService(casUserDetailsService()); authProvider.setServiceProperties(casServiceProperties()); authProvider.setTicketValidator(casTicketValidator()); @@ -387,7 +387,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Bean public ServiceProperties casServiceProperties() { - ServiceProperties properties = new ServiceProperties(); + final ServiceProperties properties = new ServiceProperties(); properties.setService(rootUrl + apiPath + CAS_LOGIN_PATH_SUFFIX); properties.setSendRenew(false); @@ -401,7 +401,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Bean public CasAuthenticationEntryPoint casAuthenticationEntryPoint() { - CasAuthenticationEntryPoint entryPoint = new CasAuthenticationEntryPoint(); + final CasAuthenticationEntryPoint entryPoint = new CasAuthenticationEntryPoint(); entryPoint.setLoginUrl(casUrl + "/login"); entryPoint.setServiceProperties(casServiceProperties()); @@ -410,7 +410,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Bean public CasAuthenticationFilter casAuthenticationFilter() throws Exception { - CasAuthenticationFilter filter = new CasAuthenticationFilter(); + final CasAuthenticationFilter filter = new CasAuthenticationFilter(); filter.setAuthenticationManager(authenticationManager()); filter.setServiceProperties(casServiceProperties()); filter.setFilterProcessesUrl("/**" + CAS_LOGIN_PATH_SUFFIX); @@ -422,7 +422,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Bean public LogoutFilter casLogoutFilter() { - LogoutFilter filter = new LogoutFilter(casLogoutSuccessHandler(), logoutHandler()); + final LogoutFilter filter = new LogoutFilter(casLogoutSuccessHandler(), logoutHandler()); filter.setLogoutRequestMatcher(new AntPathRequestMatcher("/**" + CAS_LOGOUT_PATH_SUFFIX)); return filter; @@ -430,7 +430,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Bean public LogoutSuccessHandler casLogoutSuccessHandler() { - CasLogoutSuccessHandler handler = new CasLogoutSuccessHandler(); + final CasLogoutSuccessHandler handler = new CasLogoutSuccessHandler(); handler.setCasUrl(casUrl); handler.setDefaultTarget(rootUrl); @@ -441,7 +441,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Bean public Config oauthConfig() { - List<Client> clients = new ArrayList<>(); + final List<Client> clients = new ArrayList<>(); if (oidcEnabled) { clients.add(oidcClient()); } @@ -460,7 +460,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Bean public OauthCallbackFilter oauthCallbackFilter() throws Exception { - OauthCallbackFilter callbackFilter = new OauthCallbackFilter(oauthConfig()); + final OauthCallbackFilter callbackFilter = new OauthCallbackFilter(oauthConfig()); callbackFilter.setAuthenticationManager(authenticationManager()); callbackFilter.setFilterProcessesUrl("/**" + OAUTH_CALLBACK_PATH_SUFFIX); @@ -474,12 +474,12 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Bean public OidcClient oidcClient() { - OidcConfiguration config = new OidcConfiguration(); + final OidcConfiguration config = new OidcConfiguration(); config.setDiscoveryURI(oidcIssuer + OIDC_DISCOVERY_PATH_SUFFIX); config.setClientId(oidcClientId); config.setSecret(oidcSecret); config.setScope("openid"); - OidcClient client = new OidcClient(config); + final OidcClient client = new OidcClient(config); client.setCallbackUrl(rootUrl + apiPath + OAUTH_CALLBACK_PATH_SUFFIX + "?client_name=OidcClient"); return client; @@ -503,7 +503,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Bean public GoogleOidcClient googleClient() { - OidcConfiguration config = new OidcConfiguration(); + final OidcConfiguration config = new OidcConfiguration(); config.setClientId(googleKey); config.setSecret(googleSecret); config.setScope("openid email"); diff --git a/src/main/java/de/thm/arsnova/config/WebSocketConfig.java b/src/main/java/de/thm/arsnova/config/WebSocketConfig.java index f8dd3dee2cc43c38cf04d13f4d69e079e26e99c5..e2dee780a5049239adf638361ab6a95acdddf296 100644 --- a/src/main/java/de/thm/arsnova/config/WebSocketConfig.java +++ b/src/main/java/de/thm/arsnova/config/WebSocketConfig.java @@ -29,12 +29,12 @@ public class WebSocketConfig implements WebSocketMessageBrokerConfigurer { @Value(value = "${security.cors.origins:}") private String[] corsOrigins; @Autowired - public WebSocketConfig(AuthChannelInterceptorAdapter authChannelInterceptorAdapter) { + public WebSocketConfig(final AuthChannelInterceptorAdapter authChannelInterceptorAdapter) { this.authChannelInterceptorAdapter = authChannelInterceptorAdapter; } @Override - public void configureMessageBroker(MessageBrokerRegistry config) { + public void configureMessageBroker(final MessageBrokerRegistry config) { config.setApplicationDestinationPrefixes(MESSAGING_PREFIX); if (relayEnabled) { @@ -52,12 +52,12 @@ public class WebSocketConfig implements WebSocketMessageBrokerConfigurer { } @Override - public void registerStompEndpoints(StompEndpointRegistry registry) { + public void registerStompEndpoints(final StompEndpointRegistry registry) { registry.addEndpoint("/ws").setAllowedOrigins(corsOrigins).withSockJS(); } @Override - public void configureClientInboundChannel(ChannelRegistration registration) { + public void configureClientInboundChannel(final ChannelRegistration registration) { registration.setInterceptors(authChannelInterceptorAdapter); } } diff --git a/src/main/java/de/thm/arsnova/controller/AbstractEntityController.java b/src/main/java/de/thm/arsnova/controller/AbstractEntityController.java index f87c4fc5c50f675f1e7a10a4cc7eb8c6110abb9a..fd32ace4749879a219401083605fee05114b6db4 100644 --- a/src/main/java/de/thm/arsnova/controller/AbstractEntityController.java +++ b/src/main/java/de/thm/arsnova/controller/AbstractEntityController.java @@ -98,7 +98,7 @@ public abstract class AbstractEntityController<E extends Entity> { @PutMapping(PUT_MAPPING) public E put(@RequestBody final E entity, final HttpServletResponse httpServletResponse) { - E oldEntity = entityService.get(entity.getId()); + final E oldEntity = entityService.get(entity.getId()); entityService.update(oldEntity, entity); httpServletResponse.setHeader(ENTITY_ID_HEADER, entity.getId()); httpServletResponse.setHeader(ENTITY_REVISION_HEADER, entity.getRevision()); @@ -134,7 +134,7 @@ public abstract class AbstractEntityController<E extends Entity> { @PatchMapping(PATCH_MAPPING) public E patch(@PathVariable final String id, @RequestBody final Map<String, Object> changes, final HttpServletResponse httpServletResponse) throws IOException { - E entity = entityService.get(id); + final E entity = entityService.get(id); entityService.patch(entity, changes); httpServletResponse.setHeader(ENTITY_ID_HEADER, entity.getId()); httpServletResponse.setHeader(ENTITY_REVISION_HEADER, entity.getRevision()); @@ -144,7 +144,7 @@ public abstract class AbstractEntityController<E extends Entity> { @DeleteMapping(DELETE_MAPPING) public void delete(@PathVariable final String id) { - E entity = entityService.get(id); + final E entity = entityService.get(id); entityService.delete(entity); } @@ -152,7 +152,7 @@ public abstract class AbstractEntityController<E extends Entity> { public Iterable<E> find(@RequestBody final FindQuery<E> findQuery) throws OperationNotSupportedException { if (findQueryService != null) { logger.debug("Resolving find query: {}", findQuery); - Set<String> ids = findQueryService.resolveQuery(findQuery); + final Set<String> ids = findQueryService.resolveQuery(findQuery); logger.debug("Resolved find query to IDs: {}", ids); return entityService.get(ids); @@ -162,8 +162,8 @@ public abstract class AbstractEntityController<E extends Entity> { } @RequestMapping(value = {DEFAULT_ALIAS_MAPPING, DEFAULT_ALIAS_MAPPING + ALIAS_SUBPATH}) - public void forwardAlias(@PathVariable final String alias, @PathVariable(required = false) String subPath, - HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) + public void forwardAlias(@PathVariable final String alias, @PathVariable(required = false) final String subPath, + final HttpServletRequest httpServletRequest, final HttpServletResponse httpServletResponse) throws ServletException, IOException { final String targetPath = String.format( "%s/%s%s", getMapping(), resolveAlias(alias), subPath != null ? "/" + subPath : ""); diff --git a/src/main/java/de/thm/arsnova/controller/AuthenticationController.java b/src/main/java/de/thm/arsnova/controller/AuthenticationController.java index f9bd848ac838c1610d325d7d6ca972e24e1f202b..7c7df3663b54acfed83a8525134117b2375604e5 100644 --- a/src/main/java/de/thm/arsnova/controller/AuthenticationController.java +++ b/src/main/java/de/thm/arsnova/controller/AuthenticationController.java @@ -44,7 +44,7 @@ public class AuthenticationController { } @PostMapping("/login/registered") - public ClientAuthentication loginRegistered(@RequestBody LoginCredentials loginCredentials) { + public ClientAuthentication loginRegistered(@RequestBody final LoginCredentials loginCredentials) { final String loginId = loginCredentials.getLoginId().toLowerCase(); userService.authenticate(new UsernamePasswordAuthenticationToken(loginId, loginCredentials.getPassword()), UserProfile.AuthProvider.ARSNOVA); diff --git a/src/main/java/de/thm/arsnova/controller/ConfigurationController.java b/src/main/java/de/thm/arsnova/controller/ConfigurationController.java index 6a69d8b279af5afa80a79afae8edd5db7e0c082d..b530717f037e343c110ce2ac3bac877821b1b14e 100644 --- a/src/main/java/de/thm/arsnova/controller/ConfigurationController.java +++ b/src/main/java/de/thm/arsnova/controller/ConfigurationController.java @@ -162,7 +162,7 @@ public class ConfigurationController extends AbstractController { @RequestMapping(method = RequestMethod.GET) @ResponseBody - public Map<String, Object> getConfiguration(HttpServletRequest request) { + public Map<String, Object> getConfiguration(final HttpServletRequest request) { final Map<String, Object> config = new HashMap<>(); final Map<String, Boolean> features = new HashMap<>(); final Map<String, String> publicPool = new HashMap<>(); @@ -269,7 +269,7 @@ public class ConfigurationController extends AbstractController { } if (!"".equals(trackingTrackerUrl)) { - Map<String, String> tracking = new HashMap<>(); + final Map<String, String> tracking = new HashMap<>(); config.put("tracking", tracking); tracking.put("provider", trackingProvider); diff --git a/src/main/java/de/thm/arsnova/controller/ControllerExceptionHelper.java b/src/main/java/de/thm/arsnova/controller/ControllerExceptionHelper.java index 55972994e779bcc1972decec9ed66d5319f7d17e..ea7336c0674cfa002a85c46884088e8fec7d9268 100644 --- a/src/main/java/de/thm/arsnova/controller/ControllerExceptionHelper.java +++ b/src/main/java/de/thm/arsnova/controller/ControllerExceptionHelper.java @@ -34,7 +34,7 @@ public class ControllerExceptionHelper { /* Since exception messages might contain sensitive data, they are not exposed by default. */ @Value("${api.expose-error-messages:false}") private boolean exposeMessages; - protected Map<String, Object> handleException(@NonNull Throwable e, @NonNull Level level) { + protected Map<String, Object> handleException(@NonNull final Throwable e, @NonNull final Level level) { final String message = e.getMessage() != null ? e.getMessage() : ""; log(level, message, e); final Map<String, Object> result = new HashMap<>(); @@ -46,7 +46,7 @@ public class ControllerExceptionHelper { return result; } - private void log(Level level, String message, Throwable e) { + private void log(final Level level, final String message, final Throwable e) { switch (level) { case ERROR: logger.error(message, e); diff --git a/src/main/java/de/thm/arsnova/controller/PaginationController.java b/src/main/java/de/thm/arsnova/controller/PaginationController.java index 3f0983db48f00d45265304206d6f93081aa15c15..e51e9806c2e65b55be6d5e2145285095e7d37557 100644 --- a/src/main/java/de/thm/arsnova/controller/PaginationController.java +++ b/src/main/java/de/thm/arsnova/controller/PaginationController.java @@ -25,7 +25,7 @@ public abstract class PaginationController extends AbstractController { protected int offset = -1; protected int limit = -1; - public void setRange(int start, int end) { + public void setRange(final int start, final int end) { this.offset = start; this.limit = end != -1 && start <= end ? end - start + 1 : -1; } diff --git a/src/main/java/de/thm/arsnova/controller/UserController.java b/src/main/java/de/thm/arsnova/controller/UserController.java index cd6519a23a2498c3364be3567c381ec3e3718b4e..fb8880f249752cbc05a0b385ba0b81dfce4cd01c 100644 --- a/src/main/java/de/thm/arsnova/controller/UserController.java +++ b/src/main/java/de/thm/arsnova/controller/UserController.java @@ -95,7 +95,7 @@ public class UserController extends AbstractEntityController<UserProfile> { } @PostMapping(REGISTER_MAPPING) - public void register(@RequestBody LoginCredentials loginCredentials) { + public void register(@RequestBody final LoginCredentials loginCredentials) { if (userService.create(loginCredentials.getLoginId(), loginCredentials.getPassword()) == null) { throw new ForbiddenException(); } @@ -105,7 +105,7 @@ public class UserController extends AbstractEntityController<UserProfile> { public void activate( @PathVariable final String id, @RequestParam final String key) { - UserProfile userProfile = userService.get(id, true); + final UserProfile userProfile = userService.get(id, true); if (userProfile == null || !key.equals(userProfile.getAccount().getActivationKey())) { throw new BadRequestException(); } @@ -117,7 +117,7 @@ public class UserController extends AbstractEntityController<UserProfile> { public void resetPassword( @PathVariable final String id, @RequestBody final PasswordReset passwordReset) { - UserProfile userProfile = userService.get(id, true); + final UserProfile userProfile = userService.get(id, true); if (userProfile == null) { throw new BadRequestException(); } diff --git a/src/main/java/de/thm/arsnova/controller/WelcomeController.java b/src/main/java/de/thm/arsnova/controller/WelcomeController.java index 779d9a2a0190a5b12675acd515720d54034f89b0..8ce005e5084572e210ef09a8a299c45576ef8296 100644 --- a/src/main/java/de/thm/arsnova/controller/WelcomeController.java +++ b/src/main/java/de/thm/arsnova/controller/WelcomeController.java @@ -94,21 +94,21 @@ public class WelcomeController extends AbstractController { if (addr.isSiteLocalAddress()) { throw new BadRequestException("Access to site-local addresses not allowed."); } - } catch (UnknownHostException | MalformedURLException e) { + } catch (final UnknownHostException | MalformedURLException e) { throw new BadRequestException(); } - RestTemplate restTemplate = new RestTemplate(); - SimpleClientHttpRequestFactory rf = (SimpleClientHttpRequestFactory) restTemplate.getRequestFactory(); + final RestTemplate restTemplate = new RestTemplate(); + final SimpleClientHttpRequestFactory rf = (SimpleClientHttpRequestFactory) restTemplate.getRequestFactory(); rf.setConnectTimeout(2000); rf.setReadTimeout(2000); try { - HttpHeaders headers = restTemplate.headForHeaders(url); + final HttpHeaders headers = restTemplate.headForHeaders(url); if (headers.isEmpty() || headers.containsKey("x-frame-options")) { throw new NoContentException(); } - } catch (RestClientException e) { + } catch (final RestClientException e) { throw new NoContentException(); } } diff --git a/src/main/java/de/thm/arsnova/controller/v2/AuthenticationController.java b/src/main/java/de/thm/arsnova/controller/v2/AuthenticationController.java index e4e601f8c6632ed0b6382427daabbf675c764baa..8a1b43f79335b699428fbffe386a6a38977ad85f 100644 --- a/src/main/java/de/thm/arsnova/controller/v2/AuthenticationController.java +++ b/src/main/java/de/thm/arsnova/controller/v2/AuthenticationController.java @@ -157,12 +157,12 @@ public class AuthenticationController extends AbstractController { @RequestMapping(value = { "/login", "/doLogin" }, method = { RequestMethod.POST, RequestMethod.GET }) public void doLogin( @RequestParam("type") final String type, - @RequestParam(value = "user", required = false) String username, + @RequestParam(value = "user", required = false) final String username, @RequestParam(required = false) final String password, final HttpServletRequest request, final HttpServletResponse response ) throws IOException { - String addr = request.getRemoteAddr(); + final String addr = request.getRemoteAddr(); if (userService.isBannedFromLogin(addr)) { response.sendError(429, "Too Many Requests"); @@ -174,7 +174,7 @@ public class AuthenticationController extends AbstractController { if (dbAuthEnabled && "arsnova".equals(type)) { try { userService.authenticate(authRequest, UserProfile.AuthProvider.ARSNOVA); - } catch (AuthenticationException e) { + } catch (final AuthenticationException e) { logger.info("Database authentication failed.", e); userService.increaseFailedLoginCount(addr); response.setStatus(HttpStatus.UNAUTHORIZED.value()); @@ -182,7 +182,7 @@ public class AuthenticationController extends AbstractController { } else if (ldapEnabled && "ldap".equals(type)) { try { userService.authenticate(authRequest, UserProfile.AuthProvider.LDAP); - } catch (AuthenticationException e) { + } catch (final AuthenticationException e) { logger.info("LDAP authentication failed.", e); userService.increaseFailedLoginCount(addr); response.setStatus(HttpStatus.UNAUTHORIZED.value()); @@ -263,7 +263,7 @@ public class AuthenticationController extends AbstractController { @RequestMapping(value = { "/", "/whoami" }, method = RequestMethod.GET) @ResponseBody - public ClientAuthentication whoami(@AuthenticationPrincipal User user) { + public ClientAuthentication whoami(@AuthenticationPrincipal final User user) { if (user == null) { throw new UnauthorizedException(); } @@ -285,13 +285,13 @@ public class AuthenticationController extends AbstractController { @RequestMapping(value = { "/services" }, method = RequestMethod.GET) @ResponseBody public List<ServiceDescription> getServices(final HttpServletRequest request) { - List<ServiceDescription> services = new ArrayList<>(); + final List<ServiceDescription> services = new ArrayList<>(); /* The first parameter is replaced by the backend, the second one by the frondend */ - String dialogUrl = apiPath + "/auth/dialog?type={0}&successurl='{0}'"; + final String dialogUrl = apiPath + "/auth/dialog?type={0}&successurl='{0}'"; if (guestEnabled) { - ServiceDescription sdesc = new ServiceDescription( + final ServiceDescription sdesc = new ServiceDescription( "guest", "Guest", null, @@ -302,7 +302,7 @@ public class AuthenticationController extends AbstractController { } if (customLoginEnabled && !"".equals(customLoginDialog)) { - ServiceDescription sdesc = new ServiceDescription( + final ServiceDescription sdesc = new ServiceDescription( "custom", customLoginTitle, customizationPath + "/" + customLoginDialog + "?redirect={0}", @@ -314,7 +314,7 @@ public class AuthenticationController extends AbstractController { } if (dbAuthEnabled && !"".equals(dbAuthDialog)) { - ServiceDescription sdesc = new ServiceDescription( + final ServiceDescription sdesc = new ServiceDescription( "arsnova", dbAuthTitle, customizationPath + "/" + dbAuthDialog + "?redirect={0}", @@ -326,7 +326,7 @@ public class AuthenticationController extends AbstractController { } if (ldapEnabled && !"".equals(ldapDialog)) { - ServiceDescription sdesc = new ServiceDescription( + final ServiceDescription sdesc = new ServiceDescription( "ldap", ldapTitle, customizationPath + "/" + ldapDialog + "?redirect={0}", @@ -338,7 +338,7 @@ public class AuthenticationController extends AbstractController { } if (casEnabled) { - ServiceDescription sdesc = new ServiceDescription( + final ServiceDescription sdesc = new ServiceDescription( "cas", casTitle, MessageFormat.format(dialogUrl, "cas"), @@ -350,7 +350,7 @@ public class AuthenticationController extends AbstractController { } if (oidcEnabled) { - ServiceDescription sdesc = new ServiceDescription( + final ServiceDescription sdesc = new ServiceDescription( "oidc", oidcTitle, MessageFormat.format(dialogUrl, "oidc"), @@ -362,7 +362,7 @@ public class AuthenticationController extends AbstractController { } if (facebookEnabled) { - ServiceDescription sdesc = new ServiceDescription( + final ServiceDescription sdesc = new ServiceDescription( "facebook", "Facebook", MessageFormat.format(dialogUrl, "facebook"), @@ -373,7 +373,7 @@ public class AuthenticationController extends AbstractController { } if (googleEnabled) { - ServiceDescription sdesc = new ServiceDescription( + final ServiceDescription sdesc = new ServiceDescription( "google", "Google", MessageFormat.format(dialogUrl, "google"), @@ -384,7 +384,7 @@ public class AuthenticationController extends AbstractController { } if (twitterEnabled) { - ServiceDescription sdesc = new ServiceDescription( + final ServiceDescription sdesc = new ServiceDescription( "twitter", "Twitter", MessageFormat.format(dialogUrl, "twitter"), @@ -398,7 +398,7 @@ public class AuthenticationController extends AbstractController { } private Collection<GrantedAuthority> getAuthorities(final boolean admin) { - List<GrantedAuthority> authList = new ArrayList<>(); + final List<GrantedAuthority> authList = new ArrayList<>(); authList.add(new SimpleGrantedAuthority("ROLE_USER")); if (admin) { authList.add(new SimpleGrantedAuthority("ROLE_ADMIN")); diff --git a/src/main/java/de/thm/arsnova/controller/v2/CommentController.java b/src/main/java/de/thm/arsnova/controller/v2/CommentController.java index 4b0cc2c204895cadbef59f824be538b804470f1e..9ee584c8e160268eba13ad15d4de94d1de73fa5d 100644 --- a/src/main/java/de/thm/arsnova/controller/v2/CommentController.java +++ b/src/main/java/de/thm/arsnova/controller/v2/CommentController.java @@ -91,7 +91,7 @@ public class CommentController extends PaginationController { @Deprecated public CommentReadingCount getUnreadCommentCount( @ApiParam(value = "Room-Key from current room", required = true) - @RequestParam("sessionkey") final String roomShortId, String user) { + @RequestParam("sessionkey") final String roomShortId, final String user) { return commentService.countRead(roomService.getIdByShortId(roomShortId), user); } @@ -132,8 +132,8 @@ public class CommentController extends PaginationController { @ApiParam(value = "the body from the new comment", required = true) @RequestBody final Comment comment) { - de.thm.arsnova.model.Comment commentV3 = fromV2Migrator.migrate(comment); - Room roomV3 = roomService.getByShortId(roomShortId); + final de.thm.arsnova.model.Comment commentV3 = fromV2Migrator.migrate(comment); + final Room roomV3 = roomService.getByShortId(roomShortId); commentV3.setRoomId(roomV3.getId()); commentService.create(commentV3); } diff --git a/src/main/java/de/thm/arsnova/controller/v2/ContentController.java b/src/main/java/de/thm/arsnova/controller/v2/ContentController.java index 5aff031c6ec7c8c6f41f188c9e60e39b2473f463..88eb31b51f90251c1755c9808d75169ec6c431ab 100644 --- a/src/main/java/de/thm/arsnova/controller/v2/ContentController.java +++ b/src/main/java/de/thm/arsnova/controller/v2/ContentController.java @@ -111,7 +111,7 @@ public class ContentController extends PaginationController { @RequestMapping(value = "/", method = RequestMethod.POST) @ResponseStatus(HttpStatus.CREATED) public Content postContent(@RequestBody final Content content) { - de.thm.arsnova.model.Content contentV3 = fromV2Migrator.migrate(content); + final de.thm.arsnova.model.Content contentV3 = fromV2Migrator.migrate(content); final String roomId = roomService.getIdByShortId(content.getSessionKeyword()); contentV3.setRoomId(roomId); contentService.create(contentV3); @@ -126,7 +126,7 @@ public class ContentController extends PaginationController { @RequestMapping(value = "/bulk", method = RequestMethod.POST) @ResponseStatus(HttpStatus.CREATED) public List<Content> bulkPostContents(@RequestBody final List<Content> contents) { - List<de.thm.arsnova.model.Content> contentsV3 = + final List<de.thm.arsnova.model.Content> contentsV3 = contents.stream().map(c -> contentService.create(fromV2Migrator.migrate(c))).collect(Collectors.toList()); return contentsV3.stream().map(toV2Migrator::migrate).collect(Collectors.toList()); } @@ -204,13 +204,13 @@ public class ContentController extends PaginationController { final String roomShortId, @RequestParam(value = "disable", defaultValue = "false", required = false) final Boolean disableVote, - @RequestParam(value = "lecturequestionsonly", defaultValue = "false", required = false) + @RequestParam(value = "lecturequestionsonly", defaultValue = "false", required = false) final boolean lectureContentsOnly, - @RequestParam(value = "preparationquestionsonly", defaultValue = "false", required = false) + @RequestParam(value = "preparationquestionsonly", defaultValue = "false", required = false) final boolean preparationContentsOnly) { - String roomId = roomService.getIdByShortId(roomShortId); + final String roomId = roomService.getIdByShortId(roomShortId); boolean disable = false; - Iterable<de.thm.arsnova.model.Content> contents; + final Iterable<de.thm.arsnova.model.Content> contents; if (disableVote != null) { disable = disableVote; @@ -236,7 +236,7 @@ public class ContentController extends PaginationController { @RequestParam(defaultValue = "true", required = false) final boolean publish, @RequestBody final Content content ) throws IOException { - de.thm.arsnova.model.Content contentV3 = fromV2Migrator.migrate(content); + final de.thm.arsnova.model.Content contentV3 = fromV2Migrator.migrate(content); boolean p = publish; if (content != null) { p = contentV3.getState().isVisible(); @@ -252,14 +252,14 @@ public class ContentController extends PaginationController { final String roomShortId, @RequestParam(required = false) final Boolean publish, - @RequestParam(value = "lecturequestionsonly", defaultValue = "false", required = false) + @RequestParam(value = "lecturequestionsonly", defaultValue = "false", required = false) final boolean lectureContentsOnly, - @RequestParam(value = "preparationquestionsonly", defaultValue = "false", required = false) + @RequestParam(value = "preparationquestionsonly", defaultValue = "false", required = false) final boolean preparationContentsOnly ) throws IOException { - String roomId = roomService.getIdByShortId(roomShortId); - boolean p = publish == null || publish; - Iterable<de.thm.arsnova.model.Content> contents; + final String roomId = roomService.getIdByShortId(roomShortId); + final boolean p = publish == null || publish; + final Iterable<de.thm.arsnova.model.Content> contents; if (lectureContentsOnly) { contents = contentService.getByRoomIdAndGroup(roomId, "lecture"); @@ -280,7 +280,7 @@ public class ContentController extends PaginationController { @RequestParam(defaultValue = "true", required = false) final Boolean showStatistics, @RequestBody final Content content ) throws IOException { - de.thm.arsnova.model.Content contentV3 = fromV2Migrator.migrate(content); + final de.thm.arsnova.model.Content contentV3 = fromV2Migrator.migrate(content); boolean p = showStatistics; if (content != null) { p = contentV3.getState().isResponsesVisible(); @@ -297,7 +297,7 @@ public class ContentController extends PaginationController { @RequestParam(defaultValue = "true", required = false) final boolean showCorrectAnswer, @RequestBody final Content content ) throws IOException { - de.thm.arsnova.model.Content contentV3 = fromV2Migrator.migrate(content); + final de.thm.arsnova.model.Content contentV3 = fromV2Migrator.migrate(content); boolean p = showCorrectAnswer; if (content != null) { p = contentV3.getState().isSolutionVisible(); @@ -312,13 +312,13 @@ public class ContentController extends PaginationController { @Pagination public List<Content> getContents( @RequestParam(value = "sessionkey") final String roomShortId, - @RequestParam(value = "lecturequestionsonly", defaultValue = "false") boolean lectureContentsOnly, - @RequestParam(value = "flashcardsonly", defaultValue = "false") boolean flashcardsOnly, - @RequestParam(value = "preparationquestionsonly", defaultValue = "false") boolean preparationContentsOnly, - @RequestParam(value = "requestImageData", defaultValue = "false") boolean requestImageData, + @RequestParam(value = "lecturequestionsonly", defaultValue = "false") final boolean lectureContentsOnly, + @RequestParam(value = "flashcardsonly", defaultValue = "false") final boolean flashcardsOnly, + @RequestParam(value = "preparationquestionsonly", defaultValue = "false") final boolean preparationContentsOnly, + @RequestParam(value = "requestImageData", defaultValue = "false") final boolean requestImageData, final HttpServletResponse response) { - String roomId = roomService.getIdByShortId(roomShortId); - Iterable<de.thm.arsnova.model.Content> contents; + final String roomId = roomService.getIdByShortId(roomShortId); + final Iterable<de.thm.arsnova.model.Content> contents; if (lectureContentsOnly) { contents = contentService.getByRoomIdAndGroup(roomId, "lecture"); } else if (flashcardsOnly) { @@ -346,7 +346,7 @@ public class ContentController extends PaginationController { @RequestParam(value = "flashcardsonly", defaultValue = "false") boolean flashcardsOnly, @RequestParam(value = "preparationquestionsonly", defaultValue = "false") boolean preparationContentsOnly, final HttpServletResponse response) { - String roomId = roomService.getIdByShortId(roomShortId); + final String roomId = roomService.getIdByShortId(roomShortId); /* FIXME: Content variant is ignored for now */ lectureContentsOnly = preparationContentsOnly = flashcardsOnly = false; if (lectureContentsOnly) { @@ -367,11 +367,11 @@ public class ContentController extends PaginationController { @RequestMapping(value = "/count", method = RequestMethod.GET, produces = MediaType.TEXT_PLAIN_VALUE) public String getContentCount( @RequestParam(value = "sessionkey") final String roomShortId, - @RequestParam(value = "lecturequestionsonly", defaultValue = "false") boolean lectureContentsOnly, - @RequestParam(value = "flashcardsonly", defaultValue = "false") boolean flashcardsOnly, - @RequestParam(value = "preparationquestionsonly", defaultValue = "false") boolean preparationContentsOnly) { - String roomId = roomService.getIdByShortId(roomShortId); - int count; + @RequestParam(value = "lecturequestionsonly", defaultValue = "false") final boolean lectureContentsOnly, + @RequestParam(value = "flashcardsonly", defaultValue = "false") final boolean flashcardsOnly, + @RequestParam(value = "preparationquestionsonly", defaultValue = "false") final boolean preparationContentsOnly) { + final String roomId = roomService.getIdByShortId(roomShortId); + final int count; if (lectureContentsOnly) { count = contentService.countByRoomIdAndGroup(roomId, "lecture"); } else if (preparationContentsOnly) { @@ -402,8 +402,8 @@ public class ContentController extends PaginationController { @RequestParam(value = "sessionkey") final String roomShortId, @RequestParam(value = "lecturequestionsonly", defaultValue = "false") boolean lectureContentsOnly, @RequestParam(value = "preparationquestionsonly", defaultValue = "false") boolean preparationContentsOnly) { - String roomId = roomService.getIdByShortId(roomShortId); - List<String> answers; + final String roomId = roomService.getIdByShortId(roomShortId); + final List<String> answers; /* FIXME: Content variant is ignored for now */ lectureContentsOnly = preparationContentsOnly = false; if (lectureContentsOnly) { @@ -482,7 +482,7 @@ public class ContentController extends PaginationController { return toV2Migrator.migrate(answerService.getAllStatistics(contentId), (ChoiceQuestionContent) content, content.getState().getRound()); } else { - List<de.thm.arsnova.model.TextAnswer> answers; + final List<de.thm.arsnova.model.TextAnswer> answers; if (allAnswers) { answers = answerService.getAllTextAnswers(contentId, -1, -1); } else if (null == piRound) { @@ -578,7 +578,7 @@ public class ContentController extends PaginationController { @RequestParam(value = "lecturequestionsonly", defaultValue = "false") boolean lectureContentsOnly, @RequestParam(value = "preparationquestionsonly", defaultValue = "false") boolean preparationContentsOnly, final HttpServletResponse response) { - String roomId = roomService.getIdByShortId(roomShortId); + final String roomId = roomService.getIdByShortId(roomShortId); /* FIXME: Content variant is ignored for now */ lectureContentsOnly = preparationContentsOnly = false; if (lectureContentsOnly) { @@ -674,7 +674,7 @@ public class ContentController extends PaginationController { @RequestParam(value = "sessionkey") final String roomShortId, @RequestParam(value = "lecturequestionsonly", defaultValue = "false") boolean lectureContentsOnly, @RequestParam(value = "preparationquestionsonly", defaultValue = "false") boolean preparationContentsOnly) { - String roomId = roomService.getIdByShortId(roomShortId); + final String roomId = roomService.getIdByShortId(roomShortId); int count = 0; /* FIXME: Content variant is ignored for now */ lectureContentsOnly = preparationContentsOnly = false; diff --git a/src/main/java/de/thm/arsnova/controller/v2/FeedbackController.java b/src/main/java/de/thm/arsnova/controller/v2/FeedbackController.java index 3aa4a83ff60a398310f33522b714d57ca3a17974..982ceae9020803af8c9b5fae81237fbe238c6793 100644 --- a/src/main/java/de/thm/arsnova/controller/v2/FeedbackController.java +++ b/src/main/java/de/thm/arsnova/controller/v2/FeedbackController.java @@ -67,8 +67,8 @@ public class FeedbackController extends AbstractController { @Deprecated @RequestMapping(value = "/myfeedback", method = RequestMethod.GET, produces = MediaType.TEXT_PLAIN_VALUE) public String getMyFeedback(@PathVariable final String shortId) { - String roomId = roomService.getIdByShortId(shortId); - Integer value = feedbackService.getByRoomIdAndUserId(roomId, userService.getCurrentUser().getId()); + final String roomId = roomService.getIdByShortId(shortId); + final Integer value = feedbackService.getByRoomIdAndUserId(roomId, userService.getCurrentUser().getId()); if (value != null && value >= Feedback.MIN_FEEDBACK_TYPE && value <= Feedback.MAX_FEEDBACK_TYPE) { return value.toString(); } @@ -103,10 +103,10 @@ public class FeedbackController extends AbstractController { public Feedback postFeedback( @PathVariable final String shortId, @RequestBody final int value) { - String roomId = roomService.getIdByShortId(shortId); - User user = userService.getCurrentUser(); + final String roomId = roomService.getIdByShortId(shortId); + final User user = userService.getCurrentUser(); feedbackService.save(roomId, value, user.getId()); - Feedback feedback = feedbackService.getByRoomId(roomId); + final Feedback feedback = feedbackService.getByRoomId(roomId); return feedback; } diff --git a/src/main/java/de/thm/arsnova/controller/v2/MotdController.java b/src/main/java/de/thm/arsnova/controller/v2/MotdController.java index 2d986e02b5d5eba176968c6fdea122eb22db638e..9667802cfbcb41ac0df61a627e67cd0759f5b1b3 100644 --- a/src/main/java/de/thm/arsnova/controller/v2/MotdController.java +++ b/src/main/java/de/thm/arsnova/controller/v2/MotdController.java @@ -92,8 +92,8 @@ public class MotdController extends AbstractController { @ApiParam(value = "sessionkey", required = false) @RequestParam(value = "sessionkey", required = false) final String roomShortId) { - List<de.thm.arsnova.model.Motd> motds; - Date date = new Date(System.currentTimeMillis()); + final List<de.thm.arsnova.model.Motd> motds; + final Date date = new Date(System.currentTimeMillis()); if (!clientdate.isEmpty()) { date.setTime(Long.parseLong(clientdate)); } @@ -124,8 +124,8 @@ public class MotdController extends AbstractController { public Motd postNewMotd( @ApiParam(value = "current motd", required = true) @RequestBody final Motd motd, final HttpServletResponse response) { - de.thm.arsnova.model.Motd motdV3 = fromV2Migrator.migrate(motd); - String roomId = roomService.getIdByShortId(motd.getSessionkey()); + final de.thm.arsnova.model.Motd motdV3 = fromV2Migrator.migrate(motd); + final String roomId = roomService.getIdByShortId(motd.getSessionkey()); if (de.thm.arsnova.model.Motd.Audience.ROOM == motdV3.getAudience() && roomId != null) { motdService.save(roomId, motdV3); } else { @@ -140,8 +140,8 @@ public class MotdController extends AbstractController { public Motd updateMotd( @ApiParam(value = "motdkey from current motd", required = true) @PathVariable final String motdId, @ApiParam(value = "current motd", required = true) @RequestBody final Motd motd) { - de.thm.arsnova.model.Motd motdV3 = fromV2Migrator.migrate(motd); - String roomId = roomService.getIdByShortId(motd.getSessionkey()); + final de.thm.arsnova.model.Motd motdV3 = fromV2Migrator.migrate(motd); + final String roomId = roomService.getIdByShortId(motd.getSessionkey()); if (motdV3.getAudience() == de.thm.arsnova.model.Motd.Audience.ROOM && roomId != null) { motdService.update(roomId, motdV3); } else { @@ -157,26 +157,26 @@ public class MotdController extends AbstractController { @ApiParam(value = "Motd-key from the message that shall be deleted", required = true) @PathVariable final String motdId) { - de.thm.arsnova.model.Motd motd = motdService.get(motdId); + final de.thm.arsnova.model.Motd motd = motdService.get(motdId); motdService.delete(motd); } @RequestMapping(value = "/userlist", method = RequestMethod.GET) - public MotdList getAcknowledgedIds(@AuthenticationPrincipal User user, @RequestParam final String username) { + public MotdList getAcknowledgedIds(@AuthenticationPrincipal final User user, @RequestParam final String username) { if (user == null || !user.getUsername().equals(username)) { throw new ForbiddenException(); } - UserProfile profile = userService.get(user.getId()); + final UserProfile profile = userService.get(user.getId()); return toV2Migrator.migrateMotdList(profile); } @RequestMapping(value = "/userlist", method = RequestMethod.PUT) - public void putAcknowledgedIds(@AuthenticationPrincipal User user, @RequestBody final MotdList motdList) { + public void putAcknowledgedIds(@AuthenticationPrincipal final User user, @RequestBody final MotdList motdList) { if (user == null || !user.getUsername().equals(motdList.getUsername())) { throw new ForbiddenException(); } - UserProfile profile = userService.get(user.getId()); + final UserProfile profile = userService.get(user.getId()); profile.setAcknowledgedMotds(fromV2Migrator.migrate(motdList)); userService.update(profile); } diff --git a/src/main/java/de/thm/arsnova/controller/v2/RoomController.java b/src/main/java/de/thm/arsnova/controller/v2/RoomController.java index b84c0bfa848176330a187c8fd5cfb1533e17c53d..aa674f9df311796ed6272845476533d25c0181ec 100644 --- a/src/main/java/de/thm/arsnova/controller/v2/RoomController.java +++ b/src/main/java/de/thm/arsnova/controller/v2/RoomController.java @@ -103,7 +103,7 @@ public class RoomController extends PaginationController { @ApiParam(value = "Room-Key from current Room", required = true) @PathVariable final String shortId) { - de.thm.arsnova.model.Room room = roomService.getByShortId(shortId); + final de.thm.arsnova.model.Room room = roomService.getByShortId(shortId); roomService.delete(room); } @@ -188,7 +188,7 @@ public class RoomController extends PaginationController { @RequestParam(value = "username", defaultValue = "") final String username, final HttpServletResponse response) { - List<de.thm.arsnova.model.Room> rooms; + final List<de.thm.arsnova.model.Room> rooms; if (!"".equals(username)) { final String userId = userService.getByUsername(username).getId(); @@ -252,7 +252,7 @@ public class RoomController extends PaginationController { @RequestParam(value = "sortby", defaultValue = "name") final String sortby, final HttpServletResponse response) { - List<de.thm.arsnova.model.Room> rooms; + final List<de.thm.arsnova.model.Room> rooms; if (!visitedOnly) { rooms = roomService.getMyRoomsInfo(offset, limit); } else { @@ -281,7 +281,7 @@ public class RoomController extends PaginationController { @RequestMapping(value = "/publicpool", method = RequestMethod.GET, params = "statusonly=true") public List<RoomInfo> getMyPublicPoolRooms( final HttpServletResponse response) { - List<de.thm.arsnova.model.Room> rooms = roomService.getMyPublicPoolRoomsInfo(); + final List<de.thm.arsnova.model.Room> rooms = roomService.getMyPublicPoolRoomsInfo(); if (rooms == null || rooms.isEmpty()) { response.setStatus(HttpServletResponse.SC_NO_CONTENT); @@ -299,7 +299,7 @@ public class RoomController extends PaginationController { @RequestMapping(value = "/publicpool", method = RequestMethod.GET) public List<Room> getPublicPoolRooms( final HttpServletResponse response) { - List<de.thm.arsnova.model.Room> rooms = roomService.getPublicPoolRoomsInfo(); + final List<de.thm.arsnova.model.Room> rooms = roomService.getPublicPoolRoomsInfo(); if (rooms == null || rooms.isEmpty()) { response.setStatus(HttpServletResponse.SC_NO_CONTENT); @@ -331,10 +331,10 @@ public class RoomController extends PaginationController { @RequestParam(value = "withFeedbackQuestions", defaultValue = "false") final Boolean withFeedbackQuestions, final HttpServletResponse response) throws IOException { - List<ImportExportContainer> rooms = new ArrayList<>(); + final List<ImportExportContainer> rooms = new ArrayList<>(); ImportExportContainer temp; - for (String shortId : shortIds) { - String id = roomService.getIdByShortId(shortId); + for (final String shortId : shortIds) { + final String id = roomService.getIdByShortId(shortId); roomService.setActive(id, false); temp = roomService.exportRoom(id, withAnswerStatistics, withFeedbackQuestions); if (temp != null) { @@ -355,9 +355,9 @@ public class RoomController extends PaginationController { @RequestBody final ImportExportContainer.PublicPool publicPool) throws IOException { - String id = roomService.getIdByShortId(shortId); + final String id = roomService.getIdByShortId(shortId); roomService.setActive(id, false); - de.thm.arsnova.model.Room roomInfo = roomService.copyRoomToPublicPool(shortId, publicPool); + final de.thm.arsnova.model.Room roomInfo = roomService.copyRoomToPublicPool(shortId, publicPool); roomService.setActive(id, true); return toV2Migrator.migrate(roomInfo); @@ -422,7 +422,7 @@ public class RoomController extends PaginationController { public RoomFeature getRoomFeatures( @ApiParam(value = "Room-Key from current Room", required = true) @PathVariable final String shortId, final HttpServletResponse response) { - de.thm.arsnova.model.Room room = roomService.getByShortId(shortId); + final de.thm.arsnova.model.Room room = roomService.getByShortId(shortId); return toV2Migrator.migrate(room.getSettings()); } @@ -433,7 +433,7 @@ public class RoomController extends PaginationController { @ApiParam(value = "Room-Key from current Room", required = true) @PathVariable final String shortId, @ApiParam(value = "Room feature", required = true) @RequestBody final RoomFeature features, final HttpServletResponse response) { - de.thm.arsnova.model.Room room = roomService.getByShortId(shortId); + final de.thm.arsnova.model.Room room = roomService.getByShortId(shortId); room.setSettings(fromV2Migrator.migrate(features)); roomService.update(room); diff --git a/src/main/java/de/thm/arsnova/controller/v2/SocketController.java b/src/main/java/de/thm/arsnova/controller/v2/SocketController.java index a84d514080460ab5dac4833f9e358f3e1f330f3f..d3ed9a73702899b77586a0f7f7aa1277ead2e95c 100644 --- a/src/main/java/de/thm/arsnova/controller/v2/SocketController.java +++ b/src/main/java/de/thm/arsnova/controller/v2/SocketController.java @@ -69,13 +69,13 @@ public class SocketController extends AbstractController { public void authorize( @ApiParam(value = "sessionMap", required = true) @RequestBody final Map<String, String> sessionMap, @ApiParam(value = "response", required = true) final HttpServletResponse response) { - String socketid = sessionMap.get("session"); + final String socketid = sessionMap.get("session"); if (null == socketid) { logger.debug("Expected property 'session' missing."); response.setStatus(HttpStatus.BAD_REQUEST.value()); return; } - User user = userService.getCurrentUser(); + final User user = userService.getCurrentUser(); if (null == user) { logger.debug("Client {} requested to assign Websocket session but has not authenticated.", socketid); response.setStatus(HttpStatus.FORBIDDEN.value()); diff --git a/src/main/java/de/thm/arsnova/controller/v2/UserController.java b/src/main/java/de/thm/arsnova/controller/v2/UserController.java index 5bd9c30aa2faed676ccb57998221139dff151a5d..0604ea5a98d47a8c07d7e9edc5377bc86fc7aa28 100644 --- a/src/main/java/de/thm/arsnova/controller/v2/UserController.java +++ b/src/main/java/de/thm/arsnova/controller/v2/UserController.java @@ -62,7 +62,7 @@ public class UserController extends AbstractController { @PathVariable final String username, @RequestParam final String key, final HttpServletRequest request, final HttpServletResponse response) { - UserProfile userProfile = userService.getByUsername(username); + final UserProfile userProfile = userService.getByUsername(username); if (null != userProfile && key.equals(userProfile.getAccount().getActivationKey())) { userProfile.getAccount().setActivationKey(null); userService.update(userProfile); @@ -90,7 +90,7 @@ public class UserController extends AbstractController { @RequestParam(required = false) final String password, final HttpServletRequest request, final HttpServletResponse response) { - UserProfile userProfile = userService.getByUsername(username); + final UserProfile userProfile = userService.getByUsername(username); if (null == userProfile) { response.setStatus(HttpServletResponse.SC_NOT_FOUND); diff --git a/src/main/java/de/thm/arsnova/event/ArsnovaEvent.java b/src/main/java/de/thm/arsnova/event/ArsnovaEvent.java index 66d51c083d0c7ef797c45cb77b8ba48c5a37814b..d370b83c2aff94d6c2b8c3941869b50460e5e812 100644 --- a/src/main/java/de/thm/arsnova/event/ArsnovaEvent.java +++ b/src/main/java/de/thm/arsnova/event/ArsnovaEvent.java @@ -27,7 +27,7 @@ public abstract class ArsnovaEvent extends ApplicationEvent { private static final long serialVersionUID = 1L; - public ArsnovaEvent(Object source) { + public ArsnovaEvent(final Object source) { super(source); } diff --git a/src/main/java/de/thm/arsnova/event/ChangeScoreEvent.java b/src/main/java/de/thm/arsnova/event/ChangeScoreEvent.java index 4dc188ddd51a1dbc607fe21892c3f30a70d6d009..b22bea8bfa7ba56e7842b3d013f5f11a36c59d7e 100644 --- a/src/main/java/de/thm/arsnova/event/ChangeScoreEvent.java +++ b/src/main/java/de/thm/arsnova/event/ChangeScoreEvent.java @@ -25,7 +25,7 @@ public class ChangeScoreEvent extends RoomEvent { private static final long serialVersionUID = 1L; - public ChangeScoreEvent(Object source, String roomId) { + public ChangeScoreEvent(final Object source, final String roomId) { super(source, roomId); } diff --git a/src/main/java/de/thm/arsnova/event/DeleteFeedbackForRoomsEvent.java b/src/main/java/de/thm/arsnova/event/DeleteFeedbackForRoomsEvent.java index 45729339fbe56d5bb20dc1a2f5161ff0c8707444..7d9d6ea020341329d3c5ece179fca898c855c74e 100644 --- a/src/main/java/de/thm/arsnova/event/DeleteFeedbackForRoomsEvent.java +++ b/src/main/java/de/thm/arsnova/event/DeleteFeedbackForRoomsEvent.java @@ -33,7 +33,7 @@ public class DeleteFeedbackForRoomsEvent extends ArsnovaEvent { private final String userId; - public DeleteFeedbackForRoomsEvent(Object source, Set<Room> rooms, String userId) { + public DeleteFeedbackForRoomsEvent(final Object source, final Set<Room> rooms, final String userId) { super(source); this.sessions = rooms; this.userId = userId; diff --git a/src/main/java/de/thm/arsnova/event/FlipFlashcardsEvent.java b/src/main/java/de/thm/arsnova/event/FlipFlashcardsEvent.java index 73abd1b11bf24ca3f3973055be0534dd370370fb..93ec84c35ad5b688d799d60dd79b634d7c22bdb0 100644 --- a/src/main/java/de/thm/arsnova/event/FlipFlashcardsEvent.java +++ b/src/main/java/de/thm/arsnova/event/FlipFlashcardsEvent.java @@ -25,7 +25,7 @@ public class FlipFlashcardsEvent extends RoomEvent { private static final long serialVersionUID = 1L; - public FlipFlashcardsEvent(Object source, String roomId) { + public FlipFlashcardsEvent(final Object source, final String roomId) { super(source, roomId); } } diff --git a/src/main/java/de/thm/arsnova/event/NewFeedbackEvent.java b/src/main/java/de/thm/arsnova/event/NewFeedbackEvent.java index 07e54276ad7870c918895feb222c11ae76ba8a28..7550f6508acc921e3c0338fcd3a80a7acee320a6 100644 --- a/src/main/java/de/thm/arsnova/event/NewFeedbackEvent.java +++ b/src/main/java/de/thm/arsnova/event/NewFeedbackEvent.java @@ -25,7 +25,7 @@ public class NewFeedbackEvent extends RoomEvent { private static final long serialVersionUID = 1L; - public NewFeedbackEvent(Object source, String roomId) { + public NewFeedbackEvent(final Object source, final String roomId) { super(source, roomId); } diff --git a/src/main/java/de/thm/arsnova/event/RoomEvent.java b/src/main/java/de/thm/arsnova/event/RoomEvent.java index 93352387bd91030c53007ec0402b6dd05f0feecd..c260a14c83de3955988824bc7ec79d1532f3580a 100644 --- a/src/main/java/de/thm/arsnova/event/RoomEvent.java +++ b/src/main/java/de/thm/arsnova/event/RoomEvent.java @@ -27,7 +27,7 @@ public abstract class RoomEvent extends ArsnovaEvent { private final String roomId; - public RoomEvent(Object source, String roomId) { + public RoomEvent(final Object source, final String roomId) { super(source); this.roomId = roomId; } diff --git a/src/main/java/de/thm/arsnova/event/StateEventDispatcher.java b/src/main/java/de/thm/arsnova/event/StateEventDispatcher.java index 243a32e598a1a817be6ef763a11e5b3243e0a0f4..6b2a34c96b84ae7626e955b1af4df9021ea9cc60 100644 --- a/src/main/java/de/thm/arsnova/event/StateEventDispatcher.java +++ b/src/main/java/de/thm/arsnova/event/StateEventDispatcher.java @@ -58,7 +58,7 @@ public class StateEventDispatcher implements ApplicationEventPublisherAware { public void dispatchContentStateEvent(final AfterFullUpdateEvent<Content> event) { final Content newContent = event.getEntity(); final Content oldContent = event.getOldEntity(); - Function<Content, Content.State> f = Content::getState; + final Function<Content, Content.State> f = Content::getState; f.apply(newContent); publishEventIfPropertyChanged(newContent, oldContent, Content::getState, "state"); } @@ -71,8 +71,8 @@ public class StateEventDispatcher implements ApplicationEventPublisherAware { private <E extends Entity, T extends Object> void publishEventIfPropertyChanged( final E newEntity, final E oldEntity, final Function<E, T> propertyGetter, final String stateName) { - T newValue = propertyGetter.apply(newEntity); - T oldValue = propertyGetter.apply(oldEntity); + final T newValue = propertyGetter.apply(newEntity); + final T oldValue = propertyGetter.apply(oldEntity); if (!newValue.equals(oldValue)) { eventPublisher.publishEvent(new StateChangeEvent<>(this, newEntity, stateName, newValue, oldValue)); } diff --git a/src/main/java/de/thm/arsnova/model/Answer.java b/src/main/java/de/thm/arsnova/model/Answer.java index 6c78689409891d8c123876ac87e373f3edf1e8d6..551fb7484d2d62a4a6e6ffb7e1178f91a6791b24 100644 --- a/src/main/java/de/thm/arsnova/model/Answer.java +++ b/src/main/java/de/thm/arsnova/model/Answer.java @@ -59,7 +59,7 @@ public class Answer extends Entity { } @JsonView(View.Persistence.class) - public void setRoomId(String roomId) { + public void setRoomId(final String roomId) { this.roomId = roomId; } @@ -98,7 +98,7 @@ public class Answer extends Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setExtensions(Map<String, Map<String, ?>> extensions) { + public void setExtensions(final Map<String, Map<String, ?>> extensions) { this.extensions = extensions; } diff --git a/src/main/java/de/thm/arsnova/model/AnswerStatistics.java b/src/main/java/de/thm/arsnova/model/AnswerStatistics.java index a0a9f049cc6e75b26b16aa4256de13ab701918f8..7fb3d10e5b0469f91d7523d13d262fed7cdb2578 100644 --- a/src/main/java/de/thm/arsnova/model/AnswerStatistics.java +++ b/src/main/java/de/thm/arsnova/model/AnswerStatistics.java @@ -65,7 +65,7 @@ public class AnswerStatistics { return round; } - public void setRound(int round) { + public void setRound(final int round) { this.round = round; } @@ -83,7 +83,7 @@ public class AnswerStatistics { return combinatedCounts; } - public void setCombinatedCounts(Collection<Combination> combinatedCounts) { + public void setCombinatedCounts(final Collection<Combination> combinatedCounts) { this.combinatedCounts = combinatedCounts; } @@ -92,7 +92,7 @@ public class AnswerStatistics { return abstentionCount; } - public void setAbstentionCount(int abstentionCount) { + public void setAbstentionCount(final int abstentionCount) { this.abstentionCount = abstentionCount; } @@ -178,7 +178,7 @@ public class AnswerStatistics { return roundStatistics; } - public void setRoundStatistics(List<RoundStatistics> roundStatistics) { + public void setRoundStatistics(final List<RoundStatistics> roundStatistics) { this.roundStatistics = roundStatistics; } @@ -187,7 +187,7 @@ public class AnswerStatistics { return roundTransitions; } - public void setRoundTransitions(List<RoundTransition> roundTransitions) { + public void setRoundTransitions(final List<RoundTransition> roundTransitions) { this.roundTransitions = roundTransitions; } diff --git a/src/main/java/de/thm/arsnova/model/Attachment.java b/src/main/java/de/thm/arsnova/model/Attachment.java index 3941c93e7ef1d534de5f32c758a03bf2eb3c76ab..6bb0af0040312eebc6b25d6844d3e7396dbcf580 100644 --- a/src/main/java/de/thm/arsnova/model/Attachment.java +++ b/src/main/java/de/thm/arsnova/model/Attachment.java @@ -60,7 +60,7 @@ public class Attachment extends Entity { } @JsonView(View.Persistence.class) - public void setMediaType(String mediaType) { + public void setMediaType(final String mediaType) { this.mediaType = mediaType; } @@ -70,7 +70,7 @@ public class Attachment extends Entity { } @JsonView(View.Persistence.class) - public void setSize(long size) { + public void setSize(final long size) { this.size = size; } @@ -80,7 +80,7 @@ public class Attachment extends Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setOriginalSourceUrl(String originalSourceUrl) { + public void setOriginalSourceUrl(final String originalSourceUrl) { this.originalSourceUrl = originalSourceUrl; } @@ -90,7 +90,7 @@ public class Attachment extends Entity { } @JsonView(View.Persistence.class) - public void setStorageLocation(String storageLocation) { + public void setStorageLocation(final String storageLocation) { this.storageLocation = storageLocation; } diff --git a/src/main/java/de/thm/arsnova/model/ChoiceQuestionContent.java b/src/main/java/de/thm/arsnova/model/ChoiceQuestionContent.java index 5c92d6528a77b8323fa1b7225933fd6d00cf5d89..39fd66f894d27c0aefb0c9bebf70c3177941fbe1 100644 --- a/src/main/java/de/thm/arsnova/model/ChoiceQuestionContent.java +++ b/src/main/java/de/thm/arsnova/model/ChoiceQuestionContent.java @@ -37,7 +37,7 @@ public class ChoiceQuestionContent extends Content { } @JsonView({View.Persistence.class, View.Public.class}) - public void setLabel(String label) { + public void setLabel(final String label) { this.label = label; } @@ -47,7 +47,7 @@ public class ChoiceQuestionContent extends Content { } @JsonView({View.Persistence.class, View.Public.class}) - public void setPoints(int points) { + public void setPoints(final int points) { this.points = points; } diff --git a/src/main/java/de/thm/arsnova/model/Comment.java b/src/main/java/de/thm/arsnova/model/Comment.java index b5c66bc14e83b6cca486f308d0926b5a116e6167..97160635e933275953617faa337b315ac320b5e2 100644 --- a/src/main/java/de/thm/arsnova/model/Comment.java +++ b/src/main/java/de/thm/arsnova/model/Comment.java @@ -101,7 +101,7 @@ public class Comment extends Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setExtensions(Map<String, Map<String, ?>> extensions) { + public void setExtensions(final Map<String, Map<String, ?>> extensions) { this.extensions = extensions; } diff --git a/src/main/java/de/thm/arsnova/model/Content.java b/src/main/java/de/thm/arsnova/model/Content.java index e01aa2bdf2fd864fcf0dfc0bc9b1398998d34434..f708e6f9fb7453e56a057af3fa8440cb2d90a6f7 100644 --- a/src/main/java/de/thm/arsnova/model/Content.java +++ b/src/main/java/de/thm/arsnova/model/Content.java @@ -72,7 +72,7 @@ public class Content extends Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setRoundEndTimestamp(Date roundEndTimestamp) { + public void setRoundEndTimestamp(final Date roundEndTimestamp) { this.roundEndTimestamp = roundEndTimestamp; } @@ -238,7 +238,7 @@ public class Content extends Entity { } @JsonView(View.Persistence.class) - public void setTimestamp(Date timestamp) { + public void setTimestamp(final Date timestamp) { this.timestamp = timestamp; } @@ -248,7 +248,7 @@ public class Content extends Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setExtensions(Map<String, Map<String, ?>> extensions) { + public void setExtensions(final Map<String, Map<String, ?>> extensions) { this.extensions = extensions; } diff --git a/src/main/java/de/thm/arsnova/model/Entity.java b/src/main/java/de/thm/arsnova/model/Entity.java index 4d653ea90af874a0598f9309e70cb697c8cebb94..09df82537fa273b1e7fe10066d191175f55c00ce 100644 --- a/src/main/java/de/thm/arsnova/model/Entity.java +++ b/src/main/java/de/thm/arsnova/model/Entity.java @@ -108,7 +108,7 @@ public abstract class Entity { if (additionalFields == null) { return result; } - for (Object element : additionalFields) { + for (final Object element : additionalFields) { result = 31 * result + (element == null ? 0 : element.hashCode()); } @@ -116,7 +116,7 @@ public abstract class Entity { } @Override - public boolean equals(Object o) { + public boolean equals(final Object o) { if (this == o) { return true; } @@ -143,7 +143,7 @@ public abstract class Entity { * {@link org.springframework.core.style.ToStringCreator#append} on the <tt>ToStringCreator</tt>. */ protected ToStringCreator buildToString() { - ToStringCreator toStringCreator = new ToStringCreator(this); + final ToStringCreator toStringCreator = new ToStringCreator(this); toStringCreator .append("id", id) .append("revision", rev) diff --git a/src/main/java/de/thm/arsnova/model/Feedback.java b/src/main/java/de/thm/arsnova/model/Feedback.java index c645217962cfc5a18607ff7f857b326d90b08f79..478a0b52f0e7f134f46e97125063aac3611596c1 100644 --- a/src/main/java/de/thm/arsnova/model/Feedback.java +++ b/src/main/java/de/thm/arsnova/model/Feedback.java @@ -78,7 +78,7 @@ public class Feedback { if (!(obj instanceof Feedback)) { return false; } - Feedback other = (Feedback) obj; + final Feedback other = (Feedback) obj; if (this.values.size() != other.values.size()) { return false; @@ -95,7 +95,7 @@ public class Feedback { public int hashCode() { // See http://stackoverflow.com/a/113600 int result = 42; - for (Integer v : values) { + for (final Integer v : values) { result = 37 * result + v; } return result; diff --git a/src/main/java/de/thm/arsnova/model/LogEntry.java b/src/main/java/de/thm/arsnova/model/LogEntry.java index 4e1eaa86ee92e6540630bd3a4f48ee49f48e79b7..5f6c48c330a7e24abd196e184548905154591097 100644 --- a/src/main/java/de/thm/arsnova/model/LogEntry.java +++ b/src/main/java/de/thm/arsnova/model/LogEntry.java @@ -44,7 +44,8 @@ public class LogEntry extends Entity { private int level; private Map<String, Object> payload; - public LogEntry(@JsonProperty String event, @JsonProperty int level, @JsonProperty Map<String, Object> payload) { + public LogEntry(@JsonProperty final String event, @JsonProperty final int level, + @JsonProperty final Map<String, Object> payload) { this.event = event; this.level = level; this.payload = payload; diff --git a/src/main/java/de/thm/arsnova/model/MigrationState.java b/src/main/java/de/thm/arsnova/model/MigrationState.java index 5a96ead2061bc133a420d2c2c7bd7dc586420742..23d4dc28c00efaedc8d6a85be4425331253954e9 100644 --- a/src/main/java/de/thm/arsnova/model/MigrationState.java +++ b/src/main/java/de/thm/arsnova/model/MigrationState.java @@ -35,7 +35,7 @@ public class MigrationState extends Entity { } - public Migration(String id, Date start) { + public Migration(final String id, final Date start) { this.id = id; this.start = start; } diff --git a/src/main/java/de/thm/arsnova/model/Room.java b/src/main/java/de/thm/arsnova/model/Room.java index 2fcbc65dbaa6fd727883a97b4f853d23fb62bb3f..142ad48f8f19ddb99c7b680a6156d8bc8efb5008 100644 --- a/src/main/java/de/thm/arsnova/model/Room.java +++ b/src/main/java/de/thm/arsnova/model/Room.java @@ -191,7 +191,7 @@ public class Room extends Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setQuickSurveyEnabled(boolean quickSurveyEnabled) { + public void setQuickSurveyEnabled(final boolean quickSurveyEnabled) { this.quickSurveyEnabled = quickSurveyEnabled; } @@ -201,7 +201,7 @@ public class Room extends Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setQuickFeedbackEnabled(boolean quickFeedbackEnabled) { + public void setQuickFeedbackEnabled(final boolean quickFeedbackEnabled) { this.quickFeedbackEnabled = quickFeedbackEnabled; } @@ -569,7 +569,7 @@ public class Room extends Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setSettings(Settings settings) { + public void setSettings(final Settings settings) { this.settings = settings; } diff --git a/src/main/java/de/thm/arsnova/model/TextAnswer.java b/src/main/java/de/thm/arsnova/model/TextAnswer.java index ac84b9d59996a2ef5a0c9c2913ed789b93ded493..f4a2069970bc705e162eb403c481423d1f873a06 100644 --- a/src/main/java/de/thm/arsnova/model/TextAnswer.java +++ b/src/main/java/de/thm/arsnova/model/TextAnswer.java @@ -55,7 +55,7 @@ public class TextAnswer extends Answer { } @JsonView({View.Persistence.class, View.Public.class}) - public void setRead(boolean read) { + public void setRead(final boolean read) { this.read = read; } diff --git a/src/main/java/de/thm/arsnova/model/UserProfile.java b/src/main/java/de/thm/arsnova/model/UserProfile.java index dfbf10f2124cb6a4cbf1b0e89880a3732201a9c0..7d17f9fcf9cc70b10f752d8fec3778f96d8bd490 100644 --- a/src/main/java/de/thm/arsnova/model/UserProfile.java +++ b/src/main/java/de/thm/arsnova/model/UserProfile.java @@ -128,7 +128,7 @@ public class UserProfile extends Entity { } - public RoomHistoryEntry(String roomId, Date lastVisit) { + public RoomHistoryEntry(final String roomId, final Date lastVisit) { this.roomId = roomId; this.lastVisit = lastVisit; } @@ -139,7 +139,7 @@ public class UserProfile extends Entity { } @JsonView(View.Persistence.class) - public void setRoomId(String roomId) { + public void setRoomId(final String roomId) { this.roomId = roomId; } @@ -149,7 +149,7 @@ public class UserProfile extends Entity { } @JsonView(View.Persistence.class) - public void setLastVisit(Date lastVisit) { + public void setLastVisit(final Date lastVisit) { this.lastVisit = lastVisit; } @@ -267,7 +267,7 @@ public class UserProfile extends Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setExtensions(Map<String, Map<String, ?>> extensions) { + public void setExtensions(final Map<String, Map<String, ?>> extensions) { this.extensions = extensions; } diff --git a/src/main/java/de/thm/arsnova/model/migration/FromV2Migrator.java b/src/main/java/de/thm/arsnova/model/migration/FromV2Migrator.java index 30f7f1936b7d2a773e8822efd62b9e9c40ecdbc5..9e7f218d254ebc3dd4ca7ab46de24eaabe9a27d8 100644 --- a/src/main/java/de/thm/arsnova/model/migration/FromV2Migrator.java +++ b/src/main/java/de/thm/arsnova/model/migration/FromV2Migrator.java @@ -98,7 +98,7 @@ public class FromV2Migrator { profile.setAuthProvider(UserProfile.AuthProvider.ARSNOVA); profile.setCreationTimestamp(new Date(dbUser.getCreation())); profile.setUpdateTimestamp(new Date()); - UserProfile.Account account = new UserProfile.Account(); + final UserProfile.Account account = new UserProfile.Account(); profile.setAccount(account); account.setPassword(dbUser.getPassword()); account.setActivationKey(dbUser.getActivationKey()); @@ -113,7 +113,7 @@ public class FromV2Migrator { profile.setCreationTimestamp(new Date()); } profile.setLastLoginTimestamp(new Date(loggedIn.getTimestamp())); - Set<UserProfile.RoomHistoryEntry> sessionHistory = loggedIn.getVisitedSessions().stream() + final Set<UserProfile.RoomHistoryEntry> sessionHistory = loggedIn.getVisitedSessions().stream() .map(entry -> new UserProfile.RoomHistoryEntry(entry.getId(), new Date(0))) .collect(Collectors.toSet()); profile.setRoomHistory(sessionHistory); @@ -172,7 +172,7 @@ public class FromV2Migrator { } public de.thm.arsnova.model.Room.Settings migrate(final RoomFeature feature) { - de.thm.arsnova.model.Room.Settings settings = new de.thm.arsnova.model.Room.Settings(); + final de.thm.arsnova.model.Room.Settings settings = new de.thm.arsnova.model.Room.Settings(); if (feature != null) { settings.setCommentsEnabled(feature.isInterposed() || feature.isInterposedFeedback() || feature.isTwitterWall() || feature.isTotal()); @@ -190,7 +190,7 @@ public class FromV2Migrator { } public de.thm.arsnova.model.Content migrate(final Content from) { - de.thm.arsnova.model.Content to; + final de.thm.arsnova.model.Content to; switch (from.getQuestionType()) { case V2_TYPE_ABCD: case V2_TYPE_SC: @@ -198,13 +198,13 @@ public class FromV2Migrator { case V2_TYPE_VOTE: case V2_TYPE_SCHOOL: case V2_TYPE_YESNO: - ChoiceQuestionContent choiceQuestionContent = new ChoiceQuestionContent(); + final ChoiceQuestionContent choiceQuestionContent = new ChoiceQuestionContent(); to = choiceQuestionContent; to.setFormat(formatMapping.get(from.getQuestionType())); choiceQuestionContent.setMultiple(V2_TYPE_MC.equals(from.getQuestionType())); for (int i = 0; i < from.getPossibleAnswers().size(); i++) { - de.thm.arsnova.model.migration.v2.AnswerOption fromOption = from.getPossibleAnswers().get(i); - ChoiceQuestionContent.AnswerOption toOption = new ChoiceQuestionContent.AnswerOption(); + final de.thm.arsnova.model.migration.v2.AnswerOption fromOption = from.getPossibleAnswers().get(i); + final ChoiceQuestionContent.AnswerOption toOption = new ChoiceQuestionContent.AnswerOption(); toOption.setLabel(fromOption.getText()); toOption.setPoints(fromOption.getValue()); choiceQuestionContent.getOptions().add(toOption); @@ -228,7 +228,7 @@ public class FromV2Migrator { to.setBody(from.getText()); to.setAbstentionsAllowed(from.isAbstention()); to.setAbstentionsAllowed(from.isAbstention()); - de.thm.arsnova.model.Content.State state = to.getState(); + final de.thm.arsnova.model.Content.State state = to.getState(); state.setRound(from.getPiRound()); state.setVisible(from.isActive()); state.setResponsesVisible(from.isShowStatistic()); @@ -239,9 +239,9 @@ public class FromV2Migrator { } public de.thm.arsnova.model.Answer migrate(final Answer from, final de.thm.arsnova.model.Content content) { - de.thm.arsnova.model.Answer answer; + final de.thm.arsnova.model.Answer answer; if (content instanceof ChoiceQuestionContent) { - ChoiceQuestionContent choiceQuestionContent = (ChoiceQuestionContent) content; + final ChoiceQuestionContent choiceQuestionContent = (ChoiceQuestionContent) content; answer = migrate(from, choiceQuestionContent.getOptions(), choiceQuestionContent.isMultiple()); } else { answer = migrate(from); @@ -258,19 +258,19 @@ public class FromV2Migrator { to.setContentId(from.getQuestionId()); to.setRoomId(from.getSessionId()); to.setRound(from.getPiRound()); - List<Integer> selectedChoiceIndexes = new ArrayList<>(); + final List<Integer> selectedChoiceIndexes = new ArrayList<>(); to.setSelectedChoiceIndexes(selectedChoiceIndexes); if (!from.isAbstention()) { if (multiple) { - List<Boolean> flags = Arrays.stream(from.getAnswerText().split(",")) + final List<Boolean> flags = Arrays.stream(from.getAnswerText().split(",")) .map("1"::equals).collect(Collectors.toList()); if (flags.size() != options.size()) { throw new IndexOutOfBoundsException( "Number of answer's choice flags does not match number of content's answer options"); } int i = 0; - for (boolean flag : flags) { + for (final boolean flag : flags) { if (flag) { selectedChoiceIndexes.add(i); } @@ -278,7 +278,7 @@ public class FromV2Migrator { } } else { int i = 0; - for (ChoiceQuestionContent.AnswerOption option : options) { + for (final ChoiceQuestionContent.AnswerOption option : options) { if (option.getLabel().equals(from.getAnswerText())) { selectedChoiceIndexes.add(i); break; diff --git a/src/main/java/de/thm/arsnova/model/migration/ToV2Migrator.java b/src/main/java/de/thm/arsnova/model/migration/ToV2Migrator.java index cef7acfa880976544f0aff754afa76d514ee6efb..387ecec98df548067197782271995256de6e2ea7 100644 --- a/src/main/java/de/thm/arsnova/model/migration/ToV2Migrator.java +++ b/src/main/java/de/thm/arsnova/model/migration/ToV2Migrator.java @@ -89,7 +89,7 @@ public class ToV2Migrator { } public RoomFeature migrate(final de.thm.arsnova.model.Room.Settings settings) { - RoomFeature feature = new RoomFeature(); + final RoomFeature feature = new RoomFeature(); /* Features */ feature.setInterposed(settings.isCommentsEnabled()); @@ -193,7 +193,7 @@ public class ToV2Migrator { final List<AnswerOption> toOptions = new ArrayList<>(); to.setPossibleAnswers(toOptions); for (int i = 0; i < fromChoiceQuestionContent.getOptions().size(); i++) { - AnswerOption option = new AnswerOption(); + final AnswerOption option = new AnswerOption(); option.setText(fromChoiceQuestionContent.getOptions().get(i).getLabel()); option.setValue(fromChoiceQuestionContent.getOptions().get(i).getPoints()); option.setCorrect(fromChoiceQuestionContent.getCorrectOptionIndexes().contains(i)); @@ -211,7 +211,7 @@ public class ToV2Migrator { throw new IllegalArgumentException("Unsupported content format."); } } - de.thm.arsnova.model.Content.State state = from.getState(); + final de.thm.arsnova.model.Content.State state = from.getState(); to.setPiRound(state.getRound()); to.setActive(state.isVisible()); to.setShowStatistic(state.isResponsesVisible()); @@ -240,7 +240,7 @@ public class ToV2Migrator { if (content.isMultiple()) { to.setAnswerText(migrateChoice(from.getSelectedChoiceIndexes(), content.getOptions())); } else { - int index = from.getSelectedChoiceIndexes().get(0); + final int index = from.getSelectedChoiceIndexes().get(0); to.setAnswerText(content.getOptions().get(index).getLabel()); } } @@ -324,7 +324,7 @@ public class ToV2Migrator { } public List<Answer> migrate(final AnswerStatistics from, - final de.thm.arsnova.model.ChoiceQuestionContent content, int round) { + final de.thm.arsnova.model.ChoiceQuestionContent content, final int round) { if (round < 1 || round > content.getState().getRound()) { throw new IllegalArgumentException("Invalid value for round"); } @@ -340,7 +340,7 @@ public class ToV2Migrator { to.add(abstention); } - Map<String, Integer> choices; + final Map<String, Integer> choices; if (content.isMultiple()) { /* Map selected choice indexes -> answer count */ choices = stats.getCombinatedCounts().stream().collect(Collectors.toMap( @@ -353,14 +353,14 @@ public class ToV2Migrator { } else { choices = new LinkedHashMap<>(); int i = 0; - for (ChoiceQuestionContent.AnswerOption option : content.getOptions()) { + for (final ChoiceQuestionContent.AnswerOption option : content.getOptions()) { choices.put(option.getLabel(), stats.getIndependentCounts().get(i)); i++; } } - for (Map.Entry<String, Integer> choice : choices.entrySet()) { - Answer answer = new Answer(); + for (final Map.Entry<String, Integer> choice : choices.entrySet()) { + final Answer answer = new Answer(); answer.setQuestionId(content.getId()); answer.setPiRound(round); answer.setAnswerCount(choice.getValue()); @@ -394,8 +394,8 @@ public class ToV2Migrator { } public RoomInfo migrateStats(final de.thm.arsnova.model.Room from) { - RoomInfo to = new RoomInfo(migrate(from)); - RoomStatistics stats = from.getStatistics(); + final RoomInfo to = new RoomInfo(migrate(from)); + final RoomStatistics stats = from.getStatistics(); to.setNumQuestions(stats.getContentCount()); to.setNumUnanswered(stats.getUnansweredContentCount()); to.setNumAnswers(stats.getAnswerCount()); @@ -407,7 +407,7 @@ public class ToV2Migrator { public String migrateChoice(final List<Integer> selectedChoiceIndexes, final List<ChoiceQuestionContent.AnswerOption> options) { - List<String> answers = new ArrayList<>(); + final List<String> answers = new ArrayList<>(); for (int i = 0; i < options.size(); i++) { answers.add(selectedChoiceIndexes.contains(i) ? "1" : "0"); } diff --git a/src/main/java/de/thm/arsnova/model/migration/v2/Answer.java b/src/main/java/de/thm/arsnova/model/migration/v2/Answer.java index 31c1003f2dcd8cd26dd954833447d5c4bffe4214..1c97407511fc9d6449752439d30d95979a1d5956 100644 --- a/src/main/java/de/thm/arsnova/model/migration/v2/Answer.java +++ b/src/main/java/de/thm/arsnova/model/migration/v2/Answer.java @@ -150,7 +150,7 @@ public class Answer implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setPiRound(int piRound) { + public void setPiRound(final int piRound) { this.piRound = piRound; } @@ -172,7 +172,7 @@ public class Answer implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setAnswerImage(String answerImage) { + public void setAnswerImage(final String answerImage) { this.answerImage = answerImage; } @@ -183,7 +183,7 @@ public class Answer implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setAnswerThumbnailImage(String answerThumbnailImage) { + public void setAnswerThumbnailImage(final String answerThumbnailImage) { this.answerThumbnailImage = answerThumbnailImage; } @@ -194,7 +194,7 @@ public class Answer implements Entity { } @JsonView(View.Persistence.class) - public void setTimestamp(long timestamp) { + public void setTimestamp(final long timestamp) { this.timestamp = timestamp; } @@ -205,7 +205,7 @@ public class Answer implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setRead(boolean read) { + public void setRead(final boolean read) { this.read = read; } @@ -226,7 +226,7 @@ public class Answer implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setAbstention(boolean abstention) { + public void setAbstention(final boolean abstention) { this.abstention = abstention; } @@ -236,7 +236,7 @@ public class Answer implements Entity { return abstentionCount; } - public void setAbstentionCount(int abstentionCount) { + public void setAbstentionCount(final int abstentionCount) { this.abstentionCount = abstentionCount; } @@ -247,7 +247,7 @@ public class Answer implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setQuestionVariant(String questionVariant) { + public void setQuestionVariant(final String questionVariant) { this.questionVariant = questionVariant; } @@ -258,7 +258,7 @@ public class Answer implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setQuestionValue(int questionValue) { + public void setQuestionValue(final int questionValue) { this.questionValue = questionValue; } @@ -291,7 +291,7 @@ public class Answer implements Entity { } @Override - public boolean equals(Object obj) { + public boolean equals(final Object obj) { // auto generated! if (this == obj) { return true; @@ -302,7 +302,7 @@ public class Answer implements Entity { if (getClass() != obj.getClass()) { return false; } - Answer other = (Answer) obj; + final Answer other = (Answer) obj; if (id == null) { if (other.id != null) { return false; diff --git a/src/main/java/de/thm/arsnova/model/migration/v2/AnswerOption.java b/src/main/java/de/thm/arsnova/model/migration/v2/AnswerOption.java index ea8f5888559244fa497653ebc3cb84ea9b0b95bc..1574d7f356c0856bc336398ccf1882b8a3cbff8e 100644 --- a/src/main/java/de/thm/arsnova/model/migration/v2/AnswerOption.java +++ b/src/main/java/de/thm/arsnova/model/migration/v2/AnswerOption.java @@ -41,7 +41,7 @@ public class AnswerOption implements Serializable { return this.id; } - public void setId(String id) { + public void setId(final String id) { this.id = id; } @@ -52,7 +52,7 @@ public class AnswerOption implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setText(String text) { + public void setText(final String text) { this.text = text; } @@ -63,7 +63,7 @@ public class AnswerOption implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setCorrect(boolean correct) { + public void setCorrect(final boolean correct) { this.correct = correct; } @@ -74,7 +74,7 @@ public class AnswerOption implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setValue(int value) { + public void setValue(final int value) { this.value = value; } diff --git a/src/main/java/de/thm/arsnova/model/migration/v2/ClientAuthentication.java b/src/main/java/de/thm/arsnova/model/migration/v2/ClientAuthentication.java index 33cbcb4995349710189425e3bbc91ed6909b581b..2510ad89dc0d7d3c83965f9bb0ba3de3fb8679f6 100644 --- a/src/main/java/de/thm/arsnova/model/migration/v2/ClientAuthentication.java +++ b/src/main/java/de/thm/arsnova/model/migration/v2/ClientAuthentication.java @@ -45,21 +45,21 @@ public class ClientAuthentication implements Serializable { authProvider = UserProfile.AuthProvider.NONE; } - public ClientAuthentication(User user) { + public ClientAuthentication(final User user) { id = user.getId(); username = user.getUsername(); authProvider = user.getAuthProvider(); isAdmin = user.isAdmin(); } - public ClientAuthentication(Authentication authentication) { + public ClientAuthentication(final Authentication authentication) { if (authentication instanceof AnonymousAuthenticationToken) { setUsername(ClientAuthentication.ANONYMOUS); } else { if (!(authentication.getPrincipal() instanceof User)) { throw new IllegalArgumentException("Unsupported authentication token"); } - User user = (User) authentication.getPrincipal(); + final User user = (User) authentication.getPrincipal(); id = user.getId(); username = user.getUsername(); authProvider = user.getAuthProvider(); @@ -123,7 +123,7 @@ public class ClientAuthentication implements Serializable { if (obj == null || !obj.getClass().equals(this.getClass())) { return false; } - ClientAuthentication other = (ClientAuthentication) obj; + final ClientAuthentication other = (ClientAuthentication) obj; return this.authProvider == other.authProvider && Objects.equals(this.id, other.id) && this.username.equals(other.username); diff --git a/src/main/java/de/thm/arsnova/model/migration/v2/Comment.java b/src/main/java/de/thm/arsnova/model/migration/v2/Comment.java index 057deaf3f2c9b801f5a3c741a6e5d89e6a62d2a2..1103e5bb4a7d408aba34d4a3f2f8c06f8fbc8d0b 100644 --- a/src/main/java/de/thm/arsnova/model/migration/v2/Comment.java +++ b/src/main/java/de/thm/arsnova/model/migration/v2/Comment.java @@ -79,7 +79,7 @@ public class Comment implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setRead(boolean read) { + public void setRead(final boolean read) { this.read = read; } @@ -90,7 +90,7 @@ public class Comment implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setSubject(String subject) { + public void setSubject(final String subject) { this.subject = subject; } @@ -101,7 +101,7 @@ public class Comment implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setText(String text) { + public void setText(final String text) { this.text = text; } @@ -112,7 +112,7 @@ public class Comment implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setSessionId(String sessionId) { + public void setSessionId(final String sessionId) { this.sessionId = sessionId; } @@ -123,7 +123,7 @@ public class Comment implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setTimestamp(long timestamp) { + public void setTimestamp(final long timestamp) { this.timestamp = timestamp; } @@ -133,11 +133,11 @@ public class Comment implements Entity { } @JsonView(View.Persistence.class) - public void setCreator(String creator) { + public void setCreator(final String creator) { this.creator = creator; } - public boolean isCreator(ClientAuthentication user) { + public boolean isCreator(final ClientAuthentication user) { return user.getUsername().equals(creator); } } diff --git a/src/main/java/de/thm/arsnova/model/migration/v2/CommentReadingCount.java b/src/main/java/de/thm/arsnova/model/migration/v2/CommentReadingCount.java index 0a52b3bbeb10a42ea3264898fbd3a51d62c5aa29..2b6291a29bf93a553616fb255e563fd8e72218d9 100644 --- a/src/main/java/de/thm/arsnova/model/migration/v2/CommentReadingCount.java +++ b/src/main/java/de/thm/arsnova/model/migration/v2/CommentReadingCount.java @@ -33,7 +33,7 @@ public class CommentReadingCount { private int read; private int unread; - public CommentReadingCount(int readCount, int unreadCount) { + public CommentReadingCount(final int readCount, final int unreadCount) { this.read = readCount; this.unread = unreadCount; } @@ -49,7 +49,7 @@ public class CommentReadingCount { return read; } - public void setRead(int read) { + public void setRead(final int read) { this.read = read; } @@ -59,7 +59,7 @@ public class CommentReadingCount { return unread; } - public void setUnread(int unread) { + public void setUnread(final int unread) { this.unread = unread; } diff --git a/src/main/java/de/thm/arsnova/model/migration/v2/Content.java b/src/main/java/de/thm/arsnova/model/migration/v2/Content.java index 3d334d99795100d203356888dfcefa73779bccbe..258fe80f0ef6615cc7a65957ca21848bfd4e939b 100644 --- a/src/main/java/de/thm/arsnova/model/migration/v2/Content.java +++ b/src/main/java/de/thm/arsnova/model/migration/v2/Content.java @@ -266,7 +266,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setImageQuestion(boolean imageQuestion) { + public void setImageQuestion(final boolean imageQuestion) { this.imageQuestion = imageQuestion; } @@ -288,7 +288,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setPiRoundEndTime(long piRoundEndTime) { + public void setPiRoundEndTime(final long piRoundEndTime) { this.piRoundEndTime = piRoundEndTime; } @@ -299,7 +299,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setPiRoundStartTime(long piRoundStartTime) { + public void setPiRoundStartTime(final long piRoundStartTime) { this.piRoundStartTime = piRoundStartTime; } @@ -308,7 +308,7 @@ public class Content implements Entity { return piRoundActive; } - public void setPiRoundActive(boolean piRoundActive) { + public void setPiRoundActive(final boolean piRoundActive) { this.piRoundActive = piRoundActive; } @@ -317,7 +317,7 @@ public class Content implements Entity { return piRoundFinished; } - public void setPiRoundFinished(boolean piRoundFinished) { + public void setPiRoundFinished(final boolean piRoundFinished) { this.piRoundFinished = piRoundFinished; } @@ -339,7 +339,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setCvIsColored(boolean cvIsColored) { + public void setCvIsColored(final boolean cvIsColored) { this.cvIsColored = cvIsColored; } @@ -508,7 +508,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setGridOffsetX(int gridOffsetX) { + public void setGridOffsetX(final int gridOffsetX) { this.gridOffsetX = gridOffsetX; } @@ -519,7 +519,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setGridOffsetY(int gridOffsetY) { + public void setGridOffsetY(final int gridOffsetY) { this.gridOffsetY = gridOffsetY; } @@ -530,7 +530,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setGridZoomLvl(int gridZoomLvl) { + public void setGridZoomLvl(final int gridZoomLvl) { this.gridZoomLvl = gridZoomLvl; } @@ -541,7 +541,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setGridSizeX(int gridSizeX) { + public void setGridSizeX(final int gridSizeX) { this.gridSizeX = gridSizeX; } @@ -552,7 +552,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setGridSizeY(int gridSizeY) { + public void setGridSizeY(final int gridSizeY) { this.gridSizeY = gridSizeY; } @@ -563,7 +563,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setGridIsHidden(boolean gridIsHidden) { + public void setGridIsHidden(final boolean gridIsHidden) { this.gridIsHidden = gridIsHidden; } @@ -574,7 +574,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setImgRotation(int imgRotation) { + public void setImgRotation(final int imgRotation) { this.imgRotation = imgRotation; } @@ -585,7 +585,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setToggleFieldsLeft(boolean toggleFieldsLeft) { + public void setToggleFieldsLeft(final boolean toggleFieldsLeft) { this.toggleFieldsLeft = toggleFieldsLeft; } @@ -596,7 +596,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setNumClickableFields(int numClickableFields) { + public void setNumClickableFields(final int numClickableFields) { this.numClickableFields = numClickableFields; } @@ -607,7 +607,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setThresholdCorrectAnswers(int thresholdCorrectAnswers) { + public void setThresholdCorrectAnswers(final int thresholdCorrectAnswers) { this.thresholdCorrectAnswers = thresholdCorrectAnswers; } @@ -618,7 +618,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setGridLineColor(String gridLineColor) { + public void setGridLineColor(final String gridLineColor) { this.gridLineColor = gridLineColor; } @@ -629,7 +629,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setNumberOfDots(int numberOfDots) { + public void setNumberOfDots(final int numberOfDots) { this.numberOfDots = numberOfDots; } @@ -640,12 +640,12 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setGridType(String gridType) { + public void setGridType(final String gridType) { this.gridType = gridType; } @JsonView({View.Persistence.class, View.Public.class}) - public void setScaleFactor(String scaleFactor) { + public void setScaleFactor(final String scaleFactor) { this.scaleFactor = scaleFactor; } @@ -656,7 +656,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setGridScaleFactor(String scaleFactor) { + public void setGridScaleFactor(final String scaleFactor) { this.gridScaleFactor = scaleFactor; } @@ -673,7 +673,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setTextAnswerEnabled(boolean textAnswerEnabled) { + public void setTextAnswerEnabled(final boolean textAnswerEnabled) { this.textAnswerEnabled = textAnswerEnabled; } @@ -684,7 +684,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setVotingDisabled(boolean votingDisabled) { + public void setVotingDisabled(final boolean votingDisabled) { this.votingDisabled = votingDisabled; } @@ -694,7 +694,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setHint(String hint) { + public void setHint(final String hint) { this.hint = hint; } @@ -704,7 +704,7 @@ public class Content implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setSolution(String solution) { + public void setSolution(final String solution) { this.solution = solution; } @@ -723,7 +723,7 @@ public class Content implements Entity { } @Override - public boolean equals(Object obj) { + public boolean equals(final Object obj) { // auto generated! if (this == obj) { return true; @@ -734,7 +734,7 @@ public class Content implements Entity { if (getClass() != obj.getClass()) { return false; } - Content other = (Content) obj; + final Content other = (Content) obj; if (id == null) { if (other.id != null) { return false; @@ -745,7 +745,7 @@ public class Content implements Entity { return true; } - public int calculateValue(Answer answer) { + public int calculateValue(final Answer answer) { if (answer.isAbstention()) { return 0; } else if ("mc".equals(this.questionType)) { @@ -757,7 +757,7 @@ public class Content implements Entity { } } - public String checkCaseSensitive(String answerText) { + public String checkCaseSensitive(final String answerText) { if (this.isIgnoreCaseSensitive()) { this.setCorrectAnswer(this.getCorrectAnswer().toLowerCase()); return answerText.toLowerCase(); @@ -765,7 +765,7 @@ public class Content implements Entity { return answerText; } - public String checkWhitespaces(String answerText) { + public String checkWhitespaces(final String answerText) { if (this.isIgnoreWhitespaces()) { this.setCorrectAnswer(this.getCorrectAnswer().replaceAll("[\\s]", "")); return answerText.replaceAll("[\\s]", ""); @@ -773,7 +773,7 @@ public class Content implements Entity { return answerText; } - public String checkPunctuation(String answerText) { + public String checkPunctuation(final String answerText) { if (this.isIgnorePunctuation()) { this.setCorrectAnswer(this.getCorrectAnswer().replaceAll("\\p{Punct}", "")); return answerText.replaceAll("\\p{Punct}", ""); @@ -781,13 +781,13 @@ public class Content implements Entity { return answerText; } - public void checkTextStrictOptions(Answer answer) { + public void checkTextStrictOptions(final Answer answer) { answer.setAnswerTextRaw(this.checkCaseSensitive(answer.getAnswerTextRaw())); answer.setAnswerTextRaw(this.checkPunctuation(answer.getAnswerTextRaw())); answer.setAnswerTextRaw(this.checkWhitespaces(answer.getAnswerTextRaw())); } - public int evaluateCorrectAnswerFixedText(String answerTextRaw) { + public int evaluateCorrectAnswerFixedText(final String answerTextRaw) { if (answerTextRaw != null) { if (answerTextRaw.equals(this.getCorrectAnswer())) { return this.getRating(); @@ -796,11 +796,11 @@ public class Content implements Entity { return 0; } - public boolean isSuccessfulFreeTextAnswer(String answerTextRaw) { + public boolean isSuccessfulFreeTextAnswer(final String answerTextRaw) { return answerTextRaw != null && answerTextRaw.equals(this.getCorrectAnswer()); } - public void updateRoundStartVariables(Date start, Date end) { + public void updateRoundStartVariables(final Date start, final Date end) { if (this.getPiRound() == 1 && this.isPiRoundFinished()) { this.setPiRound(2); } @@ -850,9 +850,9 @@ public class Content implements Entity { } } - private int calculateRegularValue(Answer answer) { - String answerText = answer.getAnswerText(); - for (AnswerOption p : this.possibleAnswers) { + private int calculateRegularValue(final Answer answer) { + final String answerText = answer.getAnswerText(); + for (final AnswerOption p : this.possibleAnswers) { if (answerText.equals(p.getText())) { return p.getValue(); } @@ -860,11 +860,11 @@ public class Content implements Entity { return 0; } - private int calculateGridValue(Answer answer) { + private int calculateGridValue(final Answer answer) { int value = 0; - String[] answers = answer.getAnswerText().split(","); - for (String a : answers) { - for (AnswerOption p : this.possibleAnswers) { + final String[] answers = answer.getAnswerText().split(","); + for (final String a : answers) { + for (final AnswerOption p : this.possibleAnswers) { if (a.equals(p.getText())) { value += p.getValue(); } @@ -873,12 +873,12 @@ public class Content implements Entity { return value; } - private int calculateMultipleChoiceValue(Answer answer) { + private int calculateMultipleChoiceValue(final Answer answer) { int value = 0; - String[] answers = answer.getAnswerText().split(","); + final String[] answers = answer.getAnswerText().split(","); for (int i = 0; i < this.possibleAnswers.size() && i < answers.length; i++) { if ("1".equals(answers[i])) { - AnswerOption p = this.possibleAnswers.get(i); + final AnswerOption p = this.possibleAnswers.get(i); value += p.getValue(); } } diff --git a/src/main/java/de/thm/arsnova/model/migration/v2/DbUser.java b/src/main/java/de/thm/arsnova/model/migration/v2/DbUser.java index a54810bc931715f38e2e32dd0546a1b561f3b86b..1ec263bdefe52e8222ba88ebdab1a47a7c37089d 100644 --- a/src/main/java/de/thm/arsnova/model/migration/v2/DbUser.java +++ b/src/main/java/de/thm/arsnova/model/migration/v2/DbUser.java @@ -42,7 +42,7 @@ public class DbUser implements Entity { } @JsonView(View.Persistence.class) - public void setId(String id) { + public void setId(final String id) { this.id = id; } @@ -52,7 +52,7 @@ public class DbUser implements Entity { } @JsonView(View.Persistence.class) - public void setRevision(String rev) { + public void setRevision(final String rev) { this.rev = rev; } @@ -62,7 +62,7 @@ public class DbUser implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setUsername(String username) { + public void setUsername(final String username) { this.username = username; } @@ -72,7 +72,7 @@ public class DbUser implements Entity { } @JsonView(View.Persistence.class) - public void setPassword(String password) { + public void setPassword(final String password) { this.password = password; } @@ -82,7 +82,7 @@ public class DbUser implements Entity { } @JsonView(View.Persistence.class) - public void setActivationKey(String activationKey) { + public void setActivationKey(final String activationKey) { this.activationKey = activationKey; } @@ -92,7 +92,7 @@ public class DbUser implements Entity { } @JsonView(View.Persistence.class) - public void setPasswordResetKey(String passwordResetKey) { + public void setPasswordResetKey(final String passwordResetKey) { this.passwordResetKey = passwordResetKey; } @@ -102,7 +102,7 @@ public class DbUser implements Entity { } @JsonView(View.Persistence.class) - public void setPasswordResetTime(long passwordResetTime) { + public void setPasswordResetTime(final long passwordResetTime) { this.passwordResetTime = passwordResetTime; } @@ -112,7 +112,7 @@ public class DbUser implements Entity { } @JsonView(View.Persistence.class) - public void setCreation(long creation) { + public void setCreation(final long creation) { this.creation = creation; } @@ -122,7 +122,7 @@ public class DbUser implements Entity { } @JsonView(View.Persistence.class) - public void setLastLogin(long lastLogin) { + public void setLastLogin(final long lastLogin) { this.lastLogin = lastLogin; } } diff --git a/src/main/java/de/thm/arsnova/model/migration/v2/LogEntry.java b/src/main/java/de/thm/arsnova/model/migration/v2/LogEntry.java index 522c3928c064c6f548fff4fd68f4b6f3fd2df644..74232a1273cc270bd6c2b28d086db3fb86eec2a9 100644 --- a/src/main/java/de/thm/arsnova/model/migration/v2/LogEntry.java +++ b/src/main/java/de/thm/arsnova/model/migration/v2/LogEntry.java @@ -41,7 +41,8 @@ public class LogEntry implements Entity { private int level; private Map<String, Object> payload; - public LogEntry(@JsonProperty String event, @JsonProperty int level, @JsonProperty Map<String, Object> payload) { + public LogEntry(@JsonProperty final String event, @JsonProperty final int level, + @JsonProperty final Map<String, Object> payload) { this.event = event; this.level = level; this.payload = payload; diff --git a/src/main/java/de/thm/arsnova/model/migration/v2/LoggedIn.java b/src/main/java/de/thm/arsnova/model/migration/v2/LoggedIn.java index a34ebc8628aeec99ac03b4582d2b90616de73ad3..54332633bb361b7361c66b861fe25ee209f400aa 100644 --- a/src/main/java/de/thm/arsnova/model/migration/v2/LoggedIn.java +++ b/src/main/java/de/thm/arsnova/model/migration/v2/LoggedIn.java @@ -42,14 +42,14 @@ public class LoggedIn implements Entity { this.updateTimestamp(); } - public void addVisitedSession(Room s) { + public void addVisitedSession(final Room s) { if (!isAlreadyVisited(s)) { this.visitedSessions.add(new VisitedRoom(s)); } } - private boolean isAlreadyVisited(Room s) { - for (VisitedRoom vs : this.visitedSessions) { + private boolean isAlreadyVisited(final Room s) { + for (final VisitedRoom vs : this.visitedSessions) { if (vs.getId().equals(s.getId())) { return true; } @@ -87,7 +87,7 @@ public class LoggedIn implements Entity { } @JsonView(View.Persistence.class) - public void setUser(String user) { + public void setUser(final String user) { this.user = user; } @@ -97,7 +97,7 @@ public class LoggedIn implements Entity { } @JsonView(View.Persistence.class) - public void setSessionId(String sessionId) { + public void setSessionId(final String sessionId) { this.sessionId = sessionId; } @@ -107,7 +107,7 @@ public class LoggedIn implements Entity { } @JsonView(View.Persistence.class) - public void setTimestamp(long timestamp) { + public void setTimestamp(final long timestamp) { this.timestamp = timestamp; } @@ -117,7 +117,7 @@ public class LoggedIn implements Entity { } @JsonView(View.Persistence.class) - public void setVisitedSessions(List<VisitedRoom> visitedSessions) { + public void setVisitedSessions(final List<VisitedRoom> visitedSessions) { this.visitedSessions = visitedSessions; } @@ -127,7 +127,7 @@ public class LoggedIn implements Entity { } @JsonView(View.Persistence.class) - public void setAnonymized(boolean anonymized) { + public void setAnonymized(final boolean anonymized) { this.anonymized = anonymized; } diff --git a/src/main/java/de/thm/arsnova/model/migration/v2/Motd.java b/src/main/java/de/thm/arsnova/model/migration/v2/Motd.java index cd834cceb4fe0b2e64832a7d14b73f8ff44f58ff..76ccbe954696d734f590c549e78fe731a330297a 100644 --- a/src/main/java/de/thm/arsnova/model/migration/v2/Motd.java +++ b/src/main/java/de/thm/arsnova/model/migration/v2/Motd.java @@ -157,7 +157,7 @@ public class Motd implements Entity { // See http://stackoverflow.com/a/113600 final int prim = 37; - int result = 42; + final int result = 42; return prim * result + this.motdkey.hashCode(); } @@ -166,7 +166,7 @@ public class Motd implements Entity { if (obj == null || !obj.getClass().equals(this.getClass())) { return false; } - Motd other = (Motd) obj; + final Motd other = (Motd) obj; return this.getMotdkey().equals(other.getMotdkey()); } } diff --git a/src/main/java/de/thm/arsnova/model/migration/v2/MotdList.java b/src/main/java/de/thm/arsnova/model/migration/v2/MotdList.java index 27ba44b0c8d5bb634e842270306227338048e081..bc5d1ac942aa6d487fe7e959fa9e713ee2f0a771 100644 --- a/src/main/java/de/thm/arsnova/model/migration/v2/MotdList.java +++ b/src/main/java/de/thm/arsnova/model/migration/v2/MotdList.java @@ -62,7 +62,7 @@ public class MotdList implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setMotdkeys(String motds) { + public void setMotdkeys(final String motds) { motdkeys = motds; } diff --git a/src/main/java/de/thm/arsnova/model/migration/v2/Room.java b/src/main/java/de/thm/arsnova/model/migration/v2/Room.java index 552fb2cff380a93b7c8fee5dd3102c367d757c7f..e79a0531f2635058e57b036b3e71718f5e891409 100644 --- a/src/main/java/de/thm/arsnova/model/migration/v2/Room.java +++ b/src/main/java/de/thm/arsnova/model/migration/v2/Room.java @@ -182,7 +182,7 @@ public class Room implements Entity { } @JsonView(View.Persistence.class) - public void setCreationTime(long creationTime) { + public void setCreationTime(final long creationTime) { this.creationTime = creationTime; } @@ -193,7 +193,7 @@ public class Room implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setLearningProgressOptions(ScoreOptions learningProgressOptions) { + public void setLearningProgressOptions(final ScoreOptions learningProgressOptions) { this.learningProgressOptions = learningProgressOptions; } @@ -205,7 +205,7 @@ public class Room implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setFeatures(RoomFeature features) { + public void setFeatures(final RoomFeature features) { this.features = features; } @@ -326,7 +326,7 @@ public class Room implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setFeedbackLock(Boolean lock) { + public void setFeedbackLock(final Boolean lock) { this.feedbackLock = lock; } @@ -337,7 +337,7 @@ public class Room implements Entity { } @JsonView({View.Persistence.class, View.Public.class}) - public void setFlipFlashcards(Boolean flip) { + public void setFlipFlashcards(final Boolean flip) { this.flipFlashcards = flip; } @@ -364,11 +364,11 @@ public class Room implements Entity { } @Override - public boolean equals(Object obj) { + public boolean equals(final Object obj) { if (obj == null || !obj.getClass().equals(this.getClass())) { return false; } - Room other = (Room) obj; + final Room other = (Room) obj; return this.keyword.equals(other.keyword); } diff --git a/src/main/java/de/thm/arsnova/model/migration/v2/RoomFeature.java b/src/main/java/de/thm/arsnova/model/migration/v2/RoomFeature.java index 568fcbf65acde9be14ba48e42aa8fc9e02b5f2e1..2ab9711bd0bcdfc163f7b0edf9ca9821e81c1176 100644 --- a/src/main/java/de/thm/arsnova/model/migration/v2/RoomFeature.java +++ b/src/main/java/de/thm/arsnova/model/migration/v2/RoomFeature.java @@ -51,7 +51,7 @@ public class RoomFeature implements Serializable { private boolean flashcardFeature = false; private boolean slides = false; - public RoomFeature(RoomFeature features) { + public RoomFeature(final RoomFeature features) { this(); if (features != null) { this.custom = features.custom; @@ -84,7 +84,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setLecture(boolean lecture) { + public void setLecture(final boolean lecture) { this.lecture = lecture; } @@ -95,7 +95,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setJitt(boolean jitt) { + public void setJitt(final boolean jitt) { this.jitt = jitt; } @@ -106,7 +106,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setFeedback(boolean feedback) { + public void setFeedback(final boolean feedback) { this.feedback = feedback; } @@ -117,7 +117,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setInterposed(boolean interposed) { + public void setInterposed(final boolean interposed) { this.interposed = interposed; } @@ -128,7 +128,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setPi(boolean pi) { + public void setPi(final boolean pi) { this.pi = pi; } @@ -139,7 +139,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setLearningProgress(boolean learningProgress) { + public void setLearningProgress(final boolean learningProgress) { this.learningProgress = learningProgress; } @@ -149,7 +149,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setCustom(boolean custom) { + public void setCustom(final boolean custom) { this.custom = custom; } @@ -159,7 +159,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setClicker(boolean clicker) { + public void setClicker(final boolean clicker) { this.clicker = clicker; } @@ -169,7 +169,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setPeerGrading(boolean peerGrading) { + public void setPeerGrading(final boolean peerGrading) { this.peerGrading = peerGrading; } @@ -179,7 +179,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setFlashcardFeature(boolean flashcardFeature) { + public void setFlashcardFeature(final boolean flashcardFeature) { this.flashcardFeature = flashcardFeature; } @@ -189,7 +189,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setFlashcard(boolean flashcard) { + public void setFlashcard(final boolean flashcard) { this.flashcard = flashcard; } @@ -199,7 +199,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setTotal(boolean total) { + public void setTotal(final boolean total) { this.total = total; } @@ -209,7 +209,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setLiveFeedback(boolean liveFeedback) { + public void setLiveFeedback(final boolean liveFeedback) { this.liveFeedback = liveFeedback; } @@ -219,7 +219,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setInterposedFeedback(boolean interposedFeedback) { + public void setInterposedFeedback(final boolean interposedFeedback) { this.interposedFeedback = interposedFeedback; } @@ -229,7 +229,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setLiveClicker(boolean liveClicker) { + public void setLiveClicker(final boolean liveClicker) { this.liveClicker = liveClicker; } @@ -239,7 +239,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setTwitterWall(boolean twitterWall) { + public void setTwitterWall(final boolean twitterWall) { this.twitterWall = twitterWall; } @@ -249,7 +249,7 @@ public class RoomFeature implements Serializable { } @JsonView({View.Persistence.class, View.Public.class}) - public void setSlides(boolean slides) { + public void setSlides(final boolean slides) { this.slides = slides; } diff --git a/src/main/java/de/thm/arsnova/model/migration/v2/RoomInfo.java b/src/main/java/de/thm/arsnova/model/migration/v2/RoomInfo.java index c24129e40d2c9df0631ac4e86efa6273a8a82de2..e127e88d71cfe39acaa0fce634ca1e8ac68040f9 100644 --- a/src/main/java/de/thm/arsnova/model/migration/v2/RoomInfo.java +++ b/src/main/java/de/thm/arsnova/model/migration/v2/RoomInfo.java @@ -49,7 +49,7 @@ public class RoomInfo { private int numUnreadComments; private int numUnanswered; - public RoomInfo(Room room) { + public RoomInfo(final Room room) { this.name = room.getName(); this.shortName = room.getShortName(); this.keyword = room.getKeyword(); @@ -65,9 +65,9 @@ public class RoomInfo { } - public static List<RoomInfo> fromSessionList(List<Room> sessions) { - List<RoomInfo> infos = new ArrayList<>(); - for (Room s : sessions) { + public static List<RoomInfo> fromSessionList(final List<Room> sessions) { + final List<RoomInfo> infos = new ArrayList<>(); + for (final Room s : sessions) { infos.add(new RoomInfo(s)); } return infos; @@ -79,7 +79,7 @@ public class RoomInfo { return name; } - public void setName(String name) { + public void setName(final String name) { this.name = name; } @@ -89,7 +89,7 @@ public class RoomInfo { return shortName; } - public void setShortName(String shortName) { + public void setShortName(final String shortName) { this.shortName = shortName; } @@ -99,7 +99,7 @@ public class RoomInfo { return keyword; } - public void setKeyword(String keyword) { + public void setKeyword(final String keyword) { this.keyword = keyword; } @@ -109,7 +109,7 @@ public class RoomInfo { return active; } - public void setActive(boolean active) { + public void setActive(final boolean active) { this.active = active; } @@ -119,7 +119,7 @@ public class RoomInfo { return courseType; } - public void setCourseType(String courseType) { + public void setCourseType(final String courseType) { this.courseType = courseType; } @@ -129,7 +129,7 @@ public class RoomInfo { return sessionType; } - public void setSessionType(String sessionType) { + public void setSessionType(final String sessionType) { this.sessionType = sessionType; } @@ -139,7 +139,7 @@ public class RoomInfo { return ppLevel; } - public void setPpLevel(String ppLevel) { + public void setPpLevel(final String ppLevel) { this.ppLevel = ppLevel; } @@ -149,7 +149,7 @@ public class RoomInfo { return ppSubject; } - public void setPpSubject(String ppSubject) { + public void setPpSubject(final String ppSubject) { this.ppSubject = ppSubject; } @@ -159,7 +159,7 @@ public class RoomInfo { return numQuestions; } - public void setNumQuestions(int numQuestions) { + public void setNumQuestions(final int numQuestions) { this.numQuestions = numQuestions; } @@ -169,7 +169,7 @@ public class RoomInfo { return numAnswers; } - public void setNumAnswers(int numAnswers) { + public void setNumAnswers(final int numAnswers) { this.numAnswers = numAnswers; } @@ -181,7 +181,7 @@ public class RoomInfo { } /* Still named "Interposed" instead of "Comments" here for compatibilty reasons. */ - public void setNumInterposed(int numComments) { + public void setNumInterposed(final int numComments) { this.numComments = numComments; } @@ -191,7 +191,7 @@ public class RoomInfo { return numUnanswered; } - public void setNumUnanswered(int numUnanswered) { + public void setNumUnanswered(final int numUnanswered) { this.numUnanswered = numUnanswered; } @@ -201,7 +201,7 @@ public class RoomInfo { return creationTime; } - public void setCreationTime(long creationTime) { + public void setCreationTime(final long creationTime) { this.creationTime = creationTime; } @@ -213,7 +213,7 @@ public class RoomInfo { } /* Still named "Interposed" instead of "Comments" here for compatibilty reasons. */ - public void setNumUnredInterposed(int numUnreadComments) { + public void setNumUnredInterposed(final int numUnreadComments) { this.numUnreadComments = numUnreadComments; } @@ -227,7 +227,7 @@ public class RoomInfo { } @Override - public boolean equals(Object obj) { + public boolean equals(final Object obj) { // auto generated! if (this == obj) { return true; @@ -238,7 +238,7 @@ public class RoomInfo { if (getClass() != obj.getClass()) { return false; } - RoomInfo other = (RoomInfo) obj; + final RoomInfo other = (RoomInfo) obj; if (keyword == null) { if (other.keyword != null) { return false; diff --git a/src/main/java/de/thm/arsnova/model/migration/v2/VisitedRoom.java b/src/main/java/de/thm/arsnova/model/migration/v2/VisitedRoom.java index e0ae732c22aacd9b4af11da2f4ce75b17f1b17d3..2f7385c674d7a54c6db1481dcca2f44995dd5d2e 100644 --- a/src/main/java/de/thm/arsnova/model/migration/v2/VisitedRoom.java +++ b/src/main/java/de/thm/arsnova/model/migration/v2/VisitedRoom.java @@ -38,7 +38,7 @@ public class VisitedRoom { public VisitedRoom() { } - public VisitedRoom(Room s) { + public VisitedRoom(final Room s) { this.id = s.getId(); this.name = s.getName(); this.keyword = s.getKeyword(); @@ -60,7 +60,7 @@ public class VisitedRoom { } @JsonView({View.Persistence.class, View.Public.class}) - public void setName(String name) { + public void setName(final String name) { this.name = name; } @@ -70,7 +70,7 @@ public class VisitedRoom { } @JsonView({View.Persistence.class, View.Public.class}) - public void setKeyword(String keyword) { + public void setKeyword(final String keyword) { this.keyword = keyword; } diff --git a/src/main/java/de/thm/arsnova/model/serialization/CouchDbDocumentModule.java b/src/main/java/de/thm/arsnova/model/serialization/CouchDbDocumentModule.java index 5463656449319420916c9b65c463063b4288a310..c01dbd81e237aa69fac9ab5b7b34c83375ab4b7d 100644 --- a/src/main/java/de/thm/arsnova/model/serialization/CouchDbDocumentModule.java +++ b/src/main/java/de/thm/arsnova/model/serialization/CouchDbDocumentModule.java @@ -28,7 +28,7 @@ public class CouchDbDocumentModule extends SimpleModule { } @Override - public void setupModule(SetupContext context) { + public void setupModule(final SetupContext context) { context.setMixInAnnotations(Entity.class, CouchDbDocumentMixIn.class); context.setMixInAnnotations(de.thm.arsnova.model.migration.v2.Entity.class, CouchDbDocumentV2MixIn.class); } diff --git a/src/main/java/de/thm/arsnova/model/serialization/CouchDbObjectMapperFactory.java b/src/main/java/de/thm/arsnova/model/serialization/CouchDbObjectMapperFactory.java index b53860bf647c39cc1d678cd70145b64040323fb3..0ac9a9e787453806fe313917822d6946af92e2dd 100644 --- a/src/main/java/de/thm/arsnova/model/serialization/CouchDbObjectMapperFactory.java +++ b/src/main/java/de/thm/arsnova/model/serialization/CouchDbObjectMapperFactory.java @@ -24,8 +24,8 @@ import org.ektorp.CouchDbConnector; import org.ektorp.impl.StdObjectMapperFactory; public class CouchDbObjectMapperFactory extends StdObjectMapperFactory { - public ObjectMapper createObjectMapper(CouchDbConnector connector) { - ObjectMapper om = super.createObjectMapper(connector); + public ObjectMapper createObjectMapper(final CouchDbConnector connector) { + final ObjectMapper om = super.createObjectMapper(connector); om.configure(MapperFeature.DEFAULT_VIEW_INCLUSION, false); om.setConfig(om.getSerializationConfig().withView(View.Persistence.class)); om.registerModule(new CouchDbDocumentModule()); diff --git a/src/main/java/de/thm/arsnova/model/serialization/CouchDbTypeFieldConverter.java b/src/main/java/de/thm/arsnova/model/serialization/CouchDbTypeFieldConverter.java index 498d88ecba65c990c80eb442e1940ceda6586ca8..58b0e6f7a471a68e5179f7fb8b89ce41e0b03969 100644 --- a/src/main/java/de/thm/arsnova/model/serialization/CouchDbTypeFieldConverter.java +++ b/src/main/java/de/thm/arsnova/model/serialization/CouchDbTypeFieldConverter.java @@ -27,17 +27,17 @@ import de.thm.arsnova.model.Entity; public class CouchDbTypeFieldConverter implements Converter<Class<? extends Entity>, String> { @Override - public String convert(Class<? extends Entity> clazz) { + public String convert(final Class<? extends Entity> clazz) { return clazz.getSimpleName(); } @Override - public JavaType getInputType(TypeFactory typeFactory) { + public JavaType getInputType(final TypeFactory typeFactory) { return typeFactory.constructGeneralizedType(typeFactory.constructType(Class.class), Entity.class); } @Override - public JavaType getOutputType(TypeFactory typeFactory) { + public JavaType getOutputType(final TypeFactory typeFactory) { return typeFactory.constructType(String.class); } } diff --git a/src/main/java/de/thm/arsnova/model/serialization/CouchDbTypeFieldV2Converter.java b/src/main/java/de/thm/arsnova/model/serialization/CouchDbTypeFieldV2Converter.java index 00fa737fa8d1018147f3921721397259330782ee..6a16b242996584f46a93bc3a1864f6ef47531252 100644 --- a/src/main/java/de/thm/arsnova/model/serialization/CouchDbTypeFieldV2Converter.java +++ b/src/main/java/de/thm/arsnova/model/serialization/CouchDbTypeFieldV2Converter.java @@ -49,17 +49,17 @@ public class CouchDbTypeFieldV2Converter implements Converter<Class<? extends En } @Override - public String convert(Class<? extends Entity> clazz) { + public String convert(final Class<? extends Entity> clazz) { return typeMapping.get(clazz); } @Override - public JavaType getInputType(TypeFactory typeFactory) { + public JavaType getInputType(final TypeFactory typeFactory) { return typeFactory.constructGeneralizedType(typeFactory.constructType(Class.class), Entity.class); } @Override - public JavaType getOutputType(TypeFactory typeFactory) { + public JavaType getOutputType(final TypeFactory typeFactory) { return typeFactory.constructType(String.class); } } diff --git a/src/main/java/de/thm/arsnova/model/serialization/FormatAnswerTypeIdResolver.java b/src/main/java/de/thm/arsnova/model/serialization/FormatAnswerTypeIdResolver.java index a415be14a990e5d44fa836afd95f9ca4652b7b14..81ed4117dc2c491668170dafa0651fbaaf07cb87 100644 --- a/src/main/java/de/thm/arsnova/model/serialization/FormatAnswerTypeIdResolver.java +++ b/src/main/java/de/thm/arsnova/model/serialization/FormatAnswerTypeIdResolver.java @@ -47,7 +47,7 @@ public class FormatAnswerTypeIdResolver extends TypeIdResolverBase { @Override public JavaType typeFromId(final DatabindContext context, final String id) throws IOException { - Content.Format format = Content.Format.valueOf(id); + final Content.Format format = Content.Format.valueOf(id); switch (format) { case BINARY: return TypeFactory.defaultInstance().constructType(ChoiceAnswer.class); diff --git a/src/main/java/de/thm/arsnova/model/serialization/FormatContentTypeIdResolver.java b/src/main/java/de/thm/arsnova/model/serialization/FormatContentTypeIdResolver.java index d52dc1f66ad1fda87fb2da2b9fedc9c22e36de63..209ebce240272ac1e8225431108fee0abafc9d12 100644 --- a/src/main/java/de/thm/arsnova/model/serialization/FormatContentTypeIdResolver.java +++ b/src/main/java/de/thm/arsnova/model/serialization/FormatContentTypeIdResolver.java @@ -45,7 +45,7 @@ public class FormatContentTypeIdResolver extends TypeIdResolverBase { @Override public JavaType typeFromId(final DatabindContext context, final String id) throws IOException { - Content.Format format = Content.Format.valueOf(id); + final Content.Format format = Content.Format.valueOf(id); switch (format) { case BINARY: return TypeFactory.defaultInstance().constructType(ChoiceQuestionContent.class); diff --git a/src/main/java/de/thm/arsnova/model/transport/ImportExportContainer.java b/src/main/java/de/thm/arsnova/model/transport/ImportExportContainer.java index 1e4f33659292581398c7c1cbf8eac313b2d519ec..12e6239070a9ef430d15bae4b12b280e50f4dea4 100644 --- a/src/main/java/de/thm/arsnova/model/transport/ImportExportContainer.java +++ b/src/main/java/de/thm/arsnova/model/transport/ImportExportContainer.java @@ -64,7 +64,7 @@ public class ImportExportContainer { return session; } - public void setSession(ImportExportRoom session) { + public void setSession(final ImportExportRoom session) { this.session = session; } @@ -74,7 +74,7 @@ public class ImportExportContainer { return questions; } - public void setQuestions(List<ImportExportContent> questions) { + public void setQuestions(final List<ImportExportContent> questions) { this.questions = questions; } @@ -84,7 +84,7 @@ public class ImportExportContainer { return feedbackQuestions; } - public void setFeedbackQuestions(List<Comment> feedbackQuestions) { + public void setFeedbackQuestions(final List<Comment> feedbackQuestions) { this.feedbackQuestions = feedbackQuestions; } @@ -93,7 +93,7 @@ public class ImportExportContainer { return motds; } - public void setMotds(List<Motd> motdList) { + public void setMotds(final List<Motd> motdList) { this.motds = motdList; } @@ -102,7 +102,7 @@ public class ImportExportContainer { return session.sessionFeature; } - public void setSessionFeature(RoomFeature roomFeature) { + public void setSessionFeature(final RoomFeature roomFeature) { session.sessionFeature = roomFeature; } @@ -111,29 +111,29 @@ public class ImportExportContainer { return sessionInfo; } - public void setSessionInfo(RoomInfo roomInfo) { + public void setSessionInfo(final RoomInfo roomInfo) { sessionInfo = roomInfo; } - public void setSessionFromSessionObject(Room s) { - ImportExportRoom importExportRoom = new ImportExportRoom(); + public void setSessionFromSessionObject(final Room s) { + final ImportExportRoom importExportRoom = new ImportExportRoom(); importExportRoom.setName(s.getName()); importExportRoom.setShortName(s.getShortName()); importExportRoom.setActive(s.isActive()); - PublicPool p = new PublicPool(); + final PublicPool p = new PublicPool(); p.setPpFromSession(s); importExportRoom.setPublicPool(p); importExportRoom.sessionFeature = s.getFeatures(); session = importExportRoom; } - public void addQuestionWithAnswers(Content content, List<Answer> answerList) { - ImportExportContent importExportContent = new ImportExportContent(content); + public void addQuestionWithAnswers(final Content content, final List<Answer> answerList) { + final ImportExportContent importExportContent = new ImportExportContent(content); importExportContent.setAnswers(answerList); questions.add(importExportContent); } - public Room generateSessionEntity(ClientAuthentication user) { + public Room generateSessionEntity(final ClientAuthentication user) { final Room room = new Room(); // import fields room.setActive(session.isActive()); @@ -169,7 +169,7 @@ public class ImportExportContainer { } - public ImportExportContent(Content content) { + public ImportExportContent(final Content content) { setQuestionType(content.getQuestionType()); setQuestionVariant(content.getQuestionVariant()); setSubject(content.getSubject()); @@ -231,7 +231,7 @@ public class ImportExportContainer { return answers; } - public void setAnswers(List<Answer> answers) { + public void setAnswers(final List<Answer> answers) { this.answers = answers; } } @@ -256,7 +256,7 @@ public class ImportExportContainer { return name; } - public void setName(String name) { + public void setName(final String name) { this.name = name; } @@ -266,7 +266,7 @@ public class ImportExportContainer { return sessionType; } - public void setSessionType(String sessionType) { + public void setSessionType(final String sessionType) { this.sessionType = sessionType; } @@ -276,7 +276,7 @@ public class ImportExportContainer { return shortName; } - public void setShortName(String shortName) { + public void setShortName(final String shortName) { this.shortName = shortName; } @@ -286,7 +286,7 @@ public class ImportExportContainer { return active; } - public void setActive(boolean active) { + public void setActive(final boolean active) { this.active = active; } @@ -296,7 +296,7 @@ public class ImportExportContainer { return publicPool; } - public void setPublicPool(PublicPool publicPool) { + public void setPublicPool(final PublicPool publicPool) { this.publicPool = publicPool; } @@ -305,7 +305,7 @@ public class ImportExportContainer { return this.sessionFeature; } - public void setSessionFeature(RoomFeature roomFeature) { + public void setSessionFeature(final RoomFeature roomFeature) { this.sessionFeature = roomFeature; } } @@ -334,7 +334,7 @@ public class ImportExportContainer { private String shortName; - public void setPpFromSession(Room room) { + public void setPpFromSession(final Room room) { ppAuthorName = room.getPpAuthorName(); ppAuthorMail = room.getPpAuthorMail(); ppUniversity = room.getPpUniversity(); @@ -354,7 +354,7 @@ public class ImportExportContainer { return ppAuthorName; } - public void setPpAuthorName(String ppAuthorName) { + public void setPpAuthorName(final String ppAuthorName) { this.ppAuthorName = ppAuthorName; } @@ -364,7 +364,7 @@ public class ImportExportContainer { return ppAuthorMail; } - public void setPpAuthorMail(String ppAuthorMail) { + public void setPpAuthorMail(final String ppAuthorMail) { this.ppAuthorMail = ppAuthorMail; } @@ -374,7 +374,7 @@ public class ImportExportContainer { return ppUniversity; } - public void setPpUniversity(String ppUniversity) { + public void setPpUniversity(final String ppUniversity) { this.ppUniversity = ppUniversity; } @@ -384,7 +384,7 @@ public class ImportExportContainer { return ppLogo; } - public void setPpLogo(String ppLogo) { + public void setPpLogo(final String ppLogo) { this.ppLogo = ppLogo; } @@ -394,7 +394,7 @@ public class ImportExportContainer { return ppSubject; } - public void setPpSubject(String ppSubject) { + public void setPpSubject(final String ppSubject) { this.ppSubject = ppSubject; } @@ -404,7 +404,7 @@ public class ImportExportContainer { return ppLicense; } - public void setPpLicense(String ppLicense) { + public void setPpLicense(final String ppLicense) { this.ppLicense = ppLicense; } @@ -414,7 +414,7 @@ public class ImportExportContainer { return ppLevel; } - public void setPpLevel(String ppLevel) { + public void setPpLevel(final String ppLevel) { this.ppLevel = ppLevel; } @@ -424,7 +424,7 @@ public class ImportExportContainer { return ppDescription; } - public void setPpDescription(String ppDescription) { + public void setPpDescription(final String ppDescription) { this.ppDescription = ppDescription; } @@ -434,7 +434,7 @@ public class ImportExportContainer { return ppFaculty; } - public void setPpFaculty(String ppFaculty) { + public void setPpFaculty(final String ppFaculty) { this.ppFaculty = ppFaculty; } @@ -444,7 +444,7 @@ public class ImportExportContainer { return name; } - public void setName(String name) { + public void setName(final String name) { this.name = name; } @@ -454,7 +454,7 @@ public class ImportExportContainer { return shortName; } - public void setShortName(String shortName) { + public void setShortName(final String shortName) { this.shortName = shortName; } } diff --git a/src/main/java/de/thm/arsnova/model/transport/ScoreStatistics.java b/src/main/java/de/thm/arsnova/model/transport/ScoreStatistics.java index 63dc193d59006c9ffc9350daf1340daa743fc290..97916d4189adfe76aa008e88b176d92915c2d065 100644 --- a/src/main/java/de/thm/arsnova/model/transport/ScoreStatistics.java +++ b/src/main/java/de/thm/arsnova/model/transport/ScoreStatistics.java @@ -48,7 +48,7 @@ public class ScoreStatistics { return courseProgress; } - public void setCourseProgress(int courseProgress) { + public void setCourseProgress(final int courseProgress) { this.courseProgress = courseProgress; } @@ -58,7 +58,7 @@ public class ScoreStatistics { return myProgress; } - public void setMyProgress(int myProgress) { + public void setMyProgress(final int myProgress) { this.myProgress = myProgress; } @@ -68,7 +68,7 @@ public class ScoreStatistics { return numQuestions; } - public void setNumQuestions(int numQuestions) { + public void setNumQuestions(final int numQuestions) { this.numQuestions = numQuestions; } @@ -77,7 +77,7 @@ public class ScoreStatistics { return numerator; } - public void setNumerator(int numerator) { + public void setNumerator(final int numerator) { this.numerator = numerator; } @@ -86,7 +86,7 @@ public class ScoreStatistics { return denominator; } - public void setDenominator(int denominator) { + public void setDenominator(final int denominator) { this.denominator = denominator; } @@ -96,7 +96,7 @@ public class ScoreStatistics { return numUsers; } - public void setNumUsers(int numUsers) { + public void setNumUsers(final int numUsers) { this.numUsers = numUsers; } @@ -112,7 +112,7 @@ public class ScoreStatistics { } @Override - public boolean equals(Object obj) { + public boolean equals(final Object obj) { // auto generated! if (this == obj) { return true; @@ -123,7 +123,7 @@ public class ScoreStatistics { if (getClass() != obj.getClass()) { return false; } - ScoreStatistics other = (ScoreStatistics) obj; + final ScoreStatistics other = (ScoreStatistics) obj; if (courseProgress != other.courseProgress) { return false; } diff --git a/src/main/java/de/thm/arsnova/persistence/LogEntryRepository.java b/src/main/java/de/thm/arsnova/persistence/LogEntryRepository.java index 368211ba9484c92285ced62c296c698eacd4170b..6af52845543df4edf86717a8b63835c05182a50d 100644 --- a/src/main/java/de/thm/arsnova/persistence/LogEntryRepository.java +++ b/src/main/java/de/thm/arsnova/persistence/LogEntryRepository.java @@ -70,7 +70,7 @@ public interface LogEntryRepository { if (rawPayload.length % 2 != 0) { throw new IllegalArgumentException(""); } - Map<String, Object> payload = new HashMap<>(); + final Map<String, Object> payload = new HashMap<>(); for (int i = 0; i < rawPayload.length; i += 2) { payload.put((String) rawPayload[i], rawPayload[i + 1]); } diff --git a/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbAnswerRepository.java b/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbAnswerRepository.java index 8c1c67d41bb98a0a621373d83e7ed8b9308c103c..a6b70c5d398951eda9d9178365fbd33402a6de4d 100644 --- a/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbAnswerRepository.java +++ b/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbAnswerRepository.java @@ -100,14 +100,14 @@ public class CouchDbAnswerRepository extends CouchDbCrudRepository<Answer> /* Answers: * Extract selected indexes from key[2] and count from value */ final JsonNode jsonIndexes = d.getKeyAsNode().get(2); - Integer[] indexes = new Integer[jsonIndexes.size()]; + final Integer[] indexes = new Integer[jsonIndexes.size()]; /* Count independently */ for (int i = 0; i < jsonIndexes.size(); i++) { indexes[i] = jsonIndexes.get(i).asInt(); independentCounts.set(indexes[i], independentCounts.get(indexes[i]) + d.getValueAsInt()); } /* Count option combinations */ - AnswerStatistics.RoundStatistics.Combination combination = + final AnswerStatistics.RoundStatistics.Combination combination = combinations.getOrDefault(Arrays.asList(indexes), new AnswerStatistics.RoundStatistics.Combination( Arrays.asList(indexes), d.getValueAsInt())); @@ -117,7 +117,7 @@ public class CouchDbAnswerRepository extends CouchDbCrudRepository<Answer> } roundStats.setIndependentCounts(independentCounts); /* TODO: Review - might lead easily to IndexOutOfBoundsExceptions - use a Map instead? */ - List<AnswerStatistics.RoundStatistics> roundStatisticsList = new ArrayList(Collections.nCopies(round, null)); + final List<AnswerStatistics.RoundStatistics> roundStatisticsList = new ArrayList(Collections.nCopies(round, null)); roundStatisticsList.set(round - 1, roundStats); stats.setRoundStatistics(roundStatisticsList); diff --git a/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbCrudRepository.java b/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbCrudRepository.java index d2c95ab4bf3664a7cd4a75e20dd2a0ecb942593c..9844e8ba84443d1938a79c1b59417abce74d520d 100644 --- a/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbCrudRepository.java +++ b/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbCrudRepository.java @@ -125,7 +125,7 @@ abstract class CouchDbCrudRepository<T extends Entity> @Override public void deleteById(final String id) { - T entity = get(id); + final T entity = get(id); db.delete(id, entity.getRevision()); } diff --git a/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbInitializer.java b/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbInitializer.java index 0e5f7c168799f564fed67fabc763ca42eebabbe0..c055f3a4cdfece829d68e1388008e66dd7953616 100644 --- a/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbInitializer.java +++ b/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbInitializer.java @@ -78,7 +78,7 @@ public class CouchDbInitializer implements ResourceLoaderAware { final PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); final Resource[] resources = resolver.getResources("classpath:couchdb/*.design.js"); - for (Resource resource : resources) { + for (final Resource resource : resources) { logger.debug("Loading CouchDB design doc: {}", resource.getFilename()); final String js = FileCopyUtils.copyToString(new InputStreamReader(resource.getInputStream())); /* Reset designDoc before parsing a new one. */ @@ -108,7 +108,7 @@ public class CouchDbInitializer implements ResourceLoaderAware { } catch (final DocumentNotFoundException e) { logger.debug("Design doc {} will be created.", doc.get("_id")); return true; - } catch (JsonProcessingException e) { + } catch (final JsonProcessingException e) { logger.warn("Failed to serialize design doc {}.", doc.get("_id"), e); return false; } @@ -119,7 +119,7 @@ public class CouchDbInitializer implements ResourceLoaderAware { MigrationState state; try { state = connector.get(MigrationState.class, MigrationState.ID); - } catch (DocumentNotFoundException e) { + } catch (final DocumentNotFoundException e) { logger.debug("No migration state found in database.", e); if (connector.getDbInfo().getDocCount() > 0) { /* TODO: use a custom exception */ @@ -144,7 +144,7 @@ public class CouchDbInitializer implements ResourceLoaderAware { } @EventListener - private void onApplicationEvent(ContextRefreshedEvent event) throws IOException, ScriptException { + private void onApplicationEvent(final ContextRefreshedEvent event) throws IOException, ScriptException { /* Event is triggered more than once */ if (migrationStarted) { return; @@ -158,7 +158,7 @@ public class CouchDbInitializer implements ResourceLoaderAware { createDesignDocs(); migrate(state); statusService.removeMaintenanceReason(this.getClass()); - } catch (DbAccessException e) { + } catch (final DbAccessException e) { logger.error("Database is invalid.", e); statusService.putMaintenanceReason(this.getClass(), "Invalid database"); } diff --git a/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbRoomRepository.java b/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbRoomRepository.java index 792dc8f56c20d2e0faf028d9f92280faba3caeb2..c3c186658f08e3ca154f6ac2fa812ad0ac89b780 100644 --- a/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbRoomRepository.java +++ b/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbRoomRepository.java @@ -91,7 +91,7 @@ public class CouchDbRoomRepository extends CouchDbCrudRepository<Room> implement createQuery("by_lastactivity_for_guests").endKey(lastActivityBefore)); final int[] count = new int[3]; - List<Room> rooms = new ArrayList<>(); + final List<Room> rooms = new ArrayList<>(); for (final ViewResult.Row row : result.getRows()) { final Room s = new Room(); s.setId(row.getId()); @@ -148,7 +148,7 @@ public class CouchDbRoomRepository extends CouchDbCrudRepository<Room> implement @Override public List<String> findIdsByOwnerId(final String ownerId) { - ViewResult result = db.queryView(createQuery("by_ownerid") + final ViewResult result = db.queryView(createQuery("by_ownerid") .key(ownerId) .includeDocs(false)); @@ -157,7 +157,7 @@ public class CouchDbRoomRepository extends CouchDbCrudRepository<Room> implement @Override public List<String> findIdsByModeratorId(final String moderatorId) { - ViewResult result = db.queryView(createQuery("by_moderators_containing_userid") + final ViewResult result = db.queryView(createQuery("by_moderators_containing_userid") .key(moderatorId) .includeDocs(false)); @@ -289,7 +289,7 @@ public class CouchDbRoomRepository extends CouchDbCrudRepository<Room> implement if (unansweredQuestionsCountMap.containsKey(room.getId())) { numUnanswered = unansweredQuestionsCountMap.get(room.getId()); } - RoomStatistics stats = new RoomStatistics(); + final RoomStatistics stats = new RoomStatistics(); room.setStatistics(stats); stats.setUnansweredContentCount(numUnanswered); } diff --git a/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbSessionStatisticsRepository.java b/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbSessionStatisticsRepository.java index a309605704ea2325c997c9ad1bb234751b8ab6cf..9e733d29f0980c196319a76436cd572e3b0324a0 100644 --- a/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbSessionStatisticsRepository.java +++ b/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbSessionStatisticsRepository.java @@ -50,7 +50,7 @@ public class CouchDbSessionStatisticsRepository } // collect mapping (questionId -> max value) - for (ViewResult.Row row : maximumValueResult) { + for (final ViewResult.Row row : maximumValueResult) { final String contentId = row.getKeyAsNode().get(1).asText(); final JsonNode value = row.getValueAsNode(); final int questionScore = value.get("value").asInt(); @@ -59,7 +59,7 @@ public class CouchDbSessionStatisticsRepository courseScore.addQuestion(contentId, questionVariant, piRound, questionScore); } // collect mapping (questionId -> (user -> value)) - for (ViewResult.Row row : answerSumResult) { + for (final ViewResult.Row row : answerSumResult) { final String username = row.getKeyAsNode().get(1).asText(); final JsonNode value = row.getValueAsNode(); final String contentId = value.get("questionId").asText(); diff --git a/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbStatisticsRepository.java b/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbStatisticsRepository.java index 5020e88420ca0995cae7e65a7b4bfbeb1a812527..88c9441bce6169b2702fbc3311d865427f54d062 100644 --- a/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbStatisticsRepository.java +++ b/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbStatisticsRepository.java @@ -84,14 +84,14 @@ public class CouchDbStatisticsRepository extends CouchDbRepositorySupport implem } if (!creatorResult.isEmpty()) { final Set<String> creators = new HashSet<>(); - for (ViewResult.Row row: statsResult.getRows()) { + for (final ViewResult.Row row: statsResult.getRows()) { creators.add(row.getKey()); } stats.setCreators(creators.size()); } if (!studentUserResult.isEmpty()) { final Set<String> students = new HashSet<>(); - for (ViewResult.Row row: statsResult.getRows()) { + for (final ViewResult.Row row: statsResult.getRows()) { students.add(row.getKey()); } stats.setActiveStudents(students.size()); diff --git a/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbUserRepository.java b/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbUserRepository.java index 819f74c4781945ccfbd4b4e7d40ee3fda6762d25..e2686688e2b2f5ea32adec8d059b0eba9a1bab9c 100644 --- a/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbUserRepository.java +++ b/src/main/java/de/thm/arsnova/persistence/couchdb/CouchDbUserRepository.java @@ -43,7 +43,7 @@ public class CouchDbUserRepository extends CouchDbCrudRepository<UserProfile> im super(UserProfile.class, db, "by_id", createIfNotExists); } - private void log(Object... strings) { + private void log(final Object... strings) { /* TODO: method stub */ } diff --git a/src/main/java/de/thm/arsnova/persistence/couchdb/migrations/MigrationExecutor.java b/src/main/java/de/thm/arsnova/persistence/couchdb/migrations/MigrationExecutor.java index 9a7ee62dcbfc41427c64659321ff5694f6a579c0..24897a63d3041be95ea6bcaea9d80d1d4c22221f 100644 --- a/src/main/java/de/thm/arsnova/persistence/couchdb/migrations/MigrationExecutor.java +++ b/src/main/java/de/thm/arsnova/persistence/couchdb/migrations/MigrationExecutor.java @@ -49,7 +49,7 @@ public class MigrationExecutor { } public boolean runMigrations(@NonNull final MigrationState migrationState) { - List<Migration> pendingMigrations = migrations.stream() + final List<Migration> pendingMigrations = migrations.stream() .filter(m -> !migrationState.getCompleted().contains(m.getId())).collect(Collectors.toList()); boolean stateChange = false; if (migrationState.getActive() != null) { @@ -57,7 +57,7 @@ public class MigrationExecutor { } logger.debug("Pending migrations: " + pendingMigrations.stream() .map(Migration::getId).collect(Collectors.joining())); - for (Migration migration : pendingMigrations) { + for (final Migration migration : pendingMigrations) { stateChange = true; migrationState.setActive(migration.getId(), new Date()); migration.migrate(); diff --git a/src/main/java/de/thm/arsnova/persistence/couchdb/migrations/V2ToV3Migration.java b/src/main/java/de/thm/arsnova/persistence/couchdb/migrations/V2ToV3Migration.java index cd376bce53528c754f02ef54a2e8d35e566ec6a0..adebf71a000ad244753e604c4d624ef8ac713380 100644 --- a/src/main/java/de/thm/arsnova/persistence/couchdb/migrations/V2ToV3Migration.java +++ b/src/main/java/de/thm/arsnova/persistence/couchdb/migrations/V2ToV3Migration.java @@ -108,7 +108,7 @@ public class V2ToV3Migration implements Migration { migrateComments(); migrateContents(); migrateAnswers(); - } catch (InterruptedException e) { + } catch (final InterruptedException e) { throw new DbAccessException(e); } migrator.setIgnoreRevision(false); @@ -125,7 +125,7 @@ public class V2ToV3Migration implements Migration { filterSelector = new HashMap<>(); filterSelector.put("type", "userdetails"); - Map<String, String> lockedFilter = new HashMap<>(); + final Map<String, String> lockedFilter = new HashMap<>(); subFilterSelector = new HashMap<>(); subFilterSelector.put("$exists", false); filterSelector.put("locked", subFilterSelector); @@ -175,9 +175,9 @@ public class V2ToV3Migration implements Migration { private void migrateUsers() throws InterruptedException { waitForV2Index(USER_INDEX); waitForV2Index(LOGGEDIN_INDEX); - Map<String, Object> queryOptions = new HashMap<>(); + final Map<String, Object> queryOptions = new HashMap<>(); queryOptions.put("type", "userdetails"); - MangoCouchDbConnector.MangoQuery query = new MangoCouchDbConnector.MangoQuery(queryOptions); + final MangoCouchDbConnector.MangoQuery query = new MangoCouchDbConnector.MangoQuery(queryOptions); query.setIndexDocument(USER_INDEX); query.setLimit(LIMIT); String bookmark = null; @@ -185,25 +185,26 @@ public class V2ToV3Migration implements Migration { for (int skip = 0;; skip += LIMIT) { logger.debug("Migration progress: {}, bookmark: {}", skip, bookmark); query.setBookmark(bookmark); - List<UserProfile> profilesV3 = new ArrayList<>(); - PagedMangoResponse<de.thm.arsnova.model.migration.v2.DbUser> response = + final List<UserProfile> profilesV3 = new ArrayList<>(); + final PagedMangoResponse<de.thm.arsnova.model.migration.v2.DbUser> response = fromConnector.queryForPage(query, de.thm.arsnova.model.migration.v2.DbUser.class); - List<de.thm.arsnova.model.migration.v2.DbUser> dbUsersV2 = response.getEntities(); + final List<de.thm.arsnova.model.migration.v2.DbUser> dbUsersV2 = response.getEntities(); bookmark = response.getBookmark(); if (dbUsersV2.size() == 0) { break; } - for (DbUser userV2 : dbUsersV2) { - HashMap<String, Object> loggedInQueryOptions = new HashMap<>(); + for (final DbUser userV2 : dbUsersV2) { + final HashMap<String, Object> loggedInQueryOptions = new HashMap<>(); loggedInQueryOptions.put("type", "logged_in"); loggedInQueryOptions.put("user", userV2.getUsername()); - MangoCouchDbConnector.MangoQuery loggedInQuery = new MangoCouchDbConnector.MangoQuery(loggedInQueryOptions); + final MangoCouchDbConnector.MangoQuery loggedInQuery = + new MangoCouchDbConnector.MangoQuery(loggedInQueryOptions); loggedInQuery.setIndexDocument(LOGGEDIN_INDEX); - List<LoggedIn> loggedInList = fromConnector.query(loggedInQuery, LoggedIn.class); - LoggedIn loggedIn = loggedInList.size() > 0 ? loggedInList.get(0) : null; + final List<LoggedIn> loggedInList = fromConnector.query(loggedInQuery, LoggedIn.class); + final LoggedIn loggedIn = loggedInList.size() > 0 ? loggedInList.get(0) : null; - UserProfile profileV3 = migrator.migrate(userV2, loggedIn, loadMotdList(userV2.getUsername())); + final UserProfile profileV3 = migrator.migrate(userV2, loggedIn, loadMotdList(userV2.getUsername())); profileV3.setAcknowledgedMotds(migrateMotdIds(profileV3.getAcknowledgedMotds())); profilesV3.add(profileV3); } @@ -221,11 +222,11 @@ public class V2ToV3Migration implements Migration { MangoCouchDbConnector.MangoQuery query = new MangoCouchDbConnector.MangoQuery(queryOptions); query.setIndexDocument(USER_INDEX); query.setLimit(LIMIT); - Set<String> usernames = new HashSet<>(); + final Set<String> usernames = new HashSet<>(); for (int skip = 0;; skip += LIMIT) { logger.debug("Migration progress: {}", skip); query.setSkip(skip); - List<String> result = fromConnector.query(query, "username", String.class); + final List<String> result = fromConnector.query(query, "username", String.class); if (result.isEmpty()) { break; } @@ -241,21 +242,21 @@ public class V2ToV3Migration implements Migration { for (int skip = 0;; skip += LIMIT) { logger.debug("Migration progress: {}, bookmark: {}", skip, bookmark); query.setBookmark(bookmark); - List<UserProfile> profilesV3 = new ArrayList<>(); - PagedMangoResponse<de.thm.arsnova.model.migration.v2.LoggedIn> response = + final List<UserProfile> profilesV3 = new ArrayList<>(); + final PagedMangoResponse<de.thm.arsnova.model.migration.v2.LoggedIn> response = fromConnector.queryForPage(query, de.thm.arsnova.model.migration.v2.LoggedIn.class); - List<de.thm.arsnova.model.migration.v2.LoggedIn> loggedInsV2 = response.getEntities(); + final List<de.thm.arsnova.model.migration.v2.LoggedIn> loggedInsV2 = response.getEntities(); bookmark = response.getBookmark(); if (loggedInsV2.isEmpty()) { break; } - for (LoggedIn loggedInV2 : loggedInsV2) { + for (final LoggedIn loggedInV2 : loggedInsV2) { if (usernames.contains(loggedInV2.getUser())) { continue; } /* There might be rare cases of duplicate LoggedIn records for a user so add them to the filter list */ usernames.add(loggedInV2.getUser()); - UserProfile profileV3 = migrator.migrate(null, loggedInV2, loadMotdList(loggedInV2.getUser())); + final UserProfile profileV3 = migrator.migrate(null, loggedInV2, loadMotdList(loggedInV2.getUser())); profileV3.setAcknowledgedMotds(migrateMotdIds(profileV3.getAcknowledgedMotds())); profilesV3.add(profileV3); } @@ -265,9 +266,9 @@ public class V2ToV3Migration implements Migration { private void migrateRooms() throws InterruptedException { waitForV2Index(SESSION_INDEX); - Map<String, Object> queryOptions = new HashMap<>(); + final Map<String, Object> queryOptions = new HashMap<>(); queryOptions.put("type", "session"); - MangoCouchDbConnector.MangoQuery query = new MangoCouchDbConnector.MangoQuery(queryOptions); + final MangoCouchDbConnector.MangoQuery query = new MangoCouchDbConnector.MangoQuery(queryOptions); query.setIndexDocument(SESSION_INDEX); query.setLimit(LIMIT); String bookmark = null; @@ -275,17 +276,17 @@ public class V2ToV3Migration implements Migration { for (int skip = 0;; skip += LIMIT) { logger.debug("Migration progress: {}, bookmark: {}", skip, bookmark); query.setBookmark(bookmark); - List<Room> roomsV3 = new ArrayList<>(); - PagedMangoResponse<de.thm.arsnova.model.migration.v2.Room> response = + final List<Room> roomsV3 = new ArrayList<>(); + final PagedMangoResponse<de.thm.arsnova.model.migration.v2.Room> response = fromConnector.queryForPage(query, de.thm.arsnova.model.migration.v2.Room.class); - List<de.thm.arsnova.model.migration.v2.Room> roomsV2 = response.getEntities(); + final List<de.thm.arsnova.model.migration.v2.Room> roomsV2 = response.getEntities(); bookmark = response.getBookmark(); if (roomsV2.size() == 0) { break; } - for (de.thm.arsnova.model.migration.v2.Room roomV2 : roomsV2) { - List<UserProfile> profiles = userRepository.findByLoginId(roomV2.getCreator()); + for (final de.thm.arsnova.model.migration.v2.Room roomV2 : roomsV2) { + final List<UserProfile> profiles = userRepository.findByLoginId(roomV2.getCreator()); if (profiles.size() == 0) { logger.warn("Skipping migration of Room {}. Creator {} does not exist.", roomV2.getId(), roomV2.getCreator()); @@ -300,13 +301,13 @@ public class V2ToV3Migration implements Migration { private void migrateMotds() throws InterruptedException { waitForV2Index(MOTD_INDEX); - Map<String, Object> queryOptions = new HashMap<>(); + final Map<String, Object> queryOptions = new HashMap<>(); queryOptions.put("type", "motd"); /* Exclude outdated MotDs */ - HashMap<String, String> subQuery = new HashMap<>(); + final HashMap<String, String> subQuery = new HashMap<>(); subQuery.put("$gt", String.valueOf(referenceTimestamp - OUTDATED_AFTER)); queryOptions.put("enddate", subQuery); - MangoCouchDbConnector.MangoQuery query = new MangoCouchDbConnector.MangoQuery(queryOptions); + final MangoCouchDbConnector.MangoQuery query = new MangoCouchDbConnector.MangoQuery(queryOptions); query.setIndexDocument(MOTD_INDEX); query.setLimit(LIMIT); String bookmark = null; @@ -314,18 +315,18 @@ public class V2ToV3Migration implements Migration { for (int skip = 0;; skip += LIMIT) { logger.debug("Migration progress: {}, bookmark: {}", skip, bookmark); query.setBookmark(bookmark); - List<Motd> motdsV3 = new ArrayList<>(); - PagedMangoResponse<de.thm.arsnova.model.migration.v2.Motd> response = + final List<Motd> motdsV3 = new ArrayList<>(); + final PagedMangoResponse<de.thm.arsnova.model.migration.v2.Motd> response = fromConnector.queryForPage(query, de.thm.arsnova.model.migration.v2.Motd.class); - List<de.thm.arsnova.model.migration.v2.Motd> motdsV2 = response.getEntities(); + final List<de.thm.arsnova.model.migration.v2.Motd> motdsV2 = response.getEntities(); bookmark = response.getBookmark(); if (motdsV2.size() == 0) { break; } - for (de.thm.arsnova.model.migration.v2.Motd motdV2 : motdsV2) { + for (final de.thm.arsnova.model.migration.v2.Motd motdV2 : motdsV2) { if (motdV2.getAudience().equals("session")) { - Room room = roomRepository.findByShortId(motdV2.getSessionkey()); + final Room room = roomRepository.findByShortId(motdV2.getSessionkey()); /* sessionId has not been set for some old MotDs */ if (room == null) { logger.warn("Skipping migration of Motd {}. Room {} does not exist.", @@ -343,9 +344,9 @@ public class V2ToV3Migration implements Migration { private void migrateComments() throws InterruptedException { waitForV2Index(FULL_INDEX_BY_TYPE); - Map<String, Object> queryOptions = new HashMap<>(); + final Map<String, Object> queryOptions = new HashMap<>(); queryOptions.put("type", "interposed_question"); - MangoCouchDbConnector.MangoQuery query = new MangoCouchDbConnector.MangoQuery(queryOptions); + final MangoCouchDbConnector.MangoQuery query = new MangoCouchDbConnector.MangoQuery(queryOptions); query.setIndexDocument(FULL_INDEX_BY_TYPE); query.setLimit(LIMIT); String bookmark = null; @@ -353,18 +354,18 @@ public class V2ToV3Migration implements Migration { for (int skip = 0;; skip += LIMIT) { logger.debug("Migration progress: {}, bookmark: {}", skip, bookmark); query.setBookmark(bookmark); - List<Comment> commentsV3 = new ArrayList<>(); - PagedMangoResponse<de.thm.arsnova.model.migration.v2.Comment> response = + final List<Comment> commentsV3 = new ArrayList<>(); + final PagedMangoResponse<de.thm.arsnova.model.migration.v2.Comment> response = fromConnector.queryForPage(query, de.thm.arsnova.model.migration.v2.Comment.class); - List<de.thm.arsnova.model.migration.v2.Comment> commentsV2 = response.getEntities(); + final List<de.thm.arsnova.model.migration.v2.Comment> commentsV2 = response.getEntities(); bookmark = response.getBookmark(); if (commentsV2.size() == 0) { break; } - for (de.thm.arsnova.model.migration.v2.Comment commentV2 : commentsV2) { + for (final de.thm.arsnova.model.migration.v2.Comment commentV2 : commentsV2) { try { - Room roomV3 = roomRepository.findOne(commentV2.getSessionId()); + final Room roomV3 = roomRepository.findOne(commentV2.getSessionId()); List<UserProfile> profiles = Collections.EMPTY_LIST; if (commentV2.getCreator() != null && !commentV2.getCreator().equals("")) { profiles = userRepository.findByLoginId(commentV2.getCreator()); @@ -372,13 +373,13 @@ public class V2ToV3Migration implements Migration { if (profiles.size() == 0) { /* No creator is set or creator does not exist -> fallback: creator = Room owner */ commentV2.setCreator(null); - Comment commentV3 = migrator.migrate(commentV2); + final Comment commentV3 = migrator.migrate(commentV2); commentV3.setCreatorId(roomV3.getOwnerId()); commentsV3.add(commentV3); } else { commentsV3.add(migrator.migrate(commentV2, profiles.get(0))); } - } catch (DocumentNotFoundException e) { + } catch (final DocumentNotFoundException e) { logger.warn("Skipping migration of Comment {}. Room {} does not exist.", commentV2.getId(), commentV2.getSessionId()); continue; @@ -391,9 +392,9 @@ public class V2ToV3Migration implements Migration { private void migrateContents() throws InterruptedException { waitForV2Index(FULL_INDEX_BY_TYPE); - Map<String, Object> queryOptions = new HashMap<>(); + final Map<String, Object> queryOptions = new HashMap<>(); queryOptions.put("type", "skill_question"); - MangoCouchDbConnector.MangoQuery query = new MangoCouchDbConnector.MangoQuery(queryOptions); + final MangoCouchDbConnector.MangoQuery query = new MangoCouchDbConnector.MangoQuery(queryOptions); query.setIndexDocument(FULL_INDEX_BY_TYPE); query.setLimit(LIMIT); String bookmark = null; @@ -401,20 +402,20 @@ public class V2ToV3Migration implements Migration { for (int skip = 0;; skip += LIMIT) { logger.debug("Migration progress: {}, bookmark: {}", skip, bookmark); query.setBookmark(bookmark); - List<Content> contentsV3 = new ArrayList<>(); - PagedMangoResponse<de.thm.arsnova.model.migration.v2.Content> response = + final List<Content> contentsV3 = new ArrayList<>(); + final PagedMangoResponse<de.thm.arsnova.model.migration.v2.Content> response = fromConnector.queryForPage(query, de.thm.arsnova.model.migration.v2.Content.class); - List<de.thm.arsnova.model.migration.v2.Content> contentsV2 = response.getEntities(); + final List<de.thm.arsnova.model.migration.v2.Content> contentsV2 = response.getEntities(); bookmark = response.getBookmark(); if (contentsV2.size() == 0) { break; } - for (de.thm.arsnova.model.migration.v2.Content contentV2 : contentsV2) { + for (final de.thm.arsnova.model.migration.v2.Content contentV2 : contentsV2) { if (roomRepository.existsById(contentV2.getSessionId())) { try { contentsV3.add(migrator.migrate(contentV2)); - } catch (IllegalArgumentException e) { + } catch (final IllegalArgumentException e) { logger.warn("Skipping migration of Content {}.", contentV2.getId(), e); } } else { @@ -429,9 +430,9 @@ public class V2ToV3Migration implements Migration { private void migrateAnswers() throws InterruptedException { waitForV2Index(FULL_INDEX_BY_TYPE); - Map<String, Object> queryOptions = new HashMap<>(); + final Map<String, Object> queryOptions = new HashMap<>(); queryOptions.put("type", "skill_question_answer"); - MangoCouchDbConnector.MangoQuery query = new MangoCouchDbConnector.MangoQuery(queryOptions); + final MangoCouchDbConnector.MangoQuery query = new MangoCouchDbConnector.MangoQuery(queryOptions); query.setIndexDocument(FULL_INDEX_BY_TYPE); query.setLimit(LIMIT); String bookmark = null; @@ -439,29 +440,29 @@ public class V2ToV3Migration implements Migration { for (int skip = 0;; skip += LIMIT) { logger.debug("Migration progress: {}, bookmark: {}", skip, bookmark); query.setBookmark(bookmark); - List<Answer> answersV3 = new ArrayList<>(); - PagedMangoResponse<de.thm.arsnova.model.migration.v2.Answer> response = + final List<Answer> answersV3 = new ArrayList<>(); + final PagedMangoResponse<de.thm.arsnova.model.migration.v2.Answer> response = fromConnector.queryForPage(query, de.thm.arsnova.model.migration.v2.Answer.class); - List<de.thm.arsnova.model.migration.v2.Answer> answersV2 = response.getEntities(); + final List<de.thm.arsnova.model.migration.v2.Answer> answersV2 = response.getEntities(); bookmark = response.getBookmark(); if (answersV2.size() == 0) { break; } - for (de.thm.arsnova.model.migration.v2.Answer answerV2 : answersV2) { + for (final de.thm.arsnova.model.migration.v2.Answer answerV2 : answersV2) { if (!roomRepository.existsById(answerV2.getSessionId())) { logger.warn("Skipping migration of Answer {}. Room {} does not exist.", answerV2.getId(), answerV2.getQuestionId()); continue; } try { - Content contentV3 = contentRepository.findOne(answerV2.getQuestionId()); + final Content contentV3 = contentRepository.findOne(answerV2.getQuestionId()); answersV3.add(migrator.migrate(answerV2, contentV3)); - } catch (DocumentNotFoundException e) { + } catch (final DocumentNotFoundException e) { logger.warn("Skipping migration of Answer {}. Content {} does not exist.", answerV2.getId(), answerV2.getQuestionId()); continue; - } catch (IndexOutOfBoundsException e) { + } catch (final IndexOutOfBoundsException e) { logger.warn("Skipping migration of Answer {}. Data inconsistency detected.", answerV2.getId()); } } @@ -475,16 +476,16 @@ public class V2ToV3Migration implements Migration { return new HashSet<>(); } waitForV2Index(MOTD_INDEX); - Map<String, Object> queryOptions = new HashMap<>(); - Map<String, Set<String>> subQuery1 = new HashMap<>(); + final Map<String, Object> queryOptions = new HashMap<>(); + final Map<String, Set<String>> subQuery1 = new HashMap<>(); subQuery1.put("$in", oldIds); queryOptions.put("type", "motd"); queryOptions.put("motdkey", subQuery1); /* Exclude outdated MotDs */ - HashMap<String, String> subQuery2 = new HashMap<>(); + final HashMap<String, String> subQuery2 = new HashMap<>(); subQuery2.put("$gt", String.valueOf(referenceTimestamp - OUTDATED_AFTER)); queryOptions.put("enddate", subQuery2); - MangoCouchDbConnector.MangoQuery query = new MangoCouchDbConnector.MangoQuery(queryOptions); + final MangoCouchDbConnector.MangoQuery query = new MangoCouchDbConnector.MangoQuery(queryOptions); query.setIndexDocument(MOTD_INDEX); query.setLimit(LIMIT); @@ -493,12 +494,12 @@ public class V2ToV3Migration implements Migration { private MotdList loadMotdList(final String username) throws InterruptedException { waitForV2Index(MOTDLIST_INDEX); - HashMap<String, Object> motdListQueryOptions = new HashMap<>(); + final HashMap<String, Object> motdListQueryOptions = new HashMap<>(); motdListQueryOptions.put("type", "motdlist"); motdListQueryOptions.put("username", username); - MangoCouchDbConnector.MangoQuery motdListQuery = new MangoCouchDbConnector.MangoQuery(motdListQueryOptions); + final MangoCouchDbConnector.MangoQuery motdListQuery = new MangoCouchDbConnector.MangoQuery(motdListQueryOptions); motdListQuery.setIndexDocument(MOTDLIST_INDEX); - List<MotdList> motdListList = fromConnector.query(motdListQuery, MotdList.class); + final List<MotdList> motdListList = fromConnector.query(motdListQuery, MotdList.class); return motdListList.size() > 0 ? motdListList.get(0) : null; } diff --git a/src/main/java/de/thm/arsnova/persistence/couchdb/support/MangoCouchDbConnector.java b/src/main/java/de/thm/arsnova/persistence/couchdb/support/MangoCouchDbConnector.java index c293bf7788a400da8a2cae6cc9ad9a7533a4465d..5ca603939d42b35a13fda39db1cbb5889df95ebe 100644 --- a/src/main/java/de/thm/arsnova/persistence/couchdb/support/MangoCouchDbConnector.java +++ b/src/main/java/de/thm/arsnova/persistence/couchdb/support/MangoCouchDbConnector.java @@ -59,20 +59,20 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { public static class Sort { public static class ToMapConverter implements Converter<Sort, Map<String, String>> { @Override - public Map<String, String> convert(Sort value) { - Map<String, String> map = new HashMap<>(); + public Map<String, String> convert(final Sort value) { + final Map<String, String> map = new HashMap<>(); map.put(value.field, value.descending ? "desc" : "asc"); return map; } @Override - public JavaType getInputType(TypeFactory typeFactory) { + public JavaType getInputType(final TypeFactory typeFactory) { return typeFactory.constructType(Sort.class); } @Override - public JavaType getOutputType(TypeFactory typeFactory) { + public JavaType getOutputType(final TypeFactory typeFactory) { return typeFactory.constructMapType(Map.class, String.class, String.class); } } @@ -80,7 +80,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { private String field; private boolean descending = false; - public Sort(String field, boolean descending) { + public Sort(final String field, final boolean descending) { this.field = field; this.descending = descending; } @@ -89,7 +89,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { return field; } - public void setField(String field) { + public void setField(final String field) { this.field = field; } @@ -97,7 +97,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { return descending; } - public void setDescending(boolean descending) { + public void setDescending(final boolean descending) { this.descending = descending; } } @@ -120,7 +120,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { /** * @param selector See http://docs.couchdb.org/en/stable/api/database/find.html#selector-syntax. */ - public MangoQuery(Map<String, Object> selector) { + public MangoQuery(final Map<String, Object> selector) { this.selector = selector; } @@ -133,7 +133,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { /** * @param selector See http://docs.couchdb.org/en/stable/api/database/find.html#selector-syntax. */ - public void setSelector(Map<String, Object> selector) { + public void setSelector(final Map<String, Object> selector) { this.selector = selector; } @@ -142,7 +142,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { return fields; } - public void setFields(List<String> fields) { + public void setFields(final List<String> fields) { this.fields = fields; } @@ -151,7 +151,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { return sort; } - public void setSort(List<Sort> sort) { + public void setSort(final List<Sort> sort) { this.sort = sort; } @@ -160,7 +160,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { return limit; } - public void setLimit(int limit) { + public void setLimit(final int limit) { this.limit = limit; } @@ -169,7 +169,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { return skip; } - public void setSkip(int skip) { + public void setSkip(final int skip) { this.skip = skip; } @@ -177,7 +177,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { return indexDocument; } - public void setIndexDocument(String indexDocument) { + public void setIndexDocument(final String indexDocument) { this.indexDocument = indexDocument; } @@ -185,7 +185,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { return indexName; } - public void setIndexName(String indexName) { + public void setIndexName(final String indexName) { this.indexName = indexName; } @@ -200,7 +200,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { return update; } - public void setUpdate(boolean update) { + public void setUpdate(final boolean update) { this.update = update; } @@ -209,7 +209,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { return stable; } - public void setStable(boolean stable) { + public void setStable(final boolean stable) { this.stable = stable; } @@ -225,11 +225,11 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { private static final Logger logger = LoggerFactory.getLogger(MangoCouchDbConnector.class); - public MangoCouchDbConnector(String databaseName, CouchDbInstance dbInstance) { + public MangoCouchDbConnector(final String databaseName, final CouchDbInstance dbInstance) { super(databaseName, dbInstance); } - public MangoCouchDbConnector(String databaseName, CouchDbInstance dbi, ObjectMapperFactory om) { + public MangoCouchDbConnector(final String databaseName, final CouchDbInstance dbi, final ObjectMapperFactory om) { super(databaseName, dbi, om); } @@ -240,14 +240,14 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { * @return List of retrieved entities */ public <T> List<T> query(final MangoQuery query, final MangoResponseHandler<T> rh) { - String queryString; + final String queryString; try { queryString = objectMapper.writeValueAsString(query); logger.debug("Querying CouchDB using Mango API: {}", queryString); - } catch (JsonProcessingException e) { + } catch (final JsonProcessingException e) { throw new DbAccessException("Could not serialize Mango query."); } - List<T> result = restTemplate.postUncached(dbURI.append("_find").toString(), queryString, rh); + final List<T> result = restTemplate.postUncached(dbURI.append("_find").toString(), queryString, rh); //List<T> result = restTemplate.post(dbURI.append("_find").toString(), // new JacksonableEntity(query, objectMapper), rh); @@ -263,7 +263,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { * @return List of retrieved entities */ public <T> List<T> query(final MangoQuery query, final Class<T> type) { - MangoResponseHandler<T> rh = new MangoResponseHandler<>(type, objectMapper, true); + final MangoResponseHandler<T> rh = new MangoResponseHandler<>(type, objectMapper, true); return query(query, rh); } @@ -276,7 +276,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { */ public <T> List<T> query(final MangoQuery query, final String propertyName, final Class<T> type) { query.setFields(Arrays.asList(new String[] {propertyName})); - MangoResponseHandler<T> rh = new MangoResponseHandler<>(propertyName, type, objectMapper); + final MangoResponseHandler<T> rh = new MangoResponseHandler<>(propertyName, type, objectMapper); return query(query, rh); } @@ -288,14 +288,14 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { * @return List of retrieved entities */ public <T> PagedMangoResponse<T> queryForPage(final MangoQuery query, final Class<T> type) { - MangoResponseHandler<T> rh = new MangoResponseHandler<>(type, objectMapper, true); + final MangoResponseHandler<T> rh = new MangoResponseHandler<>(type, objectMapper, true); return new PagedMangoResponse<T>(query(query, rh), rh.getBookmark()); } public void createPartialJsonIndex( final String name, final List<MangoQuery.Sort> fields, final Map<String, Object> filterSelector) { - Map<String, Object> query = new HashMap<>(); - Map<String, Object> index = new HashMap<>(); + final Map<String, Object> query = new HashMap<>(); + final Map<String, Object> index = new HashMap<>(); query.put("ddoc", name); query.put("type", "json"); query.put("index", index); @@ -303,11 +303,11 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { if (filterSelector != null) { index.put("partial_filter_selector", filterSelector); } - String queryString; + final String queryString; try { queryString = objectMapper.writeValueAsString(query); logger.debug("Creating CouchDB index using Mango API: {}", queryString); - } catch (JsonProcessingException e) { + } catch (final JsonProcessingException e) { throw new DbAccessException(e); } restTemplate.postUncached(dbURI.append("_index").toString(), queryString); @@ -318,17 +318,17 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { } public boolean initializeIndex(final String name) { - MangoQuery query = new MangoQuery(Collections.EMPTY_MAP); + final MangoQuery query = new MangoQuery(Collections.EMPTY_MAP); query.setIndexDocument(name); query.setLimit(0); try { - String queryString = objectMapper.writeValueAsString(query); + final String queryString = objectMapper.writeValueAsString(query); logger.debug("Using Mango API query to initialize CouchDB index: {}", queryString); - HttpResponse response = restTemplate.postUncached(dbURI.append("_find").toString(), queryString); + final HttpResponse response = restTemplate.postUncached(dbURI.append("_find").toString(), queryString); response.releaseConnection(); - } catch (JsonProcessingException e) { + } catch (final JsonProcessingException e) { throw new DbAccessException("Could not serialize Mango query."); - } catch (DbAccessException e) { + } catch (final DbAccessException e) { logger.debug("CouchDB index is not ready yet: {}", name, e); return false; } @@ -344,7 +344,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { new StdResponseHandler<DbInfo>() { @Override - public DbInfo success(HttpResponse hr) throws Exception { + public DbInfo success(final HttpResponse hr) throws Exception { return objectMapper.readValue(hr.getContent(), DbInfo.class); } @@ -357,7 +357,7 @@ public class MangoCouchDbConnector extends StdCouchDbConnector { private String purgeSeq; @JsonCreator - public DbInfo(@JsonProperty("db_name") String dbName) { + public DbInfo(@JsonProperty("db_name") final String dbName) { super(dbName); } } diff --git a/src/main/java/de/thm/arsnova/persistence/couchdb/support/MangoQueryResultParser.java b/src/main/java/de/thm/arsnova/persistence/couchdb/support/MangoQueryResultParser.java index 6f58b8a05f47c5fe15738f20e105666378f24186..3967b00369e3df881e8a108daf4652af7694d7d7 100644 --- a/src/main/java/de/thm/arsnova/persistence/couchdb/support/MangoQueryResultParser.java +++ b/src/main/java/de/thm/arsnova/persistence/couchdb/support/MangoQueryResultParser.java @@ -44,19 +44,19 @@ public class MangoQueryResultParser<T> { private String bookmark; private String propertyName = null; - public MangoQueryResultParser(Class<T> type, ObjectMapper objectMapper) { + public MangoQueryResultParser(final Class<T> type, final ObjectMapper objectMapper) { this.type = type; this.objectMapper = objectMapper; } - public MangoQueryResultParser(String propertyName, Class<T> type, ObjectMapper objectMapper) { + public MangoQueryResultParser(final String propertyName, final Class<T> type, final ObjectMapper objectMapper) { this.propertyName = propertyName; this.type = type; this.objectMapper = objectMapper; } - public void parseResult(InputStream json) throws IOException { - JsonParser jp = objectMapper.getFactory().createParser(json); + public void parseResult(final InputStream json) throws IOException { + final JsonParser jp = objectMapper.getFactory().createParser(json); try { parseResult(jp); @@ -65,7 +65,7 @@ public class MangoQueryResultParser<T> { } } - private void parseResult(JsonParser jp) throws IOException { + private void parseResult(final JsonParser jp) throws IOException { if (jp.nextToken() != JsonToken.START_OBJECT) { throw new DbAccessException("Expected data to start with an Object"); } @@ -75,7 +75,7 @@ public class MangoQueryResultParser<T> { // Issue #98: Can't assume order of JSON fields. while (jp.nextValue() != JsonToken.END_OBJECT) { - String currentName = jp.getCurrentName(); + final String currentName = jp.getCurrentName(); if (DOCS_FIELD_NAME.equals(currentName)) { docs = new ArrayList<T>(); parseDocs(jp); @@ -91,12 +91,12 @@ public class MangoQueryResultParser<T> { } if (error != null) { - String errorDesc = reason != null ? reason : error; + final String errorDesc = reason != null ? reason : error; throw new DbAccessException("CouchDB Mango query failed: " + errorDesc); } } - private void parseDocs(JsonParser jp) throws IOException { + private void parseDocs(final JsonParser jp) throws IOException { if (jp.getCurrentToken() != JsonToken.START_ARRAY) { throw new DbAccessException("Expected rows to start with an Array"); } @@ -108,7 +108,7 @@ public class MangoQueryResultParser<T> { docs.add(doc); } else { while (jp.nextToken() == JsonToken.FIELD_NAME) { - String fieldName = jp.getText(); + final String fieldName = jp.getText(); jp.nextToken(); if (fieldName.equals(propertyName)) { doc = jp.readValueAs(type); diff --git a/src/main/java/de/thm/arsnova/persistence/couchdb/support/MangoResponseHandler.java b/src/main/java/de/thm/arsnova/persistence/couchdb/support/MangoResponseHandler.java index e79db8c3c505a81a1ce35b392ef13bb4cb7ed0cb..26aa71b35d744f6e7f5ce804d12c1a09fa906187 100644 --- a/src/main/java/de/thm/arsnova/persistence/couchdb/support/MangoResponseHandler.java +++ b/src/main/java/de/thm/arsnova/persistence/couchdb/support/MangoResponseHandler.java @@ -29,20 +29,20 @@ public class MangoResponseHandler<T> extends StdResponseHandler<List<T>> { private MangoQueryResultParser<T> parser; private String bookmark; - public MangoResponseHandler(Class<T> docType, ObjectMapper om) { + public MangoResponseHandler(final Class<T> docType, final ObjectMapper om) { Assert.notNull(om, "ObjectMapper may not be null"); Assert.notNull(docType, "docType may not be null"); parser = new MangoQueryResultParser<T>(docType, om); } - public MangoResponseHandler(Class<T> docType, ObjectMapper om, - boolean ignoreNotFound) { + public MangoResponseHandler(final Class<T> docType, final ObjectMapper om, + final boolean ignoreNotFound) { Assert.notNull(om, "ObjectMapper may not be null"); Assert.notNull(docType, "docType may not be null"); parser = new MangoQueryResultParser<T>(docType, om); } - public MangoResponseHandler(String propertyName, Class<T> propertyType, ObjectMapper om) { + public MangoResponseHandler(final String propertyName, final Class<T> propertyType, final ObjectMapper om) { Assert.notNull(om, "ObjectMapper may not be null"); Assert.notNull(propertyType, "propertyType may not be null"); Assert.notNull(propertyName, "propertyName may not be null"); @@ -50,7 +50,7 @@ public class MangoResponseHandler<T> extends StdResponseHandler<List<T>> { } @Override - public List<T> success(HttpResponse hr) throws Exception { + public List<T> success(final HttpResponse hr) throws Exception { parser.parseResult(hr.getContent()); bookmark = parser.getBookmark(); diff --git a/src/main/java/de/thm/arsnova/security/ApplicationPermissionEvaluator.java b/src/main/java/de/thm/arsnova/security/ApplicationPermissionEvaluator.java index 9a62f9be7a6084cb3a8d00949fbeb48e180fcf9c..3385d5508b95b02546b8074e42467d7f399b6bbd 100644 --- a/src/main/java/de/thm/arsnova/security/ApplicationPermissionEvaluator.java +++ b/src/main/java/de/thm/arsnova/security/ApplicationPermissionEvaluator.java @@ -209,7 +209,7 @@ public class ApplicationPermissionEvaluator implements PermissionEvaluator { if (!hasContentPermission(userId, content, "read")) { return false; } - Room room; + final Room room; switch (permission) { case "read": if (targetAnswer.getCreatorId().equals(userId) || content.getState().isResponsesVisible()) { @@ -261,7 +261,7 @@ public class ApplicationPermissionEvaluator implements PermissionEvaluator { final String userId, final Motd targetMotd, final String permission) { - Room room; + final Room room; switch (permission) { case "create": case "update": @@ -304,7 +304,7 @@ public class ApplicationPermissionEvaluator implements PermissionEvaluator { * @param role The role that is checked. * @return Returns true if the user has the moderator role for the room. */ - private boolean hasUserIdRoomModeratorRole(final Room room, final String userId, Room.Moderator.Role role) { + private boolean hasUserIdRoomModeratorRole(final Room room, final String userId, final Room.Moderator.Role role) { return room.getModerators().stream() .filter(m -> m.getUserId().equals(userId)) .anyMatch(m -> m.getRoles().contains(role)); @@ -320,17 +320,17 @@ public class ApplicationPermissionEvaluator implements PermissionEvaluator { || !(authentication.getPrincipal() instanceof User)) { return ""; } - User user = (User) authentication.getPrincipal(); + final User user = (User) authentication.getPrincipal(); return user.getId(); } - private boolean isSystemAccess(Authentication auth) { + private boolean isSystemAccess(final Authentication auth) { return auth instanceof RunAsUserToken && auth.getAuthorities().stream().anyMatch(ga -> ga.getAuthority().equals("ROLE_RUN_AS_SYSTEM")); } - private boolean isWebsocketAccess(Authentication auth) { + private boolean isWebsocketAccess(final Authentication auth) { return auth instanceof AnonymousAuthenticationToken && auth.getAuthorities().contains("ROLE_WEBSOCKET_ACCESS"); } } diff --git a/src/main/java/de/thm/arsnova/security/CasLogoutSuccessHandler.java b/src/main/java/de/thm/arsnova/security/CasLogoutSuccessHandler.java index 4ae26b672ac1aa47e0599295138d15ed44daf9b9..ccb0b686d15e69429c080c9972e46ae400830ff5 100644 --- a/src/main/java/de/thm/arsnova/security/CasLogoutSuccessHandler.java +++ b/src/main/java/de/thm/arsnova/security/CasLogoutSuccessHandler.java @@ -48,7 +48,7 @@ public class CasLogoutSuccessHandler implements LogoutSuccessHandler { final Authentication authentication ) throws IOException, ServletException { /* Typo in "referer" intended. It is in the spec. */ - String referrer = request.getHeader("referer"); + final String referrer = request.getHeader("referer"); if (response.isCommitted()) { logger.info("Response has already been committed. Unable to redirect to target"); return; diff --git a/src/main/java/de/thm/arsnova/security/CustomLdapUserDetailsMapper.java b/src/main/java/de/thm/arsnova/security/CustomLdapUserDetailsMapper.java index 4efa3c1c887dffae4b86f9e63c151fc2a4c93edd..f848b148f145ed562bf1f9e4306d8fd8436c51e3 100644 --- a/src/main/java/de/thm/arsnova/security/CustomLdapUserDetailsMapper.java +++ b/src/main/java/de/thm/arsnova/security/CustomLdapUserDetailsMapper.java @@ -44,7 +44,7 @@ public class CustomLdapUserDetailsMapper extends LdapUserDetailsMapper { @Autowired private UserService userService; - public CustomLdapUserDetailsMapper(String ldapUserIdAttr) { + public CustomLdapUserDetailsMapper(final String ldapUserIdAttr) { this.userIdAttr = ldapUserIdAttr; } diff --git a/src/main/java/de/thm/arsnova/security/GuestUserDetailsService.java b/src/main/java/de/thm/arsnova/security/GuestUserDetailsService.java index 01b5af53adcbaadf69c774bef85b91ccd4128879..1a71b867ee1c42c86bd2a7d71db946c86db966da 100644 --- a/src/main/java/de/thm/arsnova/security/GuestUserDetailsService.java +++ b/src/main/java/de/thm/arsnova/security/GuestUserDetailsService.java @@ -41,7 +41,7 @@ public class GuestUserDetailsService implements UserDetailsService { private final UserService userService; private final Collection<GrantedAuthority> grantedAuthorities; - public GuestUserDetailsService(UserService userService) { + public GuestUserDetailsService(final UserService userService) { this.userService = userService; grantedAuthorities = new HashSet<>(); grantedAuthorities.add(new SimpleGrantedAuthority("ROLE_USER")); diff --git a/src/main/java/de/thm/arsnova/security/LoginAuthenticationFailureHandler.java b/src/main/java/de/thm/arsnova/security/LoginAuthenticationFailureHandler.java index c86605d86b334d5c976068814407694fc697fda0..c3330f1eb8584a65b7df30059e258e77e66c6121 100644 --- a/src/main/java/de/thm/arsnova/security/LoginAuthenticationFailureHandler.java +++ b/src/main/java/de/thm/arsnova/security/LoginAuthenticationFailureHandler.java @@ -44,7 +44,7 @@ public class LoginAuthenticationFailureHandler extends final HttpServletResponse response, final AuthenticationException exception ) throws IOException, ServletException { - HttpSession session = request.getSession(); + final HttpSession session = request.getSession(); if (session != null && session.getAttribute("ars-login-failure-url") != null) { failureUrl = (String) session.getAttribute("ars-login-failure-url"); } diff --git a/src/main/java/de/thm/arsnova/security/LoginAuthenticationSucessHandler.java b/src/main/java/de/thm/arsnova/security/LoginAuthenticationSucessHandler.java index dbfaf1cce236d00a86288382a6beb67fbd66c0e3..fe16ae086ac33c41e5e49466ac570a9ed877cec1 100644 --- a/src/main/java/de/thm/arsnova/security/LoginAuthenticationSucessHandler.java +++ b/src/main/java/de/thm/arsnova/security/LoginAuthenticationSucessHandler.java @@ -35,7 +35,7 @@ public class LoginAuthenticationSucessHandler extends protected String determineTargetUrl( final HttpServletRequest request, final HttpServletResponse response) { - HttpSession session = request.getSession(); + final HttpSession session = request.getSession(); if (session == null || session.getAttribute("ars-login-success-url") == null) { return targetUrl; } diff --git a/src/main/java/de/thm/arsnova/security/jwt/JwtService.java b/src/main/java/de/thm/arsnova/security/jwt/JwtService.java index 3ebafe67a1632aae11e5a255ad368e6b0714b180..ce1b81a3e3ab593a8281306bc9808e9c6ab55045 100644 --- a/src/main/java/de/thm/arsnova/security/jwt/JwtService.java +++ b/src/main/java/de/thm/arsnova/security/jwt/JwtService.java @@ -61,7 +61,7 @@ public class JwtService { this.serverId = serverId; try { this.defaultValidityPeriod = Duration.parse("P" + defaultValidityPeriod); - } catch (Exception e) { + } catch (final Exception e) { throw new IllegalArgumentException(defaultValidityPeriod, e); } guestValidityPeriod = Duration.parse("P180D"); @@ -72,7 +72,7 @@ public class JwtService { } public String createSignedToken(final User user) { - String[] roles = user.getAuthorities().stream() + final String[] roles = user.getAuthorities().stream() .map(ga -> ga.getAuthority()) .filter(ga -> ga.startsWith(ROLE_PREFIX)) .map(ga -> ga.substring(ROLE_PREFIX.length())).toArray(String[]::new); diff --git a/src/main/java/de/thm/arsnova/security/jwt/JwtTokenFilter.java b/src/main/java/de/thm/arsnova/security/jwt/JwtTokenFilter.java index 51d8472ed0049ac70bb5b126bb59c3d2d5ace9f1..22a5bce913827ca55f2036eaf5f286df0e7ed131 100644 --- a/src/main/java/de/thm/arsnova/security/jwt/JwtTokenFilter.java +++ b/src/main/java/de/thm/arsnova/security/jwt/JwtTokenFilter.java @@ -48,11 +48,11 @@ public class JwtTokenFilter extends GenericFilterBean { filterChain.doFilter(servletRequest, servletResponse); return; } - String jwtHeader = httpServletRequest.getHeader(JWT_HEADER_NAME); + final String jwtHeader = httpServletRequest.getHeader(JWT_HEADER_NAME); if (jwtHeader != null) { - JwtToken token = new JwtToken(jwtHeader); + final JwtToken token = new JwtToken(jwtHeader); try { - Authentication authenticatedToken = jwtAuthenticationProvider.authenticate(token); + final Authentication authenticatedToken = jwtAuthenticationProvider.authenticate(token); if (authenticatedToken != null) { logger.debug("Storing JWT to SecurityContext: {}", authenticatedToken); SecurityContextHolder.getContext().setAuthentication(authenticatedToken); diff --git a/src/main/java/de/thm/arsnova/security/pac4j/OAuthToken.java b/src/main/java/de/thm/arsnova/security/pac4j/OAuthToken.java index 31d05e17c9fd05dd9b71c8192fbe1909ebb44ec5..1cb64286ac73fbd779efb81f0c58aeba497650b2 100644 --- a/src/main/java/de/thm/arsnova/security/pac4j/OAuthToken.java +++ b/src/main/java/de/thm/arsnova/security/pac4j/OAuthToken.java @@ -33,8 +33,8 @@ import de.thm.arsnova.security.User; public class OAuthToken extends AbstractAuthenticationToken { private User principal; - public OAuthToken(User principal, CommonProfile profile, - Collection<? extends GrantedAuthority> grantedAuthorities) { + public OAuthToken(final User principal, final CommonProfile profile, + final Collection<? extends GrantedAuthority> grantedAuthorities) { super(grantedAuthorities); this.principal = principal; this.setDetails(profile); diff --git a/src/main/java/de/thm/arsnova/security/pac4j/OauthAuthenticationProvider.java b/src/main/java/de/thm/arsnova/security/pac4j/OauthAuthenticationProvider.java index 6e9c208fde6812de7575b9d27f10335608929fd6..3c20be9f35bbc480538cf491891d96cce6187755 100644 --- a/src/main/java/de/thm/arsnova/security/pac4j/OauthAuthenticationProvider.java +++ b/src/main/java/de/thm/arsnova/security/pac4j/OauthAuthenticationProvider.java @@ -38,8 +38,8 @@ public class OauthAuthenticationProvider implements AuthenticationProvider { @Override public Authentication authenticate(final Authentication authentication) throws AuthenticationException { - OAuthToken oauthToken = (OAuthToken) authentication; - User user = oauthUserDetailsService.loadUserDetails(oauthToken); + final OAuthToken oauthToken = (OAuthToken) authentication; + final User user = oauthUserDetailsService.loadUserDetails(oauthToken); return new OAuthToken(user, (CommonProfile) oauthToken.getDetails(), user.getAuthorities()); } diff --git a/src/main/java/de/thm/arsnova/security/pac4j/OauthCallbackFilter.java b/src/main/java/de/thm/arsnova/security/pac4j/OauthCallbackFilter.java index f75f0850e6539038e7022cf12984d50916c963ca..c6dc76eafad0c0dc5ca3acaaed560d5a15c4130f 100644 --- a/src/main/java/de/thm/arsnova/security/pac4j/OauthCallbackFilter.java +++ b/src/main/java/de/thm/arsnova/security/pac4j/OauthCallbackFilter.java @@ -53,7 +53,7 @@ public class OauthCallbackFilter extends AbstractAuthenticationProcessingFilter private final ClientFinder clientFinder = new DefaultCallbackClientFinder(); private Config config; - public OauthCallbackFilter(Config pac4jConfig) { + public OauthCallbackFilter(final Config pac4jConfig) { super(new AntPathRequestMatcher("/login/oauth")); this.config = pac4jConfig; } @@ -84,9 +84,9 @@ public class OauthCallbackFilter extends AbstractAuthenticationProcessingFilter "only indirect clients are allowed on the callback url"); try { - Credentials credentials = foundClient.getCredentials(context); + final Credentials credentials = foundClient.getCredentials(context); logger.debug("credentials: {}", credentials); - CommonProfile profile = foundClient.getUserProfile(credentials, context); + final CommonProfile profile = foundClient.getUserProfile(credentials, context); logger.debug("profile: {}", profile); return profile; diff --git a/src/main/java/de/thm/arsnova/security/pac4j/OauthUserDetailsService.java b/src/main/java/de/thm/arsnova/security/pac4j/OauthUserDetailsService.java index f81eec48f6064b101663942284869bdc11192fd3..b4f49e309db30eaa7567cf4b859550ccf1a2269c 100644 --- a/src/main/java/de/thm/arsnova/security/pac4j/OauthUserDetailsService.java +++ b/src/main/java/de/thm/arsnova/security/pac4j/OauthUserDetailsService.java @@ -45,7 +45,7 @@ public class OauthUserDetailsService implements AuthenticationUserDetailsService private final UserService userService; protected final Collection<GrantedAuthority> grantedAuthorities; - public OauthUserDetailsService(UserService userService) { + public OauthUserDetailsService(final UserService userService) { this.userService = userService; grantedAuthorities = new HashSet<>(); grantedAuthorities.add(new SimpleGrantedAuthority("ROLE_USER")); @@ -54,7 +54,7 @@ public class OauthUserDetailsService implements AuthenticationUserDetailsService public User loadUserDetails(final OAuthToken token) throws UsernameNotFoundException { - User user; + final User user; if (token.getDetails() instanceof GoogleOidcProfile) { final GoogleOidcProfile profile = (GoogleOidcProfile) token.getDetails(); if (!profile.getEmailVerified()) { diff --git a/src/main/java/de/thm/arsnova/service/AnswerServiceImpl.java b/src/main/java/de/thm/arsnova/service/AnswerServiceImpl.java index 82685c8ce34e2641baa0df84eec01d87f118c6b3..465779fc0d9e08ec243a8bf0e4e411dab2ad18f2 100644 --- a/src/main/java/de/thm/arsnova/service/AnswerServiceImpl.java +++ b/src/main/java/de/thm/arsnova/service/AnswerServiceImpl.java @@ -65,10 +65,10 @@ public class AnswerServiceImpl extends DefaultEntityServiceImpl<Answer> implemen private UserService userService; public AnswerServiceImpl( - AnswerRepository repository, - RoomService roomService, - UserService userService, - @Qualifier("defaultJsonMessageConverter") + final AnswerRepository repository, + final RoomService roomService, + final UserService userService, + @Qualifier("defaultJsonMessageConverter") final MappingJackson2HttpMessageConverter jackson2HttpMessageConverter) { super(Answer.class, repository, jackson2HttpMessageConverter.getObjectMapper()); this.answerRepository = repository; @@ -94,11 +94,11 @@ public class AnswerServiceImpl extends DefaultEntityServiceImpl<Answer> implemen answers.add(entry); } try { - for (Answer e : answers) { + for (final Answer e : answers) { this.eventPublisher.publishEvent(new BeforeCreationEvent<>(this, e)); } answerRepository.saveAll(answers); - for (Answer e : answers) { + for (final Answer e : answers) { this.eventPublisher.publishEvent(new AfterCreationEvent<>(this, e)); } } catch (final DbAccessException e) { @@ -151,10 +151,10 @@ public class AnswerServiceImpl extends DefaultEntityServiceImpl<Answer> implemen if (content == null) { throw new NotFoundException(); } - AnswerStatistics stats = answerRepository.findByContentIdRound( + final AnswerStatistics stats = answerRepository.findByContentIdRound( content.getId(), round, content.getOptions().size()); /* Fill list with zeros to prevent IndexOutOfBoundsExceptions */ - List<Integer> independentCounts = stats.getRoundStatistics().get(round - 1).getIndependentCounts(); + final List<Integer> independentCounts = stats.getRoundStatistics().get(round - 1).getIndependentCounts(); while (independentCounts.size() < content.getOptions().size()) { independentCounts.add(0); } @@ -180,8 +180,8 @@ public class AnswerServiceImpl extends DefaultEntityServiceImpl<Answer> implemen if (content == null) { throw new NotFoundException(); } - AnswerStatistics stats = getStatistics(content.getId(), 1); - AnswerStatistics stats2 = getStatistics(content.getId(), 2); + final AnswerStatistics stats = getStatistics(content.getId(), 1); + final AnswerStatistics stats2 = getStatistics(content.getId(), 2); stats.getRoundStatistics().add(stats2.getRoundStatistics().get(1)); return stats; @@ -387,7 +387,7 @@ public class AnswerServiceImpl extends DefaultEntityServiceImpl<Answer> implemen @Override public Map<String, Object> countAnswersAndAbstentionsInternal(final String contentId) { final Content content = contentService.get(contentId); - HashMap<String, Object> map = new HashMap<>(); + final HashMap<String, Object> map = new HashMap<>(); if (content == null) { return null; diff --git a/src/main/java/de/thm/arsnova/service/AttachmentServiceImpl.java b/src/main/java/de/thm/arsnova/service/AttachmentServiceImpl.java index 619eadde33b5fe107c3fb0c5ec2d013f27ed143d..d31955f1a9773b11dc57762c9a1cf463e4f1c8a4 100644 --- a/src/main/java/de/thm/arsnova/service/AttachmentServiceImpl.java +++ b/src/main/java/de/thm/arsnova/service/AttachmentServiceImpl.java @@ -36,12 +36,12 @@ public class AttachmentServiceImpl extends DefaultEntityServiceImpl<Attachment> this.attachmentRepository = repository; } - public void upload(Attachment attachment, MultipartFile file) { + public void upload(final Attachment attachment, final MultipartFile file) { /* TODO: implement file upload to storage */ create(attachment); } - public void download(Attachment attachment) { + public void download(final Attachment attachment) { /* TODO: implement file download from external URL to storage */ create(attachment); } diff --git a/src/main/java/de/thm/arsnova/service/CommentFindQueryService.java b/src/main/java/de/thm/arsnova/service/CommentFindQueryService.java index f8841bb6ec2fe3a99f3a3bfcaffdeb22e8e02855..f5fcd1633939d1a6d3ee02296d772fbc640b5cb9 100644 --- a/src/main/java/de/thm/arsnova/service/CommentFindQueryService.java +++ b/src/main/java/de/thm/arsnova/service/CommentFindQueryService.java @@ -37,9 +37,9 @@ public class CommentFindQueryService implements FindQueryService<Comment> { @Override public Set<String> resolveQuery(final FindQuery<Comment> findQuery) { - Set<String> ids = new HashSet<>(); + final Set<String> ids = new HashSet<>(); if (findQuery.getProperties().getRoomId() != null) { - for (Comment c : commentService.getByRoomId(findQuery.getProperties().getRoomId(), 0, 0)) { + for (final Comment c : commentService.getByRoomId(findQuery.getProperties().getRoomId(), 0, 0)) { ids.add(c.getId()); } } diff --git a/src/main/java/de/thm/arsnova/service/CommentServiceImpl.java b/src/main/java/de/thm/arsnova/service/CommentServiceImpl.java index 0ee2f04a718990fa7e654f0f8934dcb09ee05766..a640924aea473e7621bf1e6cd88771b376a3ae48 100644 --- a/src/main/java/de/thm/arsnova/service/CommentServiceImpl.java +++ b/src/main/java/de/thm/arsnova/service/CommentServiceImpl.java @@ -52,10 +52,11 @@ public class CommentServiceImpl extends DefaultEntityServiceImpl<Comment> implem private CommentRepository commentRepository; public CommentServiceImpl( - CommentRepository repository, - RoomService roomService, - UserService userService, - @Qualifier("defaultJsonMessageConverter") MappingJackson2HttpMessageConverter jackson2HttpMessageConverter) { + final CommentRepository repository, + final RoomService roomService, + final UserService userService, + @Qualifier("defaultJsonMessageConverter") + final MappingJackson2HttpMessageConverter jackson2HttpMessageConverter) { super(Comment.class, repository, jackson2HttpMessageConverter.getObjectMapper()); this.commentRepository = repository; this.roomService = roomService; @@ -98,11 +99,11 @@ public class CommentServiceImpl extends DefaultEntityServiceImpl<Comment> implem @Override @PreAuthorize("isAuthenticated()") - public CommentReadingCount countRead(final String roomId, String username) { + public CommentReadingCount countRead(final String roomId, final String username) { if (username == null) { return commentRepository.countReadingByRoomId(roomId); } else { - User user = userService.getCurrentUser(); + final User user = userService.getCurrentUser(); if (!user.getUsername().equals(username)) { throw new ForbiddenException(); } @@ -130,7 +131,7 @@ public class CommentServiceImpl extends DefaultEntityServiceImpl<Comment> implem if (comment == null) { throw new NotFoundException(); } - Map<String, Object> changes = new HashMap<>(); + final Map<String, Object> changes = new HashMap<>(); changes.put("read", true); patch(comment, changes); diff --git a/src/main/java/de/thm/arsnova/service/ContentFindQueryService.java b/src/main/java/de/thm/arsnova/service/ContentFindQueryService.java index 0a20659ccd98a609862a37fb7c5a159ebac7ee17..ad668a81f3f7903fe2724dc8e66abfcaaf81f235 100644 --- a/src/main/java/de/thm/arsnova/service/ContentFindQueryService.java +++ b/src/main/java/de/thm/arsnova/service/ContentFindQueryService.java @@ -38,10 +38,10 @@ public class ContentFindQueryService implements FindQueryService<Content> { @Override public Set<String> resolveQuery(final FindQuery<Content> findQuery) { - Set<String> contentIds = new HashSet<>(); + final Set<String> contentIds = new HashSet<>(); if (findQuery.getProperties().getRoomId() != null) { - List<Content> contentList = contentService.getByRoomId(findQuery.getProperties().getRoomId()); - for (Content c : contentList) { + final List<Content> contentList = contentService.getByRoomId(findQuery.getProperties().getRoomId()); + for (final Content c : contentList) { contentIds.add(c.getId()); } } diff --git a/src/main/java/de/thm/arsnova/service/ContentServiceImpl.java b/src/main/java/de/thm/arsnova/service/ContentServiceImpl.java index 6070a0ee08501d44a3feb024a15be95a00d6e59b..4c003d790a4f0afff2c2aeb24cea7177413b6036 100644 --- a/src/main/java/de/thm/arsnova/service/ContentServiceImpl.java +++ b/src/main/java/de/thm/arsnova/service/ContentServiceImpl.java @@ -70,12 +70,13 @@ public class ContentServiceImpl extends DefaultEntityServiceImpl<Content> implem private static final Logger logger = LoggerFactory.getLogger(ContentServiceImpl.class); public ContentServiceImpl( - ContentRepository repository, - RoomService roomService, - AnswerRepository answerRepository, - LogEntryRepository dbLogger, - UserService userService, - @Qualifier("defaultJsonMessageConverter") MappingJackson2HttpMessageConverter jackson2HttpMessageConverter) { + final ContentRepository repository, + final RoomService roomService, + final AnswerRepository answerRepository, + final LogEntryRepository dbLogger, + final UserService userService, + @Qualifier("defaultJsonMessageConverter") + final MappingJackson2HttpMessageConverter jackson2HttpMessageConverter) { super(Content.class, repository, jackson2HttpMessageConverter.getObjectMapper()); this.contentRepository = repository; this.roomService = roomService; @@ -96,7 +97,7 @@ public class ContentServiceImpl extends DefaultEntityServiceImpl<Content> implem content.getState().setRound(1); } - Room room = roomService.get(content.getRoomId()); + final Room room = roomService.get(content.getRoomId()); content.setGroups(room.getContentGroups().stream() .map(Room.ContentGroup::getName).filter(g -> !g.isEmpty()).collect(Collectors.toSet())); } @@ -119,7 +120,7 @@ public class ContentServiceImpl extends DefaultEntityServiceImpl<Content> implem public Iterable<Content> getByRoomIdAndGroup(final String roomId, final String group) { final Room room = roomService.get(roomId); Room.ContentGroup contentGroup = null; - for (Room.ContentGroup cg : room.getContentGroups()) { + for (final Room.ContentGroup cg : room.getContentGroups()) { if (cg.getName().equals(group)) { contentGroup = cg; } @@ -141,7 +142,7 @@ public class ContentServiceImpl extends DefaultEntityServiceImpl<Content> implem public int countByRoomIdAndGroup(final String roomId, final String group) { final Room room = roomService.get(roomId); Room.ContentGroup contentGroup = null; - for (Room.ContentGroup cg : room.getContentGroups()) { + for (final Room.ContentGroup cg : room.getContentGroups()) { if (cg.getName().equals(group)) { contentGroup = cg; } @@ -182,7 +183,7 @@ public class ContentServiceImpl extends DefaultEntityServiceImpl<Content> implem final Room room = roomService.get(content.getRoomId()); final Map<String, Room.ContentGroup> groups = room.getContentGroupsAsMap(); for (final String groupName : content.getGroups()) { - Room.ContentGroup group = groups.getOrDefault(groupName, new Room.ContentGroup()); + final Room.ContentGroup group = groups.getOrDefault(groupName, new Room.ContentGroup()); groups.put(groupName, group); group.getContentIds().add(content.getId()); group.setName(groupName); @@ -224,7 +225,7 @@ public class ContentServiceImpl extends DefaultEntityServiceImpl<Content> implem final Map<String, Room.ContentGroup> groups = room.getContentGroupsAsMap(); allGroupNames.addAll(groups.keySet()); for (final String groupName : allGroupNames) { - Room.ContentGroup group = groups.getOrDefault(groupName, new Room.ContentGroup()); + final Room.ContentGroup group = groups.getOrDefault(groupName, new Room.ContentGroup()); if (contentsGroupNames.contains(groupName)) { group.getContentIds().add(content.getId()); group.setName(groupName); @@ -248,9 +249,9 @@ public class ContentServiceImpl extends DefaultEntityServiceImpl<Content> implem } @Override - protected void prepareDelete(Content content) { + protected void prepareDelete(final Content content) { final Room room = roomService.get(content.getRoomId()); - for (ContentGroup group : room.getContentGroups()) { + for (final ContentGroup group : room.getContentGroups()) { group.getContentIds().remove(content.getId()); } roomService.update(room); @@ -332,7 +333,7 @@ public class ContentServiceImpl extends DefaultEntityServiceImpl<Content> implem @CacheEvict(value = "lecturecontentlists", key = "#roomId"), @CacheEvict(value = "preparationcontentlists", key = "#roomId"), @CacheEvict(value = "flashcardcontentlists", key = "#roomId") }) - public void setVotingAdmissions(final String roomId, final boolean disableVoting, Iterable<Content> contents) { + public void setVotingAdmissions(final String roomId, final boolean disableVoting, final Iterable<Content> contents) { final User user = getCurrentUser(); final Room room = roomService.get(roomId); if (!room.getOwnerId().equals(user.getId())) { @@ -344,7 +345,7 @@ public class ContentServiceImpl extends DefaultEntityServiceImpl<Content> implem patches.put("responsesEnabled", !disableVoting); try { patch(contents, patches, Content::getState); - } catch (IOException e) { + } catch (final IOException e) { logger.error("Patching of contents failed", e); } } @@ -426,7 +427,7 @@ public class ContentServiceImpl extends DefaultEntityServiceImpl<Content> implem @CacheEvict(value = "lecturecontentlists", key = "#roomId"), @CacheEvict(value = "preparationcontentlists", key = "#roomId"), @CacheEvict(value = "flashcardcontentlists", key = "#roomId") }) - public void publishContents(final String roomId, final boolean publish, Iterable<Content> contents) + public void publishContents(final String roomId, final boolean publish, final Iterable<Content> contents) throws IOException { final User user = getCurrentUser(); final Room room = roomService.get(roomId); @@ -453,7 +454,7 @@ public class ContentServiceImpl extends DefaultEntityServiceImpl<Content> implem @Override @PreAuthorize("isAuthenticated()") - public void deleteAllPreparationAnswers(String roomId) { + public void deleteAllPreparationAnswers(final String roomId) { final Room room = roomService.get(roomId); final List<Content> contents = contentRepository.findByRoomIdAndVariantAndActive(room.getId(), "preparation"); @@ -464,7 +465,7 @@ public class ContentServiceImpl extends DefaultEntityServiceImpl<Content> implem @Override @PreAuthorize("isAuthenticated()") - public void deleteAllLectureAnswers(String roomId) { + public void deleteAllLectureAnswers(final String roomId) { final Room room = roomService.get(roomId); final List<Content> contents = contentRepository.findByRoomIdAndVariantAndActive(room.getId(), "lecture"); diff --git a/src/main/java/de/thm/arsnova/service/DefaultEntityServiceImpl.java b/src/main/java/de/thm/arsnova/service/DefaultEntityServiceImpl.java index b303c12c42f3efb6fe4aab1bbd254c1ae1051fa2..dea9736b0f70898e896f09f52747512b23a4ae8e 100644 --- a/src/main/java/de/thm/arsnova/service/DefaultEntityServiceImpl.java +++ b/src/main/java/de/thm/arsnova/service/DefaultEntityServiceImpl.java @@ -61,7 +61,8 @@ public class DefaultEntityServiceImpl<T extends Entity> implements EntityService protected ApplicationEventPublisher eventPublisher; private ObjectMapper objectMapper; - public DefaultEntityServiceImpl(Class<T> type, CrudRepository<T, String> repository, ObjectMapper objectMapper) { + public DefaultEntityServiceImpl( + final Class<T> type, final CrudRepository<T, String> repository, final ObjectMapper objectMapper) { this.type = type; this.repository = repository; this.objectMapper = objectMapper; @@ -76,7 +77,7 @@ public class DefaultEntityServiceImpl<T extends Entity> implements EntityService @Override @Cacheable(cacheNames = "entity", key = "#root.target.getTypeName() + '-' + #id", condition = "#internal == false") public T get(final String id, final boolean internal) { - T entity; + final T entity; entity = repository.findOne(id); if (internal) { entity.setInternal(true); @@ -89,7 +90,7 @@ public class DefaultEntityServiceImpl<T extends Entity> implements EntityService @Override @PreFilter(value = "hasPermission(filterObject, #this.this.getTypeName(), 'read')", filterTarget = "ids") public Iterable<T> get(final Iterable<String> ids) { - Iterable<T> entities = repository.findAllById(ids); + final Iterable<T> entities = repository.findAllById(ids); entities.forEach(this::modifyRetrieved); return entities; @@ -178,9 +179,9 @@ public class DefaultEntityServiceImpl<T extends Entity> implements EntityService @PreAuthorize("hasPermission(#entity, 'update')") public T patch(final T entity, final Map<String, Object> changes, final Function<T, ? extends Object> propertyGetter) throws IOException { - Object obj = propertyGetter.apply(entity); - ObjectReader reader = objectMapper.readerForUpdating(obj).withView(View.Public.class); - JsonNode tree = objectMapper.valueToTree(changes); + final Object obj = propertyGetter.apply(entity); + final ObjectReader reader = objectMapper.readerForUpdating(obj).withView(View.Public.class); + final JsonNode tree = objectMapper.valueToTree(changes); reader.readValue(tree); entity.setUpdateTimestamp(new Date()); preparePatch(entity); @@ -202,16 +203,16 @@ public class DefaultEntityServiceImpl<T extends Entity> implements EntityService public Iterable<T> patch(final Iterable<T> entities, final Map<String, Object> changes, final Function<T, ? extends Object> propertyGetter) throws IOException { final JsonNode tree = objectMapper.valueToTree(changes); - for (T entity : entities) { - Object obj = propertyGetter.apply(entity); - ObjectReader reader = objectMapper.readerForUpdating(obj).withView(View.Public.class); + for (final T entity : entities) { + final Object obj = propertyGetter.apply(entity); + final ObjectReader reader = objectMapper.readerForUpdating(obj).withView(View.Public.class); reader.readValue(tree); entity.setUpdateTimestamp(new Date()); preparePatch(entity); eventPublisher.publishEvent(new BeforePatchEvent<>(this, entity, propertyGetter, changes)); } - Iterable<T> patchedEntities = repository.saveAll(entities); + final Iterable<T> patchedEntities = repository.saveAll(entities); patchedEntities.forEach((e) -> { eventPublisher.publishEvent(new AfterPatchEvent<>(this, e, propertyGetter, changes)); modifyRetrieved(e); @@ -242,12 +243,12 @@ public class DefaultEntityServiceImpl<T extends Entity> implements EntityService @Override @PreFilter(value = "hasPermission(filterObject, 'delete')", filterTarget = "entities") public void delete(final Iterable<T> entities) { - for (T entity : entities) { + for (final T entity : entities) { prepareDelete(entity); eventPublisher.publishEvent(new BeforeDeletionEvent<>(this, entity)); } repository.deleteAll(entities); - for (T entity : entities) { + for (final T entity : entities) { eventPublisher.publishEvent(new AfterDeletionEvent<>(this, entity)); } } @@ -284,19 +285,19 @@ public class DefaultEntityServiceImpl<T extends Entity> implements EntityService public static class EntityCacheHandler { @CachePut(cacheNames = "entity", key = "#event.entity.class.simpleName.toLowerCase() + '-' + #event.entity.id") @EventListener - public Entity handleCreate(AfterCreationEvent event) { + public Entity handleCreate(final AfterCreationEvent event) { return event.getEntity(); } @CachePut(cacheNames = "entity", key = "#event.entity.class.simpleName.toLowerCase() + '-' + #event.entity.id") @EventListener - public Entity handleUpdate(AfterUpdateEvent event) { + public Entity handleUpdate(final AfterUpdateEvent event) { return event.getEntity(); } @CacheEvict(cacheNames = "entity", key = "#event.entity.class.simpleName.toLowerCase() + '-' + #event.entity.id") @EventListener - public void handleDelete(AfterDeletionEvent event) { + public void handleDelete(final AfterDeletionEvent event) { } } diff --git a/src/main/java/de/thm/arsnova/service/FeedbackServiceImpl.java b/src/main/java/de/thm/arsnova/service/FeedbackServiceImpl.java index 3de6be8f5d5ce89a161aa928318ccf46f7e592d3..d36364fd5f50fcd91ce1273980b5ffbd596ffb5d 100644 --- a/src/main/java/de/thm/arsnova/service/FeedbackServiceImpl.java +++ b/src/main/java/de/thm/arsnova/service/FeedbackServiceImpl.java @@ -56,7 +56,7 @@ public class FeedbackServiceImpl implements FeedbackService, ApplicationEventPub private ApplicationEventPublisher publisher; - public FeedbackServiceImpl(FeedbackStorageService feedbackStorage, RoomService roomService) { + public FeedbackServiceImpl(final FeedbackStorageService feedbackStorage, final RoomService roomService) { this.feedbackStorage = feedbackStorage; this.roomService = roomService; } @@ -64,7 +64,7 @@ public class FeedbackServiceImpl implements FeedbackService, ApplicationEventPub @Override @Scheduled(fixedDelay = DEFAULT_SCHEDULER_DELAY) public void cleanFeedbackVotes() { - Map<Room, List<String>> deletedFeedbackOfUsersInSession = feedbackStorage.cleanVotes(cleanupFeedbackDelay); + final Map<Room, List<String>> deletedFeedbackOfUsersInSession = feedbackStorage.cleanVotes(cleanupFeedbackDelay); /* * mapping (Room -> Users) is not suitable for web sockets, because we want to sent all affected * sessions to a single user in one go instead of sending multiple messages for each session. Hence, @@ -72,11 +72,11 @@ public class FeedbackServiceImpl implements FeedbackService, ApplicationEventPub */ final Map<String, Set<Room>> affectedSessionsOfUsers = new HashMap<>(); - for (Map.Entry<Room, List<String>> entry : deletedFeedbackOfUsersInSession.entrySet()) { + for (final Map.Entry<Room, List<String>> entry : deletedFeedbackOfUsersInSession.entrySet()) { final Room room = entry.getKey(); final List<String> userIds = entry.getValue(); - for (String userId : userIds) { - Set<Room> affectedSessions; + for (final String userId : userIds) { + final Set<Room> affectedSessions; if (affectedSessionsOfUsers.containsKey(userId)) { affectedSessions = affectedSessionsOfUsers.get(userId); } else { @@ -87,13 +87,13 @@ public class FeedbackServiceImpl implements FeedbackService, ApplicationEventPub } } // Send feedback reset event to all affected users - for (Map.Entry<String, Set<Room>> entry : affectedSessionsOfUsers.entrySet()) { + for (final Map.Entry<String, Set<Room>> entry : affectedSessionsOfUsers.entrySet()) { final String userId = entry.getKey(); final Set<Room> rooms = entry.getValue(); this.publisher.publishEvent(new DeleteFeedbackForRoomsEvent(this, rooms, userId)); } // For each session that has deleted feedback, send the new feedback to all clients - for (Room room : deletedFeedbackOfUsersInSession.keySet()) { + for (final Room room : deletedFeedbackOfUsersInSession.keySet()) { this.publisher.publishEvent(new NewFeedbackEvent(this, room.getId())); } } @@ -101,12 +101,12 @@ public class FeedbackServiceImpl implements FeedbackService, ApplicationEventPub @Override public void cleanFeedbackVotesByRoomId(final String roomId, final int cleanupFeedbackDelayInMins) { final Room room = roomService.get(roomId); - List<String> affectedUserIds = feedbackStorage.cleanVotesByRoom(room, cleanupFeedbackDelayInMins); - Set<Room> sessionSet = new HashSet<>(); + final List<String> affectedUserIds = feedbackStorage.cleanVotesByRoom(room, cleanupFeedbackDelayInMins); + final Set<Room> sessionSet = new HashSet<>(); sessionSet.add(room); // Send feedback reset event to all affected users - for (String userId : affectedUserIds) { + for (final String userId : affectedUserIds) { this.publisher.publishEvent(new DeleteFeedbackForRoomsEvent(this, sessionSet, userId)); } // send the new feedback to all clients in affected session @@ -161,7 +161,7 @@ public class FeedbackServiceImpl implements FeedbackService, ApplicationEventPub } @Override - public void setApplicationEventPublisher(ApplicationEventPublisher publisher) { + public void setApplicationEventPublisher(final ApplicationEventPublisher publisher) { this.publisher = publisher; } } diff --git a/src/main/java/de/thm/arsnova/service/FeedbackStorageServiceImpl.java b/src/main/java/de/thm/arsnova/service/FeedbackStorageServiceImpl.java index 820bb06246a873cfc93a452b4e4697421e0699af..4600cf9796ef3c06e950ef50d9148d7b60d3a0ca 100644 --- a/src/main/java/de/thm/arsnova/service/FeedbackStorageServiceImpl.java +++ b/src/main/java/de/thm/arsnova/service/FeedbackStorageServiceImpl.java @@ -136,7 +136,7 @@ public class FeedbackStorageServiceImpl implements FeedbackStorageService { final Map<Room, List<String>> removedFeedbackOfUsersInSession = new HashMap<>(); for (final Room room : data.keySet()) { if (!room.getSettings().isQuickSurveyEnabled()) { - List<String> affectedUserIds = cleanVotesByRoom(room, cleanupFeedbackDelay); + final List<String> affectedUserIds = cleanVotesByRoom(room, cleanupFeedbackDelay); if (!affectedUserIds.isEmpty()) { removedFeedbackOfUsersInSession.put(room, affectedUserIds); } diff --git a/src/main/java/de/thm/arsnova/service/MotdServiceImpl.java b/src/main/java/de/thm/arsnova/service/MotdServiceImpl.java index 13b2abcf3d2fb0079c0ffc17d755eb2b53598185..e57202ff50620c46854cc11aab13f2a8090a9a25 100644 --- a/src/main/java/de/thm/arsnova/service/MotdServiceImpl.java +++ b/src/main/java/de/thm/arsnova/service/MotdServiceImpl.java @@ -46,10 +46,11 @@ public class MotdServiceImpl extends DefaultEntityServiceImpl<Motd> implements M private MotdRepository motdRepository; public MotdServiceImpl( - MotdRepository repository, - UserService userService, - RoomService roomService, - @Qualifier("defaultJsonMessageConverter") MappingJackson2HttpMessageConverter jackson2HttpMessageConverter) { + final MotdRepository repository, + final UserService userService, + final RoomService roomService, + @Qualifier("defaultJsonMessageConverter") + final MappingJackson2HttpMessageConverter jackson2HttpMessageConverter) { super(Motd.class, repository, jackson2HttpMessageConverter.getObjectMapper()); this.motdRepository = repository; this.userService = userService; @@ -100,9 +101,9 @@ public class MotdServiceImpl extends DefaultEntityServiceImpl<Motd> implements M } @Override - public List<Motd> filterMotdsByDate(List<Motd> list, Date clientdate) { - List<Motd> returns = new ArrayList<>(); - for (Motd motd : list) { + public List<Motd> filterMotdsByDate(final List<Motd> list, final Date clientdate) { + final List<Motd> returns = new ArrayList<>(); + for (final Motd motd : list) { if (motd.getStartDate().before(clientdate) && motd.getEndDate().after(clientdate)) { returns.add(motd); } @@ -111,7 +112,7 @@ public class MotdServiceImpl extends DefaultEntityServiceImpl<Motd> implements M } @Override - public List<Motd> filterMotdsByList(List<Motd> list, List<String> ids) { + public List<Motd> filterMotdsByList(final List<Motd> list, final List<String> ids) { return list.stream().filter(id -> ids.contains(id)).collect(Collectors.toList()); } @@ -124,7 +125,7 @@ public class MotdServiceImpl extends DefaultEntityServiceImpl<Motd> implements M @Override @PreAuthorize("hasPermission(#roomId, 'room', 'owner')") public Motd save(final String roomId, final Motd motd) { - Room room = roomService.get(roomId); + final Room room = roomService.get(roomId); motd.setRoomId(room.getId()); return createOrUpdateMotd(motd); @@ -145,7 +146,7 @@ public class MotdServiceImpl extends DefaultEntityServiceImpl<Motd> implements M @CacheEvict(cacheNames = "motds", key = "#motd.audience + #motd.roomId") private Motd createOrUpdateMotd(final Motd motd) { if (motd.getId() != null) { - Motd oldMotd = get(motd.getId()); + final Motd oldMotd = get(motd.getId()); if (!(motd.getId().equals(oldMotd.getId()) && motd.getRoomId().equals(oldMotd.getRoomId()) && motd.getAudience().equals(oldMotd.getAudience()))) { throw new BadRequestException(); @@ -153,7 +154,7 @@ public class MotdServiceImpl extends DefaultEntityServiceImpl<Motd> implements M } if (null != motd.getId()) { - Motd oldMotd = get(motd.getId()); + final Motd oldMotd = get(motd.getId()); motd.setId(oldMotd.getId()); return super.update(oldMotd, motd); diff --git a/src/main/java/de/thm/arsnova/service/ResponseProviderServiceImpl.java b/src/main/java/de/thm/arsnova/service/ResponseProviderServiceImpl.java index c50b8c5fa2689db22f9909a3fb7131a9263067cf..61a40def82ef16ea8cf6b3e2944673b6e3e4797c 100644 --- a/src/main/java/de/thm/arsnova/service/ResponseProviderServiceImpl.java +++ b/src/main/java/de/thm/arsnova/service/ResponseProviderServiceImpl.java @@ -30,7 +30,7 @@ public class ResponseProviderServiceImpl implements ResponseProviderService { HttpServletResponse response; @Override - public void setResponse(HttpServletResponse response) { + public void setResponse(final HttpServletResponse response) { this.response = response; } diff --git a/src/main/java/de/thm/arsnova/service/RoomFindQueryService.java b/src/main/java/de/thm/arsnova/service/RoomFindQueryService.java index 12c6b84f22e30d9671e6617919a9f040f677ad60..180a187d462e28db2a436e71d88472719865a94c 100644 --- a/src/main/java/de/thm/arsnova/service/RoomFindQueryService.java +++ b/src/main/java/de/thm/arsnova/service/RoomFindQueryService.java @@ -40,15 +40,15 @@ public class RoomFindQueryService implements FindQueryService<Room> { @Override public Set<String> resolveQuery(final FindQuery<Room> findQuery) { - List<List<String>> ids = new ArrayList<>(); + final List<List<String>> ids = new ArrayList<>(); if (findQuery.getExternalFilters().get("inHistoryOfUserId") instanceof String) { - UserProfile inHistoryOfUser = userService.get( + final UserProfile inHistoryOfUser = userService.get( (String) findQuery.getExternalFilters().get("inHistoryOfUserId")); ids.add(inHistoryOfUser.getRoomHistory().stream() .map(UserProfile.RoomHistoryEntry::getRoomId).collect(Collectors.toList())); } if (findQuery.getExternalFilters().get("moderatedByUserId") instanceof String) { - List<String> moderatedRoomIds = roomService.getRoomIdsByModeratorId( + final List<String> moderatedRoomIds = roomService.getRoomIdsByModeratorId( (String) findQuery.getExternalFilters().get("moderatedByUserId")); ids.add(moderatedRoomIds); } diff --git a/src/main/java/de/thm/arsnova/service/RoomServiceImpl.java b/src/main/java/de/thm/arsnova/service/RoomServiceImpl.java index 8fb29b28db50471b60beeaf2325eac8e79e020ab..0bef23bacd870589636b41aaa77b3e0bea737a93 100644 --- a/src/main/java/de/thm/arsnova/service/RoomServiceImpl.java +++ b/src/main/java/de/thm/arsnova/service/RoomServiceImpl.java @@ -93,11 +93,12 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R private int uploadFileSizeByte; public RoomServiceImpl( - RoomRepository repository, - LogEntryRepository dbLogger, - UserService userService, - ScoreCalculatorFactory scoreCalculatorFactory, - @Qualifier("defaultJsonMessageConverter") MappingJackson2HttpMessageConverter jackson2HttpMessageConverter) { + final RoomRepository repository, + final LogEntryRepository dbLogger, + final UserService userService, + final ScoreCalculatorFactory scoreCalculatorFactory, + @Qualifier("defaultJsonMessageConverter") + final MappingJackson2HttpMessageConverter jackson2HttpMessageConverter) { super(Room.class, repository, jackson2HttpMessageConverter.getObjectMapper()); this.roomRepository = repository; this.dbLogger = dbLogger; @@ -144,7 +145,7 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R } @Autowired(required = false) - public void setConnectorClient(ConnectorClient connectorClient) { + public void setConnectorClient(final ConnectorClient connectorClient) { this.connectorClient = connectorClient; } @@ -152,10 +153,10 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R public void deleteInactiveRooms() { if (guestRoomInactivityThresholdDays > 0) { logger.info("Delete inactive rooms."); - long unixTime = System.currentTimeMillis(); - long lastActivityBefore = unixTime - guestRoomInactivityThresholdDays * 24 * 60 * 60 * 1000L; - int[] totalCount = new int[] {0, 0, 0}; - List<Room> inactiveRooms = roomRepository.findInactiveGuestRoomsMetadata(lastActivityBefore); + final long unixTime = System.currentTimeMillis(); + final long lastActivityBefore = unixTime - guestRoomInactivityThresholdDays * 24 * 60 * 60 * 1000L; + final int[] totalCount = new int[] {0, 0, 0}; + final List<Room> inactiveRooms = roomRepository.findInactiveGuestRoomsMetadata(lastActivityBefore); delete(inactiveRooms); if (!inactiveRooms.isEmpty()) { @@ -172,17 +173,17 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R @Override protected void modifyRetrieved(final Room room) { // creates a set from all room content groups - Set<String> cidsWithGroup = room.getContentGroups().stream() + final Set<String> cidsWithGroup = room.getContentGroups().stream() .map(Room.ContentGroup::getContentIds) .flatMap(ids -> ids.stream()) .collect(Collectors.toSet()); - Set<String> cids = new HashSet<>(contentRepository.findIdsByRoomId(room.getId())); + final Set<String> cids = new HashSet<>(contentRepository.findIdsByRoomId(room.getId())); cids.removeAll(cidsWithGroup); if (!cids.isEmpty()) { final Set<Room.ContentGroup> cgs = room.getContentGroups(); - Room.ContentGroup defaultGroup = new Room.ContentGroup(); + final Room.ContentGroup defaultGroup = new Room.ContentGroup(); defaultGroup.setContentIds(cids); defaultGroup.setAutoSort(true); defaultGroup.setName(""); @@ -192,7 +193,7 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R @Override public Room join(final String id, final UUID socketId) { - Room room = null != id ? get(id) : null; + final Room room = null != id ? get(id) : null; if (null == room) { userService.removeUserFromRoomBySocketId(socketId); return null; @@ -226,7 +227,7 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R if (shortId == null) { throw new NullPointerException("shortId cannot be null"); } - Room room = roomRepository.findByShortId(shortId); + final Room room = roomRepository.findByShortId(shortId); if (room == null) { throw new NotFoundException("No Room exists for short ID"); } @@ -268,14 +269,14 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R /* TODO: Updated SpEL expression has not been tested yet */ @Override @PreAuthorize("isAuthenticated() and hasPermission(#userId, 'userprofile', 'owner')") - public List<Room> getUserRooms(String userId) { + public List<Room> getUserRooms(final String userId) { return roomRepository.findByOwnerId(userId, 0, 0); } /* TODO: Updated SpEL expression has not been tested yet */ @Override @PreAuthorize("isAuthenticated() and hasPermission(#userId, 'userprofile', 'owner')") - public List<String> getUserRoomIds(String userId) { + public List<String> getUserRoomIds(final String userId) { return roomRepository.findIdsByOwnerId(userId); } @@ -323,7 +324,7 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R final UserProfile profile = userService.get(userId); final List<String> roomIds = profile.getRoomHistory().stream() .map(entry -> entry.getRoomId()).collect(Collectors.toList()); - List<Room> rooms = new ArrayList<>(); + final List<Room> rooms = new ArrayList<>(); roomRepository.findAllById(roomIds).forEach(rooms::add); return rooms; @@ -332,7 +333,7 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R @Override @PreAuthorize("isAuthenticated()") public List<Room> getMyRoomHistoryInfo(final int offset, final int limit) { - List<Room> rooms = getMyRoomHistory(0, 0); + final List<Room> rooms = getMyRoomHistory(0, 0); roomRepository.getRoomHistoryWithStatsForUser(rooms, userService.getCurrentUser().getId()); return rooms; @@ -353,7 +354,7 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R handleLogo(room); - Room.Settings sf = new Room.Settings(); + final Room.Settings sf = new Room.Settings(); room.setSettings(sf); room.setShortId(generateShortId()); @@ -425,7 +426,7 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R @Override @PreAuthorize("hasPermission('', 'motd', 'admin')") @Caching(evict = { @CacheEvict("rooms"), @CacheEvict(cacheNames = "rooms", key = "#id") }) - public Room updateCreator(String id, String newCreator) { + public Room updateCreator(final String id, final String newCreator) { throw new UnsupportedOperationException("No longer implemented."); } @@ -433,7 +434,7 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R @PreAuthorize("hasPermission(#id, 'room', 'read')") public ScoreStatistics getLearningProgress(final String id, final String type, final String questionVariant) { final Room room = get(id); - ScoreCalculator scoreCalculator = scoreCalculatorFactory.create(type, questionVariant); + final ScoreCalculator scoreCalculator = scoreCalculatorFactory.create(type, questionVariant); return scoreCalculator.getCourseProgress(room); } @@ -442,13 +443,13 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R public ScoreStatistics getMyLearningProgress(final String id, final String type, final String questionVariant) { final Room room = get(id); final User user = userService.getCurrentUser(); - ScoreCalculator scoreCalculator = scoreCalculatorFactory.create(type, questionVariant); + final ScoreCalculator scoreCalculator = scoreCalculatorFactory.create(type, questionVariant); return scoreCalculator.getMyProgress(room, user.getId()); } @Override @PreAuthorize("hasPermission('', 'room', 'create')") - public Room importRooms(ImportExportContainer importRoom) { + public Room importRooms(final ImportExportContainer importRoom) { final User user = userService.getCurrentUser(); final Room info = roomRepository.importRoom(user.getId(), importRoom); if (info == null) { @@ -459,14 +460,15 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R @Override @PreAuthorize("hasPermission(#id, 'room', 'owner')") - public ImportExportContainer exportRoom(String id, Boolean withAnswerStatistics, Boolean withFeedbackQuestions) { + public ImportExportContainer exportRoom( + final String id, final Boolean withAnswerStatistics, final Boolean withFeedbackQuestions) { return roomRepository.exportRoom(id, withAnswerStatistics, withFeedbackQuestions); } @Override @PreAuthorize("hasPermission(#id, 'room', 'owner')") - public Room copyRoomToPublicPool(String id, ImportExportContainer.PublicPool pp) { - ImportExportContainer temp = roomRepository.exportRoom(id, false, false); + public Room copyRoomToPublicPool(final String id, final ImportExportContainer.PublicPool pp) { + final ImportExportContainer temp = roomRepository.exportRoom(id, false, false); temp.getSession().setPublicPool(pp); temp.getSession().setSessionType("public_pool"); final User user = userService.getCurrentUser(); @@ -475,13 +477,13 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R @Override @PreAuthorize("hasPermission(#id, 'room', 'read')") - public Room.Settings getFeatures(String id) { + public Room.Settings getFeatures(final String id) { return get(id).getSettings(); } @Override @PreAuthorize("hasPermission(#id, 'room', 'owner')") - public Room.Settings updateFeatures(String id, Room.Settings settings) { + public Room.Settings updateFeatures(final String id, final Room.Settings settings) { final Room room = get(id); room.setSettings(settings); @@ -492,7 +494,7 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R @Override @PreAuthorize("hasPermission(#id, 'room', 'owner')") - public boolean lockFeedbackInput(String id, Boolean lock) throws IOException { + public boolean lockFeedbackInput(final String id, final Boolean lock) throws IOException { final Room room = get(id); if (!lock) { feedbackService.cleanFeedbackVotesByRoomId(id, 0); @@ -504,14 +506,14 @@ public class RoomServiceImpl extends DefaultEntityServiceImpl<Room> implements R @Override @PreAuthorize("hasPermission(#id, 'room', 'owner')") - public boolean flipFlashcards(String id, Boolean flip) { + public boolean flipFlashcards(final String id, final Boolean flip) { final Room room = get(id); this.eventPublisher.publishEvent(new FlipFlashcardsEvent(this, room.getId())); return flip; } - private void handleLogo(Room room) { + private void handleLogo(final Room room) { if (room.getAuthor() != null && room.getAuthor().getOrganizationLogo() != null) { if (!room.getAuthor().getOrganizationLogo().startsWith("http")) { throw new IllegalArgumentException("Invalid logo URL."); diff --git a/src/main/java/de/thm/arsnova/service/StatisticsServiceImpl.java b/src/main/java/de/thm/arsnova/service/StatisticsServiceImpl.java index e92a7f576df2f37aaa97621e006311b46bb9dca4..da0f7f4f5297e7196723a44635d1236984c1384f 100644 --- a/src/main/java/de/thm/arsnova/service/StatisticsServiceImpl.java +++ b/src/main/java/de/thm/arsnova/service/StatisticsServiceImpl.java @@ -36,8 +36,8 @@ public class StatisticsServiceImpl implements StatisticsService { private UserService userService; public StatisticsServiceImpl( - StatisticsRepository repository, - UserService userService) { + final StatisticsRepository repository, + final UserService userService) { this.statisticsRepository = repository; this.userService = userService; } diff --git a/src/main/java/de/thm/arsnova/service/TimerServiceImpl.java b/src/main/java/de/thm/arsnova/service/TimerServiceImpl.java index 1fabf8ea17bfff9226a79dcb3baa332a27bad334..a539d3371a273256a2cf2cc09bda1978859fa1dd 100644 --- a/src/main/java/de/thm/arsnova/service/TimerServiceImpl.java +++ b/src/main/java/de/thm/arsnova/service/TimerServiceImpl.java @@ -106,7 +106,7 @@ public class TimerServiceImpl implements TimerService { @Override public void cancelDelayedRoundChange(final String contentId) { - Timer timer = timerList.get(contentId); + final Timer timer = timerList.get(contentId); if (null != timer) { timer.cancel(); diff --git a/src/main/java/de/thm/arsnova/service/UserServiceImpl.java b/src/main/java/de/thm/arsnova/service/UserServiceImpl.java index 98a93c5b7af5bb8ec7efcbd0b96ec1fe232a3f99..5bf25e1a44232c8f4a48be4c66ce624e22b8519e 100644 --- a/src/main/java/de/thm/arsnova/service/UserServiceImpl.java +++ b/src/main/java/de/thm/arsnova/service/UserServiceImpl.java @@ -173,9 +173,10 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple } public UserServiceImpl( - UserRepository repository, - JavaMailSender mailSender, - @Qualifier("defaultJsonMessageConverter") MappingJackson2HttpMessageConverter jackson2HttpMessageConverter) { + final UserRepository repository, + final JavaMailSender mailSender, + @Qualifier("defaultJsonMessageConverter") + final MappingJackson2HttpMessageConverter jackson2HttpMessageConverter) { super(UserProfile.class, repository, jackson2HttpMessageConverter.getObjectMapper()); this.userRepository = repository; this.mailSender = mailSender; @@ -200,8 +201,8 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple @Scheduled(fixedDelay = ACTIVATION_KEY_CHECK_INTERVAL_MS) public void deleteInactiveUsers() { logger.info("Delete inactive users."); - long unixTime = System.currentTimeMillis(); - long lastActivityBefore = unixTime - ACTIVATION_KEY_DURABILITY_MS; + final long unixTime = System.currentTimeMillis(); + final long lastActivityBefore = unixTime - ACTIVATION_KEY_DURABILITY_MS; userRepository.deleteInactiveUsers(lastActivityBefore); } @@ -223,15 +224,15 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple @Override public de.thm.arsnova.model.ClientAuthentication getCurrentClientAuthentication() { - Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); + final Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); if (authentication == null || !(authentication.getPrincipal() instanceof User)) { return null; } - User user = (User) authentication.getPrincipal(); - String jwt = authentication instanceof JwtToken + final User user = (User) authentication.getPrincipal(); + final String jwt = authentication instanceof JwtToken ? (String) authentication.getCredentials() : jwtService.createSignedToken(user); - ClientAuthentication clientAuthentication = + final ClientAuthentication clientAuthentication = new ClientAuthentication(user.getId(), user.getUsername(), user.getAuthProvider(), jwt); @@ -244,12 +245,12 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple } @Override - public boolean isBannedFromLogin(String addr) { + public boolean isBannedFromLogin(final String addr) { return loginBans.contains(addr); } @Override - public void increaseFailedLoginCount(String addr) { + public void increaseFailedLoginCount(final String addr) { Byte tries = loginTries.get(addr); if (null == tries) { tries = 0; @@ -285,7 +286,7 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple @Override public boolean isUserInRoom(final String userId, final String expectedRoomId) { - String actualRoomId = userIdToRoomId.get(userId); + final String actualRoomId = userIdToRoomId.get(userId); return actualRoomId != null && actualRoomId.equals(expectedRoomId); } @@ -348,7 +349,7 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple @Override public void authenticate(final UsernamePasswordAuthenticationToken token, final UserProfile.AuthProvider authProvider) { - Authentication auth; + final Authentication auth; switch (authProvider) { case LDAP: auth = ldapAuthenticationProvider.authenticate(token); @@ -363,11 +364,12 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple id = generateGuestId(); autoCreate = true; } - UserDetails userDetails = guestUserDetailsService.loadUserByUsername(id, autoCreate); + final UserDetails userDetails = guestUserDetailsService.loadUserByUsername(id, autoCreate); if (userDetails == null) { throw new UsernameNotFoundException("Guest user does not exist"); } - auth = new UsernamePasswordAuthenticationToken(userDetails, null, userDetails.getAuthorities()); + auth = new UsernamePasswordAuthenticationToken( + userDetails, null, userDetails.getAuthorities()); break; default: @@ -403,7 +405,7 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple public User loadUser(final String userId, final Collection<GrantedAuthority> grantedAuthorities) throws UsernameNotFoundException { logger.debug("Load user: UserId: {}", userId); - UserProfile userProfile = userRepository.findOne(userId); + final UserProfile userProfile = userRepository.findOne(userId); if (userProfile == null) { throw new UsernameNotFoundException("User does not exist."); } @@ -422,13 +424,13 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple } @Override - public UserProfile getByUsername(String username) { + public UserProfile getByUsername(final String username) { return userRepository.findByAuthProviderAndLoginId(UserProfile.AuthProvider.ARSNOVA, username.toLowerCase()); } @Override - public UserProfile create(String username, String password) { - String lcUsername = username.toLowerCase(); + public UserProfile create(final String username, final String password) { + final String lcUsername = username.toLowerCase(); if (null == keygen) { keygen = KeyGenerators.secureRandom(16); @@ -450,8 +452,8 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple return null; } - UserProfile userProfile = new UserProfile(); - UserProfile.Account account = new UserProfile.Account(); + final UserProfile userProfile = new UserProfile(); + final UserProfile.Account account = new UserProfile.Account(); userProfile.setAccount(account); userProfile.setAuthProvider(UserProfile.AuthProvider.ARSNOVA); userProfile.setLoginId(lcUsername); @@ -460,7 +462,7 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple userProfile.setCreationTimestamp(new Date()); /* Repository is accessed directly without EntityService to skip permission check */ - UserProfile result = userRepository.save(userProfile); + final UserProfile result = userRepository.save(userProfile); if (null != result) { sendActivationEmail(result); } else { @@ -470,7 +472,7 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple return result; } - private String encodePassword(String password) { + private String encodePassword(final String password) { if (null == encoder) { encoder = new BCryptPasswordEncoder(12); } @@ -478,9 +480,9 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple return encoder.encode(password); } - private void sendActivationEmail(UserProfile userProfile) { - String activationKey = userProfile.getAccount().getActivationKey(); - String activationUrl = MessageFormat.format( + private void sendActivationEmail(final UserProfile userProfile) { + final String activationKey = userProfile.getAccount().getActivationKey(); + final String activationUrl = MessageFormat.format( "{0}{1}/{2}?action=activate&username={3}&key={4}", rootUrl, customizationPath, @@ -494,17 +496,18 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple private void parseMailAddressPattern() { /* TODO: Add Unicode support */ - List<String> domainList = Arrays.asList(allowedEmailDomains.split(",")); + final List<String> domainList = Arrays.asList(allowedEmailDomains.split(",")); if (!domainList.isEmpty()) { - List<String> patterns = new ArrayList<>(); + final List<String> patterns = new ArrayList<>(); if (domainList.contains("*")) { patterns.add("([a-z0-9-]+\\.)+[a-z0-9-]+"); } else { - Pattern patternPattern = Pattern.compile("[a-z0-9.*-]+", Pattern.CASE_INSENSITIVE); - for (String patternStr : domainList) { + final Pattern patternPattern = Pattern.compile("[a-z0-9.*-]+", Pattern.CASE_INSENSITIVE); + for (final String patternStr : domainList) { if (patternPattern.matcher(patternStr).matches()) { - patterns.add(patternStr.replaceAll("[.]", "[.]").replaceAll("[*]", "[a-z0-9-]+?")); + patterns.add( + patternStr.replaceAll("[.]", "[.]").replaceAll("[*]", "[a-z0-9-]+?")); } } } @@ -516,7 +519,7 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple } @Override - public UserProfile update(UserProfile userProfile) { + public UserProfile update(final UserProfile userProfile) { if (null != userProfile.getId()) { return userRepository.save(userProfile); } @@ -525,15 +528,15 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple } @Override - public UserProfile deleteByUsername(String username) { - User user = getCurrentUser(); + public UserProfile deleteByUsername(final String username) { + final User user = getCurrentUser(); if (!user.getUsername().equals(username.toLowerCase()) && !SecurityContextHolder.getContext().getAuthentication().getAuthorities() .contains(new SimpleGrantedAuthority("ROLE_ADMIN"))) { throw new UnauthorizedException(); } - UserProfile userProfile = getByUsername(username); + final UserProfile userProfile = getByUsername(username); if (null == userProfile) { throw new NotFoundException(); } @@ -549,29 +552,29 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple if (userProfile.getId().equals(room.getOwnerId())) { return; } - Set<UserProfile.RoomHistoryEntry> roomHistory = userProfile.getRoomHistory(); - UserProfile.RoomHistoryEntry entry = new UserProfile.RoomHistoryEntry(room.getId(), new Date()); + final Set<UserProfile.RoomHistoryEntry> roomHistory = userProfile.getRoomHistory(); + final UserProfile.RoomHistoryEntry entry = new UserProfile.RoomHistoryEntry(room.getId(), new Date()); /* TODO: lastVisit in roomHistory is currently not updated by subsequent method invocations */ if (!roomHistory.contains(entry)) { roomHistory.add(entry); - Map<String, Object> changes = Collections.singletonMap("roomHistory", roomHistory); + final Map<String, Object> changes = Collections.singletonMap("roomHistory", roomHistory); try { super.patch(userProfile, changes); - } catch (IOException e) { + } catch (final IOException e) { logger.error("Could not patch RoomHistory"); } } } @Override - public void initiatePasswordReset(String username) { - UserProfile userProfile = getByUsername(username); + public void initiatePasswordReset(final String username) { + final UserProfile userProfile = getByUsername(username); if (null == userProfile) { logger.info("Password reset failed. User {} does not exist.", username); throw new NotFoundException(); } - UserProfile.Account account = userProfile.getAccount(); + final UserProfile.Account account = userProfile.getAccount(); // checks if a password reset process in in progress if ((account.getPasswordResetTime() != null) && (System.currentTimeMillis() @@ -589,14 +592,14 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple logger.error("Password reset failed. {} could not be updated.", username); } - String resetPasswordUrl = MessageFormat.format( + final String resetPasswordUrl = MessageFormat.format( "{0}{1}/{2}?action=resetpassword&username={3}&key={4}", rootUrl, customizationPath, resetPasswordPath, UriUtils.encodeQueryParam(userProfile.getLoginId(), "UTF-8"), account.getPasswordResetKey()); - String mailBody = MessageFormat.format( + final String mailBody = MessageFormat.format( resetPasswordMailBody, resetPasswordUrl, account.getPasswordResetKey() @@ -606,8 +609,8 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple } @Override - public boolean resetPassword(UserProfile userProfile, String key, String password) { - UserProfile.Account account = userProfile.getAccount(); + public boolean resetPassword(final UserProfile userProfile, final String key, final String password) { + final UserProfile.Account account = userProfile.getAccount(); if (null == key || "".equals(key) || !key.equals(account.getPasswordResetKey())) { logger.info("Password reset failed. Invalid key provided for User {}.", userProfile.getLoginId()); @@ -632,9 +635,9 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple return true; } - private void sendEmail(UserProfile userProfile, String subject, String body) { - MimeMessage msg = mailSender.createMimeMessage(); - MimeMessageHelper helper = new MimeMessageHelper(msg, "UTF-8"); + private void sendEmail(final UserProfile userProfile, final String subject, final String body) { + final MimeMessage msg = mailSender.createMimeMessage(); + final MimeMessageHelper helper = new MimeMessageHelper(msg, "UTF-8"); try { helper.setFrom(mailSenderName + "<" + mailSenderAddress + ">"); helper.setTo(userProfile.getLoginId()); @@ -643,7 +646,7 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple logger.info("Sending mail \"{}\" from \"{}\" to \"{}\"", subject, msg.getFrom(), userProfile.getLoginId()); mailSender.send(msg); - } catch (MailException | MessagingException e) { + } catch (final MailException | MessagingException e) { logger.warn("Mail \"{}\" could not be sent.", subject, e); } } @@ -666,11 +669,11 @@ public class UserServiceImpl extends DefaultEntityServiceImpl<UserProfile> imple } public User getAuthenticatedUserByWsSession(final String wsSessionId) { - String jwt = wsSessionIdToJwt.getOrDefault(wsSessionId, null); + final String jwt = wsSessionIdToJwt.getOrDefault(wsSessionId, null); if (jwt == null) { return null; } - User u = jwtService.verifyToken(jwt); + final User u = jwtService.verifyToken(jwt); if (u == null) { return null; } diff --git a/src/main/java/de/thm/arsnova/service/score/QuestionBasedScoreCalculator.java b/src/main/java/de/thm/arsnova/service/score/QuestionBasedScoreCalculator.java index 6188ce98f5bb81e60417d7410e34757127089172..aa5298891a58cdbd2b416f2b2e6ba2186ff2a669 100644 --- a/src/main/java/de/thm/arsnova/service/score/QuestionBasedScoreCalculator.java +++ b/src/main/java/de/thm/arsnova/service/score/QuestionBasedScoreCalculator.java @@ -27,7 +27,7 @@ import de.thm.arsnova.persistence.SessionStatisticsRepository; */ public class QuestionBasedScoreCalculator extends VariantScoreCalculator { - public QuestionBasedScoreCalculator(SessionStatisticsRepository sessionStatisticsRepository) { + public QuestionBasedScoreCalculator(final SessionStatisticsRepository sessionStatisticsRepository) { super(sessionStatisticsRepository); } @@ -36,7 +36,7 @@ public class QuestionBasedScoreCalculator extends VariantScoreCalculator { final int courseProgress = calculateCourseProgress(); final int numerator = courseScore.getQuestionCount() * courseProgress / 100; final int denominator = courseScore.getQuestionCount(); - ScoreStatistics lpv = new ScoreStatistics(); + final ScoreStatistics lpv = new ScoreStatistics(); lpv.setCourseProgress(courseProgress); lpv.setNumQuestions(courseScore.getQuestionCount()); lpv.setNumUsers(courseScore.getTotalUserCount()); @@ -47,11 +47,11 @@ public class QuestionBasedScoreCalculator extends VariantScoreCalculator { private int calculateCourseProgress() { double ratio = 0; - for (QuestionScore questionScore : courseScore) { + for (final QuestionScore questionScore : courseScore) { if (!questionScore.hasScores()) { continue; } - int numAnswers = questionScore.getUserCount(); + final int numAnswers = questionScore.getUserCount(); if (numAnswers != 0) { ratio += (double) countCorrectAnswers(questionScore) / (numAnswers * courseScore.getQuestionCount()); } @@ -59,10 +59,10 @@ public class QuestionBasedScoreCalculator extends VariantScoreCalculator { return (int) Math.min(100, Math.round(ratio * 100)); } - private int countCorrectAnswers(QuestionScore questionScore) { - int requiredScore = questionScore.getMaximum(); + private int countCorrectAnswers(final QuestionScore questionScore) { + final int requiredScore = questionScore.getMaximum(); int numAnswersCorrect = 0; - for (UserScore userScore : questionScore) { + for (final UserScore userScore : questionScore) { if (userScore.hasScore(requiredScore)) { numAnswersCorrect++; } @@ -71,10 +71,10 @@ public class QuestionBasedScoreCalculator extends VariantScoreCalculator { } @Override - protected ScoreStatistics createMyProgress(String userId) { + protected ScoreStatistics createMyProgress(final String userId) { final int numerator = numQuestionsCorrectForUser(userId); final int denominator = courseScore.getQuestionCount(); - ScoreStatistics lpv = new ScoreStatistics(); + final ScoreStatistics lpv = new ScoreStatistics(); lpv.setCourseProgress(calculateCourseProgress()); lpv.setMyProgress(myPercentage(numerator, denominator)); lpv.setNumQuestions(courseScore.getQuestionCount()); @@ -84,18 +84,18 @@ public class QuestionBasedScoreCalculator extends VariantScoreCalculator { return lpv; } - private int numQuestionsCorrectForUser(String userId) { + private int numQuestionsCorrectForUser(final String userId) { int numQuestionsCorrect = 0; - for (QuestionScore questionScore : courseScore) { + for (final QuestionScore questionScore : courseScore) { numQuestionsCorrect += countCorrectAnswersForUser(userId, questionScore); } return numQuestionsCorrect; } - private int countCorrectAnswersForUser(String userId, QuestionScore questionScore) { + private int countCorrectAnswersForUser(final String userId, final QuestionScore questionScore) { int numQuestionsCorrect = 0; - int requiredScore = questionScore.getMaximum(); - for (UserScore userScore : questionScore) { + final int requiredScore = questionScore.getMaximum(); + for (final UserScore userScore : questionScore) { if (!userScore.isUser(userId)) { continue; } @@ -106,7 +106,7 @@ public class QuestionBasedScoreCalculator extends VariantScoreCalculator { return numQuestionsCorrect; } - private int myPercentage(int numQuestionsCorrect, int questionCount) { + private int myPercentage(final int numQuestionsCorrect, final int questionCount) { final double myLearningProgress = numQuestionsCorrect / (double) questionCount; return (int) Math.min(100, Math.round(myLearningProgress * 100)); } diff --git a/src/main/java/de/thm/arsnova/service/score/QuestionScore.java b/src/main/java/de/thm/arsnova/service/score/QuestionScore.java index 62d01d9562942a926ef42ad65e8225b96f99818c..a4845fef8db9f13df50b39083755da9e7c81cd34 100644 --- a/src/main/java/de/thm/arsnova/service/score/QuestionScore.java +++ b/src/main/java/de/thm/arsnova/service/score/QuestionScore.java @@ -39,7 +39,8 @@ public class QuestionScore implements Iterable<UserScore> { private List<UserScore> userScores = new ArrayList<>(); - public QuestionScore(String questionId, String questionVariant, int piRound, int maximumScore) { + public QuestionScore( + final String questionId, final String questionVariant, final int piRound, final int maximumScore) { this.questionId = questionId; this.questionVariant = questionVariant; this.piRound = piRound; @@ -59,7 +60,7 @@ public class QuestionScore implements Iterable<UserScore> { return !this.userScores.isEmpty(); } - public void add(int piRound, String userId, int userscore) { + public void add(final int piRound, final String userId, final int userscore) { if (this.piRound == piRound) { userScores.add(new UserScore(userId, userscore)); } @@ -67,15 +68,15 @@ public class QuestionScore implements Iterable<UserScore> { public int getTotalUserScore() { int totalScore = 0; - for (UserScore score : userScores) { + for (final UserScore score : userScores) { totalScore += score.getScore(); } return totalScore; } - public int getTotalUserScore(String userId) { + public int getTotalUserScore(final String userId) { int totalScore = 0; - for (UserScore score : userScores) { + for (final UserScore score : userScores) { if (score.isUser(userId)) { totalScore += score.getScore(); } @@ -87,13 +88,13 @@ public class QuestionScore implements Iterable<UserScore> { return userScores.size(); } - public void collectUsers(Set<String> users) { - for (UserScore score : userScores) { + public void collectUsers(final Set<String> users) { + for (final UserScore score : userScores) { users.add(score.getUserId()); } } - public boolean isVariant(String questionVariant) { + public boolean isVariant(final String questionVariant) { return this.questionVariant.equals(questionVariant); } } diff --git a/src/main/java/de/thm/arsnova/service/score/Score.java b/src/main/java/de/thm/arsnova/service/score/Score.java index 99c7bd68422b0b10c17de4aeb869bafc3e8d8d82..d15fe2a53a6f89467a0758046ce18d308a05e4c1 100644 --- a/src/main/java/de/thm/arsnova/service/score/Score.java +++ b/src/main/java/de/thm/arsnova/service/score/Score.java @@ -36,18 +36,19 @@ public class Score implements Iterable<QuestionScore> { this(new HashMap<String, QuestionScore>()); } - public Score(Map<String, QuestionScore> theScores) { + public Score(final Map<String, QuestionScore> theScores) { this.scores = theScores; } - public void addQuestion(String questionId, String questionVariant, int piRound, int questionScore) { + public void addQuestion( + final String questionId, final String questionVariant, final int piRound, final int questionScore) { if (questionScore == 0) { return; } scores.put(questionId, new QuestionScore(questionId, questionVariant, piRound, questionScore)); } - public void addAnswer(String questionId, int piRound, String userId, int userscore) { + public void addAnswer(final String questionId, final int piRound, final String userId, final int userscore) { if (!scores.containsKey(questionId)) { // Precondition failed, ignore this element. // Most likely this is a question that has no score value. @@ -57,15 +58,15 @@ public class Score implements Iterable<QuestionScore> { // Precondition failed: ignore anonymous users return; } - QuestionScore questionScore = scores.get(questionId); + final QuestionScore questionScore = scores.get(questionId); questionScore.add(piRound, userId, userscore); } - public Score filterVariant(String questionVariant) { - Map<String, QuestionScore> newScores = new HashMap<>(); - for (Entry<String, QuestionScore> entry : this.scores.entrySet()) { - String questionId = entry.getKey(); - QuestionScore questionScore = entry.getValue(); + public Score filterVariant(final String questionVariant) { + final Map<String, QuestionScore> newScores = new HashMap<>(); + for (final Entry<String, QuestionScore> entry : this.scores.entrySet()) { + final String questionId = entry.getKey(); + final QuestionScore questionScore = entry.getValue(); if (questionScore.isVariant(questionVariant)) { newScores.put(questionId, questionScore); } @@ -75,7 +76,7 @@ public class Score implements Iterable<QuestionScore> { public int getMaximumScore() { int score = 0; - for (QuestionScore questionScore : this) { + for (final QuestionScore questionScore : this) { score += questionScore.getMaximum(); } return score; @@ -83,23 +84,23 @@ public class Score implements Iterable<QuestionScore> { public int getTotalUserScore() { int score = 0; - for (QuestionScore questionScore : this) { + for (final QuestionScore questionScore : this) { score += questionScore.getTotalUserScore(); } return score; } - public double getTotalUserScore(String userId) { + public double getTotalUserScore(final String userId) { int score = 0; - for (QuestionScore questionScore : this) { + for (final QuestionScore questionScore : this) { score += questionScore.getTotalUserScore(userId); } return score; } public int getTotalUserCount() { - Set<String> users = new HashSet<>(); - for (QuestionScore questionScore : this) { + final Set<String> users = new HashSet<>(); + for (final QuestionScore questionScore : this) { questionScore.collectUsers(users); } return users.size(); diff --git a/src/main/java/de/thm/arsnova/service/score/ScoreBasedScoreCalculator.java b/src/main/java/de/thm/arsnova/service/score/ScoreBasedScoreCalculator.java index f1ed464f5d6ec1aa4c8c6925a9db6e1a46e5e150..a624ee85c0ced71d9448fd586dc1cacf0c61b08c 100644 --- a/src/main/java/de/thm/arsnova/service/score/ScoreBasedScoreCalculator.java +++ b/src/main/java/de/thm/arsnova/service/score/ScoreBasedScoreCalculator.java @@ -26,13 +26,13 @@ import de.thm.arsnova.persistence.SessionStatisticsRepository; */ public class ScoreBasedScoreCalculator extends VariantScoreCalculator { - public ScoreBasedScoreCalculator(SessionStatisticsRepository sessionStatisticsRepository) { + public ScoreBasedScoreCalculator(final SessionStatisticsRepository sessionStatisticsRepository) { super(sessionStatisticsRepository); } @Override protected ScoreStatistics createCourseProgress() { - ScoreStatistics lpv = new ScoreStatistics(); + final ScoreStatistics lpv = new ScoreStatistics(); lpv.setCourseProgress(coursePercentage()); lpv.setNumQuestions(courseScore.getQuestionCount()); lpv.setNumUsers(courseScore.getTotalUserCount()); @@ -54,8 +54,8 @@ public class ScoreBasedScoreCalculator extends VariantScoreCalculator { } @Override - protected ScoreStatistics createMyProgress(String userId) { - ScoreStatistics lpv = new ScoreStatistics(); + protected ScoreStatistics createMyProgress(final String userId) { + final ScoreStatistics lpv = new ScoreStatistics(); lpv.setCourseProgress(coursePercentage()); lpv.setNumQuestions(courseScore.getQuestionCount()); lpv.setNumUsers(courseScore.getTotalUserCount()); @@ -65,7 +65,7 @@ public class ScoreBasedScoreCalculator extends VariantScoreCalculator { return lpv; } - private int myPercentage(String userId) { + private int myPercentage(final String userId) { final int courseMaximumValue = courseScore.getMaximumScore(); final double userTotalValue = courseScore.getTotalUserScore(userId); if (courseMaximumValue == 0) { diff --git a/src/main/java/de/thm/arsnova/service/score/ScoreCalculatorFactoryImpl.java b/src/main/java/de/thm/arsnova/service/score/ScoreCalculatorFactoryImpl.java index c108a03192b0205bf52c781bf89765e53787d3f8..b32e015a6df4abd3bc68d2bd4f46b92b0cfa4ec9 100644 --- a/src/main/java/de/thm/arsnova/service/score/ScoreCalculatorFactoryImpl.java +++ b/src/main/java/de/thm/arsnova/service/score/ScoreCalculatorFactoryImpl.java @@ -47,8 +47,8 @@ public class ScoreCalculatorFactoryImpl implements ScoreCalculatorFactory, Appli private ApplicationEventPublisher publisher; @Override - public ScoreCalculator create(String type, String questionVariant) { - VariantScoreCalculator scoreCalculator; + public ScoreCalculator create(final String type, final String questionVariant) { + final VariantScoreCalculator scoreCalculator; if ("questions".equals(type)) { scoreCalculator = new QuestionBasedScoreCalculator(sessionStatisticsRepository); } else { @@ -60,36 +60,36 @@ public class ScoreCalculatorFactoryImpl implements ScoreCalculatorFactory, Appli @CacheEvict(value = "score", key = "#event.entity.roomId", condition = "#event.entity.roomId != null") @EventListener - public void handleAfterContentCreation(AfterCreationEvent<Content> event) { + public void handleAfterContentCreation(final AfterCreationEvent<Content> event) { this.publisher.publishEvent(new ChangeScoreEvent(this, event.getEntity().getRoomId())); } @CacheEvict(value = "score", key = "#event.entity.roomId", condition = "#event.entity.roomId != null") @EventListener(condition = "#event.stateName == 'state'") - public void handleContentStateChange(StateChangeEvent<Content, Content.State> event) { + public void handleContentStateChange(final StateChangeEvent<Content, Content.State> event) { this.publisher.publishEvent(new ChangeScoreEvent(this, event.getEntity().getRoomId())); } @CacheEvict(value = "score", key = "#event.entity.roomId", condition = "#event.entity.roomId != null") @EventListener - public void handleNewAnswer(AfterCreationEvent<Answer> event) { + public void handleNewAnswer(final AfterCreationEvent<Answer> event) { this.publisher.publishEvent(new ChangeScoreEvent(this, event.getEntity().getRoomId())); } @CacheEvict(value = "score", key = "#event.entity.roomId", condition = "#event.entity.roomId != null") @EventListener - public void handleDeleteAnswer(AfterDeletionEvent<Answer> event) { + public void handleDeleteAnswer(final AfterDeletionEvent<Answer> event) { this.publisher.publishEvent(new ChangeScoreEvent(this, event.getEntity().getRoomId())); } @CacheEvict(value = "score", key = "#event.entity.roomId", condition = "#event.entity.roomId != null") @EventListener - public void handleDeleteQuestion(AfterDeletionEvent<Content> event) { + public void handleDeleteQuestion(final AfterDeletionEvent<Content> event) { this.publisher.publishEvent(new ChangeScoreEvent(this, event.getEntity().getRoomId())); } @Override - public void setApplicationEventPublisher(ApplicationEventPublisher publisher) { + public void setApplicationEventPublisher(final ApplicationEventPublisher publisher) { this.publisher = publisher; } diff --git a/src/main/java/de/thm/arsnova/service/score/UserScore.java b/src/main/java/de/thm/arsnova/service/score/UserScore.java index 175b862b0a329ee6e7388fe0425cf5b5b55c2e2b..4e4e2ca9d8fa64c7b6d98c76514fa63d91a017a8 100644 --- a/src/main/java/de/thm/arsnova/service/score/UserScore.java +++ b/src/main/java/de/thm/arsnova/service/score/UserScore.java @@ -27,12 +27,12 @@ public class UserScore { private int score; - public UserScore(String userId, int score) { + public UserScore(final String userId, final int score) { this.userId = userId; this.score = score; } - public boolean hasScore(int score) { + public boolean hasScore(final int score) { return this.score == score; } @@ -40,7 +40,7 @@ public class UserScore { return score; } - public boolean isUser(String userId) { + public boolean isUser(final String userId) { return this.userId.equals(userId); } diff --git a/src/main/java/de/thm/arsnova/service/score/VariantScoreCalculator.java b/src/main/java/de/thm/arsnova/service/score/VariantScoreCalculator.java index 990a9548936208baaf541e28d98b5569f8a87378..549a7d6e07e78597890b5151384556c29fe972ae 100644 --- a/src/main/java/de/thm/arsnova/service/score/VariantScoreCalculator.java +++ b/src/main/java/de/thm/arsnova/service/score/VariantScoreCalculator.java @@ -53,7 +53,7 @@ abstract class VariantScoreCalculator implements ScoreCalculator { } @Override - public ScoreStatistics getCourseProgress(Room room) { + public ScoreStatistics getCourseProgress(final Room room) { this.refreshProgress(room); this.filterVariant(); return this.createCourseProgress(); @@ -62,7 +62,7 @@ abstract class VariantScoreCalculator implements ScoreCalculator { protected abstract ScoreStatistics createCourseProgress(); @Override - public ScoreStatistics getMyProgress(Room room, String userId) { + public ScoreStatistics getMyProgress(final Room room, final String userId) { this.refreshProgress(room); this.filterVariant(); return this.createMyProgress(userId); diff --git a/src/main/java/de/thm/arsnova/util/ImageUtils.java b/src/main/java/de/thm/arsnova/util/ImageUtils.java index 2032ffd62140f3b0d9cef60a5c1981dbddf788ad..6ada092490ea64ccbc82ddb216c44cdcb239b764 100644 --- a/src/main/java/de/thm/arsnova/util/ImageUtils.java +++ b/src/main/java/de/thm/arsnova/util/ImageUtils.java @@ -95,7 +95,7 @@ public class ImageUtils { * @param maybeImage The Image as a base64 encoded {@link String} * @return true if the string is a potentially a base 64 encoded image. */ - boolean isBase64EncodedImage(String maybeImage) { + boolean isBase64EncodedImage(final String maybeImage) { return extractImageInfo(maybeImage) != null; } @@ -156,7 +156,7 @@ public class ImageUtils { * @return The rescaled Image as Base64-encoded {@link String}, returns null * if the passed-on image isn't in a valid format (a Base64-Image). */ - String createCover(String originalImageString, final int width, final int height) { + String createCover(final String originalImageString, final int width, final int height) { if (!isBase64EncodedImage(originalImageString)) { return null; } else { @@ -166,12 +166,12 @@ public class ImageUtils { final String extension = imgInfo[0]; final String base64String = imgInfo[1]; - byte[] imageData = Base64.decodeBase64(base64String); + final byte[] imageData = Base64.decodeBase64(base64String); try (final ByteArrayInputStream bais = new ByteArrayInputStream(imageData); final ByteArrayOutputStream baos = new ByteArrayOutputStream()) { - BufferedImage originalImage = ImageIO.read(bais); - BufferedImage newImage = new BufferedImage(width, height, originalImage.getType()); - Graphics2D g = newImage.createGraphics(); + final BufferedImage originalImage = ImageIO.read(bais); + final BufferedImage newImage = new BufferedImage(width, height, originalImage.getType()); + final Graphics2D g = newImage.createGraphics(); final double ratio = ((double) originalImage.getWidth()) / ((double) originalImage.getHeight()); @@ -191,7 +191,7 @@ public class ImageUtils { g.drawImage(originalImage, x, y, w, h, null); g.dispose(); - StringBuilder result = new StringBuilder(); + final StringBuilder result = new StringBuilder(); result.append(IMAGE_PREFIX_START); result.append(extension); result.append(IMAGE_PREFIX_MIDDLE); @@ -203,7 +203,7 @@ public class ImageUtils { result.append(Base64.encodeBase64String(baos.toByteArray())); return result.toString(); - } catch (IOException e) { + } catch (final IOException e) { logger.error(e.getLocalizedMessage()); return null; } @@ -218,7 +218,7 @@ public class ImageUtils { * @return true if the thumbnail image didn't exist before calling this * method, false otherwise */ - public boolean generateThumbnailImage(Answer answer) { + public boolean generateThumbnailImage(final Answer answer) { if (!isBase64EncodedImage(answer.getAnswerThumbnailImage())) { final String thumbImage = createCover(answer.getAnswerImage(), thumbWidth, thumbHeight); answer.setAnswerThumbnailImage(thumbImage); @@ -246,7 +246,7 @@ public class ImageUtils { baos.flush(); return baos.toByteArray(); - } catch (IOException e) { + } catch (final IOException e) { logger.error(e.getLocalizedMessage()); } diff --git a/src/main/java/de/thm/arsnova/web/CacheControl.java b/src/main/java/de/thm/arsnova/web/CacheControl.java index 4fad63ee23334fc6df35a90ff35eb27b28dae1c2..7e27a0535c8893c9afb43aefc4a1a650a8df2275 100644 --- a/src/main/java/de/thm/arsnova/web/CacheControl.java +++ b/src/main/java/de/thm/arsnova/web/CacheControl.java @@ -39,7 +39,7 @@ public @interface CacheControl { this.policyString = null; } - Policy(String policyString) { + Policy(final String policyString) { this.policyString = policyString; } diff --git a/src/main/java/de/thm/arsnova/web/CorsFilter.java b/src/main/java/de/thm/arsnova/web/CorsFilter.java index f5aa3a32009d0be21d455e72f6e819f3feab0aaa..a8738832409a3367f0937620fd9b97d088f083d8 100644 --- a/src/main/java/de/thm/arsnova/web/CorsFilter.java +++ b/src/main/java/de/thm/arsnova/web/CorsFilter.java @@ -28,14 +28,14 @@ public class CorsFilter extends org.springframework.web.filter.CorsFilter { private static final String TOKEN_HEADER_NAME = "Arsnova-Auth-Token"; private final Logger logger = LoggerFactory.getLogger(CorsFilter.class); - public CorsFilter(List<String> origins) { + public CorsFilter(final List<String> origins) { super(configurationSource(origins)); logger.info("CorsFilter initialized. Allowed origins: {}", origins); } - private static UrlBasedCorsConfigurationSource configurationSource(List<String> origins) { - UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); - CorsConfiguration config; + private static UrlBasedCorsConfigurationSource configurationSource(final List<String> origins) { + final UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); + final CorsConfiguration config; if (!origins.isEmpty()) { /* Grant full access from specified origins */ diff --git a/src/main/java/de/thm/arsnova/web/PathApiVersionContentNegotiationStrategy.java b/src/main/java/de/thm/arsnova/web/PathApiVersionContentNegotiationStrategy.java index 699a79f6c45c959ef0371987b02acf78d9ec16da..b5875482a84979586104c51d2253d3825f793882 100644 --- a/src/main/java/de/thm/arsnova/web/PathApiVersionContentNegotiationStrategy.java +++ b/src/main/java/de/thm/arsnova/web/PathApiVersionContentNegotiationStrategy.java @@ -45,7 +45,7 @@ public class PathApiVersionContentNegotiationStrategy implements ContentNegotiat private MediaType fallback; private MediaType empty = MediaType.valueOf(AbstractEntityController.MEDIATYPE_EMPTY); - public PathApiVersionContentNegotiationStrategy(MediaType fallback) { + public PathApiVersionContentNegotiationStrategy(final MediaType fallback) { this.fallback = fallback; } diff --git a/src/main/java/de/thm/arsnova/web/RangeAspect.java b/src/main/java/de/thm/arsnova/web/RangeAspect.java index 4c9781392e461c2b520a2eff54875d9ab991828d..f6fae2b8fdceddf1986f18d3bae23b253e15b833 100644 --- a/src/main/java/de/thm/arsnova/web/RangeAspect.java +++ b/src/main/java/de/thm/arsnova/web/RangeAspect.java @@ -58,9 +58,10 @@ public class RangeAspect { */ @Around("execution(java.util.List+ de.thm.arsnova.controller.*.*(..))" + " && this(controller) && @annotation(de.thm.arsnova.web.Pagination)") - public Object handlePaginationRange(ProceedingJoinPoint pjp, final PaginationController controller) throws Throwable { + public Object handlePaginationRange(final ProceedingJoinPoint pjp, final PaginationController controller) + throws Throwable { logger.debug("handlePaginationRange"); - String rangeHeader = request.getHeader("Range"); + final String rangeHeader = request.getHeader("Range"); Matcher matcher = null; int start = -1; int end = -1; @@ -76,12 +77,12 @@ public class RangeAspect { } controller.setRange(start, end); - List<?> list = (List<?>) pjp.proceed(); + final List<?> list = (List<?>) pjp.proceed(); if (list != null && matcher != null && matcher.matches()) { int totalSize = -1; if (list instanceof PaginationListDecorator) { - PaginationListDecorator<?> pl = (PaginationListDecorator<?>) list; + final PaginationListDecorator<?> pl = (PaginationListDecorator<?>) list; totalSize = pl.getTotalSize(); } @@ -90,8 +91,8 @@ public class RangeAspect { * The value for end is calculated since the result list * could be shorter than requested. */ - String rangeStr = String.format("items %d-%d/%d", start, start + list.size() - 1, totalSize); - HttpServletResponse response = responseProviderService.getResponse(); + final String rangeStr = String.format("items %d-%d/%d", start, start + list.size() - 1, totalSize); + final HttpServletResponse response = responseProviderService.getResponse(); response.addHeader("Content-Range", rangeStr); } diff --git a/src/main/java/de/thm/arsnova/web/ResponseInterceptorHandler.java b/src/main/java/de/thm/arsnova/web/ResponseInterceptorHandler.java index 7e7c69547a34b95a9c2aeed0e448bc166f24a64b..eb7c0975212a17f240a0854741420c931a32f604 100644 --- a/src/main/java/de/thm/arsnova/web/ResponseInterceptorHandler.java +++ b/src/main/java/de/thm/arsnova/web/ResponseInterceptorHandler.java @@ -38,9 +38,9 @@ public class ResponseInterceptorHandler extends HandlerInterceptorAdapter { @Override public boolean preHandle( - HttpServletRequest request, - HttpServletResponse response, - Object handler + final HttpServletRequest request, + final HttpServletResponse response, + final Object handler ) throws Exception { responseProviderService.setResponse(response); diff --git a/src/main/java/de/thm/arsnova/web/V2ContentTypeOverrideFilter.java b/src/main/java/de/thm/arsnova/web/V2ContentTypeOverrideFilter.java index 99c09a24eae85b5f69db5e3b40ef04779b46f7a9..ab033adb9f01b3b7b061d707de90bc722a1a0c88 100644 --- a/src/main/java/de/thm/arsnova/web/V2ContentTypeOverrideFilter.java +++ b/src/main/java/de/thm/arsnova/web/V2ContentTypeOverrideFilter.java @@ -61,10 +61,10 @@ public class V2ContentTypeOverrideFilter extends OncePerRequestFilter { @Override protected void doFilterInternal(final HttpServletRequest request, final HttpServletResponse response, final FilterChain filterChain) throws IOException, ServletException { - HttpServletRequest requestWrapper = new HttpServletRequestWrapper(request) { + final HttpServletRequest requestWrapper = new HttpServletRequestWrapper(request) { @Override public String getHeader(final String name) { - String header = super.getHeader(name); + final String header = super.getHeader(name); if (header != null && HttpHeaders.CONTENT_TYPE.equals(name) && MediaType.APPLICATION_JSON.includes(MediaType.valueOf(header))) { logger.debug("Overriding {} header: {}", HttpHeaders.CONTENT_TYPE, AppConfig.API_V2_MEDIA_TYPE_VALUE); @@ -81,7 +81,7 @@ public class V2ContentTypeOverrideFilter extends OncePerRequestFilter { @Override public Enumeration<String> getHeaders(final String name) { - String firstHeader = super.getHeaders(name).nextElement(); + final String firstHeader = super.getHeaders(name).nextElement(); if (firstHeader != null && HttpHeaders.CONTENT_TYPE.equals(name) && MediaType.APPLICATION_JSON.includes(MediaType.valueOf(firstHeader))) { logger.debug("Overriding {} header: {}", HttpHeaders.CONTENT_TYPE, AppConfig.API_V2_MEDIA_TYPE_VALUE); diff --git a/src/main/java/de/thm/arsnova/web/exceptions/BadRequestException.java b/src/main/java/de/thm/arsnova/web/exceptions/BadRequestException.java index 7f417aca25d9f61a91e4254365b7e6948ba0d4f6..2ece9003fb5bced06a41ef2513326cc4494eef57 100644 --- a/src/main/java/de/thm/arsnova/web/exceptions/BadRequestException.java +++ b/src/main/java/de/thm/arsnova/web/exceptions/BadRequestException.java @@ -10,15 +10,15 @@ public class BadRequestException extends RuntimeException { super(); } - public BadRequestException(String message) { + public BadRequestException(final String message) { super(message); } - public BadRequestException(Throwable e) { + public BadRequestException(final Throwable e) { super(e); } - public BadRequestException(String message, Throwable e) { + public BadRequestException(final String message, final Throwable e) { super(message, e); } } diff --git a/src/main/java/de/thm/arsnova/web/exceptions/ForbiddenException.java b/src/main/java/de/thm/arsnova/web/exceptions/ForbiddenException.java index aefe91f3383d8e85e78c40bce1126ad221b23b72..54908825a0b3e70672aefd06f9de3509d248c39c 100644 --- a/src/main/java/de/thm/arsnova/web/exceptions/ForbiddenException.java +++ b/src/main/java/de/thm/arsnova/web/exceptions/ForbiddenException.java @@ -10,15 +10,15 @@ public class ForbiddenException extends RuntimeException { super(); } - public ForbiddenException(String message) { + public ForbiddenException(final String message) { super(message); } - public ForbiddenException(Throwable e) { + public ForbiddenException(final Throwable e) { super(e); } - public ForbiddenException(String message, Throwable e) { + public ForbiddenException(final String message, final Throwable e) { super(message, e); } } diff --git a/src/main/java/de/thm/arsnova/web/exceptions/NoContentException.java b/src/main/java/de/thm/arsnova/web/exceptions/NoContentException.java index 0177ac4acd3a1b02f3f4bda77b98adc3f809e3f1..10778acfe47a4747e16c6df3de67f165a7a8655d 100644 --- a/src/main/java/de/thm/arsnova/web/exceptions/NoContentException.java +++ b/src/main/java/de/thm/arsnova/web/exceptions/NoContentException.java @@ -10,15 +10,15 @@ public class NoContentException extends RuntimeException { super(); } - public NoContentException(String message) { + public NoContentException(final String message) { super(message); } - public NoContentException(Throwable e) { + public NoContentException(final Throwable e) { super(e); } - public NoContentException(String message, Throwable e) { + public NoContentException(final String message, final Throwable e) { super(message, e); } } diff --git a/src/main/java/de/thm/arsnova/web/exceptions/NotFoundException.java b/src/main/java/de/thm/arsnova/web/exceptions/NotFoundException.java index faa58e11db4da59ad02496d8bcbfde169f6eb2a3..dfb4b8953ed3ffdb47a35c912180b033f3a3c71e 100644 --- a/src/main/java/de/thm/arsnova/web/exceptions/NotFoundException.java +++ b/src/main/java/de/thm/arsnova/web/exceptions/NotFoundException.java @@ -10,15 +10,15 @@ public class NotFoundException extends RuntimeException { super(); } - public NotFoundException(String message) { + public NotFoundException(final String message) { super(message); } - public NotFoundException(Throwable e) { + public NotFoundException(final Throwable e) { super(e); } - public NotFoundException(String message, Throwable e) { + public NotFoundException(final String message, final Throwable e) { super(message, e); } } diff --git a/src/main/java/de/thm/arsnova/web/exceptions/NotImplementedException.java b/src/main/java/de/thm/arsnova/web/exceptions/NotImplementedException.java index 7941effb45549ff2563e8473152f59dfb30d66de..146616256ce2bbad37c9969b11c8601838f0c7bc 100644 --- a/src/main/java/de/thm/arsnova/web/exceptions/NotImplementedException.java +++ b/src/main/java/de/thm/arsnova/web/exceptions/NotImplementedException.java @@ -10,15 +10,15 @@ public class NotImplementedException extends RuntimeException { super(); } - public NotImplementedException(String message) { + public NotImplementedException(final String message) { super(message); } - public NotImplementedException(Throwable e) { + public NotImplementedException(final Throwable e) { super(e); } - public NotImplementedException(String message, Throwable e) { + public NotImplementedException(final String message, final Throwable e) { super(message, e); } } diff --git a/src/main/java/de/thm/arsnova/web/exceptions/PayloadTooLargeException.java b/src/main/java/de/thm/arsnova/web/exceptions/PayloadTooLargeException.java index 5dff0716a522ef6b77ef9d6a7ea9aee3813f230b..a17d4dce84dd6a8c41b04f26a9407942580123c1 100644 --- a/src/main/java/de/thm/arsnova/web/exceptions/PayloadTooLargeException.java +++ b/src/main/java/de/thm/arsnova/web/exceptions/PayloadTooLargeException.java @@ -10,15 +10,15 @@ public class PayloadTooLargeException extends RuntimeException { super(); } - public PayloadTooLargeException(String message) { + public PayloadTooLargeException(final String message) { super(message); } - public PayloadTooLargeException(Throwable e) { + public PayloadTooLargeException(final Throwable e) { super(e); } - public PayloadTooLargeException(String message, Throwable e) { + public PayloadTooLargeException(final String message, final Throwable e) { super(message, e); } } diff --git a/src/main/java/de/thm/arsnova/web/exceptions/PreconditionFailedException.java b/src/main/java/de/thm/arsnova/web/exceptions/PreconditionFailedException.java index 31c1de8b2dbb3d370f1ce0819a7b269cc5c5512d..3956603c05ff13a03cca14bb4b770f8f39215e77 100644 --- a/src/main/java/de/thm/arsnova/web/exceptions/PreconditionFailedException.java +++ b/src/main/java/de/thm/arsnova/web/exceptions/PreconditionFailedException.java @@ -10,15 +10,15 @@ public class PreconditionFailedException extends RuntimeException { super(); } - public PreconditionFailedException(String message) { + public PreconditionFailedException(final String message) { super(message); } - public PreconditionFailedException(Throwable e) { + public PreconditionFailedException(final Throwable e) { super(e); } - public PreconditionFailedException(String message, Throwable e) { + public PreconditionFailedException(final String message, final Throwable e) { super(message, e); } } diff --git a/src/main/java/de/thm/arsnova/web/exceptions/UnauthorizedException.java b/src/main/java/de/thm/arsnova/web/exceptions/UnauthorizedException.java index e889a0f42c21c2b1bc019429250e16be6a645bf4..f7651d56207340636374f1184308248da7f0499c 100644 --- a/src/main/java/de/thm/arsnova/web/exceptions/UnauthorizedException.java +++ b/src/main/java/de/thm/arsnova/web/exceptions/UnauthorizedException.java @@ -10,15 +10,15 @@ public class UnauthorizedException extends RuntimeException { super(); } - public UnauthorizedException(String message) { + public UnauthorizedException(final String message) { super(message); } - public UnauthorizedException(Throwable e) { + public UnauthorizedException(final Throwable e) { super(e); } - public UnauthorizedException(String message, Throwable e) { + public UnauthorizedException(final String message, final Throwable e) { super(message, e); } } diff --git a/src/main/java/de/thm/arsnova/websocket/ArsnovaSocketioServerImpl.java b/src/main/java/de/thm/arsnova/websocket/ArsnovaSocketioServerImpl.java index 314ee9a2ca0fb973dd02e7e3241dfe9a5235a231..4717df44f9683b4b0e45e25702e09e5346ecf3ad 100644 --- a/src/main/java/de/thm/arsnova/websocket/ArsnovaSocketioServerImpl.java +++ b/src/main/java/de/thm/arsnova/websocket/ArsnovaSocketioServerImpl.java @@ -135,7 +135,7 @@ public class ArsnovaSocketioServerImpl implements ArsnovaSocketioServer { /* hack: listen to ipv4 adresses */ System.setProperty("java.net.preferIPv4Stack", "true"); - SocketConfig soConfig = new SocketConfig(); + final SocketConfig soConfig = new SocketConfig(); soConfig.setReuseAddress(true); config.setSocketConfig(soConfig); config.setPort(portNumber); @@ -213,13 +213,13 @@ public class ArsnovaSocketioServerImpl implements ArsnovaSocketioServer { @Override @Timed(name = "readInterposedQuestionEvent.onData") public void onData( - SocketIOClient client, - Comment comment, - AckRequest ackRequest) { + final SocketIOClient client, + final Comment comment, + final AckRequest ackRequest) { final String user = userService.getUserIdToSocketId(client.getSessionId()); try { commentService.getAndMarkRead(comment.getId()); - } catch (IOException | NotFoundException | UnauthorizedException e) { + } catch (final IOException | NotFoundException | UnauthorizedException e) { logger.error("Loading of comment {} failed for user {} with exception {}", comment.getId(), user, e.getMessage()); } @@ -228,11 +228,11 @@ public class ArsnovaSocketioServerImpl implements ArsnovaSocketioServer { server.addEventListener("readFreetextAnswer", String.class, new DataListener<String>() { @Override - public void onData(SocketIOClient client, String answerId, AckRequest ackRequest) { + public void onData(final SocketIOClient client, final String answerId, final AckRequest ackRequest) { final String userId = userService.getUserIdToSocketId(client.getSessionId()); try { answerService.getFreetextAnswerAndMarkRead(answerId, userId); - } catch (NotFoundException | UnauthorizedException e) { + } catch (final NotFoundException | UnauthorizedException e) { logger.error("Marking answer {} as read failed for user {} with exception {}", answerId, userId, e.getMessage()); } @@ -245,7 +245,8 @@ public class ArsnovaSocketioServerImpl implements ArsnovaSocketioServer { new DataListener<ScoreOptions>() { @Override @Timed(name = "setLearningProgressOptionsEvent.onData") - public void onData(SocketIOClient client, ScoreOptions scoreOptions, AckRequest ack) { + public void onData( + final SocketIOClient client, final ScoreOptions scoreOptions, final AckRequest ack) { throw new UnsupportedOperationException("Not implemented."); /* FIXME: missing implementation */ } @@ -363,7 +364,7 @@ public class ArsnovaSocketioServerImpl implements ArsnovaSocketioServer { return result; } - private void sendToUser(final String userId, final String event, Object data) { + private void sendToUser(final String userId, final String event, final Object data) { final List<UUID> connectionIds = findConnectionIdForUserId(userId); if (connectionIds.isEmpty()) { return; @@ -459,8 +460,8 @@ public class ArsnovaSocketioServerImpl implements ArsnovaSocketioServer { } public void reportContentAvailable(final String roomId, final List<de.thm.arsnova.model.Content> qs) { - List<Content> contents = new ArrayList<>(); - for (de.thm.arsnova.model.Content q : qs) { + final List<Content> contents = new ArrayList<>(); + for (final de.thm.arsnova.model.Content q : qs) { contents.add(new Content(q)); } @@ -472,8 +473,8 @@ public class ArsnovaSocketioServerImpl implements ArsnovaSocketioServer { } public void reportContentsLocked(final String roomId, final List<de.thm.arsnova.model.Content> qs) { - List<Content> contents = new ArrayList<>(); - for (de.thm.arsnova.model.Content q : qs) { + final List<Content> contents = new ArrayList<>(); + for (final de.thm.arsnova.model.Content q : qs) { contents.add(new Content(q)); } broadcastInRoom(roomId, "lecturerQuestionLocked", contents); @@ -499,13 +500,13 @@ public class ArsnovaSocketioServerImpl implements ArsnovaSocketioServer { } @EventListener - public void handleAfterContentCreation(AfterCreationEvent<de.thm.arsnova.model.Content> event) { + public void handleAfterContentCreation(final AfterCreationEvent<de.thm.arsnova.model.Content> event) { this.reportContentAvailable(event.getEntity().getId(), Collections.singletonList(event.getEntity())); } @EventListener(condition = "#event.stateName == 'state'") public void handleContentIsVisibleStateChange( - StateChangeEvent<de.thm.arsnova.model.Content, de.thm.arsnova.model.Content.State> event) { + final StateChangeEvent<de.thm.arsnova.model.Content, de.thm.arsnova.model.Content.State> event) { if (event.getEntity().getState().isVisible()) { this.reportContentAvailable(event.getEntity().getRoomId(), Collections.singletonList(event.getEntity())); } else { @@ -514,14 +515,14 @@ public class ArsnovaSocketioServerImpl implements ArsnovaSocketioServer { } @EventListener - public void handleAfterCommentCreation(AfterCreationEvent<Comment> event) { + public void handleAfterCommentCreation(final AfterCreationEvent<Comment> event) { this.reportCommentAvailable(event.getEntity().getId(), event.getEntity().getId()); } @Async @EventListener @Timed - public void handleNewAnswer(AfterCreationEvent<Answer> event) { + public void handleNewAnswer(final AfterCreationEvent<Answer> event) { final String roomId = event.getEntity().getRoomId(); this.reportAnswersToContentAvailable(event.getEntity().getRoomId(), event.getEntity().getContentId()); broadcastInRoom(roomId, "countQuestionAnswersByQuestionId", @@ -541,7 +542,7 @@ public class ArsnovaSocketioServerImpl implements ArsnovaSocketioServer { @Async @EventListener @Timed - public void handleAfterAnswerDeletion(AfterDeletionEvent<Answer> event) { + public void handleAfterAnswerDeletion(final AfterDeletionEvent<Answer> event) { final String roomId = event.getEntity().getRoomId(); this.reportAnswersToContentAvailable(event.getEntity().getRoomId(), event.getEntity().getContentId()); // We do not know which user's answer was deleted, so we can't update his 'unanswered' list of questions... @@ -554,7 +555,7 @@ public class ArsnovaSocketioServerImpl implements ArsnovaSocketioServer { @EventListener(condition = "#event.stateName == 'state'") @Timed public void handlePiRoundDelayedStart( - StateChangeEvent<de.thm.arsnova.model.Content, de.thm.arsnova.model.Content.State> event) { + final StateChangeEvent<de.thm.arsnova.model.Content, de.thm.arsnova.model.Content.State> event) { broadcastInRoom(event.getEntity().getRoomId(), "startDelayedPiRound", generateRoundInfo(event.getEntity())); } @@ -563,7 +564,7 @@ public class ArsnovaSocketioServerImpl implements ArsnovaSocketioServer { @EventListener(condition = "#event.stateName == 'state'") @Timed public void handlePiRoundEnd( - StateChangeEvent<de.thm.arsnova.model.Content, de.thm.arsnova.model.Content.State> event) { + final StateChangeEvent<de.thm.arsnova.model.Content, de.thm.arsnova.model.Content.State> event) { broadcastInRoom(event.getEntity().getRoomId(), "endPiRound", generateRoundInfo(event.getEntity())); } @@ -571,18 +572,18 @@ public class ArsnovaSocketioServerImpl implements ArsnovaSocketioServer { @EventListener(condition = "#event.stateName == 'state'") @Timed public void handlePiRoundCancel( - StateChangeEvent<de.thm.arsnova.model.Content, de.thm.arsnova.model.Content.State> event) { + final StateChangeEvent<de.thm.arsnova.model.Content, de.thm.arsnova.model.Content.State> event) { broadcastInRoom(event.getEntity().getRoomId(), "cancelPiRound", event.getEntity().getId()); } @EventListener(condition = "#event.stateName == 'state'") public void handlePiRoundReset( - StateChangeEvent<de.thm.arsnova.model.Content, de.thm.arsnova.model.Content.State> event) { + final StateChangeEvent<de.thm.arsnova.model.Content, de.thm.arsnova.model.Content.State> event) { broadcastInRoom(event.getEntity().getRoomId(), "resetPiRound", generateRoundInfo(event.getEntity())); } - private Map<String, Object> generateRoundInfo(de.thm.arsnova.model.Content content) { - Map<String, Object> map = new HashMap<>(); + private Map<String, Object> generateRoundInfo(final de.thm.arsnova.model.Content content) { + final Map<String, Object> map = new HashMap<>(); map.put("_id", content.getId()); if (content.getState().getRoundEndTimestamp() != null) { map.put("endTime", content.getState().getRoundEndTimestamp().getTime()); @@ -601,11 +602,11 @@ public class ArsnovaSocketioServerImpl implements ArsnovaSocketioServer { @EventListener(condition = "#event.stateName == 'state'") public void handleContentResponsesEnabledStateChange( - StateChangeEvent<de.thm.arsnova.model.Content, de.thm.arsnova.model.Content.State> event) { + final StateChangeEvent<de.thm.arsnova.model.Content, de.thm.arsnova.model.Content.State> event) { /* Multiple groups for a single Content are not handled. */ final String groupName = event.getEntity().getGroups().iterator().hasNext() ? event.getEntity().getGroups().iterator().next() : ""; - Map<String, Object> map = new HashMap<>(); + final Map<String, Object> map = new HashMap<>(); map.put("_id", event.getEntity().getId()); map.put("variant", groupName); if (event.getEntity().getState().isResponsesEnabled()) { @@ -618,7 +619,7 @@ public class ArsnovaSocketioServerImpl implements ArsnovaSocketioServer { @EventListener(condition = "#event.stateName == 'settings'") public void handleFeatureChange( - StateChangeEvent<de.thm.arsnova.model.Room, de.thm.arsnova.model.Room.Settings> event) { + final StateChangeEvent<de.thm.arsnova.model.Room, de.thm.arsnova.model.Room.Settings> event) { final String roomId = event.getEntity().getId(); final de.thm.arsnova.model.Room.Settings settings = event.getEntity().getSettings(); broadcastInRoom(roomId, "featureChange", toV2Migrator.migrate(settings)); @@ -633,35 +634,35 @@ public class ArsnovaSocketioServerImpl implements ArsnovaSocketioServer { @EventListener(condition = "#event.stateName == 'settings'") public void handleLockFeedback( - StateChangeEvent<de.thm.arsnova.model.Room, de.thm.arsnova.model.Room.Settings> event) { + final StateChangeEvent<de.thm.arsnova.model.Room, de.thm.arsnova.model.Room.Settings> event) { broadcastInRoom(event.getEntity().getId(), "lockFeedback", event.getEntity().getSettings().isFeedbackLocked()); } @EventListener - public void handleFlipFlashcards(FlipFlashcardsEvent event) { + public void handleFlipFlashcards(final FlipFlashcardsEvent event) { /* FIXME: missing implementation */ //broadcastInRoom(event.getRoom().getId(), "flipFlashcards", event.getRoom().getFlipFlashcards()); } @EventListener - public void handleNewFeedback(NewFeedbackEvent event) { + public void handleNewFeedback(final NewFeedbackEvent event) { this.reportUpdatedFeedbackForRoom(event.getRoomId()); } @EventListener - public void handleDeleteFeedbackForRooms(DeleteFeedbackForRoomsEvent event) { + public void handleDeleteFeedbackForRooms(final DeleteFeedbackForRoomsEvent event) { this.reportDeletedFeedback(event.getUserId(), event.getSessions()); } @EventListener(condition = "#event.stateName == 'closed'") - public void handleRoomClosedStateChange(StateChangeEvent<de.thm.arsnova.model.Room, Boolean> event) { + public void handleRoomClosedStateChange(final StateChangeEvent<de.thm.arsnova.model.Room, Boolean> event) { this.reportRoomStatus(event.getEntity().getId(), !event.getNewValue()); } @EventListener - public void handleChangeScore(ChangeScoreEvent event) { + public void handleChangeScore(final ChangeScoreEvent event) { broadcastInRoom(event.getRoomId(), "learningProgressChange", null); } } diff --git a/src/main/java/de/thm/arsnova/websocket/WebsocketAuthenticationAspect.java b/src/main/java/de/thm/arsnova/websocket/WebsocketAuthenticationAspect.java index 6b045c98123d4e2c04dba58afef88d4358b1b9b9..f8404c8c8c785fed468da96810a6196952456d16 100644 --- a/src/main/java/de/thm/arsnova/websocket/WebsocketAuthenticationAspect.java +++ b/src/main/java/de/thm/arsnova/websocket/WebsocketAuthenticationAspect.java @@ -68,15 +68,15 @@ public class WebsocketAuthenticationAspect { } private void populateSecurityContext(final UUID socketId) { - String userId = userService.getUserIdToSocketId(socketId); + final String userId = userService.getUserIdToSocketId(socketId); if (userId == null) { throw new AccessDeniedException("No user authenticated for WebSocket connection"); } - SecurityContext context = SecurityContextHolder.getContext(); - Set<GrantedAuthority> authorities = new HashSet<>(); + final SecurityContext context = SecurityContextHolder.getContext(); + final Set<GrantedAuthority> authorities = new HashSet<>(); authorities.add(WEBSOCKET_AUTHORITY); - User user = userService.loadUser(userId, authorities); - Authentication auth = new UsernamePasswordAuthenticationToken(user, null, authorities); + final User user = userService.loadUser(userId, authorities); + final Authentication auth = new UsernamePasswordAuthenticationToken(user, null, authorities); context.setAuthentication(auth); SecurityContextHolder.setContext(context); } diff --git a/src/main/java/de/thm/arsnova/websocket/handler/AuthChannelInterceptorAdapter.java b/src/main/java/de/thm/arsnova/websocket/handler/AuthChannelInterceptorAdapter.java index 4318789f9d6125bfc67f98a9efc1e6c8bbded06b..a9098c962cd32f7ec5ce189d08cdfd52e0519fb1 100644 --- a/src/main/java/de/thm/arsnova/websocket/handler/AuthChannelInterceptorAdapter.java +++ b/src/main/java/de/thm/arsnova/websocket/handler/AuthChannelInterceptorAdapter.java @@ -31,14 +31,14 @@ public class AuthChannelInterceptorAdapter implements ChannelInterceptor { @Nullable @Override public Message<?> preSend(final Message<?> message, final MessageChannel channel) { - StompHeaderAccessor accessor = StompHeaderAccessor.wrap(message); + final StompHeaderAccessor accessor = StompHeaderAccessor.wrap(message); - String sessionId = accessor.getSessionId(); + final String sessionId = accessor.getSessionId(); if (accessor.getCommand() != null && accessor.getCommand().equals(StompCommand.CONNECT)) { // user needs to authorize - List<String> tokenList = accessor.getNativeHeader("token"); + final List<String> tokenList = accessor.getNativeHeader("token"); if (tokenList != null && tokenList.size() > 0) { - String token = tokenList.get(0); + final String token = tokenList.get(0); service.addWsSessionToJwtMapping(sessionId, token); } else { // no token given -> auth failed @@ -46,11 +46,11 @@ public class AuthChannelInterceptorAdapter implements ChannelInterceptor { return null; } } else { - List<String> userIdList = accessor.getNativeHeader("ars-user-id"); + final List<String> userIdList = accessor.getNativeHeader("ars-user-id"); if (userIdList != null && userIdList.size() > 0) { // user-id is given, check for auth - String userId = userIdList.get(0); - User u = service.getAuthenticatedUserByWsSession(sessionId); + final String userId = userIdList.get(0); + final User u = service.getAuthenticatedUserByWsSession(sessionId); if (u == null || !userId.equals(u.getId())) { // user isn't authorized, drop message logger.debug("user-id not validated, dropping frame"); diff --git a/src/main/java/de/thm/arsnova/websocket/handler/FeedbackCommandHandler.java b/src/main/java/de/thm/arsnova/websocket/handler/FeedbackCommandHandler.java index 06b6f33f0e755f2f4c018c6b6574ae2e84774c4b..172b998e025b7033024bf9ce888781f0114c6c5d 100644 --- a/src/main/java/de/thm/arsnova/websocket/handler/FeedbackCommandHandler.java +++ b/src/main/java/de/thm/arsnova/websocket/handler/FeedbackCommandHandler.java @@ -18,23 +18,23 @@ public class FeedbackCommandHandler { private final SimpMessagingTemplate messagingTemplate; @Autowired - public FeedbackCommandHandler(SimpMessagingTemplate messagingTemplate) { + public FeedbackCommandHandler(final SimpMessagingTemplate messagingTemplate) { this.messagingTemplate = messagingTemplate; } - private synchronized int[] updateFeedbackForRoom(String roomId, int index) { - int[] values = roomValues.getOrDefault(roomId, new int[4]); + private synchronized int[] updateFeedbackForRoom(final String roomId, final int index) { + final int[] values = roomValues.getOrDefault(roomId, new int[4]); values[index]++; roomValues.put(roomId, values); return values; } - public void handle(CreateFeedbackCommand command) { - int updatedIndex = command.getPayload().getPayload().getValue(); - int[] newVals = updateFeedbackForRoom(command.getRoomId(), updatedIndex); + public void handle(final CreateFeedbackCommand command) { + final int updatedIndex = command.getPayload().getPayload().getValue(); + final int[] newVals = updateFeedbackForRoom(command.getRoomId(), updatedIndex); - FeedbackChanged feedbackChanged = new FeedbackChanged(); - FeedbackChangedPayload feedbackChangedPayload = new FeedbackChangedPayload(); + final FeedbackChanged feedbackChanged = new FeedbackChanged(); + final FeedbackChangedPayload feedbackChangedPayload = new FeedbackChangedPayload(); feedbackChangedPayload.setValues(newVals); feedbackChanged.setPayload(feedbackChangedPayload); @@ -44,11 +44,11 @@ public class FeedbackCommandHandler { ); } - public void handle(GetFeedbackCommand command) { - int[] currentVals = roomValues.getOrDefault(command.getRoomId(), new int[4]); + public void handle(final GetFeedbackCommand command) { + final int[] currentVals = roomValues.getOrDefault(command.getRoomId(), new int[4]); - FeedbackChanged feedbackChanged = new FeedbackChanged(); - FeedbackChangedPayload feedbackChangedPayload = new FeedbackChangedPayload(); + final FeedbackChanged feedbackChanged = new FeedbackChanged(); + final FeedbackChangedPayload feedbackChangedPayload = new FeedbackChangedPayload(); feedbackChangedPayload.setValues(currentVals); feedbackChanged.setPayload(feedbackChangedPayload); @@ -65,7 +65,7 @@ public class FeedbackCommandHandler { private String roomId; private CreateFeedback payload; - public CreateFeedbackCommand(String roomId, CreateFeedback payload) { + public CreateFeedbackCommand(final String roomId, final CreateFeedback payload) { this.roomId = roomId; this.payload = payload; } @@ -84,7 +84,7 @@ public class FeedbackCommandHandler { private String roomId; private GetFeedback payload; - public GetFeedbackCommand(String roomId, GetFeedback payload) { + public GetFeedbackCommand(final String roomId, final GetFeedback payload) { this.roomId = roomId; this.payload = payload; } diff --git a/src/main/java/de/thm/arsnova/websocket/handler/FeedbackHandler.java b/src/main/java/de/thm/arsnova/websocket/handler/FeedbackHandler.java index 50308d6ffdc7fb12dadb8b7be7f2e34d9158530f..1708df58a5592d952070009ba7a837fc360d71b8 100644 --- a/src/main/java/de/thm/arsnova/websocket/handler/FeedbackHandler.java +++ b/src/main/java/de/thm/arsnova/websocket/handler/FeedbackHandler.java @@ -13,14 +13,14 @@ public class FeedbackHandler { private final FeedbackCommandHandler commandHandler; @Autowired - public FeedbackHandler(FeedbackCommandHandler commandHandler) { + public FeedbackHandler(final FeedbackCommandHandler commandHandler) { this.commandHandler = commandHandler; } @MessageMapping("/queue/{roomId}.feedback.command") public void send( - @DestinationVariable("roomId") String roomId, - CreateFeedback value + @DestinationVariable("roomId") final String roomId, + final CreateFeedback value ) throws Exception { commandHandler.handle( @@ -31,8 +31,8 @@ public class FeedbackHandler { @MessageMapping("/queue/{roomId}.feedback.query") public void send( - @DestinationVariable("roomId") String roomId, - GetFeedback value + @DestinationVariable("roomId") final String roomId, + final GetFeedback value ) throws Exception { commandHandler.handle( diff --git a/src/main/java/de/thm/arsnova/websocket/message/Content.java b/src/main/java/de/thm/arsnova/websocket/message/Content.java index 243349e9c1ece31f459bb2bb2cc1a616e3777539..e2539d1c0e3aab49a880277abb8280e71b3136cb 100644 --- a/src/main/java/de/thm/arsnova/websocket/message/Content.java +++ b/src/main/java/de/thm/arsnova/websocket/message/Content.java @@ -28,7 +28,7 @@ public class Content { private final String id; private final String variant; - public Content(de.thm.arsnova.model.Content content) { + public Content(final de.thm.arsnova.model.Content content) { this.id = content.getId(); /* FIXME: Message does not support content with multiple groups */ this.variant = content.getGroups().toArray(new String[1])[0]; diff --git a/src/main/java/de/thm/arsnova/websocket/message/CreateFeedbackPayload.java b/src/main/java/de/thm/arsnova/websocket/message/CreateFeedbackPayload.java index ee74510fd0e835804bc32a152270c713c689a979..c7abf3a9f250907982fadbbbe5ae1bf0ce587fa2 100644 --- a/src/main/java/de/thm/arsnova/websocket/message/CreateFeedbackPayload.java +++ b/src/main/java/de/thm/arsnova/websocket/message/CreateFeedbackPayload.java @@ -6,7 +6,7 @@ public class CreateFeedbackPayload implements WebSocketPayload { public CreateFeedbackPayload() { } - public CreateFeedbackPayload(int value) { + public CreateFeedbackPayload(final int value) { this.value = value; } @@ -14,7 +14,7 @@ public class CreateFeedbackPayload implements WebSocketPayload { return value; } - public void setValue(int value) { + public void setValue(final int value) { this.value = value; } } diff --git a/src/main/java/de/thm/arsnova/websocket/message/Feedback.java b/src/main/java/de/thm/arsnova/websocket/message/Feedback.java index e18789dc4a7649b71f392bc6960d6e558e5d2fa7..d1b3e3a4c638e4a211a84f7545d02bafc3548394 100644 --- a/src/main/java/de/thm/arsnova/websocket/message/Feedback.java +++ b/src/main/java/de/thm/arsnova/websocket/message/Feedback.java @@ -29,7 +29,7 @@ public class Feedback { return value; } - public void setValue(int value) { + public void setValue(final int value) { this.value = value; } diff --git a/src/main/java/de/thm/arsnova/websocket/message/FeedbackChanged.java b/src/main/java/de/thm/arsnova/websocket/message/FeedbackChanged.java index 2e7414358875bdd63e6b056c6c093ca5da1c1a68..f8a6a0c846670f87c9dec0a2879f9a2af6bf8df7 100644 --- a/src/main/java/de/thm/arsnova/websocket/message/FeedbackChanged.java +++ b/src/main/java/de/thm/arsnova/websocket/message/FeedbackChanged.java @@ -6,14 +6,14 @@ public class FeedbackChanged extends WebSocketMessage<FeedbackChangedPayload> { } @Override - public boolean equals(Object o) { + public boolean equals(final Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } - FeedbackChanged that = (FeedbackChanged) o; + final FeedbackChanged that = (FeedbackChanged) o; return this.getPayload().equals(that.getPayload()); } } diff --git a/src/main/java/de/thm/arsnova/websocket/message/FeedbackChangedPayload.java b/src/main/java/de/thm/arsnova/websocket/message/FeedbackChangedPayload.java index 29278f4686e608e896ded31625aa0bedcd2df197..13f6d26f0eab704bd995d54498bc6d753cfd22c5 100644 --- a/src/main/java/de/thm/arsnova/websocket/message/FeedbackChangedPayload.java +++ b/src/main/java/de/thm/arsnova/websocket/message/FeedbackChangedPayload.java @@ -9,19 +9,19 @@ public class FeedbackChangedPayload implements WebSocketPayload { return values; } - public void setValues(int[] values) { + public void setValues(final int[] values) { this.values = values; } @Override - public boolean equals(Object o) { + public boolean equals(final Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } - FeedbackChangedPayload that = (FeedbackChangedPayload) o; + final FeedbackChangedPayload that = (FeedbackChangedPayload) o; return Arrays.equals(values, that.values); } diff --git a/src/main/java/de/thm/arsnova/websocket/message/Patched.java b/src/main/java/de/thm/arsnova/websocket/message/Patched.java index 87f84cab6e5bbd32db75c2dc5599ace34c8ae1c7..1d31bfec070d9e987173d22fbdf77f788f6dd49d 100644 --- a/src/main/java/de/thm/arsnova/websocket/message/Patched.java +++ b/src/main/java/de/thm/arsnova/websocket/message/Patched.java @@ -1,7 +1,7 @@ package de.thm.arsnova.websocket.message; public class Patched extends WebSocketMessage<PatchedPayload> { - public Patched(String type) { + public Patched(final String type) { super(type); } } diff --git a/src/main/java/de/thm/arsnova/websocket/message/PatchedPayload.java b/src/main/java/de/thm/arsnova/websocket/message/PatchedPayload.java index 1c94099a0bc4448eaac3c9ed70d382f99e55fddc..2e8944823d3b3b5da32b5944559e50722697ba56 100644 --- a/src/main/java/de/thm/arsnova/websocket/message/PatchedPayload.java +++ b/src/main/java/de/thm/arsnova/websocket/message/PatchedPayload.java @@ -9,7 +9,7 @@ public class PatchedPayload implements WebSocketPayload { boolean propertyValue; - public PatchedPayload(String type) { + public PatchedPayload(final String type) { this.type = type; } @@ -17,7 +17,7 @@ public class PatchedPayload implements WebSocketPayload { return type; } - public void setType(String type) { + public void setType(final String type) { this.type = type; } @@ -25,7 +25,7 @@ public class PatchedPayload implements WebSocketPayload { return id; } - public void setId(String id) { + public void setId(final String id) { this.id = id; } @@ -33,7 +33,7 @@ public class PatchedPayload implements WebSocketPayload { return propertyName; } - public void setPropertyName(String propertyName) { + public void setPropertyName(final String propertyName) { this.propertyName = propertyName; } @@ -41,7 +41,7 @@ public class PatchedPayload implements WebSocketPayload { return propertyValue; } - public void setPropertyValue(boolean propertyValue) { + public void setPropertyValue(final boolean propertyValue) { this.propertyValue = propertyValue; } } diff --git a/src/main/java/de/thm/arsnova/websocket/message/Room.java b/src/main/java/de/thm/arsnova/websocket/message/Room.java index 25de1d48bdbb8ed27d995eb947c34c347ffb65a3..2b18bf97d1e5fef15b13ff28f4c8a0209590a185 100644 --- a/src/main/java/de/thm/arsnova/websocket/message/Room.java +++ b/src/main/java/de/thm/arsnova/websocket/message/Room.java @@ -28,7 +28,7 @@ public class Room { return keyword; } - public void setKeyword(String keyword) { + public void setKeyword(final String keyword) { this.keyword = keyword; } } diff --git a/src/main/java/de/thm/arsnova/websocket/message/WebSocketMessage.java b/src/main/java/de/thm/arsnova/websocket/message/WebSocketMessage.java index 6a0b6d4152f821554a36ae15f25c113b4ee1561f..48d4fda4c01c818d567394b9a91f2f372a3fc0be 100644 --- a/src/main/java/de/thm/arsnova/websocket/message/WebSocketMessage.java +++ b/src/main/java/de/thm/arsnova/websocket/message/WebSocketMessage.java @@ -5,7 +5,7 @@ public class WebSocketMessage<P extends WebSocketPayload> { private P payload; - public WebSocketMessage(String type) { + public WebSocketMessage(final String type) { this.type = type; } @@ -13,7 +13,7 @@ public class WebSocketMessage<P extends WebSocketPayload> { return type; } - public void setType(String type) { + public void setType(final String type) { this.type = type; } @@ -21,7 +21,7 @@ public class WebSocketMessage<P extends WebSocketPayload> { return payload; } - public void setPayload(P payload) { + public void setPayload(final P payload) { this.payload = payload; } } diff --git a/src/test/java/de/thm/arsnova/config/AppConfigTest.java b/src/test/java/de/thm/arsnova/config/AppConfigTest.java index 0d7062cd176f8af6883620ffc55341ed92060c63..c6210b2dc406548c12f2a1104a689ceb8360aca3 100644 --- a/src/test/java/de/thm/arsnova/config/AppConfigTest.java +++ b/src/test/java/de/thm/arsnova/config/AppConfigTest.java @@ -59,8 +59,8 @@ public class AppConfigTest extends AbstractJUnit4SpringContextTests { @Test public void testShouldUseAdminAccountFromTestPropertiesFile() { - List<String> expected = Arrays.asList("TestAdmin"); - List<String> actual = Arrays.asList(adminAccounts); + final List<String> expected = Arrays.asList("TestAdmin"); + final List<String> actual = Arrays.asList(adminAccounts); assertEquals("Configuration did not load correct property file", expected, actual); } diff --git a/src/test/java/de/thm/arsnova/config/TestAppConfig.java b/src/test/java/de/thm/arsnova/config/TestAppConfig.java index 6fdff03e377f42b91567878ac1414970702c0957..b63470c6fc7d795f42fca2f788188bb56a6d795d 100644 --- a/src/test/java/de/thm/arsnova/config/TestAppConfig.java +++ b/src/test/java/de/thm/arsnova/config/TestAppConfig.java @@ -97,9 +97,9 @@ public class TestAppConfig { @Bean @Primary public StubUserService stubUserService( - UserRepository repository, - JavaMailSender mailSender, - @Qualifier("defaultJsonMessageConverter") MappingJackson2HttpMessageConverter jackson2HttpMessageConverter) { + final UserRepository repository, + final JavaMailSender mailSender, + @Qualifier("defaultJsonMessageConverter") final MappingJackson2HttpMessageConverter jackson2HttpMessageConverter) { return new StubUserService(repository, mailSender, jackson2HttpMessageConverter); } diff --git a/src/test/java/de/thm/arsnova/config/TestSecurityConfig.java b/src/test/java/de/thm/arsnova/config/TestSecurityConfig.java index 34750f9762dbe34d5776a62b407fda10443f881a..d8e99426614dc8b5c0186d6bd47cd13977621e6d 100644 --- a/src/test/java/de/thm/arsnova/config/TestSecurityConfig.java +++ b/src/test/java/de/thm/arsnova/config/TestSecurityConfig.java @@ -44,7 +44,7 @@ import de.thm.arsnova.security.CasUserDetailsService; @Profile("test") public class TestSecurityConfig extends SecurityConfig { @Override - protected void configure(HttpSecurity http) {} + protected void configure(final HttpSecurity http) {} @Override @Bean diff --git a/src/test/java/de/thm/arsnova/event/StateEventDispatcherTest.java b/src/test/java/de/thm/arsnova/event/StateEventDispatcherTest.java index 6a0d592f3517282b0dbae5a3469fc7335431639a..852101f0e3ef6e4891cec048982bbd91635412cd 100644 --- a/src/test/java/de/thm/arsnova/event/StateEventDispatcherTest.java +++ b/src/test/java/de/thm/arsnova/event/StateEventDispatcherTest.java @@ -103,7 +103,7 @@ public class StateEventDispatcherTest { when(roomRepository.save(any(Room.class))).then(returnsFirstArg()); - Room room = new Room(); + final Room room = new Room(); room.setOwnerId(TEST_USER_ID); entityService.patch(room, Collections.singletonMap(QUESTIONS_ENABLED_PROPERTY_NAME, false), Room::getSettings); assertEquals(1, eventListenerConfig.getRoomSettingsStateChangeEvents().size()); @@ -118,13 +118,13 @@ public class StateEventDispatcherTest { Content.class, contentRepository, objectMapper); entityService.setApplicationEventPublisher(eventPublisher); - Room room = new Room(); + final Room room = new Room(); room.setId(TEST_ROOM_ID); room.setOwnerId(TEST_USER_ID); when(contentRepository.save(any(Content.class))).then(returnsFirstArg()); when(roomRepository.findOne(eq(room.getId()))).thenReturn(room); - Content content = new Content(); + final Content content = new Content(); content.setRoomId(room.getId()); entityService.patch(content, Collections.singletonMap(VISIBLE_PROPERTY_NAME, false), Content::getState); assertEquals(1, eventListenerConfig.getContentStateChangeEvents().size()); @@ -137,12 +137,12 @@ public class StateEventDispatcherTest { private List<StateChangeEvent<Content, Content.State>> contentStateChangeEvents = new ArrayList<>(); @EventListener(condition = "#event.stateName == '" + SETTINGS_PROPERTY_NAME + "'") - public void handleRoomSettingsStateChangeEvent(StateChangeEvent<Room, Room.Settings> event) { + public void handleRoomSettingsStateChangeEvent(final StateChangeEvent<Room, Room.Settings> event) { roomSettingsStateChangeEvents.add(event); } @EventListener(condition = "#event.stateName == '" + STATE_PROPERTY_NAME + "'") - public void handleContentStateChangeEvent(StateChangeEvent<Content, Content.State> event) { + public void handleContentStateChangeEvent(final StateChangeEvent<Content, Content.State> event) { contentStateChangeEvents.add(event); } diff --git a/src/test/java/de/thm/arsnova/model/ContentTest.java b/src/test/java/de/thm/arsnova/model/ContentTest.java index 78ed369a3b7bfd7c06d5517c7688c322435fe3da..272b0f35d0255c987e1f3f700a072374b7a70899 100644 --- a/src/test/java/de/thm/arsnova/model/ContentTest.java +++ b/src/test/java/de/thm/arsnova/model/ContentTest.java @@ -40,15 +40,15 @@ public class ContentTest { p2.setText("No"); p2.setCorrect(false); p2.setValue(-10); - Content q = new Content(); + final Content q = new Content(); q.setQuestionType("yesno"); q.setPossibleAnswers(new ArrayList<AnswerOption>() {{ add(p1); add(p2); }}); - Answer answer1 = new Answer(); + final Answer answer1 = new Answer(); answer1.setAnswerText("Yes"); - Answer answer2 = new Answer(); + final Answer answer2 = new Answer(); answer2.setAnswerText("No"); assertEquals(10, q.calculateValue(answer1)); @@ -66,13 +66,13 @@ public class ContentTest { p2.setText("No"); p2.setCorrect(false); p2.setValue(-10); - Content q = new Content(); + final Content q = new Content(); q.setAbstention(true); q.setPossibleAnswers(new ArrayList<AnswerOption>() {{ add(p1); add(p2); }}); - Answer answer = new Answer(); + final Answer answer = new Answer(); answer.setAbstention(true); assertEquals(0, q.calculateValue(answer)); @@ -93,21 +93,21 @@ public class ContentTest { p3.setText("Maybe"); p3.setCorrect(true); p3.setValue(10); - Content q = new Content(); + final Content q = new Content(); q.setQuestionType("mc"); q.setPossibleAnswers(new ArrayList<AnswerOption>() {{ add(p1); add(p2); add(p3); }}); - Answer answer1 = createAnswerWithText("0,0,0"); - Answer answer2 = createAnswerWithText("0,0,1"); - Answer answer3 = createAnswerWithText("0,1,0"); - Answer answer4 = createAnswerWithText("0,1,1"); - Answer answer5 = createAnswerWithText("1,0,0"); - Answer answer6 = createAnswerWithText("1,0,1"); - Answer answer7 = createAnswerWithText("1,1,0"); - Answer answer8 = createAnswerWithText("1,1,1"); + final Answer answer1 = createAnswerWithText("0,0,0"); + final Answer answer2 = createAnswerWithText("0,0,1"); + final Answer answer3 = createAnswerWithText("0,1,0"); + final Answer answer4 = createAnswerWithText("0,1,1"); + final Answer answer5 = createAnswerWithText("1,0,0"); + final Answer answer6 = createAnswerWithText("1,0,1"); + final Answer answer7 = createAnswerWithText("1,1,0"); + final Answer answer8 = createAnswerWithText("1,1,1"); assertEquals(0, q.calculateValue(answer1)); assertEquals(10, q.calculateValue(answer2)); @@ -138,7 +138,7 @@ public class ContentTest { p4.setText("1;1"); p4.setCorrect(true); p4.setValue(10); - Content q = new Content(); + final Content q = new Content(); q.setQuestionType("grid"); q.setPossibleAnswers(new ArrayList<AnswerOption>() {{ add(p1); @@ -146,17 +146,17 @@ public class ContentTest { add(p3); add(p4); }}); - Answer answer1 = createAnswerWithText("0;0"); - Answer answer2 = createAnswerWithText("0;1,1;1"); - Answer answer3 = createAnswerWithText("0;0,1;0,1;1"); + final Answer answer1 = createAnswerWithText("0;0"); + final Answer answer2 = createAnswerWithText("0;1,1;1"); + final Answer answer3 = createAnswerWithText("0;0,1;0,1;1"); assertEquals(10, q.calculateValue(answer1)); assertEquals(0, q.calculateValue(answer2)); assertEquals(30, q.calculateValue(answer3)); } - private static Answer createAnswerWithText(String text) { - Answer answer = new Answer(); + private static Answer createAnswerWithText(final String text) { + final Answer answer = new Answer(); answer.setAnswerText(text); return answer; } diff --git a/src/test/java/de/thm/arsnova/model/EntityTest.java b/src/test/java/de/thm/arsnova/model/EntityTest.java index aee0db9c83dd97e608c067fb6c6168f5fe829d5d..22d40d447b5348cf34862c69978f920cb89a8990 100644 --- a/src/test/java/de/thm/arsnova/model/EntityTest.java +++ b/src/test/java/de/thm/arsnova/model/EntityTest.java @@ -38,7 +38,7 @@ public class EntityTest { class SomeEntity extends Entity { private String testA; - public SomeEntity(String id, String rev, Date creationTimestamp, Date updateTimestamp, String testA) { + public SomeEntity(final String id, final String rev, final Date creationTimestamp, final Date updateTimestamp, final String testA) { this.id = id; this.rev = rev; this.creationTimestamp = creationTimestamp; @@ -61,7 +61,7 @@ public class EntityTest { private String testB; public AnotherEntity( - String id, String rev, Date creationTimestamp, Date updateTimestamp, String testA, String testB) { + final String id, final String rev, final Date creationTimestamp, final Date updateTimestamp, final String testA, final String testB) { super(id, rev, creationTimestamp, updateTimestamp, testA); this.testB = testB; } @@ -79,33 +79,33 @@ public class EntityTest { @Test public void testHashCode() { - SomeEntity entity1 = new SomeEntity("id", "rev", new Date(0), new Date(0), "test"); - SomeEntity entity2 = new SomeEntity("id", "rev", new Date(0), new Date(0), "test"); - SomeEntity entity3 = new SomeEntity("wrongId", "rev", new Date(0), new Date(0), "test"); + final SomeEntity entity1 = new SomeEntity("id", "rev", new Date(0), new Date(0), "test"); + final SomeEntity entity2 = new SomeEntity("id", "rev", new Date(0), new Date(0), "test"); + final SomeEntity entity3 = new SomeEntity("wrongId", "rev", new Date(0), new Date(0), "test"); assertEquals(entity1.hashCode(), entity2.hashCode()); assertNotEquals(entity1.hashCode(), entity3.hashCode()); - AnotherEntity entity4 = new AnotherEntity("id", "rev", new Date(0), new Date(0), "someTest", "anotherTest"); - AnotherEntity entity5 = new AnotherEntity("id", "rev", new Date(0), new Date(0), "someTest", "anotherTest"); - AnotherEntity entity6 = new AnotherEntity("id", "rev", new Date(0), new Date(0), "someTest", "wrong"); + final AnotherEntity entity4 = new AnotherEntity("id", "rev", new Date(0), new Date(0), "someTest", "anotherTest"); + final AnotherEntity entity5 = new AnotherEntity("id", "rev", new Date(0), new Date(0), "someTest", "anotherTest"); + final AnotherEntity entity6 = new AnotherEntity("id", "rev", new Date(0), new Date(0), "someTest", "wrong"); assertEquals(entity4.hashCode(), entity5.hashCode()); assertNotEquals(entity4.hashCode(), entity6.hashCode()); } @Test public void testEquals() { - SomeEntity entity1 = new SomeEntity("id", "rev", new Date(0), new Date(0), "test"); - SomeEntity entity2 = new SomeEntity("id", "rev", new Date(0), new Date(0), "test"); - SomeEntity entity3 = new SomeEntity("wrongId", "rev", new Date(0), new Date(0), "test"); + final SomeEntity entity1 = new SomeEntity("id", "rev", new Date(0), new Date(0), "test"); + final SomeEntity entity2 = new SomeEntity("id", "rev", new Date(0), new Date(0), "test"); + final SomeEntity entity3 = new SomeEntity("wrongId", "rev", new Date(0), new Date(0), "test"); assertEquals(entity1, entity2); assertNotEquals(entity1, entity3); } @Test public void testToString() { - SomeEntity entity1 = new SomeEntity("id", "rev", new Date(0), new Date(0), "test"); + final SomeEntity entity1 = new SomeEntity("id", "rev", new Date(0), new Date(0), "test"); assertThat(entity1.toString(), startsWith("[EntityTest.SomeEntity")); assertThat(entity1.toString(), endsWith("testA = 'test']")); - AnotherEntity entity2 = new AnotherEntity("id", "rev", new Date(0), new Date(0), "someTest", "anotherTest"); + final AnotherEntity entity2 = new AnotherEntity("id", "rev", new Date(0), new Date(0), "someTest", "anotherTest"); assertThat(entity2.toString(), startsWith("[EntityTest.AnotherEntity")); assertThat(entity2.toString(), endsWith("testA = 'someTest', testB = 'anotherTest']")); } diff --git a/src/test/java/de/thm/arsnova/model/FeedbackTest.java b/src/test/java/de/thm/arsnova/model/FeedbackTest.java index 5cc91beb6d7ede1c85ee39b207c1e26977d4ad79..9ff34ed937a4e104ec4c83db53a3f446e2ffb7f9 100644 --- a/src/test/java/de/thm/arsnova/model/FeedbackTest.java +++ b/src/test/java/de/thm/arsnova/model/FeedbackTest.java @@ -29,16 +29,16 @@ public class FeedbackTest { @Test public void differentObjectsShouldNotBeEqual() { - Feedback f = new Feedback(0, 0, 0, 0); - String x = ""; + final Feedback f = new Feedback(0, 0, 0, 0); + final String x = ""; assertFalse(f.equals(x)); } @Test public void differentlySizedFeedbacksShouldNotBeEqual() { - Feedback f1 = new Feedback(0, 0, 0, 0); - Feedback f2 = new Feedback(0, 0, 0, 0); + final Feedback f1 = new Feedback(0, 0, 0, 0); + final Feedback f2 = new Feedback(0, 0, 0, 0); f2.getValues().add(0); assertFalse(f1.equals(f2)); @@ -46,14 +46,14 @@ public class FeedbackTest { @Test public void nullShouldNotBeEqual() { - Feedback f = new Feedback(0, 0, 0, 0); + final Feedback f = new Feedback(0, 0, 0, 0); assertFalse(f.equals(null)); } @Test public void sameContentsShouldBeEqual() { - Feedback f1 = new Feedback(1, 2, 3, 4); - Feedback f2 = new Feedback(1, 2, 3, 4); + final Feedback f1 = new Feedback(1, 2, 3, 4); + final Feedback f2 = new Feedback(1, 2, 3, 4); assertTrue(f1.equals(f2)); assertTrue(f2.equals(f1)); @@ -61,8 +61,8 @@ public class FeedbackTest { @Test public void differentContentsShouldNotBeEqual() { - Feedback f1 = new Feedback(1, 2, 3, 4); - Feedback f2 = new Feedback(4, 3, 2, 1); + final Feedback f1 = new Feedback(1, 2, 3, 4); + final Feedback f2 = new Feedback(4, 3, 2, 1); assertFalse(f1.equals(f2)); assertFalse(f2.equals(f1)); @@ -70,29 +70,29 @@ public class FeedbackTest { @Test public void shouldCalculateAverageValue() { - Feedback f = new Feedback(1, 0, 0, 1); + final Feedback f = new Feedback(1, 0, 0, 1); - double expected = 1.5; - double actual = f.getAverage().get(); + final double expected = 1.5; + final double actual = f.getAverage().get(); assertEquals(expected, actual, 0.01); } @Test public void averageCalculationShouldAvoidDivisionByZero() { - Feedback f = new Feedback(0, 0, 0, 0); + final Feedback f = new Feedback(0, 0, 0, 0); - Optional<Double> actual = f.getAverage(); + final Optional<Double> actual = f.getAverage(); assertFalse(actual.isPresent()); } @Test public void shouldCountVotes() { - Feedback f = new Feedback(2, 4, 8, 16); + final Feedback f = new Feedback(2, 4, 8, 16); - int expected = 30; - int actual = f.getCount(); + final int expected = 30; + final int actual = f.getCount(); assertEquals(expected, actual); diff --git a/src/test/java/de/thm/arsnova/model/TestClient.java b/src/test/java/de/thm/arsnova/model/TestClient.java index d51426482f927cd5945173f3961850789c052dce..f6751f3fa843b178479250e96ace5e94399368b7 100644 --- a/src/test/java/de/thm/arsnova/model/TestClient.java +++ b/src/test/java/de/thm/arsnova/model/TestClient.java @@ -29,7 +29,7 @@ public class TestClient extends ClientAuthentication { private static final long serialVersionUID = 1L; private final Set<GrantedAuthority> grantedAuthorities; - public TestClient(String username) { + public TestClient(final String username) { super(); grantedAuthorities = new HashSet<>(); setId(UUID.randomUUID().toString()); diff --git a/src/test/java/de/thm/arsnova/model/migration/FromV2MigratorTest.java b/src/test/java/de/thm/arsnova/model/migration/FromV2MigratorTest.java index 475d4df818271b8deaf99becc4cb894eda90d7be..80630dfd5a432a9640a0334690fa004aaba7614c 100644 --- a/src/test/java/de/thm/arsnova/model/migration/FromV2MigratorTest.java +++ b/src/test/java/de/thm/arsnova/model/migration/FromV2MigratorTest.java @@ -67,35 +67,35 @@ public class FromV2MigratorTest { @Test public void testMigrateAnswerMultipleResponse() { - Answer answerV2 = new Answer(); + final Answer answerV2 = new Answer(); answerV2.setId(ANSWER_ID); answerV2.setQuestionId(CONTENT_ID); answerV2.setSessionId(ROOM_ID); answerV2.setPiRound(ROUND); answerV2.setAnswerText("0,1,1"); - List<ChoiceQuestionContent.AnswerOption> options = new ArrayList<>(); - ChoiceQuestionContent.AnswerOption option1 = new ChoiceQuestionContent.AnswerOption(); + final List<ChoiceQuestionContent.AnswerOption> options = new ArrayList<>(); + final ChoiceQuestionContent.AnswerOption option1 = new ChoiceQuestionContent.AnswerOption(); option1.setLabel(OPTION1_LABEL); options.add(option1); - ChoiceQuestionContent.AnswerOption option2 = new ChoiceQuestionContent.AnswerOption(); + final ChoiceQuestionContent.AnswerOption option2 = new ChoiceQuestionContent.AnswerOption(); option2.setLabel(OPTION2_LABEL); options.add(option2); - ChoiceQuestionContent.AnswerOption option3 = new ChoiceQuestionContent.AnswerOption(); + final ChoiceQuestionContent.AnswerOption option3 = new ChoiceQuestionContent.AnswerOption(); option3.setLabel(OPTION3_LABEL); options.add(option3); - ChoiceQuestionContent content = new ChoiceQuestionContent(); + final ChoiceQuestionContent content = new ChoiceQuestionContent(); content.setFormat(FORMAT); content.setRoomId(ROOM_ID); content.setMultiple(true); content.setOptions(options); - List<Integer> selectedChoices = new ArrayList<>(); + final List<Integer> selectedChoices = new ArrayList<>(); selectedChoices.add(1); selectedChoices.add(2); - ChoiceAnswer answerV3 = (ChoiceAnswer) fromV2Migrator.migrate(answerV2, content); + final ChoiceAnswer answerV3 = (ChoiceAnswer) fromV2Migrator.migrate(answerV2, content); assertEquals(ANSWER_ID, answerV3.getId()); assertEquals(CONTENT_ID, answerV3.getContentId()); diff --git a/src/test/java/de/thm/arsnova/model/migration/ToV2MigratorTest.java b/src/test/java/de/thm/arsnova/model/migration/ToV2MigratorTest.java index 9b96a2db28144483a0f63f31aecefb80e10b2456..c8bc41db5440470bcd5d6934b70201bed82a998d 100644 --- a/src/test/java/de/thm/arsnova/model/migration/ToV2MigratorTest.java +++ b/src/test/java/de/thm/arsnova/model/migration/ToV2MigratorTest.java @@ -78,10 +78,10 @@ public class ToV2MigratorTest { final ChoiceQuestionContent.AnswerOption option1 = new ChoiceQuestionContent.AnswerOption(); option1.setLabel(OPTION1_LABEL); options.add(option1); - ChoiceQuestionContent.AnswerOption option2 = new ChoiceQuestionContent.AnswerOption(); + final ChoiceQuestionContent.AnswerOption option2 = new ChoiceQuestionContent.AnswerOption(); option2.setLabel(OPTION2_LABEL); options.add(option2); - ChoiceQuestionContent.AnswerOption option3 = new ChoiceQuestionContent.AnswerOption(); + final ChoiceQuestionContent.AnswerOption option3 = new ChoiceQuestionContent.AnswerOption(); option3.setLabel(OPTION3_LABEL); options.add(option3); @@ -123,11 +123,11 @@ public class ToV2MigratorTest { final ChoiceQuestionContent.AnswerOption option1 = new ChoiceQuestionContent.AnswerOption(); option1.setLabel(OPTION1_LABEL); - ChoiceQuestionContent.AnswerOption option2 = new ChoiceQuestionContent.AnswerOption(); + final ChoiceQuestionContent.AnswerOption option2 = new ChoiceQuestionContent.AnswerOption(); option2.setLabel(OPTION2_LABEL); - ChoiceQuestionContent.AnswerOption option3 = new ChoiceQuestionContent.AnswerOption(); + final ChoiceQuestionContent.AnswerOption option3 = new ChoiceQuestionContent.AnswerOption(); option3.setLabel(OPTION3_LABEL); - ChoiceQuestionContent.AnswerOption option4 = new ChoiceQuestionContent.AnswerOption(); + final ChoiceQuestionContent.AnswerOption option4 = new ChoiceQuestionContent.AnswerOption(); option3.setLabel(OPTION4_LABEL); final List<ChoiceQuestionContent.AnswerOption> options = Arrays.asList(new ChoiceQuestionContent.AnswerOption[] { option1, option2, option3, option4 @@ -145,7 +145,7 @@ public class ToV2MigratorTest { assertEquals(ABSTENTION_COUNT, abstentionStatsV2.getAbstentionCount()); for (int i = 0; i < ANSWER_COUNTS.size(); i++) { - Answer answerStatsV2 = statsV2.get(i + 1); + final Answer answerStatsV2 = statsV2.get(i + 1); assertEquals(ANSWER_COUNTS.get(i).intValue(), answerStatsV2.getAnswerCount()); assertEquals(ABSTENTION_COUNT, answerStatsV2.getAbstentionCount()); assertEquals(options.get(i).getLabel(), answerStatsV2.getAnswerText()); diff --git a/src/test/java/de/thm/arsnova/service/DefaultEntityServiceImplTest.java b/src/test/java/de/thm/arsnova/service/DefaultEntityServiceImplTest.java index 8d4657cb976b3da64af4b593ccf1e2587cb31e39..84e64df881bac672ffcb2662de2b1b84bcb842e6 100644 --- a/src/test/java/de/thm/arsnova/service/DefaultEntityServiceImplTest.java +++ b/src/test/java/de/thm/arsnova/service/DefaultEntityServiceImplTest.java @@ -122,7 +122,7 @@ public class DefaultEntityServiceImplTest { when(roomRepository.saveAll(anyListOf(Room.class))).then(returnsFirstArg()); - List<Room> sessions = new ArrayList<>(); + final List<Room> sessions = new ArrayList<>(); final String originalId1 = "d8833f0d78964a9487ded02ba2dfbbad"; final String originalName1 = "Test Room 1"; final String originalOwnerId1 = "TestUser"; diff --git a/src/test/java/de/thm/arsnova/service/FeedbackServiceTest.java b/src/test/java/de/thm/arsnova/service/FeedbackServiceTest.java index 71cb00fedd633f6eed1098098a8928d3b1448ba9..7a50a840fadd89d1846c6307d15965968c0ab36f 100644 --- a/src/test/java/de/thm/arsnova/service/FeedbackServiceTest.java +++ b/src/test/java/de/thm/arsnova/service/FeedbackServiceTest.java @@ -51,7 +51,7 @@ public class FeedbackServiceTest { lenient().when(this.roomService.get(anyString())).thenReturn(null); lenient().when(this.roomService.get(eq(this.roomId))).thenReturn(room); - FeedbackStorageService fss = new FeedbackStorageServiceImpl(); + final FeedbackStorageService fss = new FeedbackStorageServiceImpl(); this.feedbackService = new FeedbackServiceImpl(fss, this.roomService); ((FeedbackServiceImpl) this.feedbackService).setApplicationEventPublisher(this.publisher); } @@ -61,7 +61,7 @@ public class FeedbackServiceTest { feedbackService.save(roomId, 0, "user-id-one"); feedbackService.save(roomId, 0, "user-id-two"); - int actual = feedbackService.countFeedbackByRoomId(roomId); + final int actual = feedbackService.countFeedbackByRoomId(roomId); assertEquals(2, actual); } @@ -71,8 +71,8 @@ public class FeedbackServiceTest { feedbackService.save(roomId, 0, "user-id-one"); feedbackService.save(roomId, 3, "user-id-two"); - double expected = 1.5; - double actual = feedbackService.calculateAverageFeedback(roomId); + final double expected = 1.5; + final double actual = feedbackService.calculateAverageFeedback(roomId); assertEquals(expected, actual, 0.01); } @@ -92,8 +92,8 @@ public class FeedbackServiceTest { feedbackService.save(roomId, 0, "user-id-one"); feedbackService.save(roomId, 3, "user-id-two"); - Feedback expected = new Feedback(1, 0, 0, 1); - Feedback actual = feedbackService.getByRoomId(roomId); + final Feedback expected = new Feedback(1, 0, 0, 1); + final Feedback actual = feedbackService.getByRoomId(roomId); assertEquals(expected, actual); } @@ -102,18 +102,18 @@ public class FeedbackServiceTest { public void shouldReturnSingleVoteFromUser() { feedbackService.save(roomId, 2, "user-id-one"); - int actual = feedbackService.getByRoomIdAndUserId(roomId, "user-id-one"); + final int actual = feedbackService.getByRoomIdAndUserId(roomId, "user-id-one"); assertEquals(2, actual); } @Test public void shouldDeleteOldFeedbackVotes() { - FeedbackStorageService fss = Mockito.mock(FeedbackStorageService.class); + final FeedbackStorageService fss = Mockito.mock(FeedbackStorageService.class); this.feedbackService = new FeedbackServiceImpl(fss, this.roomService); ((FeedbackServiceImpl) this.feedbackService).setApplicationEventPublisher(this.publisher); - Map<Room, List<String>> roomToUserMappings = new HashMap<Room, List<String>>() {{ + final Map<Room, List<String>> roomToUserMappings = new HashMap<Room, List<String>>() {{ put(room, Arrays.asList("user-id-one")); }}; when(fss.cleanVotes(anyInt())).thenReturn(roomToUserMappings); @@ -126,7 +126,7 @@ public class FeedbackServiceTest { @Test public void shouldDeleteOldFeedbackVotesForSpecificRoom() { - FeedbackStorageService fss = Mockito.mock(FeedbackStorageService.class); + final FeedbackStorageService fss = Mockito.mock(FeedbackStorageService.class); this.feedbackService = new FeedbackServiceImpl(fss, this.roomService); ((FeedbackServiceImpl) this.feedbackService).setApplicationEventPublisher(this.publisher); diff --git a/src/test/java/de/thm/arsnova/service/StubUserService.java b/src/test/java/de/thm/arsnova/service/StubUserService.java index 3375e27c0cad348bcc4f66bd2ddd744dc28bc573..a8bfb3b4089f7bd0c71a6f58d2af7586d9fe3e33 100644 --- a/src/test/java/de/thm/arsnova/service/StubUserService.java +++ b/src/test/java/de/thm/arsnova/service/StubUserService.java @@ -36,21 +36,21 @@ public class StubUserService extends UserServiceImpl { private User stubUser = null; public StubUserService( - UserRepository repository, - JavaMailSender mailSender, - @Qualifier("defaultJsonMessageConverter") MappingJackson2HttpMessageConverter jackson2HttpMessageConverter) { + final UserRepository repository, + final JavaMailSender mailSender, + @Qualifier("defaultJsonMessageConverter") final MappingJackson2HttpMessageConverter jackson2HttpMessageConverter) { super(repository, mailSender, jackson2HttpMessageConverter); grantedAuthorities = new HashSet<>(); grantedAuthorities.add(new SimpleGrantedAuthority("ROLE_USER")); } - public void setUserAuthenticated(boolean isAuthenticated) { + public void setUserAuthenticated(final boolean isAuthenticated) { this.setUserAuthenticated(isAuthenticated, "ptsr00"); } - public void setUserAuthenticated(boolean isAuthenticated, String username) { + public void setUserAuthenticated(final boolean isAuthenticated, final String username) { if (isAuthenticated) { - UserProfile userProfile = new UserProfile(UserProfile.AuthProvider.ARSNOVA, username); + final UserProfile userProfile = new UserProfile(UserProfile.AuthProvider.ARSNOVA, username); userProfile.setId(UUID.randomUUID().toString()); stubUser = new User(userProfile, grantedAuthorities); } else { diff --git a/src/test/java/de/thm/arsnova/service/UserServiceTest.java b/src/test/java/de/thm/arsnova/service/UserServiceTest.java index d08e109309fcec34f4081ffad10c5e3f635fa392..86ae23d3d04e155620aae7bf93b01a651952c487 100644 --- a/src/test/java/de/thm/arsnova/service/UserServiceTest.java +++ b/src/test/java/de/thm/arsnova/service/UserServiceTest.java @@ -73,27 +73,27 @@ public class UserServiceTest { // new ClientAuthentication(new UsernamePasswordAuthenticationToken("ptsr00", UUID.randomUUID()))); //socketid2user.put(UUID.randomUUID(), new ClientAuthentication(new AttributePrincipalImpl("ptstr0"))); - GoogleOidcProfile profile = new GoogleOidcProfile(); + final GoogleOidcProfile profile = new GoogleOidcProfile(); profile.addAttribute(CommonProfileDefinition.DISPLAY_NAME, "ptsr00"); profile.addAttribute(CommonProfileDefinition.EMAIL, "mail@host.com"); profile.addAttribute("email_verified", true); - UserProfile userProfile = new UserProfile(UserProfile.AuthProvider.GOOGLE, "ptsr00"); + final UserProfile userProfile = new UserProfile(UserProfile.AuthProvider.GOOGLE, "ptsr00"); userProfile.setId(UUID.randomUUID().toString()); - User user = new User(userProfile, Collections.emptyList()); - OAuthToken token = new OAuthToken(user, profile, Collections.emptyList()); + final User user = new User(userProfile, Collections.emptyList()); + final OAuthToken token = new OAuthToken(user, profile, Collections.emptyList()); socketid2user.put(UUID.randomUUID(), new ClientAuthentication(token)); - List<GrantedAuthority> authorities = new ArrayList<>(); + final List<GrantedAuthority> authorities = new ArrayList<>(); authorities.add(new SimpleGrantedAuthority("ROLE_GUEST")); socketid2user.put(UUID.randomUUID(), new ClientAuthentication( new AnonymousAuthenticationToken("ptsr00", UUID.randomUUID(), authorities))); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - ObjectOutputStream objOut = new ObjectOutputStream(out); + final ByteArrayOutputStream out = new ByteArrayOutputStream(); + final ObjectOutputStream objOut = new ObjectOutputStream(out); objOut.writeObject(socketid2user); objOut.close(); - ObjectInputStream objIn = new ObjectInputStream(new ByteArrayInputStream(out.toByteArray())); - Map<UUID, ClientAuthentication> actual = (Map<UUID, ClientAuthentication>) objIn.readObject(); + final ObjectInputStream objIn = new ObjectInputStream(new ByteArrayInputStream(out.toByteArray())); + final Map<UUID, ClientAuthentication> actual = (Map<UUID, ClientAuthentication>) objIn.readObject(); assertEquals(actual, socketid2user); } @@ -104,12 +104,12 @@ public class UserServiceTest { user2session.put("ptsr02", UUID.randomUUID().toString()); user2session.put("ptsr03", UUID.randomUUID().toString()); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - ObjectOutputStream objOut = new ObjectOutputStream(out); + final ByteArrayOutputStream out = new ByteArrayOutputStream(); + final ObjectOutputStream objOut = new ObjectOutputStream(out); objOut.writeObject(user2session); objOut.close(); - ObjectInputStream objIn = new ObjectInputStream(new ByteArrayInputStream(out.toByteArray())); - Map<String, String> actual = (Map<String, String>) objIn.readObject(); + final ObjectInputStream objIn = new ObjectInputStream(new ByteArrayInputStream(out.toByteArray())); + final Map<String, String> actual = (Map<String, String>) objIn.readObject(); assertEquals(actual, user2session); } diff --git a/src/test/java/de/thm/arsnova/service/score/QuestionBasedScoreCalculatorTest.java b/src/test/java/de/thm/arsnova/service/score/QuestionBasedScoreCalculatorTest.java index c591959e963e1b62acefe28101a280f6b9f2a4ef..ba45798689ea27d84c38f7916d6d74cdb73962c4 100644 --- a/src/test/java/de/thm/arsnova/service/score/QuestionBasedScoreCalculatorTest.java +++ b/src/test/java/de/thm/arsnova/service/score/QuestionBasedScoreCalculatorTest.java @@ -35,14 +35,14 @@ public class QuestionBasedScoreCalculatorTest { private int id = 1; - private String addQuestion(String questionVariant, int points) { + private String addQuestion(final String questionVariant, final int points) { final String questionId = "question" + (id++); final int piRound = 1; courseScore.addQuestion(questionId, questionVariant, piRound, points); return questionId; } - private void addAnswer(String questionId, String userId, int points) { + private void addAnswer(final String questionId, final String userId, final int points) { final int piRound = 1; courseScore.addAnswer(questionId, piRound, userId, points); } @@ -50,7 +50,7 @@ public class QuestionBasedScoreCalculatorTest { @Before public void setUp() { this.courseScore = new Score(); - SessionStatisticsRepository db = mock(SessionStatisticsRepository.class); + final SessionStatisticsRepository db = mock(SessionStatisticsRepository.class); when(db.getLearningProgress(null)).thenReturn(courseScore); this.lp = new QuestionBasedScoreCalculator(db); } @@ -62,32 +62,32 @@ public class QuestionBasedScoreCalculatorTest { public void shouldIgnoreQuestionsWithoutCorrectAnswers() { final int questionMaxValue = 0; final int userScore = 0; - String userId = "user1"; - String questionId = this.addQuestion("lecture", questionMaxValue); + final String userId = "user1"; + final String questionId = this.addQuestion("lecture", questionMaxValue); this.addAnswer(questionId, userId, userScore); - ScoreStatistics expected = new ScoreStatistics(); + final ScoreStatistics expected = new ScoreStatistics(); expected.setCourseProgress(0); expected.setMyProgress(0); expected.setNumQuestions(0); - ScoreStatistics actual = lp.getMyProgress(null, userId); + final ScoreStatistics actual = lp.getMyProgress(null, userId); assertEquals(expected, actual); } @Test public void shouldIgnoreQuestionsWithoutCorrectAnswersInQuestionCount() { - String userId = "user"; + final String userId = "user"; courseScore.addQuestion("question-without-correct-answers", "lecture", 1, 0); courseScore.addQuestion("question-with-correct-answers", "lecture", 1, 50); courseScore.addAnswer("question-without-correct-answers", 1, userId, 0); courseScore.addAnswer("question-with-correct-answers", 1, userId, 50); - ScoreStatistics expected = new ScoreStatistics(); + final ScoreStatistics expected = new ScoreStatistics(); expected.setCourseProgress(100); expected.setMyProgress(100); expected.setNumQuestions(1); - ScoreStatistics actual = lp.getMyProgress(null, userId); + final ScoreStatistics actual = lp.getMyProgress(null, userId); assertEquals(expected, actual); } @@ -97,14 +97,14 @@ public class QuestionBasedScoreCalculatorTest { */ @Test public void shouldCalculatePercentageOfOneQuestionWithSomeWrongAnswers() { - String questionId = this.addQuestion("lecture", 10); + final String questionId = this.addQuestion("lecture", 10); for (int i = 0; i < 99; i++) { this.addAnswer(questionId, "user" + i, 10); } this.addAnswer(questionId, "user-with-a-wrong-answer", 0); - int expected = 99; - int actual = lp.getCourseProgress(null).getCourseProgress(); + final int expected = 99; + final int actual = lp.getCourseProgress(null).getCourseProgress(); assertEquals(expected, actual); } @@ -117,19 +117,19 @@ public class QuestionBasedScoreCalculatorTest { @Test public void shouldCalculatePercentageOfMultipleQuestionsAndAnswers() { // two questions - String q1 = this.addQuestion("lecture", 10); - String q2 = this.addQuestion("lecture", 10); + final String q1 = this.addQuestion("lecture", 10); + final String q2 = this.addQuestion("lecture", 10); // two users - String userId1 = "user1"; - String userId2 = "user2"; + final String userId1 = "user1"; + final String userId2 = "user2"; // four answers, last one is wrong this.addAnswer(q1, userId1, 10); this.addAnswer(q1, userId2, 10); this.addAnswer(q2, userId1, 10); this.addAnswer(q2, userId2, 0); - int expected = 75; - int actual = lp.getCourseProgress(null).getCourseProgress(); + final int expected = 75; + final int actual = lp.getCourseProgress(null).getCourseProgress(); assertEquals(expected, actual); } @@ -137,8 +137,8 @@ public class QuestionBasedScoreCalculatorTest { @Test public void shouldNotBeBiasedByPointsOrAnswerCount() { // two questions - String q1 = this.addQuestion("lecture", 1000); - String q2 = this.addQuestion("lecture", 1); + final String q1 = this.addQuestion("lecture", 1000); + final String q2 = this.addQuestion("lecture", 1); // first question has many answers, all of them correct for (int i = 0; i < 100; i++) { this.addAnswer(q1, "user" + i, 1000); @@ -146,18 +146,18 @@ public class QuestionBasedScoreCalculatorTest { // second question has one wrong answer this.addAnswer(q2, "another-user", 0); - int expected = 50; - int actual = lp.getCourseProgress(null).getCourseProgress(); + final int expected = 50; + final int actual = lp.getCourseProgress(null).getCourseProgress(); assertEquals(expected, actual); } @Test public void shouldFilterBasedOnQuestionVariant() { - String q1 = this.addQuestion("lecture", 100); - String q2 = this.addQuestion("preparation", 100); - String userId1 = "user1"; - String userId2 = "user2"; + final String q1 = this.addQuestion("lecture", 100); + final String q2 = this.addQuestion("preparation", 100); + final String userId1 = "user1"; + final String userId2 = "user2"; // first question is answered correctly, second one is not this.addAnswer(q1, userId1, 100); this.addAnswer(q1, userId2, 100); @@ -165,11 +165,11 @@ public class QuestionBasedScoreCalculatorTest { this.addAnswer(q2, userId2, 0); lp.setQuestionVariant("lecture"); - ScoreStatistics lectureProgress = lp.getCourseProgress(null); - ScoreStatistics myLectureProgress = lp.getMyProgress(null, userId1); + final ScoreStatistics lectureProgress = lp.getCourseProgress(null); + final ScoreStatistics myLectureProgress = lp.getMyProgress(null, userId1); lp.setQuestionVariant("preparation"); - ScoreStatistics prepProgress = lp.getCourseProgress(null); - ScoreStatistics myPrepProgress = lp.getMyProgress(null, userId1); + final ScoreStatistics prepProgress = lp.getCourseProgress(null); + final ScoreStatistics myPrepProgress = lp.getMyProgress(null, userId1); assertEquals(100, lectureProgress.getCourseProgress()); assertEquals(100, myLectureProgress.getMyProgress()); @@ -179,8 +179,8 @@ public class QuestionBasedScoreCalculatorTest { @Test public void shouldConsiderAnswersOfSamePiRound() { - String userId1 = "user1"; - String userId2 = "user2"; + final String userId1 = "user1"; + final String userId2 = "user2"; // question is in round 2 courseScore.addQuestion("q1", "lecture", 2, 100); // 25 points in round 1, 75 points in round two for the first user @@ -190,8 +190,8 @@ public class QuestionBasedScoreCalculatorTest { courseScore.addAnswer("q1", 1, userId2, 100); courseScore.addAnswer("q1", 2, userId2, 25); - ScoreStatistics u1Progress = lp.getMyProgress(null, userId1); - ScoreStatistics u2Progress = lp.getMyProgress(null, userId2); + final ScoreStatistics u1Progress = lp.getMyProgress(null, userId1); + final ScoreStatistics u2Progress = lp.getMyProgress(null, userId2); // only the answer for round 2 should be considered assertEquals(50, u1Progress.getCourseProgress()); @@ -203,12 +203,12 @@ public class QuestionBasedScoreCalculatorTest { @Test public void shouldIncludeNominatorAndDenominatorOfResultExcludingStudentCount() { // two questions - String q1 = this.addQuestion("lecture", 10); - String q2 = this.addQuestion("lecture", 10); + final String q1 = this.addQuestion("lecture", 10); + final String q2 = this.addQuestion("lecture", 10); // three users - String userId1 = "user1"; - String userId2 = "user2"; - String userId3 = "user3"; + final String userId1 = "user1"; + final String userId2 = "user2"; + final String userId3 = "user3"; // six answers this.addAnswer(q1, userId1, 10); this.addAnswer(q2, userId1, -100); @@ -217,8 +217,8 @@ public class QuestionBasedScoreCalculatorTest { this.addAnswer(q1, userId3, -100); this.addAnswer(q2, userId3, -100); - int numerator = lp.getCourseProgress(null).getNumerator(); - int denominator = lp.getCourseProgress(null).getDenominator(); + final int numerator = lp.getCourseProgress(null).getNumerator(); + final int denominator = lp.getCourseProgress(null).getDenominator(); // If the percentage is wrong, then we need to adapt this test case! assertEquals("Precondition failed -- The underlying calculation has changed", diff --git a/src/test/java/de/thm/arsnova/service/score/ScoreBasedScoreCalculatorTest.java b/src/test/java/de/thm/arsnova/service/score/ScoreBasedScoreCalculatorTest.java index b4cfe3f4d7153c72a7d1012eb2984207204ba3eb..c20eefd17d990b872e8f145384e8af980ea4d965 100644 --- a/src/test/java/de/thm/arsnova/service/score/ScoreBasedScoreCalculatorTest.java +++ b/src/test/java/de/thm/arsnova/service/score/ScoreBasedScoreCalculatorTest.java @@ -35,14 +35,14 @@ public class ScoreBasedScoreCalculatorTest { private int id = 1; - private String addQuestion(String questionVariant, int points) { + private String addQuestion(final String questionVariant, final int points) { final String questionId = "question" + (id++); final int piRound = 1; courseScore.addQuestion(questionId, questionVariant, piRound, points); return questionId; } - private void addAnswer(String questionId, String userId, int points) { + private void addAnswer(final String questionId, final String userId, final int points) { final int piRound = 1; courseScore.addAnswer(questionId, piRound, userId, points); } @@ -50,7 +50,7 @@ public class ScoreBasedScoreCalculatorTest { @Before public void setUp() { this.courseScore = new Score(); - SessionStatisticsRepository db = mock(SessionStatisticsRepository.class); + final SessionStatisticsRepository db = mock(SessionStatisticsRepository.class); when(db.getLearningProgress(null)).thenReturn(courseScore); this.lp = new ScoreBasedScoreCalculator(db); } @@ -58,12 +58,12 @@ public class ScoreBasedScoreCalculatorTest { @Test public void shouldFilterBasedOnQuestionVariant() { // Total of 300 Points - String q1 = this.addQuestion("lecture", 100); - String q2 = this.addQuestion("lecture", 100); - String q3 = this.addQuestion("lecture", 100); - String userId1 = "user1"; - String userId2 = "user2"; - String userId3 = "user3"; + final String q1 = this.addQuestion("lecture", 100); + final String q2 = this.addQuestion("lecture", 100); + final String q3 = this.addQuestion("lecture", 100); + final String userId1 = "user1"; + final String userId2 = "user2"; + final String userId3 = "user3"; // Both users achieve 200 points this.addAnswer(q1, userId1, 100); this.addAnswer(q1, userId2, 100); @@ -76,7 +76,7 @@ public class ScoreBasedScoreCalculatorTest { this.addAnswer(q3, userId3, 0); lp.setQuestionVariant("lecture"); - ScoreStatistics u1LectureProgress = lp.getMyProgress(null, userId1); + final ScoreStatistics u1LectureProgress = lp.getMyProgress(null, userId1); // (500/3) / 300 ~= 0,56. assertEquals(56, u1LectureProgress.getCourseProgress()); // 200 / 300 ~= 0,67. @@ -86,11 +86,11 @@ public class ScoreBasedScoreCalculatorTest { @Test public void shouldNotContainRoundingErrors() { // Total of 300 Points - String q1 = this.addQuestion("lecture", 100); - String q2 = this.addQuestion("lecture", 100); - String q3 = this.addQuestion("lecture", 100); - String userId1 = "user1"; - String userId2 = "user2"; + final String q1 = this.addQuestion("lecture", 100); + final String q2 = this.addQuestion("lecture", 100); + final String q3 = this.addQuestion("lecture", 100); + final String userId1 = "user1"; + final String userId2 = "user2"; // Both users achieve 200 points this.addAnswer(q1, userId1, 100); this.addAnswer(q1, userId2, 100); @@ -100,7 +100,7 @@ public class ScoreBasedScoreCalculatorTest { this.addAnswer(q3, userId2, 100); lp.setQuestionVariant("lecture"); - ScoreStatistics u1LectureProgress = lp.getMyProgress(null, userId1); + final ScoreStatistics u1LectureProgress = lp.getMyProgress(null, userId1); // 200 / 300 = 0,67 assertEquals(67, u1LectureProgress.getCourseProgress()); assertEquals(67, u1LectureProgress.getMyProgress()); @@ -108,8 +108,8 @@ public class ScoreBasedScoreCalculatorTest { @Test public void shouldConsiderAnswersOfSamePiRound() { - String userId1 = "user1"; - String userId2 = "user2"; + final String userId1 = "user1"; + final String userId2 = "user2"; // question is in round 2 courseScore.addQuestion("q1", "lecture", 2, 100); // 25 points in round 1, 75 points in round two for the first user @@ -119,8 +119,8 @@ public class ScoreBasedScoreCalculatorTest { courseScore.addAnswer("q1", 1, userId2, 75); courseScore.addAnswer("q1", 2, userId2, 25); - ScoreStatistics u1Progress = lp.getMyProgress(null, userId1); - ScoreStatistics u2Progress = lp.getMyProgress(null, userId2); + final ScoreStatistics u1Progress = lp.getMyProgress(null, userId1); + final ScoreStatistics u2Progress = lp.getMyProgress(null, userId2); // only the answer for round 2 should be considered assertEquals(50, u1Progress.getCourseProgress()); @@ -132,12 +132,12 @@ public class ScoreBasedScoreCalculatorTest { @Test public void shouldIncludeNominatorAndDenominatorOfResultExcludingStudentCount() { // two questions - String q1 = this.addQuestion("lecture", 10); - String q2 = this.addQuestion("lecture", 10); + final String q1 = this.addQuestion("lecture", 10); + final String q2 = this.addQuestion("lecture", 10); // three users - String userId1 = "user1"; - String userId2 = "user2"; - String userId3 = "user3"; + final String userId1 = "user1"; + final String userId2 = "user2"; + final String userId3 = "user3"; // six answers this.addAnswer(q1, userId1, 10); this.addAnswer(q2, userId1, 0); @@ -146,8 +146,8 @@ public class ScoreBasedScoreCalculatorTest { this.addAnswer(q1, userId3, 10); this.addAnswer(q2, userId3, 0); - int numerator = lp.getCourseProgress(null).getNumerator(); - int denominator = lp.getCourseProgress(null).getDenominator(); + final int numerator = lp.getCourseProgress(null).getNumerator(); + final int denominator = lp.getCourseProgress(null).getDenominator(); // If the percentage is wrong, then we need to adapt this test case! assertEquals("Precondition failed -- The underlying calculation has changed", diff --git a/src/test/java/de/thm/arsnova/test/context/support/WithMockUserSecurityContextFactory.java b/src/test/java/de/thm/arsnova/test/context/support/WithMockUserSecurityContextFactory.java index 9a0ee1b86cec8462a9634fcd04405489fbc5d8ee..2f30676db936bb8344f686563520b685230b7041 100644 --- a/src/test/java/de/thm/arsnova/test/context/support/WithMockUserSecurityContextFactory.java +++ b/src/test/java/de/thm/arsnova/test/context/support/WithMockUserSecurityContextFactory.java @@ -37,14 +37,14 @@ import de.thm.arsnova.security.User; public class WithMockUserSecurityContextFactory implements WithSecurityContextFactory<WithMockUser> { @Override public SecurityContext createSecurityContext(final WithMockUser withMockUser) { - String loginId = StringUtils.hasLength(withMockUser.loginId()) ? withMockUser.loginId() : withMockUser.value(); - UserProfile userProfile = new UserProfile(withMockUser.authProvider(), loginId); + final String loginId = StringUtils.hasLength(withMockUser.loginId()) ? withMockUser.loginId() : withMockUser.value(); + final UserProfile userProfile = new UserProfile(withMockUser.authProvider(), loginId); userProfile.setId(!withMockUser.userId().isEmpty() ? withMockUser.userId() : loginId); - User user = new User(userProfile, Arrays.stream(withMockUser.roles()) + final User user = new User(userProfile, Arrays.stream(withMockUser.roles()) .map(r -> new SimpleGrantedAuthority("ROLE_" + r)).collect(Collectors.toList())); - Authentication authentication = + final Authentication authentication = new UsernamePasswordAuthenticationToken(user, withMockUser.password(), user.getAuthorities()); - SecurityContext context = SecurityContextHolder.createEmptyContext(); + final SecurityContext context = SecurityContextHolder.createEmptyContext(); context.setAuthentication(authentication); return context; diff --git a/src/test/java/de/thm/arsnova/util/ImageUtilsTest.java b/src/test/java/de/thm/arsnova/util/ImageUtilsTest.java index a1f47cf13fd73b1ffef909f4986a3cb3d8411a7f..a96e1abf2414dcf2de9cabaf64286bc04b239933 100644 --- a/src/test/java/de/thm/arsnova/util/ImageUtilsTest.java +++ b/src/test/java/de/thm/arsnova/util/ImageUtilsTest.java @@ -68,7 +68,7 @@ public class ImageUtilsTest { "data:image/png;base63,IMAGE-DATA" }; - for (String fakeString : fakeStrings) { + for (final String fakeString : fakeStrings) { assertFalse( String.format("The String %s is not a valid Base64 String.", fakeString), imageUtils.isBase64EncodedImage(fakeString) diff --git a/src/test/java/de/thm/arsnova/websocket/handler/FeedbackCommandHandlerTest.java b/src/test/java/de/thm/arsnova/websocket/handler/FeedbackCommandHandlerTest.java index 844234368ae55a44eef9252867f7a314ebe81d76..3261a01776b89af36c0bb4c66814b15742e01f80 100644 --- a/src/test/java/de/thm/arsnova/websocket/handler/FeedbackCommandHandlerTest.java +++ b/src/test/java/de/thm/arsnova/websocket/handler/FeedbackCommandHandlerTest.java @@ -33,21 +33,21 @@ public class FeedbackCommandHandlerTest { @Test public void getFeedback() { - String roomId = "12345678"; - GetFeedback getFeedback = new GetFeedback(); - FeedbackCommandHandler.GetFeedbackCommand getFeedbackCommand = + final String roomId = "12345678"; + final GetFeedback getFeedback = new GetFeedback(); + final FeedbackCommandHandler.GetFeedbackCommand getFeedbackCommand = new FeedbackCommandHandler.GetFeedbackCommand(roomId, null); commandHandler.handle(getFeedbackCommand); - FeedbackChangedPayload feedbackChangedPayload = new FeedbackChangedPayload(); - int[] expectedVals = new int[]{0, 0, 0, 0}; + final FeedbackChangedPayload feedbackChangedPayload = new FeedbackChangedPayload(); + final int[] expectedVals = new int[]{0, 0, 0, 0}; feedbackChangedPayload.setValues(expectedVals); - FeedbackChanged feedbackChanged = new FeedbackChanged(); + final FeedbackChanged feedbackChanged = new FeedbackChanged(); feedbackChanged.setPayload(feedbackChangedPayload); - ArgumentCaptor<String> topicCaptor = ArgumentCaptor.forClass(String.class); - ArgumentCaptor<FeedbackChanged> messageCaptor = + final ArgumentCaptor<String> topicCaptor = ArgumentCaptor.forClass(String.class); + final ArgumentCaptor<FeedbackChanged> messageCaptor = ArgumentCaptor.forClass(FeedbackChanged.class); verify(messagingTemplate).convertAndSend(topicCaptor.capture(), messageCaptor.capture()); @@ -57,17 +57,17 @@ public class FeedbackCommandHandlerTest { @Test public void sendFeedback() { - String roomId = "12345678"; - CreateFeedbackPayload createFeedbackPayload = new CreateFeedbackPayload(1); + final String roomId = "12345678"; + final CreateFeedbackPayload createFeedbackPayload = new CreateFeedbackPayload(1); createFeedbackPayload.setValue(1); - CreateFeedback createFeedback = new CreateFeedback(); + final CreateFeedback createFeedback = new CreateFeedback(); createFeedback.setPayload(createFeedbackPayload); - FeedbackCommandHandler.CreateFeedbackCommand createFeedbackCommand = + final FeedbackCommandHandler.CreateFeedbackCommand createFeedbackCommand = new FeedbackCommandHandler.CreateFeedbackCommand(roomId, createFeedback); commandHandler.handle(createFeedbackCommand); - ArgumentCaptor<String> captor = ArgumentCaptor.forClass(String.class); + final ArgumentCaptor<String> captor = ArgumentCaptor.forClass(String.class); verify(messagingTemplate).convertAndSend(captor.capture(), any(FeedbackChanged.class)); assertThat(captor.getValue()).isEqualTo("/topic/" + roomId + ".feedback.stream"); } diff --git a/src/test/java/de/thm/arsnova/websocket/handler/FeedbackHandlerTest.java b/src/test/java/de/thm/arsnova/websocket/handler/FeedbackHandlerTest.java index b95cd307a460b531ca11a39daaa999a31fedecc2..5df17f42ce3f155369d11cd1e1f4325ab13071cc 100644 --- a/src/test/java/de/thm/arsnova/websocket/handler/FeedbackHandlerTest.java +++ b/src/test/java/de/thm/arsnova/websocket/handler/FeedbackHandlerTest.java @@ -33,7 +33,7 @@ public class FeedbackHandlerTest { new CreateFeedback() ); - ArgumentCaptor<FeedbackCommandHandler.CreateFeedbackCommand> captor = + final ArgumentCaptor<FeedbackCommandHandler.CreateFeedbackCommand> captor = ArgumentCaptor.forClass(FeedbackCommandHandler.CreateFeedbackCommand.class); verify(feedbackCommandHandler, times(1)).handle(captor.capture());