diff --git a/src/main/java/com/commafeed/backend/service/UserService.java b/src/main/java/com/commafeed/backend/service/UserService.java index 93b79eff..892320b6 100644 --- a/src/main/java/com/commafeed/backend/service/UserService.java +++ b/src/main/java/com/commafeed/backend/service/UserService.java @@ -21,6 +21,7 @@ import com.commafeed.backend.model.User; import com.commafeed.backend.model.UserRole; import com.commafeed.backend.model.UserRole.Role; import com.commafeed.backend.service.internal.PostLoginActivities; +import com.commafeed.frontend.resource.UserREST; import com.google.common.base.Optional; import com.google.common.base.Preconditions; @@ -28,8 +29,6 @@ import com.google.common.base.Preconditions; @Singleton public class UserService { - private static final String SESSION_KEY_USER = "user"; - private final FeedCategoryDAO feedCategoryDAO; private final UserDAO userDAO; private final UserSettingsDAO userSettingsDAO; @@ -67,7 +66,7 @@ public class UserService { public Optional login(String nameOrEmail, String password, HttpSession sessionToFill) { Optional user = login(nameOrEmail, password); if (user.isPresent()) { - sessionToFill.setAttribute(SESSION_KEY_USER, user.get()); + sessionToFill.setAttribute(UserREST.SESSION_KEY_USER, user.get()); } return user; } @@ -77,7 +76,7 @@ public class UserService { */ public Optional login(HttpSession session) { if (session != null) { - User user = (User) session.getAttribute(SESSION_KEY_USER); + User user = (User) session.getAttribute(UserREST.SESSION_KEY_USER); if (user != null) { afterLogin(user); return Optional.of(user); diff --git a/src/main/java/com/commafeed/frontend/resource/UserREST.java b/src/main/java/com/commafeed/frontend/resource/UserREST.java index 2dc0c807..19f9ad59 100644 --- a/src/main/java/com/commafeed/frontend/resource/UserREST.java +++ b/src/main/java/com/commafeed/frontend/resource/UserREST.java @@ -79,6 +79,7 @@ public class UserREST { private final PasswordEncryptionService encryptionService; private final MailService mailService; private final CommaFeedConfiguration config; + public static final String SESSION_KEY_USER = "user"; @Path("/settings") @GET @@ -243,8 +244,9 @@ public class UserREST { @UnitOfWork @ApiOperation(value = "Login and create a session") public Response login(@ApiParam(required = true) LoginRequest req, @Session HttpSession session) { - Optional user = userService.login(req.getName(), req.getPassword(), session); + Optional user = userService.login(req.getName(), req.getPassword()); if (user.isPresent()) { + session.setAttribute(SESSION_KEY_USER, user.get()); return Response.ok().build(); } else { return Response.status(Response.Status.UNAUTHORIZED).entity("wrong username or password").build(); diff --git a/src/test/java/com/commafeed/frontend/resource/UserRestTest.java b/src/test/java/com/commafeed/frontend/resource/UserRestTest.java index 337b6398..1289b92a 100644 --- a/src/test/java/com/commafeed/frontend/resource/UserRestTest.java +++ b/src/test/java/com/commafeed/frontend/resource/UserRestTest.java @@ -1,6 +1,5 @@ package com.commafeed.frontend.resource; -import static org.mockito.Matchers.any; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verifyZeroInteractions; @@ -25,7 +24,6 @@ public class UserRestTest { // Create UserService partial mock UserService service = mock(UserService.class); when(service.login("user", "password")).thenReturn(absentUser); - when(service.login(any(String.class), any(String.class), any(HttpSession.class))).thenCallRealMethod(); HttpSession session = mock(HttpSession.class); UserREST userREST = new UserREST(null, null, null, service, null, null, null); @@ -47,7 +45,6 @@ public class UserRestTest { // Create UserService partial mock UserService service = mock(UserService.class); when(service.login("user", "password")).thenReturn(Optional.of(user)); - when(service.login(any(String.class), any(String.class), any(HttpSession.class))).thenCallRealMethod(); HttpSession session = mock(HttpSession.class); UserREST userREST = new UserREST(null, null, null, service, null, null, null);