NetNewsWire/Frameworks/Account/CloudKit/CKContainer+Extensions.swift

40 lines
941 B
Swift
Raw Normal View History

2020-04-04 20:33:49 +02:00
//
// CKContainer+Extensions.swift
2020-04-04 20:33:49 +02:00
// Account
//
// Created by Maurice Parker on 4/4/20.
// Copyright © 2020 Ranchero Software, LLC. All rights reserved.
//
import Foundation
import CloudKit
extension CKContainer {
2020-04-04 20:33:49 +02:00
private static let userRecordIDKey = "cloudkit.server.userRecordID"
var userRecordID: String? {
2020-04-04 20:33:49 +02:00
get {
return UserDefaults.standard.string(forKey: Self.userRecordIDKey)
}
set {
guard let userRecordID = newValue else {
UserDefaults.standard.removeObject(forKey: Self.userRecordIDKey)
return
}
UserDefaults.standard.set(userRecordID, forKey: Self.userRecordIDKey)
}
}
func fetchUserRecordID() {
guard userRecordID == nil else { return }
fetchUserRecordID { recordID, error in
2020-04-04 20:33:49 +02:00
guard let recordID = recordID, error == nil else {
return
}
self.userRecordID = recordID.recordName
2020-04-04 20:33:49 +02:00
}
}
}