diff options
| author | Bug Magnet <marco.nikic@mullvad.net> | 2023-09-08 09:04:26 +0200 |
|---|---|---|
| committer | Bug Magnet <marco.nikic@mullvad.net> | 2023-09-08 09:04:26 +0200 |
| commit | 350719c2879dd4cf0272d5f4e86c0c9c0c8138c9 (patch) | |
| tree | c49abf99f8e95d032a158e07c2d2bbe6796caee1 /ios/Operations | |
| parent | 827a84c9287705e30487f2f53b360e05dc418f54 (diff) | |
| parent | 944c07ef95f33d8b5798cdb779a2138ec33c3cd2 (diff) | |
| download | mullvadvpn-350719c2879dd4cf0272d5f4e86c0c9c0c8138c9.tar.xz mullvadvpn-350719c2879dd4cf0272d5f4e86c0c9c0c8138c9.zip | |
Merge branch 'fix-swiftlint-warnings-in-xcode-ios-296'
Diffstat (limited to 'ios/Operations')
| -rw-r--r-- | ios/Operations/AsyncOperation.swift | 27 | ||||
| -rw-r--r-- | ios/Operations/OperationBlockObserverSupport.swift | 33 |
2 files changed, 35 insertions, 25 deletions
diff --git a/ios/Operations/AsyncOperation.swift b/ios/Operations/AsyncOperation.swift index ea8edb24c4..638d6ff415 100644 --- a/ios/Operations/AsyncOperation.swift +++ b/ios/Operations/AsyncOperation.swift @@ -392,6 +392,8 @@ open class AsyncOperation: Operation { } } +extension AsyncOperation: OperationBlockObserverSupport {} + extension Operation { public func addDependencies(_ dependencies: [Operation]) { for dependency in dependencies { @@ -399,28 +401,3 @@ extension Operation { } } } - -public protocol OperationBlockObserverSupport {} -extension AsyncOperation: OperationBlockObserverSupport {} - -extension OperationBlockObserverSupport where Self: AsyncOperation { - /// Add observer responding to cancellation event. - public func onCancel(_ fn: @escaping (Self) -> Void) { - addBlockObserver(OperationBlockObserver(didCancel: fn)) - } - - /// Add observer responding to finish event. - public func onFinish(_ fn: @escaping (Self, Error?) -> Void) { - addBlockObserver(OperationBlockObserver(didFinish: fn)) - } - - /// Add observer responding to start event. - public func onStart(_ fn: @escaping (Self) -> Void) { - addBlockObserver(OperationBlockObserver(didStart: fn)) - } - - /// Add block-based observer. - public func addBlockObserver(_ observer: OperationBlockObserver<Self>) { - addObserver(observer) - } -} diff --git a/ios/Operations/OperationBlockObserverSupport.swift b/ios/Operations/OperationBlockObserverSupport.swift new file mode 100644 index 0000000000..9f9855abff --- /dev/null +++ b/ios/Operations/OperationBlockObserverSupport.swift @@ -0,0 +1,33 @@ +// +// OperationBlockObserverSupport.swift +// Operations +// +// Created by Jon Petersson on 2023-09-07. +// Copyright © 2023 Mullvad VPN AB. All rights reserved. +// + +import Foundation + +public protocol OperationBlockObserverSupport {} + +extension OperationBlockObserverSupport where Self: AsyncOperation { + /// Add observer responding to cancellation event. + public func onCancel(_ fn: @escaping (Self) -> Void) { + addBlockObserver(OperationBlockObserver(didCancel: fn)) + } + + /// Add observer responding to finish event. + public func onFinish(_ fn: @escaping (Self, Error?) -> Void) { + addBlockObserver(OperationBlockObserver(didFinish: fn)) + } + + /// Add observer responding to start event. + public func onStart(_ fn: @escaping (Self) -> Void) { + addBlockObserver(OperationBlockObserver(didStart: fn)) + } + + /// Add block-based observer. + public func addBlockObserver(_ observer: OperationBlockObserver<Self>) { + addObserver(observer) + } +} |
