From 4c9b016d61e6ca4daef6b319819b4ed55f122d39 Mon Sep 17 00:00:00 2001 From: Titouan Rigoudy Date: Wed, 30 Nov 2022 20:23:40 +0000 Subject: [PATCH] Rename Message to RoomMessage. --- client/src/client.rs | 2 +- client/src/control/response.rs | 12 ++++----- .../handlers/room_message_response_handler.rs | 12 ++++----- client/src/room/map.rs | 12 ++++----- client/src/room/state.rs | 26 +++++++++---------- 5 files changed, 32 insertions(+), 32 deletions(-) diff --git a/client/src/client.rs b/client/src/client.rs index 7f73230..2474307 100644 --- a/client/src/client.rs +++ b/client/src/client.rs @@ -613,7 +613,7 @@ impl Client { } }; - let message = room::Message { + let message = room::RoomMessage { received_at: std::time::SystemTime::now(), user_name: response.user_name.clone(), message: response.message.clone(), diff --git a/client/src/control/response.rs b/client/src/control/response.rs index a5aac16..d7cd1d9 100644 --- a/client/src/control/response.rs +++ b/client/src/control/response.rs @@ -1,7 +1,7 @@ use serde::{Deserialize, Serialize}; use solstice_proto::User; -use crate::room::{Message, RoomState}; +use crate::room::{RoomMessage, RoomState}; /// This enumeration is the list of possible control responses from the client /// to the controller. @@ -72,7 +72,7 @@ pub struct RoomMessageResponse { /// The name of the room in which the message was said. pub room_name: String, /// The message itself. - pub message: Message, + pub message: RoomMessage, } /// This struct describes the fact that the given user joined the given room. @@ -110,7 +110,7 @@ mod tests { use solstice_proto::{User, UserStatus}; use crate::room::{ - Message, MessageHistory, RoomMembership, RoomState, RoomVisibility, + RoomMessage, RoomMessageHistory, RoomMembership, RoomState, RoomVisibility, }; use super::{ @@ -202,7 +202,7 @@ mod tests { owner: None, operators: HashSet::new(), members: HashSet::new(), - messages: MessageHistory::default(), + messages: RoomMessageHistory::default(), tickers: vec![], } } @@ -236,7 +236,7 @@ mod tests { .unwrap(), RoomMessageResponse { room_name: "bleep".to_string(), - message: Message { + message: RoomMessage { user_name: "karandeep".to_string(), message: "namaste".to_string(), received_at: SystemTime::UNIX_EPOCH + Duration::from_secs(42), @@ -277,7 +277,7 @@ mod tests { owner: None, operators: HashSet::new(), members: HashSet::new(), - messages: MessageHistory::default(), + messages: RoomMessageHistory::default(), tickers: vec![], } )], diff --git a/client/src/handlers/room_message_response_handler.rs b/client/src/handlers/room_message_response_handler.rs index 13c362a..5cd4b49 100644 --- a/client/src/handlers/room_message_response_handler.rs +++ b/client/src/handlers/room_message_response_handler.rs @@ -4,7 +4,7 @@ use solstice_proto::server; use crate::context::Context; use crate::control; use crate::message_handler::MessageHandler; -use crate::room::Message as RoomMessage; +use crate::room::RoomMessage; #[derive(Debug, Default)] pub struct RoomMessageResponseHandler; @@ -58,7 +58,7 @@ mod tests { use crate::context::{ContextBundle, ContextOptions}; use crate::control; use crate::message_handler::MessageHandler; - use crate::room::{Message, RoomState, RoomVisibility}; + use crate::room::{RoomMessage, RoomState, RoomVisibility}; use super::RoomMessageResponseHandler; @@ -98,7 +98,7 @@ mod tests { response, control::Response::RoomMessageResponse(control::RoomMessageResponse { room_name: "apple".to_string(), - message: Message { + message: RoomMessage { user_name: "shruti".to_string(), message: "yo!".to_string(), received_at: SystemTime::UNIX_EPOCH + Duration::from_secs(42), @@ -110,7 +110,7 @@ mod tests { #[test] fn run_stores_message() { let mut room = RoomState::new(RoomVisibility::Public, 42); - room.messages.insert(Message { + room.messages.insert(RoomMessage { received_at: system_time_from_secs(42), user_name: "karandeep".to_string(), message: "namaste!".to_string(), @@ -147,12 +147,12 @@ mod tests { assert_eq!( room.messages.to_vec(), vec![ - Message { + RoomMessage { received_at: system_time_from_secs(42), user_name: "karandeep".to_string(), message: "namaste!".to_string(), }, - Message { + RoomMessage { received_at: system_time_from_secs(43), user_name: "shruti".to_string(), message: "yo!".to_string(), diff --git a/client/src/room/map.rs b/client/src/room/map.rs index e99f96b..b627d58 100644 --- a/client/src/room/map.rs +++ b/client/src/room/map.rs @@ -278,7 +278,7 @@ mod tests { use solstice_proto::server::RoomListResponse; use crate::room::{ - Message, MessageHistory, RoomMembership, RoomState, RoomVisibility, + RoomMessage, RoomMessageHistory, RoomMembership, RoomState, RoomVisibility, }; use super::RoomMap; @@ -302,7 +302,7 @@ mod tests { #[test] fn deserialize_message() { assert_eq!( - serde_json::from_str::( + serde_json::from_str::( r#"{ "received_at": { "secs_since_epoch": 42, "nanos_since_epoch": 1337 }, "user_name":"karandeep", @@ -310,7 +310,7 @@ mod tests { }"# ) .unwrap(), - Message { + RoomMessage { received_at: SystemTime::UNIX_EPOCH + Duration::from_secs(42) + Duration::from_nanos(1337), @@ -362,13 +362,13 @@ mod tests { .iter() .cloned() .collect(), - messages: MessageHistory::new(vec![ - Message { + messages: RoomMessageHistory::new(vec![ + RoomMessage { received_at: SystemTime::UNIX_EPOCH + Duration::from_secs(42), user_name: "u1".to_string(), message: "msg1".to_string(), }, - Message { + RoomMessage { received_at: SystemTime::UNIX_EPOCH + Duration::from_secs(43), user_name: "u2".to_string(), message: "msg2".to_string(), diff --git a/client/src/room/state.rs b/client/src/room/state.rs index f4aa807..3a81d29 100644 --- a/client/src/room/state.rs +++ b/client/src/room/state.rs @@ -34,7 +34,7 @@ pub enum RoomVisibility { #[derive( Clone, Debug, Eq, PartialEq, Ord, PartialOrd, Serialize, Deserialize, )] -pub struct Message { +pub struct RoomMessage { /// Time at which the message was received by this client. /// /// We use `SystemTime` instead of `Instant` because this is serialized and @@ -53,24 +53,24 @@ pub struct Message { /// The history of messages sent for a single chat room. #[derive(Clone, Debug, Default, Eq, PartialEq)] -pub struct MessageHistory { +pub struct RoomMessageHistory { /// Messages, sorted in increasing order. - messages: Vec, + messages: Vec, } // MessageHistory should be transparent for serialization purposes. -impl<'de> Deserialize<'de> for MessageHistory { +impl<'de> Deserialize<'de> for RoomMessageHistory { fn deserialize(deserializer: D) -> Result where D: Deserializer<'de>, { - let messages = Vec::::deserialize(deserializer)?; + let messages = Vec::::deserialize(deserializer)?; Ok(Self::new(messages)) } } -// MessageHistory should be transparent for serialization purposes. -impl Serialize for MessageHistory { +// RoomMessageHistory should be transparent for serialization purposes. +impl Serialize for RoomMessageHistory { fn serialize(&self, serializer: S) -> Result where S: Serializer, @@ -79,14 +79,14 @@ impl Serialize for MessageHistory { } } -impl MessageHistory { - pub fn new(mut messages: Vec) -> Self { +impl RoomMessageHistory { + pub fn new(mut messages: Vec) -> Self { messages.sort(); Self { messages } } /// Inserts a `message` into this history. - pub fn insert(&mut self, message: Message) { + pub fn insert(&mut self, message: RoomMessage) { self.messages.push(message); // This could be terrible for performance in the general case, but we know @@ -97,7 +97,7 @@ impl MessageHistory { #[cfg(test)] /// Returns the list of messages sorted in increasing chronological order. - pub fn to_vec(&self) -> Vec { + pub fn to_vec(&self) -> Vec { return self.messages.clone(); } } @@ -123,7 +123,7 @@ pub struct RoomState { /// The names of the room's members. pub members: HashSet, /// The messages sent to this chat room. - pub messages: MessageHistory, + pub messages: RoomMessageHistory, /// The tickers displayed in this room. pub tickers: Vec<(String, String)>, } @@ -139,7 +139,7 @@ impl RoomState { owner: None, operators: HashSet::new(), members: HashSet::new(), - messages: MessageHistory::default(), + messages: RoomMessageHistory::default(), tickers: Vec::new(), } }