diff --git a/side-node/src/websocket.rs b/side-node/src/websocket.rs index 8ef7ae3..58d4300 100644 --- a/side-node/src/websocket.rs +++ b/side-node/src/websocket.rs @@ -1,8 +1,7 @@ use async_trait::async_trait; use bft_json_crdt::json_crdt::SignedOp; use ezsockets::ClientConfig; -use tokio::fs::File; -use tokio::io; +use std::io::BufRead; use tokio::sync::mpsc; use crate::{node::SideNode, utils}; @@ -25,23 +24,23 @@ impl WebSocketClient { tokio::spawn(async move { future.await.unwrap(); }); - let stdin = tokio::io::stdin(); - // let lines = stdin.lock().lines(); - // - let mut reader = FramedRead::new(stdin, LinesCodec::new()); - let line = reader.next().await.transpose()?.unwrap(); - let signed_op = if let "exit" = line.as_str() { - break; - } else if let "trace" = line.as_str() { - node.trace_crdt(); - continue; - } else { - let fake = utils::fake_transaction("foo123".to_string()); - node.add_transaction_local(fake) - }; - tracing::info!("sending {:?}", signed_op); - let json = serde_json::to_string(&signed_op).unwrap(); - handle.text(json).unwrap(); + let stdin = std::io::stdin(); + let lines = stdin.lock().lines(); + for line in lines { + let line = line.unwrap(); + let signed_op = if let "exit" = line.as_str() { + break; + } else if let "trace" = line.as_str() { + node.trace_crdt(); + continue; + } else { + let fake = utils::fake_transaction("foo123".to_string()); + node.add_transaction_local(fake) + }; + tracing::info!("sending {:?}", signed_op); + let json = serde_json::to_string(&signed_op).unwrap(); + handle.text(json).unwrap(); + } } }