diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/InAppPaymentTable.kt b/app/src/main/java/org/thoughtcrime/securesms/database/InAppPaymentTable.kt index 11d1bee9b3..6d4a4ea7b8 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/InAppPaymentTable.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/database/InAppPaymentTable.kt @@ -14,9 +14,9 @@ import androidx.core.content.contentValuesOf import kotlinx.parcelize.IgnoredOnParcel import kotlinx.parcelize.Parcelize import kotlinx.parcelize.TypeParceler -import org.signal.core.models.database.DatabaseId import org.signal.core.util.DatabaseSerializer import org.signal.core.util.Serializer +import org.signal.core.util.database.DatabaseId import org.signal.core.util.delete import org.signal.core.util.exists import org.signal.core.util.insertInto diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/model/DistributionListId.java b/app/src/main/java/org/thoughtcrime/securesms/database/model/DistributionListId.java index b9bea1af13..7e136cc5e3 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/model/DistributionListId.java +++ b/app/src/main/java/org/thoughtcrime/securesms/database/model/DistributionListId.java @@ -6,7 +6,7 @@ import android.os.Parcelable; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import org.signal.core.models.database.DatabaseId; +import org.signal.core.util.database.DatabaseId; import java.util.Objects; diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/model/MessageExportStatus.kt b/app/src/main/java/org/thoughtcrime/securesms/database/model/MessageExportStatus.kt index 12dfb33306..43cec0f8e1 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/model/MessageExportStatus.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/database/model/MessageExportStatus.kt @@ -1,7 +1,7 @@ package org.thoughtcrime.securesms.database.model -import org.signal.core.models.database.DatabaseId import org.signal.core.util.IntSerializer +import org.signal.core.util.database.DatabaseId /** * Export status for a message. diff --git a/app/src/main/java/org/thoughtcrime/securesms/groups/GroupId.kt b/app/src/main/java/org/thoughtcrime/securesms/groups/GroupId.kt index b74cb5ad39..0b55aab94a 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/groups/GroupId.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/groups/GroupId.kt @@ -11,10 +11,10 @@ import kotlinx.parcelize.Parcelize import kotlinx.serialization.Serializable import kotlinx.serialization.Transient import okio.ByteString -import org.signal.core.models.database.DatabaseId import org.signal.core.util.Hex import org.signal.core.util.LRUCache import org.signal.core.util.Util +import org.signal.core.util.database.DatabaseId import org.signal.libsignal.protocol.kdf.HKDF import org.signal.libsignal.zkgroup.InvalidInputException import org.signal.libsignal.zkgroup.groups.GroupIdentifier diff --git a/app/src/main/java/org/thoughtcrime/securesms/notifications/profiles/NotificationProfileId.kt b/app/src/main/java/org/thoughtcrime/securesms/notifications/profiles/NotificationProfileId.kt index 25cba61272..9bdcc9af0f 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/notifications/profiles/NotificationProfileId.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/notifications/profiles/NotificationProfileId.kt @@ -5,8 +5,8 @@ package org.thoughtcrime.securesms.notifications.profiles -import org.signal.core.models.database.DatabaseId import org.signal.core.util.UuidUtil +import org.signal.core.util.database.DatabaseId import java.util.UUID /** diff --git a/app/src/main/java/org/thoughtcrime/securesms/recipients/RecipientId.kt b/app/src/main/java/org/thoughtcrime/securesms/recipients/RecipientId.kt index 248bdfc76e..5caafdb03f 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/recipients/RecipientId.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/recipients/RecipientId.kt @@ -13,8 +13,8 @@ import kotlinx.parcelize.Parcelize import kotlinx.serialization.Serializable import kotlinx.serialization.Transient import org.signal.core.models.ServiceId -import org.signal.core.models.database.DatabaseId import org.signal.core.util.LongSerializer +import org.signal.core.util.database.DatabaseId import org.signal.core.util.logging.Log import org.signal.core.util.orNull import org.thoughtcrime.securesms.database.SignalDatabase diff --git a/core/util-jvm/src/main/java/org/signal/core/util/database/DatabaseId.kt b/core/util-jvm/src/main/java/org/signal/core/util/database/DatabaseId.kt new file mode 100644 index 0000000000..b337cfebdd --- /dev/null +++ b/core/util-jvm/src/main/java/org/signal/core/util/database/DatabaseId.kt @@ -0,0 +1,10 @@ +/* + * Copyright 2026 Signal Messenger, LLC + * SPDX-License-Identifier: AGPL-3.0-only + */ + +package org.signal.core.util.database + +interface DatabaseId { + fun serialize(): String +} diff --git a/core/util/src/main/java/org/signal/core/models/database/AttachmentId.kt b/core/util/src/main/java/org/signal/core/models/database/AttachmentId.kt index 4a43c3fe3f..cb056215bf 100644 --- a/core/util/src/main/java/org/signal/core/models/database/AttachmentId.kt +++ b/core/util/src/main/java/org/signal/core/models/database/AttachmentId.kt @@ -8,6 +8,7 @@ package org.signal.core.models.database import android.os.Parcelable import com.fasterxml.jackson.annotation.JsonProperty import kotlinx.parcelize.Parcelize +import org.signal.core.util.database.DatabaseId @Parcelize data class AttachmentId( diff --git a/core/util/src/main/java/org/signal/core/models/database/DatabaseId.java b/core/util/src/main/java/org/signal/core/models/database/DatabaseId.java deleted file mode 100644 index bd43570dd6..0000000000 --- a/core/util/src/main/java/org/signal/core/models/database/DatabaseId.java +++ /dev/null @@ -1,12 +0,0 @@ -/* - * Copyright 2026 Signal Messenger, LLC - * SPDX-License-Identifier: AGPL-3.0-only - */ - -package org.signal.core.models.database; - -import androidx.annotation.NonNull; - -public interface DatabaseId { - @NonNull String serialize(); -} diff --git a/core/util/src/main/java/org/signal/core/util/SQLiteDatabaseExtensions.kt b/core/util/src/main/java/org/signal/core/util/SQLiteDatabaseExtensions.kt index d9ad501805..d91120c7a2 100644 --- a/core/util/src/main/java/org/signal/core/util/SQLiteDatabaseExtensions.kt +++ b/core/util/src/main/java/org/signal/core/util/SQLiteDatabaseExtensions.kt @@ -7,8 +7,8 @@ import androidx.core.content.contentValuesOf import androidx.sqlite.db.SupportSQLiteDatabase import androidx.sqlite.db.SupportSQLiteQueryBuilder import androidx.sqlite.db.SupportSQLiteStatement -import org.signal.core.models.database.DatabaseId import org.signal.core.util.SqlUtil.ForeignKeyViolation +import org.signal.core.util.database.DatabaseId import org.signal.core.util.logging.Log import kotlin.time.Duration import kotlin.time.Duration.Companion.seconds diff --git a/core/util/src/main/java/org/signal/core/util/SqlUtil.kt b/core/util/src/main/java/org/signal/core/util/SqlUtil.kt index 3d2b3c4467..3a2343e4d2 100644 --- a/core/util/src/main/java/org/signal/core/util/SqlUtil.kt +++ b/core/util/src/main/java/org/signal/core/util/SqlUtil.kt @@ -4,7 +4,7 @@ import android.content.ContentValues import android.text.TextUtils import androidx.annotation.VisibleForTesting import androidx.sqlite.db.SupportSQLiteDatabase -import org.signal.core.models.database.DatabaseId +import org.signal.core.util.database.DatabaseId import org.signal.core.util.logging.Log import java.lang.Exception import java.util.LinkedList diff --git a/core/util/src/test/java/org/signal/core/util/SqlUtilTest.java b/core/util/src/test/java/org/signal/core/util/SqlUtilTest.java index 7ed7355c73..6a86bd36bb 100644 --- a/core/util/src/test/java/org/signal/core/util/SqlUtilTest.java +++ b/core/util/src/test/java/org/signal/core/util/SqlUtilTest.java @@ -9,7 +9,7 @@ import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.RobolectricTestRunner; import org.robolectric.annotation.Config; -import org.signal.core.models.database.DatabaseId; +import org.signal.core.util.database.DatabaseId; import java.io.IOException; import java.util.ArrayList;