@@ -51,7 +51,7 @@ impl<'a> PayjoinManager<'a> {
5151 directory : String ,
5252 max_fee_rate : Option < u64 > ,
5353 ohttp_relays : Vec < String > ,
54- blockchain_client : BlockchainClient ,
54+ blockchain_client : & BlockchainClient ,
5555 ) -> Result < String , Error > {
5656 let address = self
5757 . wallet
@@ -119,7 +119,7 @@ impl<'a> PayjoinManager<'a> {
119119 uri : String ,
120120 fee_rate : u64 ,
121121 ohttp_relays : Vec < String > ,
122- blockchain_client : BlockchainClient ,
122+ blockchain_client : & BlockchainClient ,
123123 ) -> Result < String , Error > {
124124 let uri = payjoin:: Uri :: try_from ( uri)
125125 . map_err ( |e| Error :: Generic ( format ! ( "Failed parsing to Payjoin URI: {}" , e) ) ) ?;
@@ -237,7 +237,7 @@ impl<'a> PayjoinManager<'a> {
237237 persister : & impl SessionPersister < SessionEvent = ReceiverSessionEvent > ,
238238 relay : impl payjoin:: IntoUrl ,
239239 max_fee_rate : FeeRate ,
240- blockchain_client : BlockchainClient ,
240+ blockchain_client : & BlockchainClient ,
241241 ) -> Result < ( ) , Error > {
242242 match session {
243243 ReceiveSession :: Initialized ( proposal) => {
@@ -306,7 +306,7 @@ impl<'a> PayjoinManager<'a> {
306306 persister : & impl SessionPersister < SessionEvent = ReceiverSessionEvent > ,
307307 relay : impl payjoin:: IntoUrl ,
308308 max_fee_rate : FeeRate ,
309- blockchain_client : BlockchainClient ,
309+ blockchain_client : & BlockchainClient ,
310310 ) -> Result < ( ) , Error > {
311311 let mut current_receiver_typestate = receiver;
312312 let next_receiver_typestate = loop {
@@ -353,7 +353,7 @@ impl<'a> PayjoinManager<'a> {
353353 receiver : Receiver < UncheckedOriginalPayload > ,
354354 persister : & impl SessionPersister < SessionEvent = ReceiverSessionEvent > ,
355355 max_fee_rate : FeeRate ,
356- blockchain_client : BlockchainClient ,
356+ blockchain_client : & BlockchainClient ,
357357 ) -> Result < ( ) , Error > {
358358 let next_receiver_typestate = receiver
359359 . assume_interactive_receiver ( )
@@ -386,7 +386,7 @@ impl<'a> PayjoinManager<'a> {
386386 receiver : Receiver < MaybeInputsOwned > ,
387387 persister : & impl SessionPersister < SessionEvent = ReceiverSessionEvent > ,
388388 max_fee_rate : FeeRate ,
389- blockchain_client : BlockchainClient ,
389+ blockchain_client : & BlockchainClient ,
390390 ) -> Result < ( ) , Error > {
391391 let next_receiver_typestate = receiver
392392 . check_inputs_not_owned ( & mut |input| {
@@ -411,7 +411,7 @@ impl<'a> PayjoinManager<'a> {
411411 receiver : Receiver < MaybeInputsSeen > ,
412412 persister : & impl SessionPersister < SessionEvent = ReceiverSessionEvent > ,
413413 max_fee_rate : FeeRate ,
414- blockchain_client : BlockchainClient ,
414+ blockchain_client : & BlockchainClient ,
415415 ) -> Result < ( ) , Error > {
416416 // This is not supported as there is no persistence of previous Payjoin attempts in BDK CLI
417417 // yet. If there is support either in the BDK persister or Payjoin persister, this can be
@@ -437,7 +437,7 @@ impl<'a> PayjoinManager<'a> {
437437 receiver : Receiver < OutputsUnknown > ,
438438 persister : & impl SessionPersister < SessionEvent = ReceiverSessionEvent > ,
439439 max_fee_rate : FeeRate ,
440- blockchain_client : BlockchainClient ,
440+ blockchain_client : & BlockchainClient ,
441441 ) -> Result < ( ) , Error > {
442442 let next_receiver_typestate = receiver. identify_receiver_outputs ( & mut |output_script| {
443443 Ok ( self . wallet . is_mine ( output_script. to_owned ( ) ) )
@@ -459,7 +459,7 @@ impl<'a> PayjoinManager<'a> {
459459 receiver : Receiver < WantsOutputs > ,
460460 persister : & impl SessionPersister < SessionEvent = ReceiverSessionEvent > ,
461461 max_fee_rate : FeeRate ,
462- blockchain_client : BlockchainClient ,
462+ blockchain_client : & BlockchainClient ,
463463 ) -> Result < ( ) , Error > {
464464 // This is a typestate to modify existing receiver-owned outputs in case the receiver wants
465465 // to do that. This is a very simple implementation of Payjoin so we are just going
@@ -483,7 +483,7 @@ impl<'a> PayjoinManager<'a> {
483483 receiver : Receiver < WantsInputs > ,
484484 persister : & impl SessionPersister < SessionEvent = ReceiverSessionEvent > ,
485485 max_fee_rate : FeeRate ,
486- blockchain_client : BlockchainClient ,
486+ blockchain_client : & BlockchainClient ,
487487 ) -> Result < ( ) , Error > {
488488 let candidate_inputs: Vec < InputPair > = self
489489 . wallet
@@ -533,7 +533,7 @@ impl<'a> PayjoinManager<'a> {
533533 receiver : Receiver < WantsFeeRange > ,
534534 persister : & impl SessionPersister < SessionEvent = ReceiverSessionEvent > ,
535535 max_fee_rate : FeeRate ,
536- blockchain_client : BlockchainClient ,
536+ blockchain_client : & BlockchainClient ,
537537 ) -> Result < ( ) , Error > {
538538 let next_receiver_typestate = receiver. apply_fee_range ( None , Some ( max_fee_rate) ) . save ( persister) . map_err ( |e| {
539539 Error :: Generic ( format ! ( "Error occurred when saving after applying the receiver fee range to the transaction: {e}" ) )
@@ -546,7 +546,7 @@ impl<'a> PayjoinManager<'a> {
546546 & mut self ,
547547 receiver : Receiver < ProvisionalProposal > ,
548548 persister : & impl SessionPersister < SessionEvent = ReceiverSessionEvent > ,
549- blockchain_client : BlockchainClient ,
549+ blockchain_client : & BlockchainClient ,
550550 ) -> Result < ( ) , Error > {
551551 let next_receiver_typestate = receiver
552552 . finalize_proposal ( |psbt| {
@@ -580,7 +580,7 @@ impl<'a> PayjoinManager<'a> {
580580 & mut self ,
581581 receiver : Receiver < PayjoinProposal > ,
582582 persister : & impl SessionPersister < SessionEvent = ReceiverSessionEvent > ,
583- blockchain_client : BlockchainClient ,
583+ blockchain_client : & BlockchainClient ,
584584 ) -> Result < ( ) , Error > {
585585 let ( req, ctx) = receiver. create_post_request (
586586 self . relay_manager
@@ -619,7 +619,7 @@ impl<'a> PayjoinManager<'a> {
619619 & mut self ,
620620 receiver : Receiver < Monitor > ,
621621 persister : & impl SessionPersister < SessionEvent = ReceiverSessionEvent > ,
622- blockchain_client : BlockchainClient ,
622+ blockchain_client : & BlockchainClient ,
623623 ) -> Result < ( ) , Error > {
624624 let wait_time_for_sync = 3 ;
625625 let poll_internal = tokio:: time:: Duration :: from_secs ( wait_time_for_sync) ;
@@ -734,7 +734,7 @@ impl<'a> PayjoinManager<'a> {
734734 session : SendSession ,
735735 persister : & impl SessionPersister < SessionEvent = SenderSessionEvent > ,
736736 relay : impl payjoin:: IntoUrl ,
737- blockchain_client : BlockchainClient ,
737+ blockchain_client : & BlockchainClient ,
738738 ) -> Result < Txid , Error > {
739739 match session {
740740 SendSession :: WithReplyKey ( context) => {
@@ -757,7 +757,7 @@ impl<'a> PayjoinManager<'a> {
757757 sender : Sender < WithReplyKey > ,
758758 relay : impl payjoin:: IntoUrl ,
759759 persister : & impl SessionPersister < SessionEvent = SenderSessionEvent > ,
760- blockchain_client : BlockchainClient ,
760+ blockchain_client : & BlockchainClient ,
761761 ) -> Result < Txid , Error > {
762762 let ( req, ctx) = sender. create_v2_post_request ( relay. as_str ( ) ) . map_err ( |e| {
763763 Error :: Generic ( format ! (
@@ -780,7 +780,7 @@ impl<'a> PayjoinManager<'a> {
780780 sender : Sender < PollingForProposal > ,
781781 relay : impl payjoin:: IntoUrl ,
782782 persister : & impl SessionPersister < SessionEvent = SenderSessionEvent > ,
783- blockchain_client : BlockchainClient ,
783+ blockchain_client : & BlockchainClient ,
784784 ) -> Result < Txid , Error > {
785785 let mut sender = sender. clone ( ) ;
786786 loop {
@@ -815,7 +815,7 @@ impl<'a> PayjoinManager<'a> {
815815 async fn process_payjoin_proposal (
816816 & self ,
817817 mut psbt : Psbt ,
818- blockchain_client : BlockchainClient ,
818+ blockchain_client : & BlockchainClient ,
819819 ) -> Result < Txid , Error > {
820820 if !self . wallet . sign ( & mut psbt, SignOptions :: default ( ) ) ? {
821821 return Err ( Error :: Generic (
0 commit comments