-
Notifications
You must be signed in to change notification settings - Fork 33
Expand file tree
/
Copy pathName.java
More file actions
30 lines (23 loc) · 858 Bytes
/
Name.java
File metadata and controls
30 lines (23 loc) · 858 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package domain;
public class Name {
private static final int NAME_MIN_BOUND = 1;
private static final int NAME_MAX_BOUND = 5;
private static final String INVALID_NAME_LENGTH_MESSAGE =
"차의 이름은 " + NAME_MIN_BOUND + "자 이상, " + NAME_MAX_BOUND + "자 이하여야 합니다. 입력된 차 이름 : ";
private final String value;
Name(final String name) {
validate(name);
this.value = name;
}
private void validate(final String name) {
if (isInvalidNameLength(name)) {
throw new IllegalArgumentException(INVALID_NAME_LENGTH_MESSAGE + name);
}
}
private boolean isInvalidNameLength(final String name) {
return name.length() < NAME_MIN_BOUND || NAME_MAX_BOUND < name.length();
}
public String getValue() {
return value;
}
}