From 907c9f023ae9a65762e55c2ab33fad83f159b875 Mon Sep 17 00:00:00 2001 From: DZotsenko Date: Mon, 17 Feb 2025 11:56:21 +0200 Subject: [PATCH 1/2] implemented login() and findByEmail() methods --- .../java/mate/academy/service/AuthenticationService.java | 5 ++++- src/main/java/mate/academy/service/UserService.java | 5 +++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/main/java/mate/academy/service/AuthenticationService.java b/src/main/java/mate/academy/service/AuthenticationService.java index 8f7c7c975..1b1c1c6fb 100644 --- a/src/main/java/mate/academy/service/AuthenticationService.java +++ b/src/main/java/mate/academy/service/AuthenticationService.java @@ -10,7 +10,10 @@ public class AuthenticationService { * @return true if user by email exists and passed password is equal to user's password. * Return false in any other cases. */ + private static final UserService userService = new UserService(); + public boolean login(String email, String password) { - return false; + return userService.findByEmail(email) != null && userService.findByEmail(email) + .getPassword().equals(password); } } diff --git a/src/main/java/mate/academy/service/UserService.java b/src/main/java/mate/academy/service/UserService.java index 1652d7d68..94210665c 100644 --- a/src/main/java/mate/academy/service/UserService.java +++ b/src/main/java/mate/academy/service/UserService.java @@ -15,6 +15,11 @@ public class UserService { * Return null if there is no suitable user */ public User findByEmail(String email) { + for (User user : users) { + if (user.getEmail().equals(email)) { + return user; + } + } return null; } } From 2004f64bfe940f515bedddd435e737f3785dd07e Mon Sep 17 00:00:00 2001 From: DZotsenko Date: Tue, 18 Feb 2025 10:49:07 +0200 Subject: [PATCH 2/2] improved the solution after mentor's review --- .../java/mate/academy/service/AuthenticationService.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/main/java/mate/academy/service/AuthenticationService.java b/src/main/java/mate/academy/service/AuthenticationService.java index 1b1c1c6fb..dd1145715 100644 --- a/src/main/java/mate/academy/service/AuthenticationService.java +++ b/src/main/java/mate/academy/service/AuthenticationService.java @@ -1,5 +1,7 @@ package mate.academy.service; +import mate.academy.model.User; + public class AuthenticationService { /** * Imagine that some user wants to login to your site. @@ -10,10 +12,10 @@ public class AuthenticationService { * @return true if user by email exists and passed password is equal to user's password. * Return false in any other cases. */ - private static final UserService userService = new UserService(); + private final UserService userService = new UserService(); public boolean login(String email, String password) { - return userService.findByEmail(email) != null && userService.findByEmail(email) - .getPassword().equals(password); + User user = userService.findByEmail(email); + return user != null && user.getPassword().equals(password); } }