fcm_service/domain/
web_push_config.rs

1use std::{collections::HashMap, hash::RandomState};
2
3use serde::{Deserialize, Serialize};
4
5/// Configuration for web push notifications.
6#[derive(Serialize, Deserialize, Default)]
7pub struct WebpushConfig {
8    headers: Option<HashMap<String, String>>,
9    data: Option<HashMap<String, String>>,
10}
11
12impl WebpushConfig {
13    pub fn new() -> Self {
14        Self {
15            ..Default::default()
16        }
17    }
18
19    pub fn headers(&self) -> Option<&HashMap<String, String, RandomState>> {
20        self.headers.as_ref()
21    }
22
23    pub fn data(&self) -> Option<&HashMap<String, String, RandomState>> {
24        self.data.as_ref()
25    }
26
27    pub fn set_headers(&mut self, headers: Option<HashMap<String, String>>) {
28        self.headers = headers;
29    }
30
31    pub fn set_data(&mut self, data: Option<HashMap<String, String>>) {
32        self.data = data;
33    }
34}