Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Detalhamento de uma classe dentro de outra

Estou tentando por em pratica o conteúdo do curso, e surgiu uma dúvida/problema, tenho a classe “logradouro” que está com as APIs funcionando perfeitamente, depois tem a classe “rua” que tem seus atributos e tbm tem a logradouro, mas a logradouro não é obrigatório, podendo ficar null. Criei a classe rua, a API GET de detalhamento funciona quando tem um logradouro cadastrado, porém quando o logradouro esta null, esta dando erro. Poderia me orientar o que fazer nesses casos?

public record DetalhamentoRuaDTO(Long id, String nome, String cep, DetalhamentoLogradouroDTO logradouro ) {

public DetalhamentoRuaDTO(Rua rua) {
    this(rua.getId(), rua.getNome(), rua.getCep(), new DetalhamentoLogradouroDTO(rua.getLogradouro()));

}

}

public record DetalhamentoLogradouroDTO(Long id, String nome, String abreviacao) {

public DetalhamentoLogradouroDTO(Logradouro logradouro){
    this(logradouro.getId(), logradouro.getNome(), logradouro.getAbreviacao());
}

}

Obrigado

2 respostas
solução!

Oi André!

Respondendo por aqui também. Precisa testar se está null o logradouro:

public DetalhamentoRuaDTO(Rua rua) {
    this(
        rua.getId(),
        rua.getNome(),
        rua.getCep(),
        rua.getLogradouro() != null ? new DetalhamentoLogradouroDTO(rua.getLogradouro()) : null
    );
}

Boa noite professor. Deu certo dessa forma, estou dando andamento no projeto. Muito obrigado