Skip to content

Commit be502cb

Browse files
committed
f - break up forwarding of invoice request and static invoice
1 parent 5edc82a commit be502cb

File tree

3 files changed

+95
-216
lines changed

3 files changed

+95
-216
lines changed

lightning/src/events/mod.rs

Lines changed: 17 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1655,14 +1655,12 @@ pub enum Event {
16551655
/// The invoice that should be persisted and later provided to payers when handling a future
16561656
/// [`Event::StaticInvoiceRequested`].
16571657
invoice: StaticInvoice,
1658-
/// The path to where invoice requests will be forwarded. As a static invoice
1659-
/// server, if we receive an invoice request on behalf of an async recipient, a static
1660-
/// invoice will be provided to the payer. However, we'll also forward the invoice
1661-
/// request to this path to the async recipient in case it is online so that the
1662-
/// recipient can provide a new invoice. This path should be persisted and later
1663-
/// provided to [`ChannelManager::send_response_static_invoice_request`].
1664-
///
1665-
/// [`ChannelManager::send_response_static_invoice_request`]: crate::ln::channelmanager::ChannelManager::send_response_static_invoice_request
1658+
/// The path to where invoice requests will be forwarded. If we receive an invoice
1659+
/// request, we'll forward it to the async recipient over this path in case it is online
1660+
/// to provide a new invoice. This path should be persisted and later provided to
1661+
/// [`ChannelManager::forward_invoice_request`].
1662+
///
1663+
/// [`ChannelManager::forward_invoice_request`]: crate::ln::channelmanager::ChannelManager::forward_invoice_request
16661664
invoice_request_path: BlindedMessagePath,
16671665
/// Useful for the recipient to replace a specific invoice stored by us as the static invoice
16681666
/// server.
@@ -1694,16 +1692,17 @@ pub enum Event {
16941692
/// [`ChannelManager::blinded_paths_for_async_recipient`] and the recipient was configured with
16951693
/// them via [`ChannelManager::set_paths_to_static_invoice_server`].
16961694
///
1697-
/// If we previously persisted a [`StaticInvoice`] from an [`Event::PersistStaticInvoice`] that
1698-
/// matches the below `recipient_id` and `invoice_slot`, that invoice should be retrieved now
1699-
/// and forwarded to the payer via [`ChannelManager::send_response_static_invoice_request`].
1700-
/// The invoice request path previously persisted from [`Event::PersistStaticInvoice`] should
1701-
/// also be provided in [`ChannelManager::send_response_static_invoice_request`].
1695+
/// If we previously persisted a [`StaticInvoice`] and an `invoice_request_path` from an
1696+
/// [`Event::PersistStaticInvoice`] that matches the below `recipient_id` and `invoice_slot`,
1697+
/// the [`InvoiceRequest`] should be forwarded to the async recipient over the
1698+
/// `invoice_request_path` via [`ChannelManager::forward_invoice_request`] and the static
1699+
/// invoice should be sent to the payer via [`ChannelManager::send_static_invoice`].
17021700
///
17031701
/// [`ChannelManager::blinded_paths_for_async_recipient`]: crate::ln::channelmanager::ChannelManager::blinded_paths_for_async_recipient
17041702
/// [`ChannelManager::set_paths_to_static_invoice_server`]: crate::ln::channelmanager::ChannelManager::set_paths_to_static_invoice_server
17051703
/// [`InvoiceRequest`]: crate::offers::invoice_request::InvoiceRequest
1706-
/// [`ChannelManager::send_response_static_invoice_request`]: crate::ln::channelmanager::ChannelManager::send_response_static_invoice_request
1704+
/// [`ChannelManager::send_static_invoice`]: crate::ln::channelmanager::ChannelManager::send_static_invoice
1705+
/// [`ChannelManager::forward_invoice_request`]: crate::ln::channelmanager::ChannelManager::forward_invoice_request
17071706
StaticInvoiceRequested {
17081707
/// An identifier for the recipient previously surfaced in
17091708
/// [`Event::PersistStaticInvoice::recipient_id`]. Useful when paired with the `invoice_slot` to
@@ -1714,14 +1713,14 @@ pub enum Event {
17141713
/// retrieve the [`StaticInvoice`] requested by the payer.
17151714
invoice_slot: u16,
17161715
/// The path over which the [`StaticInvoice`] will be sent to the payer, which should be
1717-
/// provided to [`ChannelManager::send_response_static_invoice_request`] along with the invoice.
1716+
/// provided to [`ChannelManager::send_static_invoice`] along with the invoice.
17181717
///
1719-
/// [`ChannelManager::send_response_static_invoice_request`]: crate::ln::channelmanager::ChannelManager::send_response_static_invoice_request
1718+
/// [`ChannelManager::send_static_invoice`]: crate::ln::channelmanager::ChannelManager::send_static_invoice
17201719
reply_path: Responder,
17211720
/// The invoice request that will be forwarded to the async recipient to give it a
1722-
/// chance to provide an invoice in case it is online. It should be provided to [`ChannelManager::send_response_static_invoice_request`].
1721+
/// chance to provide an invoice in case it is online. It should be provided to [`ChannelManager::forward_invoice_request`].
17231722
///
1724-
/// [`ChannelManager::send_response_static_invoice_request`]: crate::ln::channelmanager::ChannelManager::send_response_static_invoice_request
1723+
/// [`ChannelManager::forward_invoice_request`]: crate::ln::channelmanager::ChannelManager::forward_invoice_request
17251724
invoice_request: InvoiceRequest,
17261725
},
17271726
/// Indicates that a channel funding transaction constructed interactively is ready to be

0 commit comments

Comments
 (0)