diff options
| author | Andrej Mihajlov <and@mullvad.net> | 2022-05-19 11:29:06 +0200 |
|---|---|---|
| committer | Andrej Mihajlov <and@mullvad.net> | 2022-05-30 15:00:06 +0200 |
| commit | facffb2d1bec483bfe164a0319273256f2cef033 (patch) | |
| tree | fcfef8dc13f58236e16fc59359ef9d12420b84dc | |
| parent | 07e672f7585e7f89ae1e833405c76ea16b82787f (diff) | |
| download | mullvadvpn-facffb2d1bec483bfe164a0319273256f2cef033.tar.xz mullvadvpn-facffb2d1bec483bfe164a0319273256f2cef033.zip | |
Payments: switch to accounts proxy
| -rw-r--r-- | ios/MullvadVPN/AppStorePaymentManager/AppStorePaymentManager.swift | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/ios/MullvadVPN/AppStorePaymentManager/AppStorePaymentManager.swift b/ios/MullvadVPN/AppStorePaymentManager/AppStorePaymentManager.swift index 885ad3cbad..e94a6e906b 100644 --- a/ios/MullvadVPN/AppStorePaymentManager/AppStorePaymentManager.swift +++ b/ios/MullvadVPN/AppStorePaymentManager/AppStorePaymentManager.swift @@ -29,6 +29,7 @@ class AppStorePaymentManager: NSObject, SKPaymentTransactionObserver { }() private let apiProxy = REST.ProxyFactory.shared.createAPIProxy() + private let accountsProxy = REST.ProxyFactory.shared.createAccountsProxy() private let exclusivityController = ExclusivityController() @@ -111,16 +112,19 @@ class AppStorePaymentManager: NSObject, SKPaymentTransactionObserver { } func addPayment(_ payment: SKPayment, for accountToken: String) { - var cancellableTask: Cancellable? + var task: Cancellable? let backgroundTaskIdentifier = UIApplication.shared.beginBackgroundTask(withName: "Validate account token") { - cancellableTask?.cancel() + task?.cancel() } // Validate account token before adding new payment to the queue. - cancellableTask = apiProxy.getAccountExpiry(accountNumber: accountToken, retryStrategy: .default) { result in + task = accountsProxy.getAccountData( + accountNumber: accountToken, + retryStrategy: .default + ) { completion in dispatchPrecondition(condition: .onQueue(.main)) - switch result { + switch completion { case .success: self.associateAccountToken(accountToken, and: payment) self.paymentQueue.add(payment) |
