@@ -53,7 +53,7 @@ use crate::ln::channel_state::ChannelDetails;
53
53
use crate::ln::features::{Bolt12InvoiceFeatures, ChannelFeatures, ChannelTypeFeatures, InitFeatures, NodeFeatures};
54
54
#[cfg(any(feature = "_test_utils", test))]
55
55
use crate::ln::features::Bolt11InvoiceFeatures;
56
- use crate::routing::router::{BlindedTail, InFlightHtlcs, Path, Payee, PaymentParameters, Route, RouteParameters, Router};
56
+ use crate::routing::router::{BlindedTail, InFlightHtlcs, ManualRoutingParameters, Path, Payee, PaymentParameters, Route, RouteParameters, Router};
57
57
use crate::ln::onion_payment::{check_incoming_htlc_cltv, create_recv_pending_htlc_info, create_fwd_pending_htlc_info, decode_incoming_update_add_htlc_onion, InboundHTLCErr, NextPacketDetails};
58
58
use crate::ln::msgs;
59
59
use crate::ln::onion_utils;
@@ -1893,10 +1893,11 @@ where
1893
1893
/// # use lightning::events::{Event, EventsProvider};
1894
1894
/// # use lightning::ln::channelmanager::{AChannelManager, PaymentId, RecentPaymentDetails, Retry};
1895
1895
/// # use lightning::offers::offer::Offer;
1896
+ /// # use lightning::routing::router::ManualRoutingParameters;
1896
1897
/// #
1897
1898
/// # fn example<T: AChannelManager>(
1898
1899
/// # channel_manager: T, offer: &Offer, quantity: Option<u64>, amount_msats: Option<u64>,
1899
- /// # payer_note: Option<String>, retry: Retry, max_total_routing_fee_msat: Option<u64 >
1900
+ /// # payer_note: Option<String>, retry: Retry, max_total_routing_fee_msat: Option<ManualRoutingParameters >
1900
1901
/// # ) {
1901
1902
/// # let channel_manager = channel_manager.get_cm();
1902
1903
/// let payment_id = PaymentId([42; 32]);
@@ -9207,10 +9208,15 @@ macro_rules! create_refund_builder { ($self: ident, $builder: ty) => {
9207
9208
9208
9209
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop($self);
9209
9210
9211
+ let manual_routing_params = max_total_routing_fee_msat.map(
9212
+ |fee_msat| ManualRoutingParameters::new()
9213
+ .with_max_total_routing_fee_msat(fee_msat)
9214
+ );
9215
+
9210
9216
let expiration = StaleExpiration::AbsoluteTimeout(absolute_expiry);
9211
9217
$self.pending_outbound_payments
9212
9218
.add_new_awaiting_invoice(
9213
- payment_id, expiration, retry_strategy, max_total_routing_fee_msat , None,
9219
+ payment_id, expiration, retry_strategy, manual_routing_params , None,
9214
9220
)
9215
9221
.map_err(|_| Bolt12SemanticError::DuplicatePaymentId)?;
9216
9222
@@ -9303,7 +9309,7 @@ where
9303
9309
pub fn pay_for_offer(
9304
9310
&self, offer: &Offer, quantity: Option<u64>, amount_msats: Option<u64>,
9305
9311
payer_note: Option<String>, payment_id: PaymentId, retry_strategy: Retry,
9306
- max_total_routing_fee_msat : Option<u64 >
9312
+ manual_routing_params : Option<ManualRoutingParameters >
9307
9313
) -> Result<(), Bolt12SemanticError> {
9308
9314
let expanded_key = &self.inbound_payment_key;
9309
9315
let entropy = &*self.entropy_source;
@@ -9345,7 +9351,7 @@ where
9345
9351
};
9346
9352
self.pending_outbound_payments
9347
9353
.add_new_awaiting_invoice(
9348
- payment_id, expiration, retry_strategy, max_total_routing_fee_msat ,
9354
+ payment_id, expiration, retry_strategy, manual_routing_params ,
9349
9355
Some(retryable_invoice_request)
9350
9356
)
9351
9357
.map_err(|_| Bolt12SemanticError::DuplicatePaymentId)?;
0 commit comments