Convert SignalStore to kotlin.

This commit is contained in:
Greyson Parrelli
2024-06-20 11:30:30 -04:00
parent 341c474610
commit 863b443317
382 changed files with 1934 additions and 1952 deletions

View File

@@ -98,8 +98,8 @@ class ChatColorsTable(context: Context, databaseHelper: SignalDatabase) : Databa
throw IllegalStateException("Failed to update ChatColor in database")
}
if (SignalStore.chatColorsValues().chatColors?.id == chatColors.id) {
SignalStore.chatColorsValues().chatColors = chatColors
if (SignalStore.chatColors.chatColors?.id == chatColors.id) {
SignalStore.chatColors.chatColors = chatColors
}
SignalDatabase.recipients.onUpdatedChatColors(chatColors)
@@ -116,8 +116,8 @@ class ChatColorsTable(context: Context, databaseHelper: SignalDatabase) : Databa
val db: SQLiteDatabase = databaseHelper.signalWritableDatabase
db.delete(TABLE_NAME, ID_WHERE, SqlUtil.buildArgs(chatColors.id.longValue))
if (SignalStore.chatColorsValues().chatColors?.id == chatColors.id) {
SignalStore.chatColorsValues().chatColors = null
if (SignalStore.chatColors.chatColors?.id == chatColors.id) {
SignalStore.chatColors.chatColors = null
}
SignalDatabase.recipients.onDeletedChatColors(chatColors)

View File

@@ -1097,7 +1097,7 @@ class GroupTable(context: Context?, databaseHelper: SignalDatabase?) : DatabaseT
fun getMemberRecipientIds(memberSet: MemberSet): List<RecipientId> {
val includeSelf = memberSet.includeSelf
val selfAci = SignalStore.account().requireAci()
val selfAci = SignalStore.account.requireAci()
val recipients: MutableList<RecipientId> = ArrayList(decryptedGroup.members.size + decryptedGroup.pendingMembers.size)
var unknownMembers = 0
@@ -1206,7 +1206,7 @@ class GroupTable(context: Context?, databaseHelper: SignalDatabase?) : DatabaseT
}
private fun gv2GroupActive(decryptedGroup: DecryptedGroup): Boolean {
val aci = SignalStore.account().requireAci()
val aci = SignalStore.account.requireAci()
return decryptedGroup.members.findMemberByAci(aci).isPresent ||
DecryptedGroupUtil.findPendingByServiceId(decryptedGroup.pendingMembers, aci).isPresent

View File

@@ -87,7 +87,7 @@ class InAppPaymentSubscriberTable(
.values(InAppPaymentSubscriberSerializer.serialize(inAppPaymentSubscriberRecord))
.run(conflictStrategy = SQLiteDatabase.CONFLICT_REPLACE)
SignalStore.donationsValues().setSubscriberCurrency(
SignalStore.donations.setSubscriberCurrency(
inAppPaymentSubscriberRecord.currency,
inAppPaymentSubscriberRecord.type
)
@@ -152,7 +152,7 @@ class InAppPaymentSubscriberTable(
val currencyCode = input.requireNonNullString(CURRENCY_CODE).takeIf { it.isNotEmpty() }
return InAppPaymentSubscriberRecord(
subscriberId = SubscriberId.deserialize(input.requireNonNullString(SUBSCRIBER_ID)),
currency = currencyCode?.let { Currency.getInstance(it) } ?: SignalStore.donationsValues().getSubscriptionCurrency(type),
currency = currencyCode?.let { Currency.getInstance(it) } ?: SignalStore.donations.getSubscriptionCurrency(type),
type = type,
requiresCancel = input.requireBoolean(REQUIRES_CANCEL) || currencyCode.isNullOrBlank(),
paymentMethodType = InAppPaymentData.PaymentMethodType.fromValue(input.requireInt(PAYMENT_METHOD_TYPE)) ?: InAppPaymentData.PaymentMethodType.UNKNOWN

View File

@@ -990,7 +990,7 @@ open class MessageTable(context: Context?, databaseHelper: SignalDatabase) : Dat
}
val updateDetail = GroupCallUpdateDetailsUtil.parse(message.body)
val containsSelf = joinedUuids.contains(SignalStore.account().requireAci().rawUuid)
val containsSelf = joinedUuids.contains(SignalStore.account.requireAci().rawUuid)
val sameEraId = updateDetail.eraId == eraId && !Util.isEmpty(eraId)
val inCallUuids = if (sameEraId) joinedUuids.map { it.toString() } else emptyList()
val contentValues = contentValuesOf(
@@ -1031,7 +1031,7 @@ open class MessageTable(context: Context?, databaseHelper: SignalDatabase) : Dat
MmsReader(cursor).use { reader ->
val record = reader.getNext() ?: return@withinTransaction false
val groupCallUpdateDetails = GroupCallUpdateDetailsUtil.parse(record.body)
val containsSelf = peekJoinedUuids.contains(SignalStore.account().requireAci().rawUuid)
val containsSelf = peekJoinedUuids.contains(SignalStore.account.requireAci().rawUuid)
val sameEraId = groupCallUpdateDetails.eraId == peekGroupCallEraId && !Util.isEmpty(peekGroupCallEraId)
val inCallUuids = if (sameEraId) {
@@ -1374,7 +1374,7 @@ open class MessageTable(context: Context?, databaseHelper: SignalDatabase) : Dat
}
fun markOnboardingStoryRead() {
val recipientId = SignalStore.releaseChannelValues().releaseChannelRecipientId ?: return
val recipientId = SignalStore.releaseChannel.releaseChannelRecipientId ?: return
val where = "$IS_STORY_CLAUSE AND NOT ($outgoingTypeClause) AND $READ = 0 AND $FROM_RECIPIENT_ID = ?"
val markedMessageInfos = setMessagesRead(where, buildArgs(recipientId))
@@ -2314,7 +2314,7 @@ open class MessageTable(context: Context?, databaseHelper: SignalDatabase) : Dat
}
private fun setMessagesRead(where: String, arguments: Array<String>?): List<MarkedMessageInfo> {
val releaseChannelId = SignalStore.releaseChannelValues().releaseChannelRecipientId
val releaseChannelId = SignalStore.releaseChannel.releaseChannelRecipientId
return writableDatabase.rawQuery(
"""
UPDATE $TABLE_NAME INDEXED BY $INDEX_THREAD_STORY_SCHEDULED_DATE_LATEST_REVISION_ID
@@ -2975,7 +2975,7 @@ open class MessageTable(context: Context?, databaseHelper: SignalDatabase) : Dat
contentValues.put(EXPIRES_IN, editedMessage?.expiresIn ?: message.expiresIn)
contentValues.put(VIEW_ONCE, message.isViewOnce)
contentValues.put(FROM_RECIPIENT_ID, Recipient.self().id.serialize())
contentValues.put(FROM_DEVICE_ID, SignalStore.account().deviceId)
contentValues.put(FROM_DEVICE_ID, SignalStore.account.deviceId)
contentValues.put(TO_RECIPIENT_ID, message.threadRecipient.id.serialize())
contentValues.put(HAS_DELIVERY_RECEIPT, earlyDeliveryReceipts.values.sumOf { it.count })
contentValues.put(RECEIPT_TIMESTAMP, earlyDeliveryReceipts.values.map { it.timestamp }.maxOrNull() ?: -1L)
@@ -4892,7 +4892,7 @@ open class MessageTable(context: Context?, databaseHelper: SignalDatabase) : Dat
return -1L
}
val releaseChannelRecipientId = SignalStore.releaseChannelValues().releaseChannelRecipientId ?: return -1L
val releaseChannelRecipientId = SignalStore.releaseChannel.releaseChannelRecipientId ?: return -1L
return threads.getThreadIdFor(releaseChannelRecipientId) ?: return -1L
}

View File

@@ -2080,7 +2080,7 @@ open class RecipientTable(context: Context, databaseHelper: SignalDatabase) : Da
db.beginTransaction()
try {
val id = Recipient.self().id
val newId = getAndPossiblyMerge(aci = SignalStore.account().requireAci(), pni = pni, e164 = e164, pniVerified = true, changeSelf = true)
val newId = getAndPossiblyMerge(aci = SignalStore.account.requireAci(), pni = pni, e164 = e164, pniVerified = true, changeSelf = true)
if (id == newId) {
Log.i(TAG, "[updateSelfPhone] Phone updated for self")
@@ -2516,24 +2516,24 @@ open class RecipientTable(context: Context, databaseHelper: SignalDatabase) : Da
val record = getRecord(operation.recipientId)
Log.e(TAG, "ID: ${record.id}, E164: ${record.e164}, ACI: ${record.aci}, PNI: ${record.pni}, Registered: ${record.registered}", true)
if (record.aci != null && record.aci == SignalStore.account().aci) {
if (pnisWithSessions.contains(SignalStore.account().pni!!)) {
if (record.aci != null && record.aci == SignalStore.account.aci) {
if (pnisWithSessions.contains(SignalStore.account.pni!!)) {
throw SseWithSelfAci(e)
} else {
throw SseWithSelfAciNoSession(e)
}
}
if (record.pni != null && record.pni == SignalStore.account().pni) {
if (pnisWithSessions.contains(SignalStore.account().pni!!)) {
if (record.pni != null && record.pni == SignalStore.account.pni) {
if (pnisWithSessions.contains(SignalStore.account.pni!!)) {
throw SseWithSelfPni(e)
} else {
throw SseWithSelfPniNoSession(e)
}
}
if (record.e164 != null && record.e164 == SignalStore.account().e164) {
if (pnisWithSessions.contains(SignalStore.account().pni!!)) {
if (record.e164 != null && record.e164 == SignalStore.account.e164) {
if (pnisWithSessions.contains(SignalStore.account.pni!!)) {
throw SseWithSelfE164(e)
} else {
throw SseWithSelfE164NoSession(e)
@@ -2543,7 +2543,7 @@ open class RecipientTable(context: Context, databaseHelper: SignalDatabase) : Da
if (pnisWithSessions.isEmpty()) {
throw SseWithNoPniSessionsException(e)
} else if (pnisWithSessions.size == 1) {
if (pnisWithSessions.first() == SignalStore.account().pni) {
if (pnisWithSessions.first() == SignalStore.account.pni) {
throw SseWithASinglePniSessionForSelfException(e)
} else {
throw SseWithASinglePniSessionException(e)
@@ -2782,9 +2782,9 @@ open class RecipientTable(context: Context, databaseHelper: SignalDatabase) : Da
}
private fun notSelf(e164: String?, pni: PNI?, aci: ACI?): Boolean {
return (e164 == null || e164 != SignalStore.account().e164) &&
(pni == null || pni != SignalStore.account().pni) &&
(aci == null || aci != SignalStore.account().aci)
return (e164 == null || e164 != SignalStore.account.e164) &&
(pni == null || pni != SignalStore.account.pni) &&
(aci == null || aci != SignalStore.account.aci)
}
private fun isSelf(data: PnpDataSet): Boolean {
@@ -2792,9 +2792,9 @@ open class RecipientTable(context: Context, databaseHelper: SignalDatabase) : Da
}
private fun isSelf(e164: String?, pni: PNI?, aci: ACI?): Boolean {
return (e164 != null && e164 == SignalStore.account().e164) ||
(pni != null && pni == SignalStore.account().pni) ||
(aci != null && aci == SignalStore.account().aci)
return (e164 != null && e164 == SignalStore.account.e164) ||
(pni != null && pni == SignalStore.account.pni) ||
(aci != null && aci == SignalStore.account.aci)
}
private fun processNonMergePnpUpdate(e164: String?, pni: PNI?, aci: ACI?, pniVerified: Boolean, changeSelf: Boolean, commonId: RecipientId, breadCrumbs: MutableList<String>): PnpChangeSet {

View File

@@ -115,7 +115,7 @@ class SenderKeyTable internal constructor(context: Context?, databaseHelper: Sig
return readableDatabase
.select(ID, DISTRIBUTION_ID, CREATED_AT)
.from(TABLE_NAME)
.where("$ADDRESS = ?", SignalStore.account().requireAci())
.where("$ADDRESS = ?", SignalStore.account.requireAci())
.orderBy("$CREATED_AT DESC")
.run()
}

View File

@@ -276,7 +276,7 @@ class ThreadTable(context: Context, databaseHelper: SignalDatabase) : DatabaseTa
}
private fun allowedToUnarchive(threadId: Long): Boolean {
if (!SignalStore.settings().shouldKeepMutedChatsArchived()) {
if (!SignalStore.settings.shouldKeepMutedChatsArchived()) {
return true
}
@@ -325,7 +325,7 @@ class ThreadTable(context: Context, databaseHelper: SignalDatabase) : DatabaseTa
return
}
val syncThreadTrimDeletes = SignalStore.settings().shouldSyncThreadTrimDeletes() && Recipient.self().deleteSyncCapability.isSupported
val syncThreadTrimDeletes = SignalStore.settings.shouldSyncThreadTrimDeletes() && Recipient.self().deleteSyncCapability.isSupported
val threadTrimsToSync = mutableListOf<ThreadDeleteSyncInfo>()
readableDatabase
@@ -809,8 +809,8 @@ class ThreadTable(context: Context, databaseHelper: SignalDatabase) : DatabaseTa
where += " AND $ARCHIVED = 0"
where += " AND ${RecipientTable.TABLE_NAME}.${RecipientTable.BLOCKED} = 0"
if (SignalStore.releaseChannelValues().releaseChannelRecipientId != null) {
where += " AND $TABLE_NAME.$RECIPIENT_ID != ${SignalStore.releaseChannelValues().releaseChannelRecipientId!!.toLong()}"
if (SignalStore.releaseChannel.releaseChannelRecipientId != null) {
where += " AND $TABLE_NAME.$RECIPIENT_ID != ${SignalStore.releaseChannel.releaseChannelRecipientId!!.toLong()}"
}
val query = createQuery(

View File

@@ -386,7 +386,7 @@ object V149_LegacyMigrations : SignalDatabaseMigration {
val messageSoundUri: Uri? = if (messageSound != null) Uri.parse(messageSound) else null
val vibrateState: Int = cursor.getInt(cursor.getColumnIndexOrThrow("vibrate"))
var displayName: String? = NotificationChannels.getInstance().getChannelDisplayNameFor(systemName, profileName, null, address)
val vibrateEnabled: Boolean = if (vibrateState == 0) SignalStore.settings().isMessageVibrateEnabled else vibrateState == 1
val vibrateEnabled: Boolean = if (vibrateState == 0) SignalStore.settings.isMessageVibrateEnabled else vibrateState == 1
if (GroupId.isEncodedGroup(address)) {
db.rawQuery("SELECT title FROM groups WHERE group_id = ?", arrayOf(address)).use { groupCursor ->
if (groupCursor != null && groupCursor.moveToFirst()) {

View File

@@ -89,7 +89,7 @@ object V168_SingleMessageTableMigration : SignalDatabaseMigration {
stopwatch.stop(TAG)
SignalStore.plaintext().smsMigrationIdOffset = nextMmsId
SignalStore.plaintext.smsMigrationIdOffset = nextMmsId
}
private fun copySmsToMms(db: SQLiteDatabase, idOffset: Long) {

View File

@@ -155,7 +155,7 @@ class GroupRecord(
return if (isV2Group) {
val memberLevel = requireV2GroupProperties().memberLevel(recipient.serviceId)
if (recipient.isSelf && memberLevel == GroupTable.MemberLevel.NOT_A_MEMBER) {
requireV2GroupProperties().memberLevel(Optional.ofNullable(SignalStore.account().pni))
requireV2GroupProperties().memberLevel(Optional.ofNullable(SignalStore.account.pni))
} else {
memberLevel
}