summaryrefslogtreecommitdiff
path: root/src/channel/app.rs
diff options
context:
space:
mode:
authorOwen Jacobson <owen@grimoire.ca>2024-10-02 01:31:43 -0400
committerOwen Jacobson <owen@grimoire.ca>2024-10-02 01:31:43 -0400
commit469613872f6fb19f4579b387e19b2bc38fa52f51 (patch)
tree16edc3e8fac1a418c4b9ed5450167a793a7d6c8b /src/channel/app.rs
parent6f07e6869bbf62903ac83c9bc061e7bde997e6a8 (diff)
Package up common event fields as Instant
Diffstat (limited to 'src/channel/app.rs')
-rw-r--r--src/channel/app.rs11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/channel/app.rs b/src/channel/app.rs
index ef0a63f..b7e3a10 100644
--- a/src/channel/app.rs
+++ b/src/channel/app.rs
@@ -19,10 +19,10 @@ impl<'a> Channels<'a> {
pub async fn create(&self, name: &str, created_at: &DateTime) -> Result<Channel, CreateError> {
let mut tx = self.db.begin().await?;
- let created_sequence = tx.sequence().next().await?;
+ let created = tx.sequence().next(created_at).await?;
let channel = tx
.channels()
- .create(name, created_at, created_sequence)
+ .create(name, &created)
.await
.map_err(|err| CreateError::from_duplicate_name(err, name))?;
tx.commit().await?;
@@ -50,11 +50,8 @@ impl<'a> Channels<'a> {
let mut events = Vec::with_capacity(expired.len());
for channel in expired {
- let deleted_sequence = tx.sequence().next().await?;
- let event = tx
- .channels()
- .delete(&channel, relative_to, deleted_sequence)
- .await?;
+ let deleted = tx.sequence().next(relative_to).await?;
+ let event = tx.channels().delete(&channel, &deleted).await?;
events.push(event);
}