diff --git a/src/main/java/internal/hw/crawler/Main.java b/src/main/java/internal/hw/crawler/Main.java index 7c3d405..f2ebc7a 100644 --- a/src/main/java/internal/hw/crawler/Main.java +++ b/src/main/java/internal/hw/crawler/Main.java @@ -3,6 +3,7 @@ package internal.hw.crawler; import internal.hw.crawler.commands.CrawlCommand; import internal.hw.crawler.commands.ExitCommand; import internal.hw.crawler.commands.HelpCommand; +import internal.hw.crawler.commands.ListCommand; import internal.hw.crawler.repositories.ArticleRepository; import internal.hw.crawler.views.ConsoleView; @@ -14,6 +15,7 @@ public class Main { controller.registerCommand(new ExitCommand()); controller.registerCommand(new CrawlCommand(repository)); + controller.registerCommand(new ListCommand(repository)); controller.registerCommand(new HelpCommand(controller.getCommands())); view.printSuccess("Welcome to crawler. Type `help` for a list of available commands."); diff --git a/src/main/java/internal/hw/crawler/commands/ListCommand.java b/src/main/java/internal/hw/crawler/commands/ListCommand.java new file mode 100644 index 0000000..9526507 --- /dev/null +++ b/src/main/java/internal/hw/crawler/commands/ListCommand.java @@ -0,0 +1,24 @@ +package internal.hw.crawler.commands; + +import internal.hw.crawler.models.Article; +import internal.hw.crawler.repositories.ArticleRepository; + +public class ListCommand implements Command { + private final ArticleRepository articleRepository; + + public ListCommand(ArticleRepository articleRepository) { + this.articleRepository = articleRepository; + } + + @Override + public String getName() { + return "list"; + } + + @Override + public void execute(String[] args) { + for (Article article : articleRepository.getAll()) { + System.out.println(article); + } + } +}