let payee_pubkey = invoice.recover_payee_pub_key();
let final_cltv = invoice.min_final_cltv_expiry() as u32;
let payment_hash = PaymentHash(invoice.payment_hash().clone().into_inner());
let payee_pubkey = invoice.recover_payee_pub_key();
let final_cltv = invoice.min_final_cltv_expiry() as u32;
let payment_hash = PaymentHash(invoice.payment_hash().clone().into_inner());
channel_manager: Arc<ChannelManager>, payment_storage: PaymentInfoStorage,
logger: Arc<FilesystemLogger>,
) {
channel_manager: Arc<ChannelManager>, payment_storage: PaymentInfoStorage,
logger: Arc<FilesystemLogger>,
) {
let first_hops = channel_manager.list_usable_channels();
let payer_pubkey = channel_manager.get_our_node_id();
let first_hops = channel_manager.list_usable_channels();
let payer_pubkey = channel_manager.get_our_node_id();
channel_manager: Arc<ChannelManager>, payment_storage: PaymentInfoStorage,
logger: Arc<FilesystemLogger>,
) {
channel_manager: Arc<ChannelManager>, payment_storage: PaymentInfoStorage,
logger: Arc<FilesystemLogger>,
) {
let first_hops = channel_manager.list_usable_channels();
let payer_pubkey = channel_manager.get_our_node_id();
let first_hops = channel_manager.list_usable_channels();
let payer_pubkey = channel_manager.get_our_node_id();
status: HTLCStatus::Pending,
amt_msat: MillisatAmount(Some(amt_msat)),
},
status: HTLCStatus::Pending,
amt_msat: MillisatAmount(Some(amt_msat)),
},