Breaking websocket functionality out into its own module
This commit is contained in:
@@ -1,20 +1,9 @@
|
|||||||
use clap::{arg, Parser, Subcommand};
|
use clap::Parser;
|
||||||
|
use clap::Subcommand;
|
||||||
|
|
||||||
pub(crate) fn parse_args() -> Args {
|
pub(crate) fn parse_args() -> Args {
|
||||||
let args = Args::parse();
|
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
|
args
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -23,16 +12,12 @@ pub(crate) fn parse_args() -> Args {
|
|||||||
#[command(version, about, long_about = None)]
|
#[command(version, about, long_about = None)]
|
||||||
pub(crate) struct Args {
|
pub(crate) struct Args {
|
||||||
#[command(subcommand)]
|
#[command(subcommand)]
|
||||||
command: Option<Commands>,
|
pub(crate) command: Option<Commands>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Subcommand)]
|
#[derive(Subcommand)]
|
||||||
enum Commands {
|
pub(crate) enum Commands {
|
||||||
/// runs the Side Node
|
/// runs the Side Node
|
||||||
Run {},
|
Run {},
|
||||||
Init {
|
Init {},
|
||||||
/// initializes a Side Node with a config file and keypair
|
|
||||||
#[arg(short, long)]
|
|
||||||
init: bool,
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,18 +1,19 @@
|
|||||||
use cli::parse_args;
|
use cli::{parse_args, Commands};
|
||||||
use websockets::{WebSocket, WebSocketError};
|
|
||||||
|
|
||||||
pub(crate) mod cli;
|
pub(crate) mod cli;
|
||||||
|
pub(crate) mod websocket;
|
||||||
|
|
||||||
#[tokio::main]
|
#[tokio::main]
|
||||||
async fn main() -> Result<(), WebSocketError> {
|
async fn main() {
|
||||||
parse_args();
|
let args = parse_args();
|
||||||
let mut ws = WebSocket::connect("ws://localhost:8080/").await?;
|
|
||||||
|
|
||||||
ws.send_text("foo".to_string()).await?;
|
match &args.command {
|
||||||
// ws.receive().await?;
|
Some(Commands::Init {}) => {
|
||||||
// ws.close(None).await?;
|
println!("Initializing Side Node")
|
||||||
loop {
|
}
|
||||||
let msg = ws.receive().await?;
|
Some(Commands::Run {}) => {
|
||||||
println!("Received: {:?}", msg);
|
websocket::start().await.unwrap();
|
||||||
|
}
|
||||||
|
None => todo!(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
13
side-node/src/websocket/mod.rs
Normal file
13
side-node/src/websocket/mod.rs
Normal file
@@ -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);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user