From dcb14801da71d1c4ea8633081d59f234a4868d66 Mon Sep 17 00:00:00 2001 From: Dave Hrycyszyn Date: Wed, 29 May 2024 16:35:00 +0100 Subject: [PATCH] Breaking websocket functionality out into its own module --- side-node/src/cli/mod.rs | 25 +++++-------------------- side-node/src/main.rs | 23 ++++++++++++----------- side-node/src/websocket/mod.rs | 13 +++++++++++++ 3 files changed, 30 insertions(+), 31 deletions(-) create mode 100644 side-node/src/websocket/mod.rs diff --git a/side-node/src/cli/mod.rs b/side-node/src/cli/mod.rs index 831839a..790b172 100644 --- a/side-node/src/cli/mod.rs +++ b/side-node/src/cli/mod.rs @@ -1,20 +1,9 @@ -use clap::{arg, Parser, Subcommand}; +use clap::Parser; +use clap::Subcommand; pub(crate) fn parse_args() -> Args { let args = Args::parse(); - match &args.command { - Some(Commands::Init { init }) => { - if *init { - println!("Initializing Side Node") - } - } - Some(Commands::Run {}) => { - println!("Running side node") - } - None => todo!(), - } - args } @@ -23,16 +12,12 @@ pub(crate) fn parse_args() -> Args { #[command(version, about, long_about = None)] pub(crate) struct Args { #[command(subcommand)] - command: Option, + pub(crate) command: Option, } #[derive(Subcommand)] -enum Commands { +pub(crate) enum Commands { /// runs the Side Node Run {}, - Init { - /// initializes a Side Node with a config file and keypair - #[arg(short, long)] - init: bool, - }, + Init {}, } diff --git a/side-node/src/main.rs b/side-node/src/main.rs index dc1ff8a..5b00f1b 100644 --- a/side-node/src/main.rs +++ b/side-node/src/main.rs @@ -1,18 +1,19 @@ -use cli::parse_args; -use websockets::{WebSocket, WebSocketError}; +use cli::{parse_args, Commands}; pub(crate) mod cli; +pub(crate) mod websocket; #[tokio::main] -async fn main() -> Result<(), WebSocketError> { - parse_args(); - let mut ws = WebSocket::connect("ws://localhost:8080/").await?; +async fn main() { + let args = parse_args(); - ws.send_text("foo".to_string()).await?; - // ws.receive().await?; - // ws.close(None).await?; - loop { - let msg = ws.receive().await?; - println!("Received: {:?}", msg); + match &args.command { + Some(Commands::Init {}) => { + println!("Initializing Side Node") + } + Some(Commands::Run {}) => { + websocket::start().await.unwrap(); + } + None => todo!(), } } diff --git a/side-node/src/websocket/mod.rs b/side-node/src/websocket/mod.rs new file mode 100644 index 0000000..33f9a7e --- /dev/null +++ b/side-node/src/websocket/mod.rs @@ -0,0 +1,13 @@ +use websockets::WebSocket; + +pub(crate) async fn start() -> Result<(), websockets::WebSocketError> { + let mut ws = WebSocket::connect("ws://localhost:8080/").await?; + + ws.send_text("foo".to_string()).await?; + // ws.receive().await?; + // ws.close(None).await?; + loop { + let msg = ws.receive().await?; + println!("Received: {:?}", msg); + } +}