From 56038f62f7c88b38a75b9feee2aed25a6d6e30dc Mon Sep 17 00:00:00 2001 From: KamaSK Date: Sat, 7 Jun 2025 16:26:41 +0300 Subject: [PATCH] =?UTF-8?q?refactor(service):=20=D1=83=D0=BD=D0=B8=D1=84?= =?UTF-8?q?=D0=B8=D0=BA=D0=B0=D1=86=D0=B8=D1=8F=20=D0=BE=D0=BF=D0=B5=D1=80?= =?UTF-8?q?=D0=B0=D1=86=D0=B8=D0=B9=20=D1=81=20=D1=81=D1=83=D1=89=D0=BD?= =?UTF-8?q?=D0=BE=D1=81=D1=82=D1=8F=D0=BC=D0=B8=20=D0=B8=20=D0=BE=D0=B1?= =?UTF-8?q?=D0=BD=D0=BE=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=BA=D0=BE?= =?UTF-8?q?=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20list=20(close=20#49)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Обновление ListCommand для использования метода getAll() вместо list() - Рефакторинг EntityService для предоставления универсальных CRUD-операций - Изменение TaskService для расширения EntityService и использования его методов --- .../ru/kamask/pet/todo/cli/ListCommand.java | 2 +- .../pet/todo/service/EntityService.java | 10 +++---- .../kamask/pet/todo/service/TaskService.java | 30 +++++-------------- 3 files changed, 13 insertions(+), 29 deletions(-) diff --git a/todo/src/main/java/ru/kamask/pet/todo/cli/ListCommand.java b/todo/src/main/java/ru/kamask/pet/todo/cli/ListCommand.java index 2e60482..3a5de09 100644 --- a/todo/src/main/java/ru/kamask/pet/todo/cli/ListCommand.java +++ b/todo/src/main/java/ru/kamask/pet/todo/cli/ListCommand.java @@ -17,7 +17,7 @@ public class ListCommand implements Command { if (args.length > 0) return Optional.of(Command.errorMessage); - var res = formatWithTable(service.list(), "Список задач пуст."); + var res = formatWithTable(service.getAll(), "Список задач пуст."); return Optional.of(res); } diff --git a/todo/src/main/java/ru/kamask/pet/todo/service/EntityService.java b/todo/src/main/java/ru/kamask/pet/todo/service/EntityService.java index 9f0bc6d..720aa7f 100644 --- a/todo/src/main/java/ru/kamask/pet/todo/service/EntityService.java +++ b/todo/src/main/java/ru/kamask/pet/todo/service/EntityService.java @@ -13,23 +13,23 @@ public class EntityService { this.repo = repo; } - protected void save(T obj) { + public void save(T obj) { repo.save(obj); } - protected Optional getById(int id) { + public Optional getById(int id) { return repo.findById(id); } - protected List getAll() { + public List getAll() { return repo.findAll(); } - protected void remove(int id) { + public void remove(int id) { repo.delete(id); } - protected boolean has(int id) { + public boolean has(int id) { return repo.has(id); } } diff --git a/todo/src/main/java/ru/kamask/pet/todo/service/TaskService.java b/todo/src/main/java/ru/kamask/pet/todo/service/TaskService.java index 7959efb..c1ab2ef 100644 --- a/todo/src/main/java/ru/kamask/pet/todo/service/TaskService.java +++ b/todo/src/main/java/ru/kamask/pet/todo/service/TaskService.java @@ -1,28 +1,23 @@ package ru.kamask.pet.todo.service; import java.util.List; -import java.util.Optional; import ru.kamask.pet.todo.model.SimpleTask; -import ru.kamask.pet.todo.repo.InMemoryRepository; +import ru.kamask.pet.todo.repo.Repository; -public class TaskService { - private final InMemoryRepository repo; +public class TaskService extends EntityService { - public TaskService(InMemoryRepository repo) { - this.repo = repo; + public TaskService(Repository repo) { + super(repo); } public void create(String title) { - repo.save(new SimpleTask(title)); + super.save(new SimpleTask(title)); } - public Optional getById(int id) { - return repo.findById(id); - } public boolean complete(int id) { - var taskOpt = repo.findById(id); + var taskOpt = super.getById(id); if (taskOpt.isPresent()) { taskOpt.get().markAsCompleted(); return true; @@ -30,20 +25,9 @@ public class TaskService { return false; } - public List list() { - return repo.findAll(); - } - - public void remove(int id) { - repo.delete(id); - } - - public boolean has(int id) { - return repo.has(id); - } public List search(String query) { - return repo.findAll().stream() + return super.getAll().stream() .filter(task -> task.data().title().contains(query)) .toList(); }