diff --git a/src/rustylee/src/brain.rs b/src/rustylee/src/brain.rs index 4fb2710..f090f80 100644 --- a/src/rustylee/src/brain.rs +++ b/src/rustylee/src/brain.rs @@ -4,7 +4,7 @@ use crate::lifecycle::{LifeState, LifecycleCommand, LifecycleCommandResponse, Li use crate::lifecycle::LifeState::{Dying, Buried, Genisys, Dead}; use crate::organs::organ_factory::OrganFactory; use crate::organs::organ_socket::OrganSocket; -use crate::protocols::{BrainMessage, OrganCommand, OrganCommandEnvelope}; +use crate::protocols::{BrainMessage, OrganCommand, OrganCommandEnvelope, OrganResponse}; use crate::system::time::Time; pub struct Brain { @@ -155,9 +155,20 @@ impl Brain { fn process_message_from_organ(&mut self, message: BrainMessage) { debug!("organ message received: {:?}.", message); - if let OrganCommand::Waken = message.organ_command.command { - self.state = LifeState::Awake; - } + if let OrganResponse::Ok = message.response{ + match message.organ_command.command { + OrganCommand::Waken => { + self.state = LifeState::Awake; + } + + _ => { + debug!("organ message received, no action taken: {:?}.", message.organ_command); + } + } + + if let OrganCommand::Waken = message.organ_command.command { + } + }; } }