У меня есть класс с именем Address который выглядит следующим образом:
@Value
class Address {
@NotNull String userId;
@NotNull String line1;
String line2;
private Address(Builder b) {
// copy everything from builder
}
// override getter for line2 so that it returns Optional<String>
public Optional<String> getLine2() {
return Optional.ofNullable(this.line2);
}
// and a Builder
public static class Builder {
// builder methods
}
}
Здесь я вынужден написать Builder и Getter потому что, если я хочу вернуть Optional при использовании Lombok, мне придется объявить line2 как Optional<String>. И это сгенерирует метод построителя, который принимает Optional<String> !
Есть ли другой способ использовать ломбок с Optional?