ExpirationTimerUpdate refactor

This commit is contained in:
charles 2022-11-22 12:08:58 +11:00
parent 962e648bb8
commit fa1a2f5a9d
11 changed files with 14 additions and 13 deletions

View File

@ -39,7 +39,7 @@ abstract class Message {
dataMessage.group = groupProto.build() dataMessage.group = groupProto.build()
} }
fun setExpirationSettingsConfigIfNeeded(builder: SignalServiceProtos.Content.Builder) { fun setExpirationConfigurationIfNeeded(builder: SignalServiceProtos.Content.Builder) {
val threadId = threadID ?: return val threadId = threadID ?: return
val config = MessagingModuleConfiguration.shared.storage.getExpirationConfiguration(threadId) ?: return val config = MessagingModuleConfiguration.shared.storage.getExpirationConfiguration(threadId) ?: return
builder.expirationTimer = config.durationSeconds builder.expirationTimer = config.durationSeconds

View File

@ -82,7 +82,7 @@ class CallMessage(): ControlMessage() {
.setUuid(callId!!.toString()) .setUuid(callId!!.toString())
val content = SignalServiceProtos.Content.newBuilder() val content = SignalServiceProtos.Content.newBuilder()
setExpirationSettingsConfigIfNeeded(content) setExpirationConfigurationIfNeeded(content)
return content return content
.setCallMessage(callMessage) .setCallMessage(callMessage)

View File

@ -168,7 +168,7 @@ class ClosedGroupControlMessage() : ControlMessage() {
val dataMessageProto = DataMessage.newBuilder() val dataMessageProto = DataMessage.newBuilder()
dataMessageProto.closedGroupControlMessage = closedGroupControlMessage.build() dataMessageProto.closedGroupControlMessage = closedGroupControlMessage.build()
// Expiration timer // Expiration timer
setExpirationSettingsConfigIfNeeded(contentProto) setExpirationConfigurationIfNeeded(contentProto)
// Group context // Group context
setGroupContext(dataMessageProto) setGroupContext(dataMessageProto)
contentProto.dataMessage = dataMessageProto.build() contentProto.dataMessage = dataMessageProto.build()

View File

@ -64,7 +64,7 @@ class DataExtractionNotification() : ControlMessage() {
} }
val contentProto = SignalServiceProtos.Content.newBuilder() val contentProto = SignalServiceProtos.Content.newBuilder()
contentProto.dataExtractionNotification = dataExtractionNotification.build() contentProto.dataExtractionNotification = dataExtractionNotification.build()
setExpirationSettingsConfigIfNeeded(contentProto) setExpirationConfigurationIfNeeded(contentProto)
return contentProto.build() return contentProto.build()
} catch (e: Exception) { } catch (e: Exception) {
Log.w(TAG, "Couldn't construct data extraction notification proto from: $this") Log.w(TAG, "Couldn't construct data extraction notification proto from: $this")

View File

@ -66,12 +66,13 @@ class ExpirationTimerUpdate() : ControlMessage() {
} }
} }
val contentProto = SignalServiceProtos.Content.newBuilder() val contentProto = SignalServiceProtos.Content.newBuilder()
try { return try {
contentProto.dataMessage = dataMessageProto.build() contentProto.dataMessage = dataMessageProto.build()
return contentProto.build() setExpirationConfigurationIfNeeded(contentProto)
contentProto.build()
} catch (e: Exception) { } catch (e: Exception) {
Log.w(TAG, "Couldn't construct expiration timer update proto from: $this") Log.w(TAG, "Couldn't construct expiration timer update proto from: $this")
return null null
} }
} }
} }

View File

@ -13,7 +13,7 @@ class MessageRequestResponse(val isApproved: Boolean) : ControlMessage() {
val contentProto = SignalServiceProtos.Content.newBuilder() val contentProto = SignalServiceProtos.Content.newBuilder()
return try { return try {
contentProto.messageRequestResponse = messageRequestResponseProto.build() contentProto.messageRequestResponse = messageRequestResponseProto.build()
setExpirationSettingsConfigIfNeeded(contentProto) setExpirationConfigurationIfNeeded(contentProto)
contentProto.build() contentProto.build()
} catch (e: Exception) { } catch (e: Exception) {
Log.w(TAG, "Couldn't construct message request response proto from: $this") Log.w(TAG, "Couldn't construct message request response proto from: $this")

View File

@ -41,7 +41,7 @@ class ReadReceipt() : ControlMessage() {
val contentProto = SignalServiceProtos.Content.newBuilder() val contentProto = SignalServiceProtos.Content.newBuilder()
return try { return try {
contentProto.receiptMessage = receiptProto.build() contentProto.receiptMessage = receiptProto.build()
setExpirationSettingsConfigIfNeeded(contentProto) setExpirationConfigurationIfNeeded(contentProto)
contentProto.build() contentProto.build()
} catch (e: Exception) { } catch (e: Exception) {
Log.w(TAG, "Couldn't construct read receipt proto from: $this") Log.w(TAG, "Couldn't construct read receipt proto from: $this")

View File

@ -50,7 +50,7 @@ class SyncedExpiriesMessage(): ControlMessage() {
val contentProto = SignalServiceProtos.Content.newBuilder() val contentProto = SignalServiceProtos.Content.newBuilder()
return try { return try {
contentProto.syncedExpiries = syncedExpiriesProto.build() contentProto.syncedExpiries = syncedExpiriesProto.build()
setExpirationSettingsConfigIfNeeded(contentProto) setExpirationConfigurationIfNeeded(contentProto)
contentProto.build() contentProto.build()
} catch (e: Exception) { } catch (e: Exception) {
Log.w(TAG, "Couldn't construct synced expiries proto from: $this") Log.w(TAG, "Couldn't construct synced expiries proto from: $this")

View File

@ -60,7 +60,7 @@ class TypingIndicator() : ControlMessage() {
val contentProto = SignalServiceProtos.Content.newBuilder() val contentProto = SignalServiceProtos.Content.newBuilder()
return try { return try {
contentProto.typingMessage = typingIndicatorProto.build() contentProto.typingMessage = typingIndicatorProto.build()
setExpirationSettingsConfigIfNeeded(contentProto) setExpirationConfigurationIfNeeded(contentProto)
contentProto.build() contentProto.build()
} catch (e: Exception) { } catch (e: Exception) {
Log.w(TAG, "Couldn't construct typing indicator proto from: $this") Log.w(TAG, "Couldn't construct typing indicator proto from: $this")

View File

@ -45,7 +45,7 @@ class UnsendRequest(): ControlMessage() {
val contentProto = SignalServiceProtos.Content.newBuilder() val contentProto = SignalServiceProtos.Content.newBuilder()
return try { return try {
contentProto.unsendRequest = unsendRequestProto.build() contentProto.unsendRequest = unsendRequestProto.build()
setExpirationSettingsConfigIfNeeded(contentProto) setExpirationConfigurationIfNeeded(contentProto)
contentProto.build() contentProto.build()
} catch (e: Exception) { } catch (e: Exception) {
Log.w(TAG, "Couldn't construct unsend request proto from: $this") Log.w(TAG, "Couldn't construct unsend request proto from: $this")

View File

@ -116,7 +116,7 @@ class VisibleMessage : Message() {
dataMessage.addAllAttachments(pointers) dataMessage.addAllAttachments(pointers)
// TODO: Contact // TODO: Contact
// Expiration timer // Expiration timer
setExpirationSettingsConfigIfNeeded(proto) setExpirationConfigurationIfNeeded(proto)
// Group context // Group context
val storage = MessagingModuleConfiguration.shared.storage val storage = MessagingModuleConfiguration.shared.storage
if (storage.isClosedGroup(recipient!!)) { if (storage.isClosedGroup(recipient!!)) {