Skip to content

Domain에서 발생하는 IllegalArgumentException에 대해 전체적인 에러 핸들링을 추가한다. #70

@rhkrwngud445

Description

@rhkrwngud445

기능 설명

Nickname을 UiModel로 바꾸면서, nickname 포맷 비즈니스 오류에 대해 exception을 던질 수 있게 됐습니다.
후순위로 고려되어도 좋습니다. 추후 수정할 기록용으로 이슈로 남겨 놓습니다.

@JvmInline
value class Nickname private constructor(val value: String) {
    init {
        check(verifyNickname(value)) { NICKNAME_FORMAT_ERROR }
    }

    companion object {
        private const val NICKNAME_REGEX_PATTERN = "[a-zA-Z0-9가-힣]{2,10}"
        private const val NICKNAME_FORMAT_ERROR = "닉네임 형식이 잘못 되었습니다."
        fun create(value: String): Nickname = Nickname(value)
        fun verifyNickname(nickname: String): Boolean {
            val regex = Regex(NICKNAME_REGEX_PATTERN)
            return regex.matches(nickname)
        }
    }
}

개발 일정

No response

자식 이슈

No response

부가 설명

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions