kitchen_fridge/
event.rs

1//! Calendar events (iCal `VEVENT` items)
2
3use serde::{Deserialize, Serialize};
4use chrono::{DateTime, Utc};
5use url::Url;
6
7use crate::item::SyncStatus;
8
9/// TODO: implement `Event` one day.
10/// This crate currently only supports tasks, not calendar events.
11#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
12pub struct Event {
13    uid: String,
14    name: String,
15    sync_status: SyncStatus,
16}
17
18impl Event {
19    pub fn new() -> Self {
20        unimplemented!();
21    }
22
23    pub fn url(&self) -> &Url {
24        unimplemented!();
25    }
26
27    pub fn uid(&self) -> &str {
28        &self.uid
29    }
30
31    pub fn name(&self) -> &str {
32        &self.name
33    }
34
35    pub fn ical_prod_id(&self) -> &str {
36        unimplemented!()
37    }
38
39    pub fn creation_date(&self) -> Option<&DateTime<Utc>> {
40        unimplemented!()
41    }
42
43    pub fn last_modified(&self) -> &DateTime<Utc> {
44        unimplemented!()
45    }
46
47    pub fn sync_status(&self) -> &SyncStatus {
48        &self.sync_status
49    }
50    pub fn set_sync_status(&mut self, new_status: SyncStatus) {
51        self.sync_status = new_status;
52    }
53
54    #[cfg(any(test, feature = "integration_tests"))]
55    pub fn has_same_observable_content_as(&self, _other: &Event) -> bool {
56        unimplemented!();
57    }
58}