Payment Attempt
sealed class PaymentAttempt
Content copied to clipboard
Types
Payment Aborted
Link copied to clipboard
data class PaymentAborted(request: SendPayment, reason: FinalFailure, pending: Map<UUID, Pair<OutgoingPayment.Part, SharedSecrets>>, failures: List<Either<ChannelException, FailureMessage>>) : OutgoingPaymentHandler.PaymentAttempt
Content copied to clipboard
When we exhaust our retry attempts without success or encounter a non-recoverable error, we abort the payment. Once we're in that state, we wait for all the pending child payments to settle.
Payment In Progress
Link copied to clipboard
data class PaymentInProgress(request: SendPayment, attemptNumber: Int, trampolinePayload: OutgoingPaymentHandler.PaymentAttempt.TrampolinePayload, pending: Map<UUID, Pair<OutgoingPayment.Part, SharedSecrets>>, ignore: Set<ByteVector32>, failures: List<Either<ChannelException, FailureMessage>>) : OutgoingPaymentHandler.PaymentAttempt
Content copied to clipboard
While a payment is in progress, we listen to child payments failures. When we receive failures, we retry the failed amount with different routes/fees.
Payment Succeeded
Link copied to clipboard
data class PaymentSucceeded(request: SendPayment, preimage: ByteVector32, parts: List<OutgoingPayment.Part>, pending: Map<UUID, Pair<OutgoingPayment.Part, SharedSecrets>>) : OutgoingPaymentHandler.PaymentAttempt
Content copied to clipboard
Once we receive a first fulfill for a child payment, we can consider that the whole payment succeeded (because we received the payment preimage that we can use as a proof of payment). Once we're in that state, we wait for all the pending child payments to fulfill.
Trampoline Payload
Link copied to clipboard
data class TrampolinePayload(totalAmount: MilliSatoshi, expiry: CltvExpiry, paymentSecret: ByteVector32, packet: OnionRoutingPacket)
Content copied to clipboard
Functions
is Complete
Link copied to clipboard
Properties
fees
Link copied to clipboard
pending
Link copied to clipboard
abstract val pending: Map<UUID, Pair<OutgoingPayment.Part, SharedSecrets>>
Content copied to clipboard
request
Link copied to clipboard
Inheritors
OutgoingPaymentHandler.PaymentAttempt
Link copied to clipboard
OutgoingPaymentHandler.PaymentAttempt
Link copied to clipboard
OutgoingPaymentHandler.PaymentAttempt
Link copied to clipboard