diff --git a/src/repository/subscriber.rs b/src/repository/subscriber.rs index a4cd9d12f6f6aeade349916b2ea091d40ed3e484..c537ba1ef92fc2911c7141f130b7036ae5c7d818 100644 --- a/src/repository/subscriber.rs +++ b/src/repository/subscriber.rs @@ -20,4 +20,13 @@ impl SubscriberRepository { .insert(subscriber_value.url.clone(), subscriber_value); return subscriber; } + + pub fn list_all(product_type: &str) -> Vec<Subscriber> { + if SUBSCRIBERS.get(product_type).is_none() { + SUBSCRIBERS.insert(String::from(product_type), DashMap::new()); + }; + + return SUBSCRIBERS.get(product_type).unwrap().iter() + .map(|f| f.value().clone()).collect(); + } } \ No newline at end of file