From 32f23243108e86f817392c160bdb8d97023338b3 Mon Sep 17 00:00:00 2001 From: Christian Raphael Heryanto <christian.raphael@ui.ac.id> Date: Fri, 28 Mar 2025 16:36:08 +0800 Subject: [PATCH] Implement list function in Notification controller. --- src/controller/mod.rs | 3 ++- src/controller/notification.rs | 8 ++++++++ src/service/notification.rs | 2 +- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/controller/mod.rs b/src/controller/mod.rs index b6d9501..d7447fb 100644 --- a/src/controller/mod.rs +++ b/src/controller/mod.rs @@ -8,7 +8,8 @@ pub fn route_stage() -> AdHoc { routes![ notification::subscribe, notification::unsubscribe, - notification::receive + notification::receive, + notification::list, ], ) }); diff --git a/src/controller/notification.rs b/src/controller/notification.rs index 18af254..791043a 100644 --- a/src/controller/notification.rs +++ b/src/controller/notification.rs @@ -28,3 +28,11 @@ pub fn receive(notification: Json<Notification>) -> Result<Json<Notification>> { Err(e) => Err(e), }; } + +#[get("/")] +pub fn list() -> Result<Json<Vec<Notification>>> { + return match NotificationService::list_messages() { + Ok(f) => Ok(Json::from(f)), + Err(e) => Err(e), + }; +} diff --git a/src/service/notification.rs b/src/service/notification.rs index ae2845b..14b1f0a 100644 --- a/src/service/notification.rs +++ b/src/service/notification.rs @@ -99,7 +99,7 @@ impl NotificationService { return Ok(subscriber_result); } - pub fn list messages() -> Result<Vec<String>> { + pub fn list_messages() -> Result<Vec<String>> { return Ok(NotificationRepository::list_all_as_string()); } } -- GitLab