From 1358b8981cfdfe9513ce511ae41c9a523b64b979 Mon Sep 17 00:00:00 2001 From: Zaine Arch Date: Sat, 3 Jan 2026 22:13:13 +0000 Subject: [PATCH] 3 endpoints complete for comments -> get all comments, get by id, get by slug --- .../app/controller/CommentsController.java | 22 ++++++----- .../zaine/app/service/CommentsService.java | 38 ++++++++++--------- 2 files changed, 33 insertions(+), 27 deletions(-) diff --git a/src/main/java/org/zaine/app/controller/CommentsController.java b/src/main/java/org/zaine/app/controller/CommentsController.java index 6be9780..9c6bfd6 100644 --- a/src/main/java/org/zaine/app/controller/CommentsController.java +++ b/src/main/java/org/zaine/app/controller/CommentsController.java @@ -18,17 +18,21 @@ public class CommentsController { @Autowired private CommentsService commentsService; - @GetMapping("/{page_slug}") - public List getAllCommentsBySlug(@PathVariable String page_slug) { - - List allComments = commentsService; - - + @GetMapping("/{page_slug}") + public List getAllCommentsBySlug(@PathVariable String page_slug) { + List allComments = commentsService.getAllCommentsBySlug(page_slug); + return allComments; + } - @GetMapping("/comments/item/{id}") - public Comments getCommentById(@PathVariable Long id) { + @GetMapping("/comments/item/{id}") + public Comments getCommentById(@PathVariable Long id) { return commentsService.getCommentById(id); - } + } + + @GetMapping("/comments/items") + public List getAllComments() { + return commentsService.getAllComments(); + } } diff --git a/src/main/java/org/zaine/app/service/CommentsService.java b/src/main/java/org/zaine/app/service/CommentsService.java index 682ac6e..62e7a6c 100644 --- a/src/main/java/org/zaine/app/service/CommentsService.java +++ b/src/main/java/org/zaine/app/service/CommentsService.java @@ -11,26 +11,28 @@ import java.util.stream.*; public class CommentsService { private static final Logger logger = System.getLogger(CommentsService.class.getName()); - private final CommentsRepository commentsRepository; - - public CommentsService(CommentsRepository commentsRepository) { - this.commentsRepository = commentsRepository; - } - - public List getAllComments() { - return commentsRepository.findAll(); - } - + private final CommentsRepository commentsRepository; + + public CommentsService(CommentsRepository commentsRepository) { + this.commentsRepository = commentsRepository; + } + + public List getAllComments() { + return commentsRepository.findAll(); + } + public List getAllCommentsBySlug(String page_slug) { logger.log(System.Logger.Level.INFO, "Entering getAllCommentsBySlug with slug: " + page_slug); - return commentsRepository.findAll().stream() + List allComments = commentsRepository.findAll(); + List filteredComments = allComments.stream() .filter(comment -> page_slug.equals(comment.getPageSlug())) - .toList(); - } - - public Comments getCommentById(Long id) { - logger.log(System.Logger.Level.INFO, "Entering getCommentById with id: " + id); - return commentsRepository.findById(id).get(); - } + .collect(Collectors.toList()); + return filteredComments; + } + + public Comments getCommentById(Long id) { + logger.log(System.Logger.Level.INFO, "Entering getCommentById with id: " + id); + return commentsRepository.findById(id).get(); + } }