Trait lightning_invoice::payment::Payer
source · [−]pub trait Payer {
fn node_id(&self) -> PublicKey;
fn first_hops(&self) -> Vec<ChannelDetails>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
;
fn send_payment(
&self,
route: &Route,
payment_hash: PaymentHash,
payment_secret: &Option<PaymentSecret>
) -> Result<PaymentId, PaymentSendFailure>;
fn send_spontaneous_payment(
&self,
route: &Route,
payment_preimage: PaymentPreimage
) -> Result<PaymentId, PaymentSendFailure>;
fn retry_payment(
&self,
route: &Route,
payment_id: PaymentId
) -> Result<(), PaymentSendFailure>;
fn abandon_payment(&self, payment_id: PaymentId);
}
Expand description
A trait defining behavior of an Invoice
payer.
Required Methods
fn first_hops(&self) -> Vec<ChannelDetails>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
fn first_hops(&self) -> Vec<ChannelDetails>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,
Returns the payer’s channels.
fn send_payment(
&self,
route: &Route,
payment_hash: PaymentHash,
payment_secret: &Option<PaymentSecret>
) -> Result<PaymentId, PaymentSendFailure>
fn send_payment(
&self,
route: &Route,
payment_hash: PaymentHash,
payment_secret: &Option<PaymentSecret>
) -> Result<PaymentId, PaymentSendFailure>
Sends a payment over the Lightning Network using the given Route
.
fn send_spontaneous_payment(
&self,
route: &Route,
payment_preimage: PaymentPreimage
) -> Result<PaymentId, PaymentSendFailure>
fn send_spontaneous_payment(
&self,
route: &Route,
payment_preimage: PaymentPreimage
) -> Result<PaymentId, PaymentSendFailure>
Sends a spontaneous payment over the Lightning Network using the given Route
.
fn retry_payment(
&self,
route: &Route,
payment_id: PaymentId
) -> Result<(), PaymentSendFailure>
fn retry_payment(
&self,
route: &Route,
payment_id: PaymentId
) -> Result<(), PaymentSendFailure>
fn abandon_payment(&self, payment_id: PaymentId)
fn abandon_payment(&self, payment_id: PaymentId)
Signals that no further retries for the given payment will occur.
Implementations on Foreign Types
sourceimpl<Signer: Sign, M: Deref, T: Deref, K: Deref, F: Deref, L: Deref> Payer for ChannelManager<Signer, M, T, K, F, L> where
M::Target: Watch<Signer>,
T::Target: BroadcasterInterface,
K::Target: KeysInterface<Signer = Signer>,
F::Target: FeeEstimator,
L::Target: Logger,
impl<Signer: Sign, M: Deref, T: Deref, K: Deref, F: Deref, L: Deref> Payer for ChannelManager<Signer, M, T, K, F, L> where
M::Target: Watch<Signer>,
T::Target: BroadcasterInterface,
K::Target: KeysInterface<Signer = Signer>,
F::Target: FeeEstimator,
L::Target: Logger,
fn node_id(&self) -> PublicKey
fn first_hops(&self) -> Vec<ChannelDetails>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,