mirror of
https://github.com/lightningnetwork/lnd.git
synced 2025-11-10 06:07:16 +01:00
Instead of the ChannelState struct we now use the kv backend interface for the payment kv database.
31 lines
878 B
Go
31 lines
878 B
Go
package paymentsdb
|
|
|
|
// StoreOptions holds parameters for the KVStore.
|
|
type StoreOptions struct {
|
|
// NoMigration allows to open the database in readonly mode
|
|
NoMigration bool
|
|
|
|
// KeepFailedPaymentAttempts is a flag that determines whether to keep
|
|
// failed payment attempts for a settled payment in the db.
|
|
KeepFailedPaymentAttempts bool
|
|
}
|
|
|
|
// OptionModifier is a function signature for modifying the default
|
|
// StoreOptions.
|
|
type OptionModifier func(*StoreOptions)
|
|
|
|
// WithKeepFailedPaymentAttempts sets the KeepFailedPaymentAttempts to n.
|
|
func WithKeepFailedPaymentAttempts(n bool) OptionModifier {
|
|
return func(o *StoreOptions) {
|
|
o.KeepFailedPaymentAttempts = n
|
|
}
|
|
}
|
|
|
|
// WithNoMigration allows the database to be opened in read only mode by
|
|
// disabling migrations.
|
|
func WithNoMigration(b bool) OptionModifier {
|
|
return func(o *StoreOptions) {
|
|
o.NoMigration = b
|
|
}
|
|
}
|