Migrate local account data into SignalStore.

This commit is contained in:
Greyson Parrelli
2021-11-17 15:08:28 -05:00
committed by Cody Henthorne
parent 87f175a96b
commit 8aea20f147
87 changed files with 1063 additions and 756 deletions

View File

@@ -8,6 +8,7 @@ import org.thoughtcrime.securesms.dependencies.ApplicationDependencies;
import org.thoughtcrime.securesms.jobmanager.Data;
import org.thoughtcrime.securesms.jobmanager.Job;
import org.thoughtcrime.securesms.jobs.StorageSyncJob;
import org.thoughtcrime.securesms.keyvalue.SignalStore;
import org.thoughtcrime.securesms.recipients.Recipient;
import org.thoughtcrime.securesms.util.TextSecurePreferences;
@@ -41,7 +42,7 @@ public class AccountRecordMigrationJob extends MigrationJob {
@Override
public void performMigration() {
if (!TextSecurePreferences.isPushRegistered(context) || TextSecurePreferences.getLocalAci(context) == null) {
if (!SignalStore.account().isRegistered() || SignalStore.account().getAci() == null) {
Log.w(TAG, "Not registered!");
return;
}

View File

@@ -9,6 +9,7 @@ import org.thoughtcrime.securesms.database.DatabaseFactory;
import org.thoughtcrime.securesms.database.RecipientDatabase;
import org.thoughtcrime.securesms.jobmanager.Data;
import org.thoughtcrime.securesms.jobmanager.Job;
import org.thoughtcrime.securesms.keyvalue.SignalStore;
import org.thoughtcrime.securesms.recipients.Recipient;
import org.thoughtcrime.securesms.storage.StorageSyncHelper;
import org.thoughtcrime.securesms.util.TextSecurePreferences;
@@ -45,7 +46,7 @@ public class ApplyUnknownFieldsToSelfMigrationJob extends MigrationJob {
@Override
public void performMigration() {
if (!TextSecurePreferences.isPushRegistered(context) || TextSecurePreferences.getLocalAci(context) == null) {
if (!SignalStore.account().isRegistered() || SignalStore.account().getAci() == null) {
Log.w(TAG, "Not registered!");
return;
}

View File

@@ -40,9 +40,9 @@ public final class DirectoryRefreshMigrationJob extends MigrationJob {
@Override
public void performMigration() throws IOException {
if (!TextSecurePreferences.isPushRegistered(context) ||
if (!SignalStore.account().isRegistered() ||
!SignalStore.registrationValues().isRegistrationComplete() ||
TextSecurePreferences.getLocalAci(context) == null)
SignalStore.account().getAci() == null)
{
Log.w(TAG, "Not registered! Skipping.");
return;

View File

@@ -30,6 +30,7 @@ import org.thoughtcrime.securesms.jobs.CreateSignedPreKeyJob;
import org.thoughtcrime.securesms.jobs.DirectoryRefreshJob;
import org.thoughtcrime.securesms.jobs.PushDecryptMessageJob;
import org.thoughtcrime.securesms.jobs.RefreshAttributesJob;
import org.thoughtcrime.securesms.keyvalue.SignalStore;
import org.thoughtcrime.securesms.mms.GlideApp;
import org.thoughtcrime.securesms.service.KeyCachingService;
import org.thoughtcrime.securesms.transport.RetryLaterException;
@@ -190,7 +191,7 @@ public class LegacyMigrationJob extends MigrationJob {
}
if (lastSeenVersion < INTERNALIZE_CONTACTS) {
if (TextSecurePreferences.isPushRegistered(context)) {
if (SignalStore.account().isRegistered()) {
TextSecurePreferences.setHasSuccessfullyRetrievedDirectory(context, true);
}
}
@@ -239,11 +240,6 @@ public class LegacyMigrationJob extends MigrationJob {
}
if (lastSeenVersion < UNIDENTIFIED_DELIVERY) {
if (TextSecurePreferences.isMultiDevice(context)) {
Log.i(TAG, "MultiDevice: Disabling UD (will be re-enabled if possible after pending refresh).");
TextSecurePreferences.setIsUnidentifiedDeliveryEnabled(context, false);
}
Log.i(TAG, "Scheduling UD attributes refresh.");
ApplicationDependencies.getJobManager().add(new RefreshAttributesJob());
}

View File

@@ -10,6 +10,7 @@ import org.thoughtcrime.securesms.jobmanager.Job;
import org.thoughtcrime.securesms.jobmanager.JobManager;
import org.thoughtcrime.securesms.jobs.MultiDeviceKeysUpdateJob;
import org.thoughtcrime.securesms.jobs.StorageSyncJob;
import org.thoughtcrime.securesms.keyvalue.SignalStore;
import org.thoughtcrime.securesms.recipients.Recipient;
import org.thoughtcrime.securesms.util.TextSecurePreferences;
@@ -42,7 +43,7 @@ public class StorageServiceMigrationJob extends MigrationJob {
@Override
public void performMigration() {
if (TextSecurePreferences.getLocalAci(context) == null) {
if (SignalStore.account().getAci() == null) {
Log.w(TAG, "Self not yet available.");
return;
}

View File

@@ -56,9 +56,9 @@ public class UserNotificationMigrationJob extends MigrationJob {
@Override
void performMigration() {
if (!TextSecurePreferences.isPushRegistered(context) ||
TextSecurePreferences.getLocalNumber(context) == null ||
TextSecurePreferences.getLocalAci(context) == null)
if (!SignalStore.account().isRegistered() ||
SignalStore.account().getE164() == null ||
SignalStore.account().getAci() == null)
{
Log.w(TAG, "Not registered! Skipping.");
return;

View File

@@ -11,12 +11,14 @@ import org.thoughtcrime.securesms.dependencies.ApplicationDependencies;
import org.thoughtcrime.securesms.jobmanager.Data;
import org.thoughtcrime.securesms.jobmanager.Job;
import org.thoughtcrime.securesms.jobmanager.impl.NetworkConstraint;
import org.thoughtcrime.securesms.keyvalue.SignalStore;
import org.thoughtcrime.securesms.recipients.Recipient;
import org.thoughtcrime.securesms.recipients.RecipientId;
import org.thoughtcrime.securesms.util.TextSecurePreferences;
import org.whispersystems.signalservice.api.push.ACI;
import java.io.IOException;
import java.util.Objects;
import java.util.UUID;
/**
@@ -51,7 +53,7 @@ public class UuidMigrationJob extends MigrationJob {
@Override
void performMigration() throws Exception {
if (!TextSecurePreferences.isPushRegistered(context) || TextUtils.isEmpty(TextSecurePreferences.getLocalNumber(context))) {
if (!SignalStore.account().isRegistered() || TextUtils.isEmpty(SignalStore.account().getE164())) {
Log.w(TAG, "Not registered! Skipping migration, as it wouldn't do anything.");
return;
}
@@ -66,7 +68,7 @@ public class UuidMigrationJob extends MigrationJob {
}
private static void ensureSelfRecipientExists(@NonNull Context context) {
DatabaseFactory.getRecipientDatabase(context).getOrInsertFromE164(TextSecurePreferences.getLocalNumber(context));
DatabaseFactory.getRecipientDatabase(context).getOrInsertFromE164(Objects.requireNonNull(SignalStore.account().getE164()));
}
private static void fetchOwnUuid(@NonNull Context context) throws IOException {
@@ -74,7 +76,7 @@ public class UuidMigrationJob extends MigrationJob {
ACI localUuid = ApplicationDependencies.getSignalServiceAccountManager().getOwnAci();
DatabaseFactory.getRecipientDatabase(context).markRegisteredOrThrow(self, localUuid);
TextSecurePreferences.setLocalAci(context, localUuid);
SignalStore.account().setAci(localUuid);
}
public static class Factory implements Job.Factory<UuidMigrationJob> {