Add the port and host CLI arguments
Improve args and add them to --help Remove unnecessary unwraps
This commit is contained in:
parent
85bc46c5b0
commit
e80beaf160
3 changed files with 16 additions and 1 deletions
1
Cargo.lock
generated
1
Cargo.lock
generated
|
|
@ -203,6 +203,7 @@ name = "client"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
|
"clap",
|
||||||
"minisql",
|
"minisql",
|
||||||
"parser",
|
"parser",
|
||||||
"proto",
|
"proto",
|
||||||
|
|
|
||||||
|
|
@ -11,3 +11,4 @@ anyhow = "1.0.76"
|
||||||
proto = { path = "../proto" }
|
proto = { path = "../proto" }
|
||||||
minisql = { path = "../minisql" }
|
minisql = { path = "../minisql" }
|
||||||
parser = { path = "../parser" }
|
parser = { path = "../parser" }
|
||||||
|
clap = { version = "4.4.18", features = ["derive"] }
|
||||||
|
|
@ -1,3 +1,4 @@
|
||||||
|
use clap::Parser;
|
||||||
use proto::handshake::client::do_client_handshake;
|
use proto::handshake::client::do_client_handshake;
|
||||||
use proto::handshake::request::HandshakeRequest;
|
use proto::handshake::request::HandshakeRequest;
|
||||||
use proto::reader::protoreader::ProtoReader;
|
use proto::reader::protoreader::ProtoReader;
|
||||||
|
|
@ -9,9 +10,21 @@ use proto::message::frontend::{FrontendMessage, QueryData};
|
||||||
use proto::reader::oneway::OneWayProtoReader;
|
use proto::reader::oneway::OneWayProtoReader;
|
||||||
use proto::writer::oneway::OneWayProtoWriter;
|
use proto::writer::oneway::OneWayProtoWriter;
|
||||||
|
|
||||||
|
#[derive(Parser)]
|
||||||
|
struct Cli {
|
||||||
|
/// Port number of the server.
|
||||||
|
#[arg(short, long, default_value_t = 5432, help = "Port number of the server")]
|
||||||
|
port: u16,
|
||||||
|
|
||||||
|
/// Host name or IP address of the server.
|
||||||
|
#[arg(short, long, default_value = "127.0.0.1", help = "Host name or IP address of the server")]
|
||||||
|
host: String,
|
||||||
|
}
|
||||||
|
|
||||||
#[tokio::main]
|
#[tokio::main]
|
||||||
async fn main() -> anyhow::Result<()> {
|
async fn main() -> anyhow::Result<()> {
|
||||||
let addr = "127.0.0.1:5432";
|
let cli = Cli::parse();
|
||||||
|
let addr = format!("{}:{}", cli.host, cli.port);
|
||||||
|
|
||||||
let mut stream = TcpStream::connect(addr).await?;
|
let mut stream = TcpStream::connect(addr).await?;
|
||||||
let (reader, writer) = stream.split();
|
let (reader, writer) = stream.split();
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue