From ad03d2a3ff293981b33b88c94ee9f8e732569f13 Mon Sep 17 00:00:00 2001 From: Ryan ZHAO <> Date: Wed, 27 Mar 2024 15:50:44 +1100 Subject: [PATCH] WIP: refactor expiration update message --- .../ExpirationTimerUpdate.swift | 53 +------------------ 1 file changed, 2 insertions(+), 51 deletions(-) diff --git a/SessionMessagingKit/Messages/Control Messages/ExpirationTimerUpdate.swift b/SessionMessagingKit/Messages/Control Messages/ExpirationTimerUpdate.swift index ef78d81eb..2f08780a0 100644 --- a/SessionMessagingKit/Messages/Control Messages/ExpirationTimerUpdate.swift +++ b/SessionMessagingKit/Messages/Control Messages/ExpirationTimerUpdate.swift @@ -4,50 +4,9 @@ import Foundation import GRDB import SessionUtilitiesKit -// TODO: Refactor this when disappearing messages V2 is up and running public final class ExpirationTimerUpdate: ControlMessage { - private enum CodingKeys: String, CodingKey { - case syncTarget - case duration - } - - /// In the case of a sync message, the public key of the person the message was targeted at. - /// - /// - Note: `nil` if this isn't a sync message. - public var syncTarget: String? - public var duration: UInt32? - public override var isSelfSendValid: Bool { true } - // MARK: - Initialization - - public init(syncTarget: String?, duration: UInt32?) { - super.init() - - self.syncTarget = syncTarget - self.duration = duration - } - - // MARK: - Codable - - required init(from decoder: Decoder) throws { - try super.init(from: decoder) - - let container: KeyedDecodingContainer = try decoder.container(keyedBy: CodingKeys.self) - - syncTarget = try? container.decode(String.self, forKey: .syncTarget) - duration = try? container.decode(UInt32.self, forKey: .duration) - } - - public override func encode(to encoder: Encoder) throws { - try super.encode(to: encoder) - - var container: KeyedEncodingContainer = encoder.container(keyedBy: CodingKeys.self) - - try container.encodeIfPresent(syncTarget, forKey: .syncTarget) - try container.encodeIfPresent(duration, forKey: .duration) - } - // MARK: - Proto Conversion public override class func fromProto(_ proto: SNProtoContent, sender: String) -> ExpirationTimerUpdate? { @@ -56,17 +15,12 @@ public final class ExpirationTimerUpdate: ControlMessage { let isExpirationTimerUpdate = (dataMessageProto.flags & UInt32(SNProtoDataMessage.SNProtoDataMessageFlags.expirationTimerUpdate.rawValue)) != 0 guard isExpirationTimerUpdate else { return nil } - return ExpirationTimerUpdate( - syncTarget: dataMessageProto.syncTarget, - duration: proto.hasExpirationTimer ? proto.expirationTimer : dataMessageProto.expireTimer - ) + return ExpirationTimerUpdate() } public override func toProto(_ db: Database, threadId: String) -> SNProtoContent? { let dataMessageProto = SNProtoDataMessage.builder() dataMessageProto.setFlags(UInt32(SNProtoDataMessage.SNProtoDataMessageFlags.expirationTimerUpdate.rawValue)) - if let duration = duration { dataMessageProto.setExpireTimer(duration) } - if let syncTarget = syncTarget { dataMessageProto.setSyncTarget(syncTarget) } let contentProto = SNProtoContent.builder() // DisappearingMessagesConfiguration @@ -85,10 +39,7 @@ public final class ExpirationTimerUpdate: ControlMessage { public var description: String { """ - ExpirationTimerUpdate( - syncTarget: \(syncTarget ?? "null"), - duration: \(duration?.description ?? "null") - ) + ExpirationTimerUpdate() """ } }