fix(cli): Добавлена обработка исключений при вводе. #64

Merged
KamaSK merged 1 commits from fix/cli/input-thorws into dev 2025-06-17 17:31:57 +03:00
2 changed files with 12 additions and 5 deletions
Showing only changes of commit 1383790bff - Show all commits

View File

@ -1,14 +1,12 @@
package ru.kamask.pet.todo; package ru.kamask.pet.todo;
import java.io.IOException;
import ru.kamask.pet.todo.cli.CliEngine; import ru.kamask.pet.todo.cli.CliEngine;
import ru.kamask.pet.todo.model.SimpleTask; import ru.kamask.pet.todo.model.SimpleTask;
import ru.kamask.pet.todo.repo.InMemoryRepository; import ru.kamask.pet.todo.repo.InMemoryRepository;
import ru.kamask.pet.todo.service.TaskService; import ru.kamask.pet.todo.service.TaskService;
public class TodoApp { public class TodoApp {
public static void main(String[] args) throws IOException { public static void main(String[] args) {
var service = new TaskService(new InMemoryRepository<SimpleTask>()); var service = new TaskService(new InMemoryRepository<SimpleTask>());
var cli = new CliEngine(service); var cli = new CliEngine(service);

View File

@ -21,13 +21,22 @@ public class CliEngine {
initializeCommands(); initializeCommands();
} }
public void start() throws IOException { public void start() {
System.out.println("\обро пожаловать в Список задач 2.2!"); System.out.println("\обро пожаловать в Список задач 2.2!");
System.out.println("Введите help для просмтора доступных команд или exit для выхода."); System.out.println("Введите help для просмтора доступных команд или exit для выхода.");
while (true) { while (true) {
System.out.print("\ntodo> "); System.out.print("\ntodo> ");
var input = reader.readLine().trim();
System.out.println(); System.out.println();
String input = "";
try {
input.concat(reader.readLine().trim());
} catch (IOException e) {
System.out.println("Произошла ошибка ввода-вывода. Программа будет завершена.\n");
System.out.println(e.getMessage());
System.exit(1);
}
switch (input) { switch (input) {
case "help" -> handleHelp(); case "help" -> handleHelp();
case "exit" -> System.exit(0); case "exit" -> System.exit(0);