From 1cb8a901f9bb8629e76b3f59ae74ca65ec64cbc3 Mon Sep 17 00:00:00 2001 From: baejunil Date: Wed, 1 Nov 2023 21:44:04 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20ShelterPassword=EB=A5=BC=20=EA=B2=80?= =?UTF-8?q?=EC=A6=9D=ED=95=9C=EB=8B=A4.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/shelter/wrapper/ShelterEmail.java | 4 +++- .../domain/shelter/wrapper/ShelterName.java | 4 +++- .../shelter/wrapper/ShelterPassword.java | 19 +++++++++++++++++++ 3 files changed, 25 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/clova/anifriends/domain/shelter/wrapper/ShelterEmail.java b/src/main/java/com/clova/anifriends/domain/shelter/wrapper/ShelterEmail.java index 11f8b0fb6..e563aa493 100644 --- a/src/main/java/com/clova/anifriends/domain/shelter/wrapper/ShelterEmail.java +++ b/src/main/java/com/clova/anifriends/domain/shelter/wrapper/ShelterEmail.java @@ -1,5 +1,7 @@ package com.clova.anifriends.domain.shelter.wrapper; +import static java.util.Objects.isNull; + import com.clova.anifriends.domain.shelter.exception.ShelterBadRequestException; import com.clova.anifriends.global.exception.ErrorCode; import jakarta.persistence.Column; @@ -26,7 +28,7 @@ public ShelterEmail(String value) { } private void validateEmail(String email) { - if (email == null || email.isBlank()) { + if (isNull(email) || email.isBlank()) { throw new ShelterBadRequestException(ErrorCode.BAD_REQUEST, "이메일은 필수 항목입니다."); } diff --git a/src/main/java/com/clova/anifriends/domain/shelter/wrapper/ShelterName.java b/src/main/java/com/clova/anifriends/domain/shelter/wrapper/ShelterName.java index c112153e8..fa7e3e42c 100644 --- a/src/main/java/com/clova/anifriends/domain/shelter/wrapper/ShelterName.java +++ b/src/main/java/com/clova/anifriends/domain/shelter/wrapper/ShelterName.java @@ -1,5 +1,7 @@ package com.clova.anifriends.domain.shelter.wrapper; +import static java.util.Objects.isNull; + import com.clova.anifriends.domain.shelter.exception.ShelterBadRequestException; import com.clova.anifriends.global.exception.ErrorCode; import jakarta.persistence.Column; @@ -24,7 +26,7 @@ public ShelterName(String value) { } private void validateName(String name) { - if (name == null || name.isBlank()) { + if (isNull(name) || name.isBlank()) { throw new ShelterBadRequestException(ErrorCode.BAD_REQUEST, "이름은 필수 항목입니다."); } diff --git a/src/main/java/com/clova/anifriends/domain/shelter/wrapper/ShelterPassword.java b/src/main/java/com/clova/anifriends/domain/shelter/wrapper/ShelterPassword.java index 13b3ea9e4..0f0918100 100644 --- a/src/main/java/com/clova/anifriends/domain/shelter/wrapper/ShelterPassword.java +++ b/src/main/java/com/clova/anifriends/domain/shelter/wrapper/ShelterPassword.java @@ -1,5 +1,9 @@ package com.clova.anifriends.domain.shelter.wrapper; +import static java.util.Objects.isNull; + +import com.clova.anifriends.domain.shelter.exception.ShelterBadRequestException; +import com.clova.anifriends.global.exception.ErrorCode; import jakarta.persistence.Column; import jakarta.persistence.Embeddable; import lombok.AccessLevel; @@ -11,10 +15,25 @@ @NoArgsConstructor(access = AccessLevel.PROTECTED) public class ShelterPassword { + private static final int MIN_PASSWORD_LENGTH = 6; + private static final int MAX_PASSWORD_LENGTH = 16; + @Column(name = "password") private String password; public ShelterPassword(String value) { + validateShelterPassword(value); this.password = value; } + + private void validateShelterPassword(String password) { + if (isNull(password) || password.isBlank()) { + throw new ShelterBadRequestException(ErrorCode.BAD_REQUEST, "비밀번호는 필수 항목입니다."); + } + + if (password.length() < MIN_PASSWORD_LENGTH || password.length() > MAX_PASSWORD_LENGTH) { + throw new ShelterBadRequestException(ErrorCode.BAD_REQUEST, + "비밀번호는 최소 6자, 최대 16자입니다."); + } + } }