From 0c864454aad67f0484b102bbe869ff9fe91b814f Mon Sep 17 00:00:00 2001 From: nielsandriesse Date: Wed, 5 May 2021 11:19:50 +1000 Subject: [PATCH] Remove duplicate message server ID tracking --- .../Database/Storage+OpenGroups.swift | 12 ------------ .../MessageReceiver+Handling.swift | 5 +++-- .../Sending & Receiving/MessageSender.swift | 4 ---- 3 files changed, 3 insertions(+), 18 deletions(-) diff --git a/SessionMessagingKit/Database/Storage+OpenGroups.swift b/SessionMessagingKit/Database/Storage+OpenGroups.swift index 93a563a45..4d57bf84b 100644 --- a/SessionMessagingKit/Database/Storage+OpenGroups.swift +++ b/SessionMessagingKit/Database/Storage+OpenGroups.swift @@ -192,18 +192,6 @@ extension Storage { public func setUserCount(to newValue: UInt64, forV2OpenGroupWithID openGroupID: String, using transaction: Any) { (transaction as! YapDatabaseReadWriteTransaction).setObject(newValue, forKey: openGroupID, inCollection: Storage.openGroupUserCountCollection) } - - public func getIDForMessage(withServerID serverID: UInt64) -> String? { - var result: String? = nil - Storage.read { transaction in - result = transaction.object(forKey: String(serverID), inCollection: Storage.openGroupMessageIDCollection) as? String - } - return result - } - - public func setIDForMessage(withServerID serverID: UInt64, to messageID: String, using transaction: Any) { - (transaction as! YapDatabaseReadWriteTransaction).setObject(messageID, forKey: String(serverID), inCollection: Storage.openGroupMessageIDCollection) - } public func setLastProfilePictureUploadDate(_ date: Date) { UserDefaults.standard[.lastProfilePictureUpload] = date diff --git a/SessionMessagingKit/Sending & Receiving/MessageReceiver+Handling.swift b/SessionMessagingKit/Sending & Receiving/MessageReceiver+Handling.swift index 934d16a61..4bf04e96f 100644 --- a/SessionMessagingKit/Sending & Receiving/MessageReceiver+Handling.swift +++ b/SessionMessagingKit/Sending & Receiving/MessageReceiver+Handling.swift @@ -294,8 +294,9 @@ extension MessageReceiver { cancelTypingIndicatorsIfNeeded(for: message.sender!) } // Keep track of the open group server message ID ↔ message ID relationship - if let serverID = message.openGroupServerMessageID { - storage.setIDForMessage(withServerID: serverID, to: tsMessageID, using: transaction) + if let serverID = message.openGroupServerMessageID, let tsMessage = TSMessage.fetch(uniqueId: tsMessageID, transaction: transaction) { + tsMessage.openGroupServerMessageID = serverID + tsMessage.save(with: transaction) } // Notify the user if needed guard (isMainAppAndActive || isBackgroundPoll), let tsIncomingMessage = TSMessage.fetch(uniqueId: tsMessageID, transaction: transaction) as? TSIncomingMessage, diff --git a/SessionMessagingKit/Sending & Receiving/MessageSender.swift b/SessionMessagingKit/Sending & Receiving/MessageSender.swift index 545c10f39..fe737b2ef 100644 --- a/SessionMessagingKit/Sending & Receiving/MessageSender.swift +++ b/SessionMessagingKit/Sending & Receiving/MessageSender.swift @@ -350,7 +350,6 @@ public final class MessageSender : NSObject { // MARK: Success & Failure Handling public static func handleSuccessfulMessageSend(_ message: Message, to destination: Message.Destination, isSyncMessage: Bool = false, using transaction: Any) { - let storage = SNMessagingKitConfiguration.shared.storage let transaction = transaction as! YapDatabaseReadWriteTransaction // Ignore future self-sends Storage.shared.addReceivedMessageTimestamp(message.sentTimestamp!, using: transaction) @@ -359,9 +358,6 @@ public final class MessageSender : NSObject { // Track the open group server message ID tsMessage.openGroupServerMessageID = message.openGroupServerMessageID ?? 0 tsMessage.save(with: transaction) - if let serverID = message.openGroupServerMessageID { - storage.setIDForMessage(withServerID: serverID, to: tsMessage.uniqueId!, using: transaction) - } // Mark the message as sent var recipients = [ message.recipient! ] if case .closedGroup(_) = destination, let threadID = message.threadID, // threadID should always be set at this point