diff --git a/Sources/ElixxirDAppsSDK/MessageDeliveryWaiter.swift b/Sources/ElixxirDAppsSDK/MessageDeliveryWaiter.swift index 92b6ab9673ee1f75910f6919e96dc7d089563228..38283a477d34db592449edeb01e1a8ff54595a0c 100644 --- a/Sources/ElixxirDAppsSDK/MessageDeliveryWaiter.swift +++ b/Sources/ElixxirDAppsSDK/MessageDeliveryWaiter.swift @@ -6,22 +6,24 @@ public struct MessageDeliveryWaiter { case notDelivered(timedOut: Bool) } - public var wait: (Data, Int, @escaping (Result) -> Void) throws -> Void + public var wait: (MessageSendReport, Int, @escaping (Result) -> Void) throws -> Void public func callAsFunction( - roundList: Data, + report: MessageSendReport, timeoutMS: Int, callback: @escaping (Result) -> Void - ) throws -> Void { - try wait(roundList, timeoutMS, callback) + ) throws { + try wait(report, timeoutMS, callback) } } extension MessageDeliveryWaiter { public static func live(bindingsClient: BindingsClient) -> MessageDeliveryWaiter { - MessageDeliveryWaiter { roundList, timeoutMS, callback in + MessageDeliveryWaiter { report, timeoutMS, callback in + let encoder = JSONEncoder() + let reportData = try encoder.encode(report) try bindingsClient.wait( - forMessageDelivery: roundList, + forMessageDelivery: reportData, mdc: Callback(onCallback: callback), timeoutMS: timeoutMS )