This commit is contained in:
nielsandriesse 2020-08-07 10:53:36 +10:00
parent 944f85ddb9
commit 15f3942838
7 changed files with 19 additions and 19 deletions

View File

@ -66,7 +66,7 @@ import org.thoughtcrime.securesms.loki.api.PublicChatManager;
import org.thoughtcrime.securesms.loki.database.LokiAPIDatabase; import org.thoughtcrime.securesms.loki.database.LokiAPIDatabase;
import org.thoughtcrime.securesms.loki.database.LokiThreadDatabase; import org.thoughtcrime.securesms.loki.database.LokiThreadDatabase;
import org.thoughtcrime.securesms.loki.database.LokiUserDatabase; import org.thoughtcrime.securesms.loki.database.LokiUserDatabase;
import org.thoughtcrime.securesms.loki.protocol.PushSessionRequestMessageSendJob; import org.thoughtcrime.securesms.loki.protocol.SessionRequestMessageSendJob;
import org.thoughtcrime.securesms.loki.protocol.SessionResetImplementation; import org.thoughtcrime.securesms.loki.protocol.SessionResetImplementation;
import org.thoughtcrime.securesms.loki.utilities.Broadcaster; import org.thoughtcrime.securesms.loki.utilities.Broadcaster;
import org.thoughtcrime.securesms.notifications.DefaultMessageNotifier; import org.thoughtcrime.securesms.notifications.DefaultMessageNotifier;
@ -621,7 +621,7 @@ public class ApplicationContext extends MultiDexApplication implements Dependenc
// Send the session request // Send the session request
long timestamp = new Date().getTime(); long timestamp = new Date().getTime();
apiDB.setSessionRequestSentTimestamp(publicKey, timestamp); apiDB.setSessionRequestSentTimestamp(publicKey, timestamp);
PushSessionRequestMessageSendJob job = new PushSessionRequestMessageSendJob(publicKey, timestamp); SessionRequestMessageSendJob job = new SessionRequestMessageSendJob(publicKey, timestamp);
jobManager.add(job); jobManager.add(job);
} }
// endregion // endregion

View File

@ -44,7 +44,7 @@ import org.thoughtcrime.securesms.jobs.SmsSentJob;
import org.thoughtcrime.securesms.jobs.TrimThreadJob; import org.thoughtcrime.securesms.jobs.TrimThreadJob;
import org.thoughtcrime.securesms.jobs.TypingSendJob; import org.thoughtcrime.securesms.jobs.TypingSendJob;
import org.thoughtcrime.securesms.jobs.UpdateApkJob; import org.thoughtcrime.securesms.jobs.UpdateApkJob;
import org.thoughtcrime.securesms.loki.protocol.PushNullMessageSendJob; import org.thoughtcrime.securesms.loki.protocol.NullMessageSendJob;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
@ -75,7 +75,7 @@ public class WorkManagerFactoryMappings {
put(PushMediaSendJob.class.getName(), PushMediaSendJob.KEY); put(PushMediaSendJob.class.getName(), PushMediaSendJob.KEY);
put(PushNotificationReceiveJob.class.getName(), PushNotificationReceiveJob.KEY); put(PushNotificationReceiveJob.class.getName(), PushNotificationReceiveJob.KEY);
put(PushTextSendJob.class.getName(), PushTextSendJob.KEY); put(PushTextSendJob.class.getName(), PushTextSendJob.KEY);
put(PushNullMessageSendJob.class.getName(), PushNullMessageSendJob.KEY); put(NullMessageSendJob.class.getName(), NullMessageSendJob.KEY);
put(RefreshAttributesJob.class.getName(), RefreshAttributesJob.KEY); put(RefreshAttributesJob.class.getName(), RefreshAttributesJob.KEY);
put(RefreshPreKeysJob.class.getName(), RefreshPreKeysJob.KEY); put(RefreshPreKeysJob.class.getName(), RefreshPreKeysJob.KEY);
put(RefreshUnidentifiedDeliveryAbilityJob.class.getName(), RefreshUnidentifiedDeliveryAbilityJob.KEY); put(RefreshUnidentifiedDeliveryAbilityJob.class.getName(), RefreshUnidentifiedDeliveryAbilityJob.KEY);

View File

@ -14,8 +14,8 @@ import org.thoughtcrime.securesms.jobmanager.impl.NetworkOrCellServiceConstraint
import org.thoughtcrime.securesms.jobmanager.impl.SqlCipherMigrationConstraint; import org.thoughtcrime.securesms.jobmanager.impl.SqlCipherMigrationConstraint;
import org.thoughtcrime.securesms.jobmanager.impl.SqlCipherMigrationConstraintObserver; import org.thoughtcrime.securesms.jobmanager.impl.SqlCipherMigrationConstraintObserver;
import org.thoughtcrime.securesms.loki.protocol.shelved.MultiDeviceOpenGroupUpdateJob; import org.thoughtcrime.securesms.loki.protocol.shelved.MultiDeviceOpenGroupUpdateJob;
import org.thoughtcrime.securesms.loki.protocol.PushNullMessageSendJob; import org.thoughtcrime.securesms.loki.protocol.NullMessageSendJob;
import org.thoughtcrime.securesms.loki.protocol.PushSessionRequestMessageSendJob; import org.thoughtcrime.securesms.loki.protocol.SessionRequestMessageSendJob;
import java.util.Arrays; import java.util.Arrays;
import java.util.HashMap; import java.util.HashMap;
@ -51,7 +51,7 @@ public final class JobManagerFactories {
put(PushMediaSendJob.KEY, new PushMediaSendJob.Factory()); put(PushMediaSendJob.KEY, new PushMediaSendJob.Factory());
put(PushNotificationReceiveJob.KEY, new PushNotificationReceiveJob.Factory()); put(PushNotificationReceiveJob.KEY, new PushNotificationReceiveJob.Factory());
put(PushTextSendJob.KEY, new PushTextSendJob.Factory()); put(PushTextSendJob.KEY, new PushTextSendJob.Factory());
put(PushNullMessageSendJob.KEY, new PushNullMessageSendJob.Factory()); put(NullMessageSendJob.KEY, new NullMessageSendJob.Factory());
put(RefreshAttributesJob.KEY, new RefreshAttributesJob.Factory()); put(RefreshAttributesJob.KEY, new RefreshAttributesJob.Factory());
put(RefreshPreKeysJob.KEY, new RefreshPreKeysJob.Factory()); put(RefreshPreKeysJob.KEY, new RefreshPreKeysJob.Factory());
put(RefreshUnidentifiedDeliveryAbilityJob.KEY, new RefreshUnidentifiedDeliveryAbilityJob.Factory()); put(RefreshUnidentifiedDeliveryAbilityJob.KEY, new RefreshUnidentifiedDeliveryAbilityJob.Factory());
@ -72,7 +72,7 @@ public final class JobManagerFactories {
put(TrimThreadJob.KEY, new TrimThreadJob.Factory()); put(TrimThreadJob.KEY, new TrimThreadJob.Factory());
put(TypingSendJob.KEY, new TypingSendJob.Factory()); put(TypingSendJob.KEY, new TypingSendJob.Factory());
put(UpdateApkJob.KEY, new UpdateApkJob.Factory()); put(UpdateApkJob.KEY, new UpdateApkJob.Factory());
put(PushSessionRequestMessageSendJob.KEY, new PushSessionRequestMessageSendJob.Factory()); put(SessionRequestMessageSendJob.KEY, new SessionRequestMessageSendJob.Factory());
put(MultiDeviceOpenGroupUpdateJob.KEY, new MultiDeviceOpenGroupUpdateJob.Factory()); put(MultiDeviceOpenGroupUpdateJob.KEY, new MultiDeviceOpenGroupUpdateJob.Factory());
}}; }};
} }

View File

@ -18,7 +18,7 @@ import java.security.SecureRandom
import java.util.* import java.util.*
import java.util.concurrent.TimeUnit import java.util.concurrent.TimeUnit
class PushNullMessageSendJob private constructor(parameters: Parameters, private val publicKey: String) : BaseJob(parameters) { class NullMessageSendJob private constructor(parameters: Parameters, private val publicKey: String) : BaseJob(parameters) {
companion object { companion object {
const val KEY = "PushNullMessageSendJob" const val KEY = "PushNullMessageSendJob"
@ -70,12 +70,12 @@ class PushNullMessageSendJob private constructor(parameters: Parameters, private
override fun onCanceled() { } override fun onCanceled() { }
class Factory : Job.Factory<PushNullMessageSendJob> { class Factory : Job.Factory<NullMessageSendJob> {
override fun create(parameters: Parameters, data: Data): PushNullMessageSendJob { override fun create(parameters: Parameters, data: Data): NullMessageSendJob {
try { try {
val publicKey = data.getString("publicKey") val publicKey = data.getString("publicKey")
return PushNullMessageSendJob(parameters, publicKey) return NullMessageSendJob(parameters, publicKey)
} catch (e: IOException) { } catch (e: IOException) {
throw AssertionError(e) throw AssertionError(e)
} }

View File

@ -76,7 +76,7 @@ object SessionManagementProtocol {
val preKeyBundle = preKeyBundleMessage.getPreKeyBundle(registrationID) val preKeyBundle = preKeyBundleMessage.getPreKeyBundle(registrationID)
lokiPreKeyBundleDatabase.setPreKeyBundle(publicKey, preKeyBundle) lokiPreKeyBundleDatabase.setPreKeyBundle(publicKey, preKeyBundle)
DatabaseFactory.getLokiAPIDatabase(context).setSessionRequestProcessedTimestamp(publicKey, Date().time) DatabaseFactory.getLokiAPIDatabase(context).setSessionRequestProcessedTimestamp(publicKey, Date().time)
val job = PushNullMessageSendJob(publicKey) val job = NullMessageSendJob(publicKey)
ApplicationContext.getInstance(context).jobManager.add(job) ApplicationContext.getInstance(context).jobManager.add(job)
} }
@ -89,7 +89,7 @@ object SessionManagementProtocol {
sessionStore.archiveAllSessions(content.sender) sessionStore.archiveAllSessions(content.sender)
lokiThreadDB.setSessionResetStatus(content.sender, SessionResetStatus.REQUEST_RECEIVED) lokiThreadDB.setSessionResetStatus(content.sender, SessionResetStatus.REQUEST_RECEIVED)
Log.d("Loki", "Sending an ephemeral message back to: ${content.sender}.") Log.d("Loki", "Sending an ephemeral message back to: ${content.sender}.")
val job = PushNullMessageSendJob(content.sender) val job = NullMessageSendJob(content.sender)
ApplicationContext.getInstance(context).jobManager.add(job) ApplicationContext.getInstance(context).jobManager.add(job)
SecurityEvent.broadcastSecurityUpdateEvent(context) SecurityEvent.broadcastSecurityUpdateEvent(context)
} }

View File

@ -19,7 +19,7 @@ import java.security.SecureRandom
import java.util.* import java.util.*
import java.util.concurrent.TimeUnit import java.util.concurrent.TimeUnit
class PushSessionRequestMessageSendJob private constructor(parameters: Parameters, private val publicKey: String, private val timestamp: Long) : BaseJob(parameters) { class SessionRequestMessageSendJob private constructor(parameters: Parameters, private val publicKey: String, private val timestamp: Long) : BaseJob(parameters) {
companion object { companion object {
const val KEY = "PushSessionRequestMessageSendJob" const val KEY = "PushSessionRequestMessageSendJob"
@ -92,13 +92,13 @@ class PushSessionRequestMessageSendJob private constructor(parameters: Parameter
} }
} }
class Factory : Job.Factory<PushSessionRequestMessageSendJob> { class Factory : Job.Factory<SessionRequestMessageSendJob> {
override fun create(parameters: Parameters, data: Data): PushSessionRequestMessageSendJob { override fun create(parameters: Parameters, data: Data): SessionRequestMessageSendJob {
try { try {
val publicKey = data.getString("publicKey") val publicKey = data.getString("publicKey")
val timestamp = data.getLong("timestamp") val timestamp = data.getLong("timestamp")
return PushSessionRequestMessageSendJob(parameters, publicKey, timestamp) return SessionRequestMessageSendJob(parameters, publicKey, timestamp)
} catch (e: IOException) { } catch (e: IOException) {
throw AssertionError(e) throw AssertionError(e)
} }

View File

@ -19,7 +19,7 @@ class SessionResetImplementation(private val context: Context) : SessionResetPro
override fun onNewSessionAdopted(publicKey: String, oldSessionResetStatus: SessionResetStatus) { override fun onNewSessionAdopted(publicKey: String, oldSessionResetStatus: SessionResetStatus) {
if (oldSessionResetStatus == SessionResetStatus.IN_PROGRESS) { if (oldSessionResetStatus == SessionResetStatus.IN_PROGRESS) {
val job = PushNullMessageSendJob(publicKey) val job = NullMessageSendJob(publicKey)
ApplicationContext.getInstance(context).jobManager.add(job) ApplicationContext.getInstance(context).jobManager.add(job)
} }
// TODO: Show session reset succeed message // TODO: Show session reset succeed message