From 8ea999722ec291d849c5a1c76e0a01b512489cea Mon Sep 17 00:00:00 2001 From: Olexander Kucherenko Date: Wed, 10 Sep 2025 22:41:15 +0300 Subject: [PATCH 1/2] implemented registerUser, validate and created exception PasswordValidationException --- .../java/core/basesyntax/PasswordValidationException.java | 6 +++++- src/main/java/core/basesyntax/PasswordValidator.java | 8 ++++++-- src/main/java/core/basesyntax/UserService.java | 8 +++++++- 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/src/main/java/core/basesyntax/PasswordValidationException.java b/src/main/java/core/basesyntax/PasswordValidationException.java index c9e7ed3e7..70c1d49fd 100644 --- a/src/main/java/core/basesyntax/PasswordValidationException.java +++ b/src/main/java/core/basesyntax/PasswordValidationException.java @@ -1,3 +1,7 @@ package core.basesyntax; -//write your code here +public class PasswordValidationException extends Exception { + public PasswordValidationException(String message) { + super(message); + } +} diff --git a/src/main/java/core/basesyntax/PasswordValidator.java b/src/main/java/core/basesyntax/PasswordValidator.java index d4655c9f5..6b62ee84e 100644 --- a/src/main/java/core/basesyntax/PasswordValidator.java +++ b/src/main/java/core/basesyntax/PasswordValidator.java @@ -1,7 +1,11 @@ package core.basesyntax; public class PasswordValidator { - public void validate(String password, String repeatPassword) { - //write your code here + public void validate(String password, String repeatPassword) throws PasswordValidationException { + if (password == null + || !password.equals(repeatPassword) + || password.length() < 10) { + throw new PasswordValidationException("Wrong passwords"); + } } } diff --git a/src/main/java/core/basesyntax/UserService.java b/src/main/java/core/basesyntax/UserService.java index 52f08d130..b0467a005 100644 --- a/src/main/java/core/basesyntax/UserService.java +++ b/src/main/java/core/basesyntax/UserService.java @@ -1,8 +1,14 @@ package core.basesyntax; public class UserService { + private final PasswordValidator passwordValidator = new PasswordValidator(); public void registerUser(User user) { - //write your code here + try { + passwordValidator.validate(user.getPassword(), user.getRepeatPassword()); + saveUser(user); + } catch (PasswordValidationException e) { + System.out.println("Your passwords are incorrect. Try again."); + } } public void saveUser(User user) { From 7274de459635bfaf395b0a2e2ba1c4de403d00bc Mon Sep 17 00:00:00 2001 From: Olexander Kucherenko Date: Wed, 10 Sep 2025 22:44:26 +0300 Subject: [PATCH 2/2] fixed checkstyle --- src/main/java/core/basesyntax/PasswordValidator.java | 3 ++- src/main/java/core/basesyntax/UserService.java | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/core/basesyntax/PasswordValidator.java b/src/main/java/core/basesyntax/PasswordValidator.java index 6b62ee84e..fcb4f7e22 100644 --- a/src/main/java/core/basesyntax/PasswordValidator.java +++ b/src/main/java/core/basesyntax/PasswordValidator.java @@ -1,7 +1,8 @@ package core.basesyntax; public class PasswordValidator { - public void validate(String password, String repeatPassword) throws PasswordValidationException { + public void validate(String password, String repeatPassword) + throws PasswordValidationException { if (password == null || !password.equals(repeatPassword) || password.length() < 10) { diff --git a/src/main/java/core/basesyntax/UserService.java b/src/main/java/core/basesyntax/UserService.java index b0467a005..69925eaa9 100644 --- a/src/main/java/core/basesyntax/UserService.java +++ b/src/main/java/core/basesyntax/UserService.java @@ -2,6 +2,7 @@ public class UserService { private final PasswordValidator passwordValidator = new PasswordValidator(); + public void registerUser(User user) { try { passwordValidator.validate(user.getPassword(), user.getRepeatPassword());