diff options
Diffstat (limited to 'ios/MullvadVPN/RelayCache')
| -rw-r--r-- | ios/MullvadVPN/RelayCache/RelayCacheTracker.swift | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/ios/MullvadVPN/RelayCache/RelayCacheTracker.swift b/ios/MullvadVPN/RelayCache/RelayCacheTracker.swift index b5e9d87a44..9495c0adeb 100644 --- a/ios/MullvadVPN/RelayCache/RelayCacheTracker.swift +++ b/ios/MullvadVPN/RelayCache/RelayCacheTracker.swift @@ -303,9 +303,8 @@ extension RelayCache.Tracker { } } -fileprivate class UpdateRelaysOperation: AsyncOperation { +fileprivate class UpdateRelaysOperation: ResultOperation<RelayCache.FetchResult, RelayCache.Error> { typealias UpdateHandler = (RelayCache.CachedRelays) -> Void - typealias CompletionHandler = (OperationCompletion<RelayCache.FetchResult, RelayCache.Error>) -> Void private let dispatchQueue: DispatchQueue private let restClient: REST.Client @@ -315,7 +314,6 @@ fileprivate class UpdateRelaysOperation: AsyncOperation { private let logger = Logger(label: "RelayCacheTracker.UpdateRelaysOperation") private let updateHandler: UpdateHandler - private var completionHandler: CompletionHandler? private var downloadCancellable: Cancellable? init(dispatchQueue: DispatchQueue, @@ -329,7 +327,8 @@ fileprivate class UpdateRelaysOperation: AsyncOperation { self.cacheFileURL = cacheFileURL self.relayUpdateInterval = relayUpdateInterval self.updateHandler = updateHandler - self.completionHandler = completionHandler + + super.init(completionQueue: dispatchQueue, completionHandler: completionHandler) } override func main() { @@ -370,15 +369,6 @@ fileprivate class UpdateRelaysOperation: AsyncOperation { } } - private func finish(completion: OperationCompletion<RelayCache.FetchResult, RelayCache.Error>) { - let block = completionHandler - completionHandler = nil - - block?(completion) - - finish() - } - private func didReceiveNewRelays(etag: String?, relays: REST.ServerRelaysResponse) { let numRelays = relays.wireguard.relays.count |
