From 984017eb618b23b0232aa3c421c1b120331ccc4b Mon Sep 17 00:00:00 2001 From: Paul Makles <paulmakles@gmail.com> Date: Tue, 19 Jan 2021 20:18:29 +0000 Subject: [PATCH] Revert tag change, update partials to include ids. --- src/database/entities/channel.rs | 11 +++++------ src/database/entities/message.rs | 9 ++++----- src/notifications/events.rs | 10 ++++++++-- 3 files changed, 17 insertions(+), 13 deletions(-) diff --git a/src/database/entities/channel.rs b/src/database/entities/channel.rs index 4c8d69e..f790699 100644 --- a/src/database/entities/channel.rs +++ b/src/database/entities/channel.rs @@ -6,7 +6,7 @@ use rocket_contrib::json::JsonValue; use serde::{Deserialize, Serialize}; #[derive(Serialize, Deserialize, Debug, Clone)] -#[serde(tag = "channel_type")] +#[serde(tag = "type")] pub enum Channel { SavedMessages { #[serde(rename = "_id")] @@ -64,12 +64,11 @@ impl Channel { Ok(()) } - pub async fn publish_update(&self, partial: JsonValue) -> Result<()> { + pub async fn publish_update(&self, data: JsonValue) -> Result<()> { let id = self.id().to_string(); - ClientboundNotification::ChannelUpdate(partial) - .publish(id) - .await - .ok(); + ClientboundNotification::ChannelUpdate { + id: id.clone(), data + }.publish(id).await.ok(); Ok(()) } diff --git a/src/database/entities/message.rs b/src/database/entities/message.rs index e48775c..f03e29d 100644 --- a/src/database/entities/message.rs +++ b/src/database/entities/message.rs @@ -53,12 +53,11 @@ impl Message { Ok(()) } - pub async fn publish_update(&self, partial: JsonValue) -> Result<()> { + pub async fn publish_update(&self, data: JsonValue) -> Result<()> { let channel = self.channel.clone(); - ClientboundNotification::MessageUpdate(partial) - .publish(channel) - .await - .ok(); + ClientboundNotification::MessageUpdate { + id: self.id.clone(), data + }.publish(channel).await.ok(); Ok(()) } diff --git a/src/notifications/events.rs b/src/notifications/events.rs index f370af8..b1df740 100644 --- a/src/notifications/events.rs +++ b/src/notifications/events.rs @@ -39,13 +39,19 @@ pub enum ClientboundNotification { }, Message(Message), - MessageUpdate(JsonValue), + MessageUpdate { + id: String, + data: JsonValue + }, MessageDelete { id: String, }, ChannelCreate(Channel), - ChannelUpdate(JsonValue), + ChannelUpdate { + id: String, + data: JsonValue + }, ChannelGroupJoin { id: String, user: String, -- GitLab