Signal-iOS/SignalServiceKit/Messages/OutgoingNullMessage.swift
2026-01-26 14:19:48 -06:00

38 lines
1.1 KiB
Swift

//
// Copyright 2026 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
//
import Foundation
@objc(OWSOutgoingNullMessage)
final class OutgoingNullMessage: TransientOutgoingMessage {
init(contactThread: TSContactThread, tx: DBReadTransaction) {
let messageBuilder = TSOutgoingMessageBuilder.outgoingMessageBuilder(thread: contactThread)
super.init(
outgoingMessageWith: messageBuilder,
additionalRecipients: [],
explicitRecipients: [],
skippedRecipients: [],
transaction: tx,
)
}
override class var supportsSecureCoding: Bool { true }
required init?(coder: NSCoder) {
super.init(coder: coder)
}
override func contentBuilder(thread: TSThread, transaction: DBReadTransaction) -> SSKProtoContentBuilder? {
let contentBuilder = SSKProtoContent.builder()
contentBuilder.setNullMessage(SSKProtoNullMessage.builder().buildInfallibly())
return contentBuilder
}
override func shouldSyncTranscript() -> Bool { false }
override var contentHint: SealedSenderContentHint { .implicit }
}