From 5f4758d36a692d2d1ff946ea3f3251a55698d444 Mon Sep 17 00:00:00 2001 From: Ryan Zhao Date: Tue, 14 Jun 2022 09:47:11 +1000 Subject: [PATCH] fix: use yapdatabase transaction for skin tones --- Session/Emoji/EmojiWithSkinTones.swift | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Session/Emoji/EmojiWithSkinTones.swift b/Session/Emoji/EmojiWithSkinTones.swift index 3e7cd02a9..26b1a14be 100644 --- a/Session/Emoji/EmojiWithSkinTones.swift +++ b/Session/Emoji/EmojiWithSkinTones.swift @@ -29,7 +29,7 @@ public struct EmojiWithSkinTones: Hashable { } extension Emoji { - private static let keyValueStore = SDSKeyValueStore(collection: "Emoji+PreferredSkinTonePermutation") + private static let emojiWithPreferredSkinToneCollection = "Emoji+PreferredSkinTonePermutation" static func allSendableEmojiByCategoryWithPreferredSkinTones(transaction: YapDatabaseReadTransaction) -> [Category: [EmojiWithSkinTones]] { return Category.allCases.reduce(into: [Category: [EmojiWithSkinTones]]()) { result, category in @@ -38,7 +38,7 @@ extension Emoji { } func withPreferredSkinTones(transaction: YapDatabaseReadTransaction) -> EmojiWithSkinTones { - guard let rawSkinTones = Self.keyValueStore.getObject(forKey: rawValue, transaction: transaction) as? [String] else { + guard let rawSkinTones = transaction.object(forKey: rawValue, inCollection: Self.emojiWithPreferredSkinToneCollection) as? [String] else { return EmojiWithSkinTones(baseEmoji: self, skinTones: nil) } @@ -47,9 +47,9 @@ extension Emoji { func setPreferredSkinTones(_ preferredSkinTonePermutation: [SkinTone]?, transaction: YapDatabaseReadWriteTransaction) { if let preferredSkinTonePermutation = preferredSkinTonePermutation { - Self.keyValueStore.setObject(preferredSkinTonePermutation.map { $0.rawValue }, key: rawValue, transaction: transaction) + transaction.setObject(preferredSkinTonePermutation.map { $0.rawValue }, forKey: rawValue, inCollection: Self.emojiWithPreferredSkinToneCollection) } else { - Self.keyValueStore.removeValue(forKey: rawValue, transaction: transaction) + transaction.removeObject(forKey: rawValue, inCollection: Self.emojiWithPreferredSkinToneCollection) } }