Inline the deleteSync capability.

This commit is contained in:
Greyson Parrelli
2024-12-03 12:11:25 -05:00
parent f44d157f9a
commit a3af237397
20 changed files with 16 additions and 69 deletions

View File

@@ -418,7 +418,6 @@ open class RecipientTable(context: Context, databaseHelper: SignalDatabase) : Da
@JvmStatic
fun maskCapabilitiesToLong(capabilities: SignalServiceProfile.Capabilities): Long {
var value: Long = 0
value = Bitmask.update(value, Capabilities.DELETE_SYNC, Capabilities.BIT_LENGTH, Recipient.Capability.fromBoolean(capabilities.isDeleteSync).serialize().toLong())
value = Bitmask.update(value, Capabilities.STORAGE_SERVICE_ENCRYPTION_V2, Capabilities.BIT_LENGTH, Recipient.Capability.fromBoolean(capabilities.isStorageServiceEncryptionV2).serialize().toLong())
return value
}
@@ -4711,8 +4710,7 @@ open class RecipientTable(context: Context, databaseHelper: SignalDatabase) : Da
// const val GIFT_BADGES = 6
// const val PNP = 7
// const val PAYMENT_ACTIVATION = 8
const val DELETE_SYNC = 9
// const val DELETE_SYNC = 9
// const val VERSIONED_EXPIRATION_TIMER = 10
const val STORAGE_SERVICE_ENCRYPTION_V2 = 11

View File

@@ -176,7 +176,6 @@ object RecipientTableCursorUtil {
val capabilities = cursor.requireLong(RecipientTable.CAPABILITIES)
return RecipientRecord.Capabilities(
rawBits = capabilities,
deleteSync = Recipient.Capability.deserialize(Bitmask.read(capabilities, Capabilities.DELETE_SYNC, Capabilities.BIT_LENGTH).toInt()),
storageServiceEncryptionV2 = Recipient.Capability.deserialize(Bitmask.read(capabilities, Capabilities.STORAGE_SERVICE_ENCRYPTION_V2, Capabilities.BIT_LENGTH).toInt())
)
}

View File

@@ -329,7 +329,7 @@ class ThreadTable(context: Context, databaseHelper: SignalDatabase) : DatabaseTa
return
}
val syncThreadTrimDeletes = SignalStore.settings.shouldSyncThreadTrimDeletes() && Recipient.self().deleteSyncCapability.isSupported
val syncThreadTrimDeletes = SignalStore.settings.shouldSyncThreadTrimDeletes()
val threadTrimsToSync = mutableListOf<ThreadDeleteSyncInfo>()
readableDatabase
@@ -1267,7 +1267,7 @@ class ThreadTable(context: Context, databaseHelper: SignalDatabase) : DatabaseTa
val queries: List<SqlUtil.Query> = SqlUtil.buildCollectionQuery(ID, selectedConversations)
writableDatabase.withinTransaction { db ->
if (syncThreadDeletes && Recipient.self().deleteSyncCapability.isSupported) {
if (syncThreadDeletes) {
for (threadId in selectedConversations) {
val mostRecentMessages = messages.getMostRecentAddressableMessages(threadId, excludeExpiring = false)
val mostRecentNonExpiring = if (mostRecentMessages.size == MessageTable.ADDRESSABLE_MESSAGE_LIMIT && mostRecentMessages.any { it.expiresIn > 0 }) {

View File

@@ -120,14 +120,12 @@ data class RecipientRecord(
data class Capabilities(
val rawBits: Long,
val deleteSync: Recipient.Capability,
val storageServiceEncryptionV2: Recipient.Capability
) {
companion object {
@JvmField
val UNKNOWN = Capabilities(
rawBits = 0,
deleteSync = Recipient.Capability.UNKNOWN,
storageServiceEncryptionV2 = Recipient.Capability.UNKNOWN
)
}