Remove unnecessary Mutex wrapper

This commit is contained in:
artfuldev 2021-10-15 03:00:49 +05:30
parent 41afeafcd3
commit d307b281d7

View File

@ -76,20 +76,17 @@ struct OnlineWallet {
wallet: Mutex<Wallet<AnyBlockchain, AnyDatabase>>,
}
pub trait BdkProgress: Send {
pub trait BdkProgress: Send + Sync {
fn update(&self, progress: f32, message: Option<String>);
}
struct BdkProgressHolder {
progress_update: Mutex<Box<dyn BdkProgress>>,
progress_update: Box<dyn BdkProgress>,
}
impl Progress for BdkProgressHolder {
fn update(&self, progress: f32, message: Option<String>) -> Result<(), Error> {
self.progress_update
.lock()
.unwrap()
.update(progress, message);
self.progress_update.update(progress, message);
Ok(())
}
}
@ -147,12 +144,10 @@ impl OnlineWallet {
max_address_param: Option<u32>,
) -> Result<(), BdkError> {
progress_update.update(21.0, Some("message".to_string()));
self.wallet.lock().unwrap().sync(
BdkProgressHolder {
progress_update: Mutex::new(progress_update),
},
max_address_param,
)
self.wallet
.lock()
.unwrap()
.sync(BdkProgressHolder { progress_update }, max_address_param)
}
}