Fix queueKey for SmsSendJob.

This commit is contained in:
Greyson Parrelli 2019-07-16 17:53:08 -04:00
parent 34e8d5ac57
commit 6c31d656dd
4 changed files with 10 additions and 9 deletions

View File

@ -1258,7 +1258,7 @@ public class ConversationItem extends LinearLayout
ApplicationContext.getInstance(context)
.getJobManager()
.add(new SmsSendJob(context, messageRecord.getId(),
messageRecord.getIndividualRecipient().getAddress().serialize()));
messageRecord.getIndividualRecipient().getAddress()));
}
});

View File

@ -9,6 +9,7 @@ import androidx.annotation.NonNull;
import android.telephony.PhoneNumberUtils;
import android.telephony.SmsManager;
import org.thoughtcrime.securesms.database.Address;
import org.thoughtcrime.securesms.jobmanager.Data;
import org.thoughtcrime.securesms.jobmanager.Job;
import org.thoughtcrime.securesms.jobmanager.impl.NetworkOrCellServiceConstraint;
@ -39,12 +40,12 @@ public class SmsSendJob extends SendJob {
private long messageId;
private int runAttempt;
public SmsSendJob(Context context, long messageId, String name) {
this(context, messageId, name, 0);
public SmsSendJob(Context context, long messageId, @NonNull Address destination) {
this(context, messageId, destination, 0);
}
public SmsSendJob(Context context, long messageId, String name, int runAttempt) {
this(constructParameters(context, name), messageId, runAttempt);
public SmsSendJob(Context context, long messageId, @NonNull Address destination, int runAttempt) {
this(constructParameters(context, destination), messageId, runAttempt);
}
private SmsSendJob(@NonNull Job.Parameters parameters, long messageId, int runAttempt) {
@ -226,12 +227,12 @@ public class SmsSendJob extends SendJob {
}
}
private static Job.Parameters constructParameters(@NonNull Context context, String name) {
private static Job.Parameters constructParameters(@NonNull Context context, @NonNull Address destination) {
String constraint = TextSecurePreferences.isWifiSmsEnabled(context) ? NetworkOrCellServiceConstraint.KEY
: CellServiceConstraint.KEY;
return new Job.Parameters.Builder()
.setMaxAttempts(MAX_ATTEMPTS)
.setQueue(name)
.setQueue(destination.serialize())
.addConstraint(constraint)
.build();
}

View File

@ -104,7 +104,7 @@ public class SmsSentJob extends BaseJob {
Log.w(TAG, "Service connectivity problem, requeuing...");
ApplicationContext.getInstance(context)
.getJobManager()
.add(new SmsSendJob(context, messageId, record.getIndividualRecipient().getAddress().serialize(), runAttempt + 1));
.add(new SmsSendJob(context, messageId, record.getIndividualRecipient().getAddress(), runAttempt + 1));
break;
default:
database.markAsSentFailed(messageId);

View File

@ -174,7 +174,7 @@ public class MessageSender {
private static void sendSms(Context context, Recipient recipient, long messageId) {
JobManager jobManager = ApplicationContext.getInstance(context).getJobManager();
jobManager.add(new SmsSendJob(context, messageId, recipient.getName()));
jobManager.add(new SmsSendJob(context, messageId, recipient.getAddress()));
}
private static void sendMms(Context context, long messageId) {