From be5d59fc0e2f8cdfa5a9040ca4405f1e074357a3 Mon Sep 17 00:00:00 2001 From: kvjohnny Date: Sun, 17 Dec 2023 13:17:53 +0200 Subject: [PATCH] fixed jv-checked-exception task --- .../core/basesyntax/PasswordValidationException.java | 6 +++++- src/main/java/core/basesyntax/PasswordValidator.java | 9 +++++++-- src/main/java/core/basesyntax/User.java | 8 ++++---- src/main/java/core/basesyntax/UserService.java | 9 ++++++++- 4 files changed, 24 insertions(+), 8 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..188643297 100644 --- a/src/main/java/core/basesyntax/PasswordValidator.java +++ b/src/main/java/core/basesyntax/PasswordValidator.java @@ -1,7 +1,12 @@ 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 && repeatPassword == null + || password != null && (password.length() < 10 + || !password.equals(repeatPassword))) { + throw new PasswordValidationException("Wrong passwords"); + } } } diff --git a/src/main/java/core/basesyntax/User.java b/src/main/java/core/basesyntax/User.java index e702946a8..fd3b5205e 100644 --- a/src/main/java/core/basesyntax/User.java +++ b/src/main/java/core/basesyntax/User.java @@ -38,9 +38,9 @@ public void setRepeatPassword(String repeatPassword) { @Override public String toString() { return "User{" - + "email='" + email + '\'' - + ", password='" + password + '\'' - + ", repeatPassword='" + repeatPassword + '\'' - + '}'; + + "email='" + email + '\'' + + ", password='" + password + '\'' + + ", repeatPassword='" + repeatPassword + '\'' + + '}'; } } diff --git a/src/main/java/core/basesyntax/UserService.java b/src/main/java/core/basesyntax/UserService.java index 52f08d130..69925eaa9 100644 --- a/src/main/java/core/basesyntax/UserService.java +++ b/src/main/java/core/basesyntax/UserService.java @@ -1,8 +1,15 @@ 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) {