Make insertStatuses take a Set.

This commit is contained in:
Brent Simmons 2024-05-13 22:09:14 -07:00
parent d58821a7ad
commit a474a8fc18
8 changed files with 9 additions and 9 deletions

View File

@ -408,7 +408,7 @@ enum CloudKitAccountDelegateError: LocalizedError {
SyncStatus(articleID: article.articleID, key: SyncStatus.Key(statusKey), flag: flag)
}
try? await database.insertStatuses(syncStatuses)
try? await database.insertStatuses(Set(syncStatuses))
if let count = try? await self.database.selectPendingCount(), count > 100 {
try await sendArticleStatus(for: account, showProgress: false)
}
@ -671,7 +671,7 @@ private extension CloudKitAccountDelegate {
return SyncStatus(articleID: article.articleID, key: statusKey, flag: flag)
}
try? await database.insertStatuses(syncStatuses)
try? await database.insertStatuses(Set(syncStatuses))
}
func sendArticleStatus(for account: Account, showProgress: Bool) async throws {

View File

@ -124,7 +124,7 @@ private extension CloudKitArticlesZoneDelegate {
}
let syncStatuses = deletes.map { SyncStatus(articleID: $0.articleID, key: .deleted, flag: true) }
try? await self.database.insertStatuses(syncStatuses)
try? await self.database.insertStatuses(Set(syncStatuses))
} catch {
errorOccurred = true

View File

@ -378,7 +378,7 @@ public enum FeedbinAccountDelegateError: String, Error {
return SyncStatus(articleID: article.articleID, key: SyncStatus.Key(statusKey), flag: flag)
}
try? await database.insertStatuses(syncStatuses)
try? await database.insertStatuses(Set(syncStatuses))
if let count = try? await database.selectPendingCount(), count > 100 {
try? await sendArticleStatus(for: account)

View File

@ -357,7 +357,7 @@ final class FeedlyAccountDelegate: AccountDelegate {
return SyncStatus(articleID: article.articleID, key: SyncStatus.Key(statusKey), flag: flag)
}
try? await syncDatabase.insertStatuses(syncStatuses)
try? await syncDatabase.insertStatuses(Set(syncStatuses))
if let count = try? await syncDatabase.selectPendingCount(), count > 100 {
try? await sendArticleStatus(for: account)

View File

@ -411,7 +411,7 @@ final class NewsBlurAccountDelegate: AccountDelegate {
let syncStatuses = articles.map { article in
return SyncStatus(articleID: article.articleID, key: SyncStatus.Key(statusKey), flag: flag)
}
try? await syncDatabase.insertStatuses(syncStatuses)
try? await syncDatabase.insertStatuses(Set(syncStatuses))
if let count = try? await syncDatabase.selectPendingCount(), count > 100 {
try await sendArticleStatus(for: account)

View File

@ -443,7 +443,7 @@ final class ReaderAPIAccountDelegate: AccountDelegate {
return SyncStatus(articleID: article.articleID, key: SyncStatus.Key(statusKey), flag: flag)
}
try await self.database.insertStatuses(syncStatuses)
try await self.database.insertStatuses(Set(syncStatuses))
if let count = try await self.database.selectPendingCount(), count > 100 {
try await sendArticleStatus(for: account)

View File

@ -28,7 +28,7 @@ public actor SyncDatabase {
// MARK: - API
public func insertStatuses(_ statuses: [SyncStatus]) throws {
public func insertStatuses(_ statuses: Set<SyncStatus>) throws {
guard let database else {
throw DatabaseError.suspended

View File

@ -88,7 +88,7 @@ struct SyncStatusTable {
database.executeUpdateInTransaction(deleteSQL, withArgumentsIn: parameters)
}
func insertStatuses(_ statuses: [SyncStatus], database: FMDatabase) {
func insertStatuses(_ statuses: Set<SyncStatus>, database: FMDatabase) {
database.beginTransaction()