From 84df069ee8a72593b1cd3d8dc96df6b373ccb3ca Mon Sep 17 00:00:00 2001 From: Youngjoon Lee <5462944+youngjoon-lee@users.noreply.github.com> Date: Wed, 5 Feb 2025 16:33:30 +0900 Subject: [PATCH] add Created history event --- simlib/blendnet-sims/src/node/blend/mod.rs | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/simlib/blendnet-sims/src/node/blend/mod.rs b/simlib/blendnet-sims/src/node/blend/mod.rs index 5f39fb9..4e51691 100644 --- a/simlib/blendnet-sims/src/node/blend/mod.rs +++ b/simlib/blendnet-sims/src/node/blend/mod.rs @@ -50,10 +50,10 @@ pub struct BlendMessage { } impl BlendMessage { - pub fn new(message: Vec) -> Self { + pub fn new(message: Vec, node_id: NodeId, step_id: usize) -> Self { Self { message, - history: Vec::new(), + history: vec![MessageHistoryEvent::Created { node_id, step_id }], } } } @@ -66,6 +66,11 @@ impl PayloadSize for BlendMessage { #[derive(Debug, Clone, Serialize, Deserialize)] enum MessageHistoryEvent { + Created { + #[serde(with = "node_id_serde")] + node_id: NodeId, + step_id: usize, + }, PersistentTransmissionScheduled { #[serde(with = "node_id_serde")] node_id: NodeId, @@ -464,7 +469,11 @@ impl Node for BlendNode { .crypto_processor .wrap_message(payload.as_bytes()) .unwrap(); - self.schedule_persistent_transmission(BlendMessage::new(message)); + self.schedule_persistent_transmission(BlendMessage::new( + message, + self.id, + self.state.step_id, + )); } } @@ -542,7 +551,11 @@ impl Node for BlendNode { .crypto_processor .wrap_message(payload.as_bytes()) .unwrap(); - self.schedule_persistent_transmission(BlendMessage::new(message)); + self.schedule_persistent_transmission(BlendMessage::new( + message, + self.id, + self.state.step_id, + )); } // Proceed persistent transmission