Merge commit 'refs/pull/218/head' of github.com:bitcoindevkit/bdk

This commit is contained in:
Alekos Filini 2020-12-11 16:31:17 +01:00
commit 010b7eed97
No known key found for this signature in database
GPG Key ID: 5E8AFC3034FDFA4F
2 changed files with 20 additions and 9 deletions

View File

@ -67,7 +67,7 @@ env_logger = "0.7"
[[example]]
name = "repl"
required-features = ["cli-utils", "esplora"]
required-features = ["cli-utils"]
[[example]]
name = "parse_descriptor"
[[example]]

View File

@ -35,6 +35,7 @@ use rustyline::Editor;
use structopt::StructOpt;
use bdk::bitcoin;
#[cfg(feature = "esplora")]
use bdk::blockchain::esplora::EsploraBlockchainConfig;
use bdk::blockchain::{
AnyBlockchain, AnyBlockchainConfig, ConfigurableBlockchain, ElectrumBlockchainConfig,
@ -87,18 +88,28 @@ fn main() {
let tree = database.open_tree(cli_opt.wallet).unwrap();
debug!("database opened successfully");
let config = match cli_opt.esplora {
Some(base_url) => AnyBlockchainConfig::Esplora(EsploraBlockchainConfig {
base_url: base_url.to_string(),
concurrency: Some(cli_opt.esplora_concurrency),
}),
None => AnyBlockchainConfig::Electrum(ElectrumBlockchainConfig {
// Try to use Esplora config if "esplora" feature is enabled
#[cfg(feature = "esplora")]
let config_esplora: Option<AnyBlockchainConfig> = {
let esplora_concurrency = cli_opt.esplora_concurrency;
cli_opt.esplora.map(|base_url| {
AnyBlockchainConfig::Esplora(EsploraBlockchainConfig {
base_url: base_url.to_string(),
concurrency: Some(esplora_concurrency),
})
})
};
#[cfg(not(feature = "esplora"))]
let config_esplora = None;
// Fall back to Electrum config if Esplora config isn't provided
let config =
config_esplora.unwrap_or(AnyBlockchainConfig::Electrum(ElectrumBlockchainConfig {
url: cli_opt.electrum,
socks5: cli_opt.proxy,
retry: 10,
timeout: 10,
}),
};
}));
let wallet = Wallet::new(
descriptor,