import java.util.ArrayList;
import java.util.List;

public class Capitulo08Classes {
    static final class ChatbotBasico {
        private final String nome;
        private final List<String> historico = new ArrayList<>();

        ChatbotBasico(String nome) {
            if (nome == null || nome.isBlank()) {
                throw new IllegalArgumentException("Nome obrigatório.");
            }
            this.nome = nome.strip();
        }

        String responder(String mensagem) {
            if (mensagem == null || mensagem.isBlank()) {
                return "Digite uma mensagem.";
            }
            historico.add(mensagem.strip());
            return nome + ": recebi sua mensagem.";
        }

        List<String> consultarHistorico() {
            return List.copyOf(historico);
        }
    }

    public static void main(String[] args) {
        ChatbotBasico bot = new ChatbotBasico("TutorJavaBot");
        System.out.println(bot.responder("oi"));
        System.out.println(bot.consultarHistorico());
    }
}
