From 8fb5b44fc9e20c5ee316e77dcd61999ed5f5a3ba Mon Sep 17 00:00:00 2001
From: rafliesa <rflisaa@gmail.com>
Date: Thu, 27 Mar 2025 22:43:23 +0700
Subject: [PATCH] Implement delete function in Subscriber repository.

---
 src/repository/subscribers.rs | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/src/repository/subscribers.rs b/src/repository/subscribers.rs
index 6d894f2..a071e05 100644
--- a/src/repository/subscribers.rs
+++ b/src/repository/subscribers.rs
@@ -30,4 +30,17 @@ impl SubscriberRepository {
         return SUBSCRIBERS.get(product_type).unwrap().iter()
             .map(|f| f.value().clone()).collect();
     }
+
+    pub fn delete(product_type: &str, url: &str) -> Option<Subscriber> {
+        if SUBSCRIBERS.get(product_type).is_none() {
+            SUBSCRIBERS.insert(String::from(product_type), DashMap::new());
+        }
+        let result = SUBSCRIBERS.get(product_type).unwrap()
+            .remove(url);
+        if !result.is_none() {
+            return Some(result.unwrap().1)
+        }
+
+        return  None;
+    }
 }
\ No newline at end of file
-- 
GitLab