Пытаюсь реализовать два билдера для двух разных наборов параметров (тип набора определяется по полю type)
@RequiredArgsConstructor
@Getter
class SomeCode {
private final String type;
private String firstName;
private String lastName;
private String state;
private int age;
@Builder(builderMethodName = "oneBuilder")
private static SomeCode one(@NonNull String firstName, @NonNull String lastName) {
SomeCode one = new SomeCode("personal");
one.firstName = firstName;
one.lastName = lastName;
return one;
}
@Builder(builderMethodName = "twoBuilder")
private static SomeCode two(@NonNull String state, int age) {
SomeCode two = new SomeCode("date");
two.state = state;
two.age = age;
return two;
}
}
Вызываю билдер:
SomeCode testCase = SomeCode.oneBuilder()
.firstName("test")
.lastName("two")
.age(2)
.build();
Как видно, в билдер_1 попадает параметр age, который соответствует билдеру_2. Так-же у объекта testCase можно вызвать геттер параметра, который в билдер не попадает.
Что можно сделать с этим классом, что-бы параметры одного билдера не подмешивались в параметры второго билдера при создании объекта.
Второе - что можно сделать с геттерами, что-бы они были доступны только для своего билдера?
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Я использую Spring Security и Spring MVC в своем проекте, и я пытаюсь сделать страницу авторизации, но, к сожалению, при нажатии на кнопку "Log in", появляется...
есть имя файла Chrome, нужно только по его названию, найти где файл находится
Хочу, чтобы переменная one приняла значение two в теле не основной функцииВ с++ на это есть указатели