Skip to content

Commit 1bb06d3

Browse files
committed
Adjust ChannelManagerConstructor.swift for 0.0.124.
1 parent 4eed605 commit 1bb06d3

File tree

1 file changed

+27
-25
lines changed

1 file changed

+27
-25
lines changed

ci/LDKSwift/Sources/LDKSwift/batteries/ChannelManagerConstructor.swift

Lines changed: 27 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ public struct ChannelManagerConstructionParameters {
4545
public var scoreParams: ProbabilisticScoringFeeParameters?
4646
public var payerRetries: Retry = Retry.initWithAttempts(a: UInt32(3))
4747
public var logger: Logger
48-
48+
4949
public init (config: UserConfig, entropySource: EntropySource, nodeSigner: NodeSigner, signerProvider: SignerProvider, feeEstimator: FeeEstimator, chainMonitor: ChainMonitor, txBroadcaster: BroadcasterInterface, logger: Logger, enableP2PGossip: Bool = false, scorer: MultiThreadedLockableScore? = nil, scoreParams: ProbabilisticScoringFeeParameters? = nil, payerRetries: Retry = Retry.initWithAttempts(a: UInt32(3))) {
5050
self.config = config
5151
self.entropySource = entropySource
@@ -55,7 +55,7 @@ public struct ChannelManagerConstructionParameters {
5555
self.chainMonitor = chainMonitor
5656
self.txBroadcaster = txBroadcaster
5757
self.logger = logger
58-
58+
5959
self.enableP2PGossip = enableP2PGossip
6060
self.scorer = scorer
6161
if scorer != nil && scoreParams == nil {
@@ -65,7 +65,7 @@ public struct ChannelManagerConstructionParameters {
6565
}
6666
self.payerRetries = payerRetries
6767
}
68-
68+
6969
private class CMCRouter: Router {
7070
override func findRoute(payer: [UInt8], routeParams: Bindings.RouteParameters, firstHops: [Bindings.ChannelDetails]?, inflightHtlcs: Bindings.InFlightHtlcs) -> Bindings.Result_RouteLightningErrorZ {
7171
let errorString = "Error: Router unavailable: ChannelManagerConstructor initialized without Scorer or NetworkGraph."
@@ -78,7 +78,7 @@ public struct ChannelManagerConstructionParameters {
7878
return .initWithErr(e: LightningError(errArg: errorString, actionArg: ErrorAction.initWithIgnoreAndLog(a: .Error)))
7979
}
8080
}
81-
81+
8282
fileprivate func router(networkGraph: NetworkGraph?) -> Router {
8383
if let netGraph = networkGraph, let scorer = self.scorer, let scoreParams = self.scoreParams {
8484
return DefaultRouter(networkGraph: netGraph, logger: self.logger, entropySource: self.entropySource, scorer: scorer.asLockableScore(), scoreParams: scoreParams).asRouter()
@@ -101,17 +101,17 @@ public class ChannelManagerConstructor: NativeTypeWrapper {
101101
public let channel_manager_latest_block_hash: [UInt8]?
102102

103103
private let constructionParameters: ChannelManagerConstructionParameters
104-
104+
105105
fileprivate var customPersister: CustomChannelManagerPersister?
106106
fileprivate var customEventHandler: EventHandler?
107107
public private(set) var netGraph: NetworkGraph?
108108
fileprivate var graphMessageHandler: GossipSync?
109-
110-
111-
112-
109+
110+
111+
112+
113113
// public private(set) var payer: InvoicePayer?
114-
114+
115115
public let peerManager: PeerManager
116116
private var tcpPeerHandler: TCPPeerHandler?
117117

@@ -127,7 +127,7 @@ public class ChannelManagerConstructor: NativeTypeWrapper {
127127
public init(channelManagerSerialized: [UInt8], channelMonitorsSerialized: [[UInt8]], networkGraph: NetworkGraphArgument, filter: Filter?, params: ChannelManagerConstructionParameters, logger: Logger) throws {
128128

129129
self.constructionParameters = params
130-
130+
131131
var monitors: [ChannelMonitor] = []
132132
self.channel_monitors = []
133133

@@ -155,7 +155,7 @@ public class ChannelManagerConstructor: NativeTypeWrapper {
155155
}
156156

157157
print("Collected channel monitors, reading channel manager")
158-
158+
159159
switch networkGraph {
160160
case .instance(let graph):
161161
self.netGraph = graph
@@ -166,11 +166,11 @@ public class ChannelManagerConstructor: NativeTypeWrapper {
166166
}
167167
self.netGraph = netGraphResult.getValue()
168168
}
169-
169+
170170
// TODO: figure out better way to obtain a router
171171
let router = params.router(networkGraph: self.netGraph)
172172
let channelManagerReadArgs = ChannelManagerReadArgs(entropySource: params.entropySource, nodeSigner: params.nodeSigner, signerProvider: params.signerProvider, feeEstimator: params.feeEstimator, chainMonitor: params.chainMonitor.asWatch(), txBroadcaster: params.txBroadcaster, router: router, logger: params.logger, defaultConfig: params.config, channelMonitors: monitors)
173-
173+
174174
guard let (latestBlockHash, channelManager) = Bindings.readThirtyTwoBytesChannelManager(ser: channelManagerSerialized, arg: channelManagerReadArgs).getValue() else {
175175
throw InvalidSerializedDataError.invalidSerializedChannelManager
176176
}
@@ -222,17 +222,17 @@ public class ChannelManagerConstructor: NativeTypeWrapper {
222222
public init(network: Network, currentBlockchainTipHash: [UInt8], currentBlockchainTipHeight: UInt32, netGraph: NetworkGraph?, params: ChannelManagerConstructionParameters) {
223223

224224
self.constructionParameters = params
225-
225+
226226
self.channel_monitors = []
227227
self.channel_manager_latest_block_hash = nil
228228
let block = BestBlock(blockHashArg: currentBlockchainTipHash, heightArg: currentBlockchainTipHeight)
229229
let chainParameters = ChainParameters(networkArg: network, bestBlockArg: block)
230-
230+
231231
self.netGraph = netGraph
232232
let router = params.router(networkGraph: self.netGraph)
233233
let timestampSeconds = UInt32(NSDate().timeIntervalSince1970)
234234
self.channelManager = ChannelManager(feeEst: params.feeEstimator, chainMonitor: params.chainMonitor.asWatch(), txBroadcaster: params.txBroadcaster, router: router, logger: params.logger, entropySource: params.entropySource, nodeSigner: params.nodeSigner, signerProvider: params.signerProvider, config: params.config, params: chainParameters, currentTimestamp: timestampSeconds)
235-
235+
236236
let channelMessageHandler = channelManager.asChannelMessageHandler()
237237
let noCustomMessages = IgnoringMessageHandler().asCustomMessageHandler()
238238
let noOnionMessages = IgnoringMessageHandler().asOnionMessageHandler()
@@ -246,7 +246,7 @@ public class ChannelManagerConstructor: NativeTypeWrapper {
246246
} else {
247247
messageHandler = MessageHandler(chanHandlerArg: channelMessageHandler, routeHandlerArg: noRoutingMessages, onionMessageHandlerArg: noOnionMessages, customMessageHandlerArg: noCustomMessages)
248248
}
249-
249+
250250
let random_data = params.entropySource.getSecureRandomBytes();
251251

252252
self.peerManager = PeerManager(messageHandler: messageHandler, currentTime: timestampSeconds, ephemeralRandomData: random_data, logger: params.logger, nodeSigner: params.nodeSigner)
@@ -290,10 +290,12 @@ public class ChannelManagerConstructor: NativeTypeWrapper {
290290
self.customPersister = CustomChannelManagerPersister(handler: persister)
291291
self.customEventHandler = CustomEventHandler(handler: persister)
292292

293+
let ignoringMessageHandler = IgnoringMessageHandler()
294+
let onionMessenger = OnionMessenger.initWith(entropySource: self.constructionParameters.entropySource, nodeSigner: self.constructionParameters.nodeSigner, logger: self.constructionParameters.logger, nodeIdLookup: NodeIdLookUp(), messageRouter: MessageRouter(), offersHandler: self.channelManager.asOffersMessageHandler(), asyncPaymentsHandler: ignoringMessageHandler.asAsyncPaymentsMessageHandler(), customHandler: ignoringMessageHandler.asCustomOnionMessageHandler())
295+
293296
// if there is a graph msg handler, set its is_owned to false
294297
// self.graph_msg_handler?.cOpaqueStruct?.is_owned = false
295-
296-
self.backgroundProcessor = BackgroundProcessor.start(persister: self.customPersister!, eventHandler: self.customEventHandler!, chainMonitor: self.constructionParameters.chainMonitor, channelManager: self.channelManager, gossipSync: self.graphMessageHandler ?? GossipSync.none(), peerManager: self.peerManager, logger: self.constructionParameters.logger, scorer: self.constructionParameters.scorer?.asWriteableScore())
298+
self.backgroundProcessor = BackgroundProcessor.start(persister: self.customPersister!, eventHandler: self.customEventHandler!, chainMonitor: self.constructionParameters.chainMonitor, channelManager: self.channelManager, onionMessenger: onionMessenger, gossipSync: self.graphMessageHandler ?? GossipSync.none(), peerManager: self.peerManager, logger: self.constructionParameters.logger, scorer: self.constructionParameters.scorer?.asWriteableScore())
297299

298300
// restore it back to true
299301
// self.graph_msg_handler?.cOpaqueStruct?.is_owned = true
@@ -360,15 +362,15 @@ fileprivate class CustomChannelManagerPersister: Persister {
360362
self.handler = handler
361363
super.init()
362364
}
363-
365+
364366
override func persistManager(channelManager: Bindings.ChannelManager) -> Bindings.Result_NoneIOErrorZ {
365367
return self.handler.persistManager(channelManager: channelManager)
366368
}
367-
369+
368370
override func persistGraph(networkGraph: Bindings.NetworkGraph) -> Bindings.Result_NoneIOErrorZ {
369371
return self.handler.persistGraph(networkGraph: networkGraph)
370372
}
371-
373+
372374
override func persistScorer(scorer: Bindings.WriteableScore) -> Bindings.Result_NoneIOErrorZ {
373375
return self.handler.persistScorer(scorer: scorer)
374376
}
@@ -383,15 +385,15 @@ fileprivate class CustomEventHandler: EventHandler {
383385
super.init()
384386
}
385387

386-
override func handleEvent(event: Bindings.Event) {
388+
override func handleEvent(event: Bindings.Event) -> Bindings.Result_NoneReplayEventZ {
387389
// self.handler.handle_event(event: event.clone())
388390
self.handler.handleEvent(event: event)
389391
}
390392

391393
}
392394

393395
public protocol ExtendedChannelManagerPersister: Persister {
394-
func handleEvent(event: Event) -> Void;
396+
func handleEvent(event: Event) -> Result_NoneReplayEventZ;
395397
}
396398

397399
public class TCPPeerHandler {

0 commit comments

Comments
 (0)