1
resposta

[Sugestão] Alterar para MutableList

Para melhorar o código é possível usar o MutableList do kotlin, dessa forma:

@Service
class TopicoService(
    private var topicos: MutableList<Topico> = ArrayList(), // Aplicar como MutableList para ter o método add
    private val cursoService: CursoService,
    private val usuarioService: UsuarioService
) {

    fun listar(): List<Topico> { // pode devolver como list mesmo, afinal vai ser apenas para leitura
        return topicos
    }

    fun buscarPorId(id: Long): Topico {
        return topicos.first { topico -> topico.id == id }
    }

    fun cadastrar(dto: NovoTopicoDto) {
        topicos.add(
            Topico(
                id = topicos.size.toLong() + 1,
                titulo = dto.titulo,
                mensagem = dto.mensagem,
                curso = cursoService.buscarPorId(dto.idCurso),
                autor = usuarioService.buscarPorId(dto.idAutor)
            )
        )
    }
}
1 resposta

Oi, Jelson! Tudo bem?

Muito obrigada pela contribuição ao fórum, compartilhando a sua sugestão com a nossa comunidade! Caso tenha ficado alguma dúvida em relação ao curso ou atividade, sinta-se à vontade em comunicar, estou à disposição e ficarei super feliz em poder ajudar!

Um forte abraço e bons estudos!