Search in sources :

Example 36 with Data

use of org.thoughtcrime.securesms.jobmanager.Data in project Signal-Android by signalapp.

the class RecipientIdJobMigration method migrateRetrieveProfileJob.

@NonNull
private JobData migrateRetrieveProfileJob(@NonNull JobData jobData) {
    String address = jobData.getData().getString("address");
    Recipient recipient = Recipient.external(application, address);
    Data updatedData = new Data.Builder().putString("recipient", recipient.getId().serialize()).build();
    return jobData.withData(updatedData);
}
Also used : Recipient(org.thoughtcrime.securesms.recipients.Recipient) Data(org.thoughtcrime.securesms.jobmanager.Data) NonNull(androidx.annotation.NonNull)

Example 37 with Data

use of org.thoughtcrime.securesms.jobmanager.Data in project Signal-Android by signalapp.

the class RecipientIdJobMigration method migrateMultiDeviceContactUpdateJob.

@NonNull
private JobData migrateMultiDeviceContactUpdateJob(@NonNull JobData jobData) {
    String address = jobData.getData().hasString("address") ? jobData.getData().getString("address") : null;
    Data updatedData = new Data.Builder().putString("recipient", address != null ? Recipient.external(application, address).getId().serialize() : null).putBoolean("force_sync", jobData.getData().getBoolean("force_sync")).build();
    return jobData.withData(updatedData);
}
Also used : Data(org.thoughtcrime.securesms.jobmanager.Data) NonNull(androidx.annotation.NonNull)

Example 38 with Data

use of org.thoughtcrime.securesms.jobmanager.Data in project Signal-Android by signalapp.

the class RecipientIdJobMigration method migrateRequestGroupInfoJob.

@NonNull
private JobData migrateRequestGroupInfoJob(@NonNull JobData jobData) {
    String address = jobData.getData().getString("source");
    Recipient recipient = Recipient.external(application, address);
    Data updatedData = new Data.Builder().putString("source", recipient.getId().serialize()).putString("group_id", jobData.getData().getString("group_id")).build();
    return jobData.withData(updatedData);
}
Also used : Recipient(org.thoughtcrime.securesms.recipients.Recipient) Data(org.thoughtcrime.securesms.jobmanager.Data) NonNull(androidx.annotation.NonNull)

Example 39 with Data

use of org.thoughtcrime.securesms.jobmanager.Data in project Signal-Android by signalapp.

the class RecipientIdJobMigration method migratePushGroupSendJob.

@NonNull
private JobData migratePushGroupSendJob(@NonNull JobData jobData) {
    // noinspection ConstantConditions
    Recipient queueRecipient = Recipient.external(application, jobData.getQueueKey());
    String address = jobData.getData().hasString("filter_address") ? jobData.getData().getString("filter_address") : null;
    RecipientId recipientId = address != null ? Recipient.external(application, address).getId() : null;
    Data updatedData = new Data.Builder().putString("filter_recipient", recipientId != null ? recipientId.serialize() : null).putLong("message_id", jobData.getData().getLong("message_id")).build();
    return jobData.withQueueKey(queueRecipient.getId().toQueueKey()).withData(updatedData);
}
Also used : RecipientId(org.thoughtcrime.securesms.recipients.RecipientId) Recipient(org.thoughtcrime.securesms.recipients.Recipient) Data(org.thoughtcrime.securesms.jobmanager.Data) NonNull(androidx.annotation.NonNull)

Example 40 with Data

use of org.thoughtcrime.securesms.jobmanager.Data in project Signal-Android by signalapp.

the class RecipientIdJobMigration method migrateRetrieveProfileAvatarJob.

@NonNull
private JobData migrateRetrieveProfileAvatarJob(@NonNull JobData jobData) {
    // noinspection ConstantConditions
    String queueAddress = jobData.getQueueKey().substring("RetrieveProfileAvatarJob".length());
    Recipient queueRecipient = Recipient.external(application, queueAddress);
    String address = jobData.getData().getString("address");
    Recipient recipient = Recipient.external(application, address);
    Data updatedData = new Data.Builder().putString("recipient", recipient.getId().serialize()).putString("profile_avatar", jobData.getData().getString("profile_avatar")).build();
    return jobData.withQueueKey("RetrieveProfileAvatarJob::" + queueRecipient.getId().toQueueKey()).withData(updatedData);
}
Also used : Recipient(org.thoughtcrime.securesms.recipients.Recipient) Data(org.thoughtcrime.securesms.jobmanager.Data) NonNull(androidx.annotation.NonNull)

Aggregations

Data (org.thoughtcrime.securesms.jobmanager.Data)42 NonNull (androidx.annotation.NonNull)34 Recipient (org.thoughtcrime.securesms.recipients.Recipient)26 IOException (java.io.IOException)10 Stream (com.annimon.stream.Stream)6 List (java.util.List)6 ApplicationDependencies (org.thoughtcrime.securesms.dependencies.ApplicationDependencies)6 Job (org.thoughtcrime.securesms.jobmanager.Job)6 RecipientId (org.thoughtcrime.securesms.recipients.RecipientId)6 Context (android.content.Context)4 TimeUnit (java.util.concurrent.TimeUnit)4 Test (org.junit.Test)4 Log (org.signal.core.util.logging.Log)4 NetworkConstraint (org.thoughtcrime.securesms.jobmanager.impl.NetworkConstraint)4 SignalStore (org.thoughtcrime.securesms.keyvalue.SignalStore)4 WorkerThread (androidx.annotation.WorkerThread)2 HashSet (java.util.HashSet)2 LinkedList (java.util.LinkedList)2 Set (java.util.Set)2 Assert.assertEquals (org.junit.Assert.assertEquals)2