diff --git a/src/service/bridge.rs b/src/service/bridge.rs index 9166e6b3e..b29572658 100644 --- a/src/service/bridge.rs +++ b/src/service/bridge.rs @@ -1,5 +1,5 @@ -use crate::{Error, Result}; use crate::util::NetworkName; +use crate::{Error, Result}; use async_trait::async_trait; use futures::stream::FuturesUnordered; @@ -76,10 +76,7 @@ impl Bridge { let client2 = client.clone(); let notifier = client2.get_notifier().await?; - self.clients - .lock() - .await - .insert(network, client.clone()); + self.clients.lock().await.insert(network, client.clone()); self.notifiers.push(notifier.clone()); Ok(()) @@ -101,7 +98,7 @@ impl Bridge { let (sender, req) = async_channel::unbounded(); let (rep, receiver) = async_channel::unbounded(); - smol::spawn(self.listen_for_new_subscription(req.clone(), rep.clone())).detach(); + smol::spawn(self.listen_for_new_subscription(req, rep)).detach(); BridgeSubscribtion { sender, receiver } } diff --git a/src/service/btc.rs b/src/service/btc.rs index 295f8ad22..31b17434a 100644 --- a/src/service/btc.rs +++ b/src/service/btc.rs @@ -95,7 +95,10 @@ impl BtcClient { })) } - async fn handle_subscribe_request(self: Arc, keypair: Arc) -> BtcResult<(Txid, u64)> { + async fn handle_subscribe_request( + self: Arc, + keypair: Arc, + ) -> BtcResult<(Txid, u64)> { debug!( target: "BTC BRIDGE", "Handle subscribe request" @@ -159,8 +162,7 @@ impl NetworkClient for BtcClient { //let (_txid, _balance) = btc_keys.start_subscribe().await?; - let self2 = self.clone(); - smol::spawn(self2.handle_subscribe_request(btc_keys)).detach(); + smol::spawn(self.handle_subscribe_request(btc_keys)).detach(); Ok(TokenSubscribtion { secret_key: serialize(&btc_privkey.to_bytes()), diff --git a/src/service/sol.rs b/src/service/sol.rs index e9a5d8215..bad24cd0e 100644 --- a/src/service/sol.rs +++ b/src/service/sol.rs @@ -312,11 +312,10 @@ impl NetworkClient for SolClient { let public_key = keypair.pubkey().to_string(); let secret_key = serialize(&keypair); - let self2 = self.clone(); // TODO: Option for 2nd arg representing Token Mint account let mint = Pubkey::from_str("F4wkXLN5n1ckejfnJoahGpgW3ffRsrvS9GGVME6ckxS9").unwrap(); - smol::spawn(self2.handle_subscribe_request(keypair, Some(mint))).detach(); - //smol::spawn(self2.handle_subscribe_request(keypair, None)).detach(); + smol::spawn(self.handle_subscribe_request(keypair, Some(mint))).detach(); + //smol::spawn(self.handle_subscribe_request(keypair, None)).detach(); Ok(TokenSubscribtion { secret_key, @@ -334,11 +333,10 @@ impl NetworkClient for SolClient { let public_key = keypair.pubkey().to_string(); - let self2 = self.clone(); // TODO: Option for 2nd arg representing Token Mint account let mint = Pubkey::from_str("F4wkXLN5n1ckejfnJoahGpgW3ffRsrvS9GGVME6ckxS9").unwrap(); - smol::spawn(self2.handle_subscribe_request(keypair, Some(mint))).detach(); - //smol::spawn(self2.handle_subscribe_request(keypair, None)).detach(); + smol::spawn(self.handle_subscribe_request(keypair, Some(mint))).detach(); + //smol::spawn(self.handle_subscribe_request(keypair, None)).detach(); Ok(public_key) } diff --git a/src/wallet/cashierdb.rs b/src/wallet/cashierdb.rs index 0ee0b45c7..e49015bad 100644 --- a/src/wallet/cashierdb.rs +++ b/src/wallet/cashierdb.rs @@ -61,8 +61,8 @@ impl CashierDb { pub fn put_main_keys( &self, - token_key_private: &Vec, - token_key_public: &Vec, + token_key_private: &[u8], + token_key_public: &[u8], network: &NetworkName, ) -> Result<()> { debug!(target: "CASHIERDB", "Put main keys"); @@ -118,7 +118,7 @@ impl CashierDb { pub fn put_withdraw_keys( &self, - token_key_public: &Vec, + token_key_public: &[u8], d_key_public: &jubjub::SubgroupPoint, d_key_private: &jubjub::Fr, network: &NetworkName, @@ -157,8 +157,8 @@ impl CashierDb { pub fn put_deposit_keys( &self, d_key_public: &jubjub::SubgroupPoint, - token_key_private: &Vec, - token_key_public: &Vec, + token_key_private: &[u8], + token_key_public: &[u8], network: &NetworkName, token_id: &jubjub::Fr, ) -> Result<()> { @@ -206,12 +206,12 @@ impl CashierDb { WHERE confirm = :confirm", )?; - let keys = stmt.query_map(&[(":confirm", &confirm)], |row| Ok(row.get(0)?))?; + let keys = stmt.query_map(&[(":confirm", &confirm)], |row| Ok(row.get(0)))?; let mut private_keys: Vec = vec![]; for k in keys { - let private_key: jubjub::Fr = self.get_value_deserialized(k?)?; + let private_key: jubjub::Fr = self.get_value_deserialized(k??)?; private_keys.push(private_key); } @@ -333,7 +333,7 @@ impl CashierDb { pub fn get_withdraw_keys_by_token_public_key( &self, - token_key_public: &Vec, + token_key_public: &[u8], network: &NetworkName, ) -> Result> { debug!(target: "CASHIERDB", "Check for existing token address"); @@ -356,8 +356,8 @@ impl CashierDb { let keypair_iter = stmt.query_map( &[ (":token_key_public", &token_key_public), - (":network", &&network), - (":confirm", &&confirm), + (":network", &network.as_ref()), + (":confirm", &confirm.as_ref()), ], |row| Ok((row.get(0)?, row.get(1)?)), )?; @@ -377,7 +377,7 @@ impl CashierDb { pub fn confirm_withdraw_key_record( &self, - token_address: &Vec, + token_address: &[u8], network: &NetworkName, ) -> Result<()> { debug!(target: "CASHIERDB", "Confirm withdraw keys");