summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/channel/event.rs4
-rw-r--r--src/channel/history.rs2
-rw-r--r--src/channel/repo.rs10
-rw-r--r--src/channel/snapshot.rs4
4 files changed, 9 insertions, 11 deletions
diff --git a/src/channel/event.rs b/src/channel/event.rs
index f3dca3e..a5739f9 100644
--- a/src/channel/event.rs
+++ b/src/channel/event.rs
@@ -14,7 +14,7 @@ pub enum Event {
impl Sequenced for Event {
fn instant(&self) -> Instant {
match self {
- Self::Created(event) => event.instant,
+ Self::Created(event) => event.channel.created,
Self::Deleted(event) => event.instant,
}
}
@@ -23,8 +23,6 @@ impl Sequenced for Event {
#[derive(Clone, Debug, Eq, PartialEq, serde::Serialize)]
pub struct Created {
#[serde(flatten)]
- pub instant: Instant,
- #[serde(flatten)]
pub channel: Channel,
}
diff --git a/src/channel/history.rs b/src/channel/history.rs
index 4af46ce..faf6a0e 100644
--- a/src/channel/history.rs
+++ b/src/channel/history.rs
@@ -9,7 +9,6 @@ use crate::event::{Instant, Sequence};
#[derive(Clone, Debug, Eq, PartialEq)]
pub struct History {
pub channel: Channel,
- pub created: Instant,
pub deleted: Option<Instant>,
}
@@ -50,7 +49,6 @@ impl History {
fn created(&self) -> Event {
Created {
- instant: self.created,
channel: self.channel.clone(),
}
.into()
diff --git a/src/channel/repo.rs b/src/channel/repo.rs
index 91f245b..812a259 100644
--- a/src/channel/repo.rs
+++ b/src/channel/repo.rs
@@ -57,11 +57,11 @@ impl Channels<'_> {
let channel = History {
channel: Channel {
+ created,
id,
name: name.clone(),
deleted_at: None,
},
- created,
deleted: None,
};
@@ -91,11 +91,11 @@ impl Channels<'_> {
.map(|row| {
Ok::<_, name::Error>(History {
channel: Channel {
+ created: Instant::new(row.created_at, row.created_sequence),
id: row.id,
name: Name::optional(row.display_name, row.canonical_name)?.unwrap_or_default(),
deleted_at: row.deleted_at,
},
- created: Instant::new(row.created_at, row.created_sequence),
deleted: Instant::optional(row.deleted_at, row.deleted_sequence),
})
})
@@ -129,11 +129,11 @@ impl Channels<'_> {
.map(|row| {
Ok::<_, name::Error>(History {
channel: Channel {
+ created: Instant::new(row.created_at, row.created_sequence),
id: row.id,
name: Name::optional(row.display_name, row.canonical_name)?.unwrap_or_default(),
deleted_at: row.deleted_at,
},
- created: Instant::new(row.created_at, row.created_sequence),
deleted: Instant::optional(row.deleted_at, row.deleted_sequence),
})
})
@@ -168,11 +168,11 @@ impl Channels<'_> {
.map(|row| {
Ok::<_, name::Error>(History {
channel: Channel {
+ created: Instant::new(row.created_at, row.created_sequence),
id: row.id,
name: Name::optional(row.display_name, row.canonical_name)?.unwrap_or_default(),
deleted_at: row.deleted_at,
},
- created: Instant::new(row.created_at, row.created_sequence),
deleted: Instant::optional(row.deleted_at, row.deleted_sequence),
})
})
@@ -299,11 +299,11 @@ impl Channels<'_> {
.map(|row| {
Ok::<_, name::Error>(History {
channel: Channel {
+ created: Instant::new(row.created_at, row.created_sequence),
id: row.id,
name: Name::optional(row.display_name, row.canonical_name)?.unwrap_or_default(),
deleted_at: row.deleted_at,
},
- created: Instant::new(row.created_at, row.created_sequence),
deleted: Instant::optional(row.deleted_at, row.deleted_sequence),
})
})
diff --git a/src/channel/snapshot.rs b/src/channel/snapshot.rs
index 046ac38..96801b8 100644
--- a/src/channel/snapshot.rs
+++ b/src/channel/snapshot.rs
@@ -2,10 +2,12 @@ use super::{
Id,
event::{Created, Event},
};
-use crate::{clock::DateTime, name::Name};
+use crate::{clock::DateTime, event::Instant, name::Name};
#[derive(Clone, Debug, Eq, PartialEq, serde::Serialize)]
pub struct Channel {
+ #[serde(flatten)]
+ pub created: Instant,
pub id: Id,
pub name: Name,
#[serde(skip_serializing_if = "Option::is_none")]