As instrutoras optaram pelo seguinte modo de conversão de List Serie para List SerieDTO :
private List<SerieDTO> converteDados(List<Serie> series) {
return series.stream()
.map(s -> new SerieDTO(s.getId(), s.getTitulo(), s.getTotalTemporadas(), s.getAvaliacao(), s.getGenero(), s.getAtores(), s.getPoster(), s.getSinopse()))
.toList();
}
Porém, encontrei uma maneira muito mais concisa, implementando um construtor no record de SerieDTO:
public SerieDTO(Serie serie) {
this(
serie.getId(),
serie.getTitulo(),
serie.getTotalTemporadas(),
serie.getAvaliacao(),
serie.getGenero(),
serie.getAtores(),
serie.getPoster(),
serie.getSinopse()
);
}
Dessa maneira, podemos passar uma Serie como parâmetro no construtor do nosso Serie DTO que deixaria o código muito mais conciso, entendível e menos verboso.
private List<SerieDTO> converteDados(List<Serie> series) {
return series.stream()
.map(SerieDTO::new)
.toList();
}