mirror of
https://github.com/darkrenaissance/darkfi.git
synced 2026-04-28 03:00:18 -04:00
add slabstore_path to program options for services
This commit is contained in:
@@ -19,8 +19,9 @@ fn setup_addr(address: Option<SocketAddr>, default: SocketAddr) -> SocketAddr {
|
||||
async fn start(executor: Arc<Executor<'_>>, options: ProgramOptions) -> Result<()> {
|
||||
let accept_addr: SocketAddr = setup_addr(options.accept_addr, "127.0.0.1:3333".parse()?);
|
||||
let pub_addr: SocketAddr = setup_addr(options.pub_addr, "127.0.0.1:4444".parse()?);
|
||||
let slabstore_path = options.slabstore_path.as_path();
|
||||
|
||||
let gateway = GatewayService::new(accept_addr, pub_addr)?;
|
||||
let gateway = GatewayService::new(accept_addr, pub_addr, slabstore_path)?;
|
||||
|
||||
gateway.start(executor.clone()).await?;
|
||||
Ok(())
|
||||
|
||||
@@ -35,8 +35,8 @@ pub struct GatewayService {
|
||||
}
|
||||
|
||||
impl GatewayService {
|
||||
pub fn new(addr: SocketAddr, pub_addr: SocketAddr) -> Result<Arc<GatewayService>> {
|
||||
let slabstore = SlabStore::new(Path::new("slabstore.db"))?;
|
||||
pub fn new(addr: SocketAddr, pub_addr: SocketAddr, slabstore_path: &Path) -> Result<Arc<GatewayService>> {
|
||||
let slabstore = SlabStore::new(slabstore_path)?;
|
||||
|
||||
Ok(Arc::new(GatewayService {
|
||||
slabstore,
|
||||
|
||||
@@ -5,6 +5,7 @@ pub struct ProgramOptions {
|
||||
pub accept_addr: Option<SocketAddr>,
|
||||
pub pub_addr: Option<SocketAddr>,
|
||||
pub verbose: bool,
|
||||
pub slabstore_path: Box<std::path::PathBuf>,
|
||||
pub log_path: Box<std::path::PathBuf>,
|
||||
}
|
||||
|
||||
@@ -17,6 +18,7 @@ impl ProgramOptions {
|
||||
(@arg ACCEPT: -a --accept +takes_value "Accept add//ress")
|
||||
(@arg PUB_ADDR: -p --pubaddr +takes_value "Publisher addr")
|
||||
(@arg VERBOSE: -v --verbose "Increase verbosity")
|
||||
(@arg SLABSTORE_PATH: --slabstore +takes_value "slabstore path")
|
||||
(@arg LOG_PATH: --log +takes_value "Logfile path")
|
||||
)
|
||||
.get_matches();
|
||||
@@ -35,6 +37,15 @@ impl ProgramOptions {
|
||||
|
||||
let verbose = app.is_present("VERBOSE");
|
||||
|
||||
let slabstore_path = Box::new(
|
||||
if let Some(slabstore_path) = app.value_of("SLABSTORE_PATH") {
|
||||
std::path::Path::new(slabstore_path)
|
||||
} else {
|
||||
std::path::Path::new("slabstore.db")
|
||||
}
|
||||
.to_path_buf(),
|
||||
);
|
||||
|
||||
let log_path = Box::new(
|
||||
if let Some(log_path) = app.value_of("LOG_PATH") {
|
||||
std::path::Path::new(log_path)
|
||||
@@ -48,6 +59,7 @@ impl ProgramOptions {
|
||||
accept_addr,
|
||||
pub_addr,
|
||||
verbose,
|
||||
slabstore_path,
|
||||
log_path,
|
||||
})
|
||||
}
|
||||
@@ -66,7 +78,7 @@ impl ClientProgramOptions {
|
||||
let app = clap_app!(dfi =>
|
||||
(version: "0.1.0")
|
||||
(author: "Amir Taaki <amir@dyne.org>")
|
||||
(about: "run service daemon")
|
||||
(about: "Run Service Client")
|
||||
(@arg CONNECT: -c --connect +takes_value "Connect add//ress")
|
||||
(@arg SUB_ADDR: -s --subaddr +takes_value "Subscriber addr")
|
||||
(@arg VERBOSE: -v --verbose "Increase verbosity")
|
||||
|
||||
Reference in New Issue
Block a user