Skip to content
Snippets Groups Projects
Commit ada1bf9d authored by Dariusz Rybicki's avatar Dariusz Rybicki
Browse files

Add ReceiveFileHandler

parent 2ce35485
No related branches found
No related tags found
2 merge requests!124File transfers example,!102Release 1.0.0
This commit is part of merge request !102. Comments created here will be created in the context of that merge request.
import XCTestDynamicOverlay
import XXClient
import XXMessengerClient
public struct ReceiveFileHandler {
public typealias OnError = (Error) -> Void
public var run: (@escaping OnError) -> Cancellable
public func callAsFunction(onError: @escaping OnError) -> Cancellable {
run(onError)
}
}
extension ReceiveFileHandler {
public static func live(
messenger: Messenger
) -> ReceiveFileHandler {
ReceiveFileHandler { onError in
messenger.registerReceiveFileCallback(.init { result in
switch result {
case .success(let file):
// TODO:
break
case .failure(let error):
onError(error)
}
})
}
}
}
extension ReceiveFileHandler {
public static let unimplemented = ReceiveFileHandler(
run: XCTUnimplemented("\(Self.self)", placeholder: Cancellable {})
)
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment