@@ -40,6 +40,7 @@ public class ChannelManagerConstructor: NativeTypeWrapper {
4040 fileprivate var scorer : MultiThreadedLockableScore ?
4141 fileprivate let keysInterface : KeysInterface !
4242 public private( set) var payer : InvoicePayer ?
43+ fileprivate var payerRetries : Retry !
4344 public let peerManager : PeerManager
4445 private var tcpPeerHandler : TCPPeerHandler ?
4546
@@ -54,7 +55,7 @@ public class ChannelManagerConstructor: NativeTypeWrapper {
5455 private let chain_monitor : ChainMonitor
5556
5657
57- public init ( channelManagerSerialized: [ UInt8 ] , channelMonitorsSerialized: [ [ UInt8 ] ] , keysInterface: KeysInterface , feeEstimator: FeeEstimator , chainMonitor: ChainMonitor , filter: Filter ? , netGraphSerialized: [ UInt8 ] ? , txBroadcaster: BroadcasterInterface , logger: Logger , enableP2PGossip: Bool = false ) throws {
58+ public init ( channelManagerSerialized: [ UInt8 ] , channelMonitorsSerialized: [ [ UInt8 ] ] , keysInterface: KeysInterface , feeEstimator: FeeEstimator , chainMonitor: ChainMonitor , filter: Filter ? , netGraphSerialized: [ UInt8 ] ? , txBroadcaster: BroadcasterInterface , logger: Logger , enableP2PGossip: Bool = false , userConfig : UserConfig = UserConfig . initWithDefault ( ) , payerRetries : Retry = Retry . initWithAttempts ( a : UInt ( 3 ) ) ) throws {
5859
5960 var monitors : [ ChannelMonitor ] = [ ]
6061 self . channel_monitors = [ ]
@@ -83,8 +84,7 @@ public class ChannelManagerConstructor: NativeTypeWrapper {
8384 }
8485
8586 print ( " Collected channel monitors, reading channel manager " )
86- let channelManagerReadArgs = ChannelManagerReadArgs ( keysManager: keysInterface, feeEstimator: feeEstimator, chainMonitor: chainMonitor. asWatch ( ) , txBroadcaster: txBroadcaster, logger: logger, defaultConfig: UserConfig . initWithDefault ( ) , channelMonitors: monitors)
87-
87+ let channelManagerReadArgs = ChannelManagerReadArgs ( keysManager: keysInterface, feeEstimator: feeEstimator, chainMonitor: chainMonitor. asWatch ( ) , txBroadcaster: txBroadcaster, logger: logger, defaultConfig: userConfig, channelMonitors: monitors)
8888
8989 guard let ( latestBlockHash, channelManager) = Bindings . readBlockHashChannelManager ( ser: channelManagerSerialized, arg: channelManagerReadArgs) . getValue ( ) else {
9090 throw InvalidSerializedDataError . invalidSerializedChannelManager
@@ -99,6 +99,7 @@ public class ChannelManagerConstructor: NativeTypeWrapper {
9999 self . channel_manager_latest_block_hash = latestBlockHash
100100 self . chain_monitor = chainMonitor
101101 self . keysInterface = keysInterface
102+ self . payerRetries = payerRetries
102103 self . logger = logger
103104
104105 let random_data = keysInterface. getSecureRandomBytes ( ) ;
@@ -143,14 +144,15 @@ public class ChannelManagerConstructor: NativeTypeWrapper {
143144 /**
144145 * Constructs a channel manager from the given interface implementations
145146 */
146- public init ( network: Network , config : UserConfig , currentBlockchainTipHash: [ UInt8 ] , currentBlockchainTipHeight: UInt32 , keysInterface: KeysInterface , feeEstimator: FeeEstimator , chainMonitor: ChainMonitor , netGraph: NetworkGraph ? , txBroadcaster: BroadcasterInterface , logger: Logger , enableP2PGossip: Bool = false ) {
147+ public init ( network: Network , userConfig : UserConfig , currentBlockchainTipHash: [ UInt8 ] , currentBlockchainTipHeight: UInt32 , keysInterface: KeysInterface , feeEstimator: FeeEstimator , chainMonitor: ChainMonitor , netGraph: NetworkGraph ? , txBroadcaster: BroadcasterInterface , logger: Logger , enableP2PGossip: Bool = false , payerRetries : Retry = Retry . initWithAttempts ( a : UInt ( 3 ) ) ) {
147148
148149 self . channel_monitors = [ ]
149150 self . channel_manager_latest_block_hash = nil
150151 self . chain_monitor = chainMonitor
151152 let block = BestBlock ( blockHash: currentBlockchainTipHash, height: currentBlockchainTipHeight)
152153 let chainParameters = ChainParameters ( networkArg: network, bestBlockArg: block)
153- self . channelManager = ChannelManager ( feeEst: feeEstimator, chainMonitor: chainMonitor. asWatch ( ) , txBroadcaster: txBroadcaster, logger: logger, keysManager: keysInterface, config: config, params: chainParameters)
154+ self . channelManager = ChannelManager ( feeEst: feeEstimator, chainMonitor: chainMonitor. asWatch ( ) , txBroadcaster: txBroadcaster, logger: logger, keysManager: keysInterface, config: userConfig, params: chainParameters)
155+ self . payerRetries = payerRetries
154156 self . logger = logger
155157
156158 self . keysInterface = keysInterface
@@ -215,7 +217,7 @@ public class ChannelManagerConstructor: NativeTypeWrapper {
215217 // either dangle router, or set is_owned to false
216218 // scorer.cType!.is_owned = false
217219 // router.cType!.is_owned = false
218- self . payer = InvoicePayer ( payer: self . channelManager. asPayer ( ) , router: router. asRouter ( ) , logger: self . logger, eventHandler: self . customEventHandler!, retry: Retry . initWithAttempts ( a : UInt ( 3 ) ) )
220+ self . payer = InvoicePayer ( payer: self . channelManager. asPayer ( ) , router: router. asRouter ( ) , logger: self . logger, eventHandler: self . customEventHandler!, retry: self . payerRetries )
219221 // router.cType!.is_owned = true
220222 self . customEventHandler = self . payer!. asEventHandler ( )
221223 }
0 commit comments