diff --git a/src/org/thoughtcrime/securesms/ConversationActivity.java b/src/org/thoughtcrime/securesms/ConversationActivity.java
index 74f959b6b..14b9994a9 100644
--- a/src/org/thoughtcrime/securesms/ConversationActivity.java
+++ b/src/org/thoughtcrime/securesms/ConversationActivity.java
@@ -90,8 +90,6 @@ import org.thoughtcrime.securesms.components.emoji.EmojiStrings;
import org.thoughtcrime.securesms.components.location.SignalPlace;
import org.thoughtcrime.securesms.components.reminder.ExpiredBuildReminder;
import org.thoughtcrime.securesms.components.reminder.ReminderView;
-import org.thoughtcrime.securesms.components.reminder.ServiceOutageReminder;
-import org.thoughtcrime.securesms.components.reminder.UnauthorizedReminder;
import org.thoughtcrime.securesms.connect.ApplicationDcContext;
import org.thoughtcrime.securesms.connect.DcHelper;
import org.thoughtcrime.securesms.contacts.ContactAccessor;
@@ -107,15 +105,12 @@ import org.thoughtcrime.securesms.database.DraftDatabase.Draft;
import org.thoughtcrime.securesms.database.DraftDatabase.Drafts;
import org.thoughtcrime.securesms.database.MessagingDatabase.MarkedMessageInfo;
import org.thoughtcrime.securesms.database.MmsSmsColumns.Types;
-import org.thoughtcrime.securesms.database.RecipientDatabase.RegisteredState;
import org.thoughtcrime.securesms.database.ThreadDatabase;
import org.thoughtcrime.securesms.database.model.MessageRecord;
import org.thoughtcrime.securesms.database.model.MmsMessageRecord;
import org.thoughtcrime.securesms.events.ReminderUpdateEvent;
import org.thoughtcrime.securesms.giph.ui.GiphyActivity;
import org.thoughtcrime.securesms.jobs.MultiDeviceBlockedUpdateJob;
-import org.thoughtcrime.securesms.jobs.RetrieveProfileJob;
-import org.thoughtcrime.securesms.jobs.ServiceOutageDetectionJob;
import org.thoughtcrime.securesms.mms.AttachmentManager;
import org.thoughtcrime.securesms.mms.AttachmentManager.MediaType;
import org.thoughtcrime.securesms.mms.AudioSlide;
@@ -148,7 +143,6 @@ import org.thoughtcrime.securesms.sms.OutgoingTextMessage;
import org.thoughtcrime.securesms.util.CharacterCalculator.CharacterState;
import org.thoughtcrime.securesms.util.CommunicationActions;
import org.thoughtcrime.securesms.util.Dialogs;
-import org.thoughtcrime.securesms.util.DirectoryHelper;
import org.thoughtcrime.securesms.util.DynamicLanguage;
import org.thoughtcrime.securesms.util.DynamicTheme;
import org.thoughtcrime.securesms.util.ExpirationUtil;
@@ -1014,13 +1008,8 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
}
protected void updateReminders() {
- if (UnauthorizedReminder.isEligible(this)) {
- reminderView.get().showReminder(new UnauthorizedReminder(this));
- } else if (ExpiredBuildReminder.isEligible()) {
+ if (ExpiredBuildReminder.isEligible()) {
reminderView.get().showReminder(new ExpiredBuildReminder(this));
- } else if (ServiceOutageReminder.isEligible(this)) {
- ApplicationContext.getInstance(this).getJobManager().add(new ServiceOutageDetectionJob(this));
- reminderView.get().showReminder(new ServiceOutageReminder(this));
} else if (reminderView.resolved()) {
reminderView.get().hide();
}
diff --git a/src/org/thoughtcrime/securesms/ConversationListFragment.java b/src/org/thoughtcrime/securesms/ConversationListFragment.java
index b06abf528..236cc756f 100644
--- a/src/org/thoughtcrime/securesms/ConversationListFragment.java
+++ b/src/org/thoughtcrime/securesms/ConversationListFragment.java
@@ -65,14 +65,11 @@ import org.thoughtcrime.securesms.components.reminder.ExpiredBuildReminder;
import org.thoughtcrime.securesms.components.reminder.OutdatedBuildReminder;
import org.thoughtcrime.securesms.components.reminder.Reminder;
import org.thoughtcrime.securesms.components.reminder.ReminderView;
-import org.thoughtcrime.securesms.components.reminder.ServiceOutageReminder;
import org.thoughtcrime.securesms.components.reminder.ShareReminder;
-import org.thoughtcrime.securesms.components.reminder.UnauthorizedReminder;
import org.thoughtcrime.securesms.connect.ApplicationDcContext;
import org.thoughtcrime.securesms.connect.DcChatlistLoader;
import org.thoughtcrime.securesms.connect.DcHelper;
import org.thoughtcrime.securesms.events.ReminderUpdateEvent;
-import org.thoughtcrime.securesms.jobs.ServiceOutageDetectionJob;
import org.thoughtcrime.securesms.mms.GlideApp;
import org.thoughtcrime.securesms.recipients.Recipient;
import org.thoughtcrime.securesms.util.ViewUtil;
@@ -194,13 +191,8 @@ public class ConversationListFragment extends Fragment
@Override
protected Optional extends Reminder> doInBackground(Context... params) {
final Context context = params[0];
- if (UnauthorizedReminder.isEligible(context)) {
- return Optional.of(new UnauthorizedReminder(context));
- } else if (ExpiredBuildReminder.isEligible()) {
+ if (ExpiredBuildReminder.isEligible()) {
return Optional.of(new ExpiredBuildReminder(context));
- } else if (ServiceOutageReminder.isEligible(context)) {
- ApplicationContext.getInstance(context).getJobManager().add(new ServiceOutageDetectionJob(context));
- return Optional.of(new ServiceOutageReminder(context));
} else if (OutdatedBuildReminder.isEligible()) {
return Optional.of(new OutdatedBuildReminder(context));
} else if (ShareReminder.isEligible(context)) {
diff --git a/src/org/thoughtcrime/securesms/components/reminder/ServiceOutageReminder.java b/src/org/thoughtcrime/securesms/components/reminder/ServiceOutageReminder.java
deleted file mode 100644
index 7ca091d97..000000000
--- a/src/org/thoughtcrime/securesms/components/reminder/ServiceOutageReminder.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package org.thoughtcrime.securesms.components.reminder;
-
-import android.content.Context;
-import android.support.annotation.NonNull;
-
-import org.thoughtcrime.securesms.R;
-import org.thoughtcrime.securesms.util.TextSecurePreferences;
-
-public class ServiceOutageReminder extends Reminder {
-
- public ServiceOutageReminder(@NonNull Context context) {
- super(null,
- context.getString(R.string.reminder_header_service_outage_text));
- }
-
- public static boolean isEligible(@NonNull Context context) {
- return TextSecurePreferences.getServiceOutage(context);
- }
-
- @Override
- public boolean isDismissable() {
- return false;
- }
-
- @NonNull
- @Override
- public Importance getImportance() {
- return Importance.ERROR;
- }
-}
diff --git a/src/org/thoughtcrime/securesms/components/reminder/UnauthorizedReminder.java b/src/org/thoughtcrime/securesms/components/reminder/UnauthorizedReminder.java
deleted file mode 100644
index 0ee98b5d0..000000000
--- a/src/org/thoughtcrime/securesms/components/reminder/UnauthorizedReminder.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package org.thoughtcrime.securesms.components.reminder;
-
-
-import android.content.Context;
-import android.content.Intent;
-
-import org.thoughtcrime.securesms.R;
-import org.thoughtcrime.securesms.RegistrationActivity;
-import org.thoughtcrime.securesms.util.TextSecurePreferences;
-
-public class UnauthorizedReminder extends Reminder {
-
- public UnauthorizedReminder(final Context context) {
- super(context.getString(R.string.UnauthorizedReminder_device_no_longer_registered),
- context.getString(R.string.UnauthorizedReminder_this_is_likely_because_you_registered_your_phone_number_with_Signal_on_a_different_device));
-
- setOkListener(v -> {
- Intent intent = new Intent(context, RegistrationActivity.class);
- intent.putExtra(RegistrationActivity.RE_REGISTRATION_EXTRA, true);
- context.startActivity(intent);
- });
- }
-
- @Override
- public boolean isDismissable() {
- return false;
- }
-
- public static boolean isEligible(Context context) {
- return TextSecurePreferences.isUnauthorizedRecieved(context);
- }
-}
diff --git a/src/org/thoughtcrime/securesms/jobs/PushSendJob.java b/src/org/thoughtcrime/securesms/jobs/PushSendJob.java
index 8cca4dd4e..42d7e989d 100644
--- a/src/org/thoughtcrime/securesms/jobs/PushSendJob.java
+++ b/src/org/thoughtcrime/securesms/jobs/PushSendJob.java
@@ -78,7 +78,7 @@ public abstract class PushSendJob extends SendJob {
super.onRetry();
if (getRunIteration() > 1) {
- ApplicationContext.getInstance(context).getJobManager().add(new ServiceOutageDetectionJob(context));
+// ApplicationContext.getInstance(context).getJobManager().add(new ServiceOutageDetectionJob(context));
}
}
diff --git a/src/org/thoughtcrime/securesms/jobs/ServiceOutageDetectionJob.java b/src/org/thoughtcrime/securesms/jobs/ServiceOutageDetectionJob.java
deleted file mode 100644
index bf24efe93..000000000
--- a/src/org/thoughtcrime/securesms/jobs/ServiceOutageDetectionJob.java
+++ /dev/null
@@ -1,79 +0,0 @@
-package org.thoughtcrime.securesms.jobs;
-
-import android.content.Context;
-import android.util.Log;
-
-import org.greenrobot.eventbus.EventBus;
-import org.thoughtcrime.securesms.BuildConfig;
-import org.thoughtcrime.securesms.events.ReminderUpdateEvent;
-import org.thoughtcrime.securesms.jobmanager.JobParameters;
-import org.thoughtcrime.securesms.jobmanager.requirements.NetworkRequirement;
-import org.thoughtcrime.securesms.transport.RetryLaterException;
-import org.thoughtcrime.securesms.util.TextSecurePreferences;
-
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-
-public class ServiceOutageDetectionJob extends ContextJob {
-
- private static final String TAG = ServiceOutageDetectionJob.class.getSimpleName();
-
- private static final String IP_SUCCESS = "127.0.0.1";
- private static final String IP_FAILURE = "127.0.0.2";
- private static final long CHECK_TIME = 1000 * 60;
-
- public ServiceOutageDetectionJob(Context context) {
- super(context, new JobParameters.Builder()
- .withGroupId(ServiceOutageDetectionJob.class.getSimpleName())
- .withRequirement(new NetworkRequirement(context))
- .withRetryCount(5)
- .create());
- }
-
- @Override
- public void onAdded() {
- }
-
- @Override
- public void onRun() throws RetryLaterException {
- long timeSinceLastCheck = System.currentTimeMillis() - TextSecurePreferences.getLastOutageCheckTime(context);
- if (timeSinceLastCheck < CHECK_TIME) {
- Log.w(TAG, "Skipping service outage check. Too soon.");
- return;
- }
-
- try {
- InetAddress address = InetAddress.getByName(BuildConfig.SIGNAL_SERVICE_STATUS_URL);
- Log.i(TAG, "Received outage check address: " + address.getHostAddress());
-
- if (IP_SUCCESS.equals(address.getHostAddress())) {
- Log.i(TAG, "Service is available.");
- TextSecurePreferences.setServiceOutage(context, false);
- } else if (IP_FAILURE.equals(address.getHostAddress())) {
- Log.w(TAG, "Service is down.");
- TextSecurePreferences.setServiceOutage(context, true);
- } else {
- Log.w(TAG, "Service status check returned an unrecognized IP address. Could be a weird network state. Prompting retry.");
- throw new RetryLaterException(new Exception("Unrecognized service outage IP address."));
- }
-
- TextSecurePreferences.setLastOutageCheckTime(context, System.currentTimeMillis());
- EventBus.getDefault().post(new ReminderUpdateEvent());
- } catch (UnknownHostException e) {
- throw new RetryLaterException(e);
- }
- }
-
- @Override
- public boolean onShouldRetry(Exception e) {
- return e instanceof RetryLaterException;
- }
-
- @Override
- public void onCanceled() {
- Log.i(TAG, "Service status check could not complete. Assuming success to avoid false positives due to bad network.");
- TextSecurePreferences.setServiceOutage(context, false);
- TextSecurePreferences.setLastOutageCheckTime(context, System.currentTimeMillis());
- EventBus.getDefault().post(new ReminderUpdateEvent());
- }
-}
diff --git a/src/org/thoughtcrime/securesms/preferences/MmsPreferencesFragment.java b/src/org/thoughtcrime/securesms/preferences/MmsPreferencesFragment.java
deleted file mode 100644
index 30169f30c..000000000
--- a/src/org/thoughtcrime/securesms/preferences/MmsPreferencesFragment.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/**
- * Copyright (C) 2014 Open Whisper Systems
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- */
-package org.thoughtcrime.securesms.preferences;
-
-import android.content.Context;
-import android.os.AsyncTask;
-import android.os.Bundle;
-import android.support.annotation.Nullable;
-import android.util.Log;
-
-import org.thoughtcrime.securesms.PassphraseRequiredActionBarActivity;
-import org.thoughtcrime.securesms.R;
-import org.thoughtcrime.securesms.components.CustomDefaultPreference;
-import org.thoughtcrime.securesms.database.ApnDatabase;
-import org.thoughtcrime.securesms.mms.LegacyMmsConnection;
-import org.thoughtcrime.securesms.util.TelephonyUtil;
-import org.thoughtcrime.securesms.util.TextSecurePreferences;
-
-import java.io.IOException;
-
-
-public class MmsPreferencesFragment extends CorrectedPreferenceFragment {
-
- private static final String TAG = MmsPreferencesFragment.class.getSimpleName();
-
- @Override
- public void onCreate(Bundle paramBundle) {
- super.onCreate(paramBundle);
-
- ((PassphraseRequiredActionBarActivity) getActivity()).getSupportActionBar()
- .setTitle(R.string.preferences__advanced_mms_access_point_names);
- }
-
- @Override
- public void onCreatePreferences(@Nullable Bundle savedInstanceState, String rootKey) {
- addPreferencesFromResource(R.xml.preferences_manual_mms);
- }
-
- @Override
- public void onResume() {
- super.onResume();
- new LoadApnDefaultsTask().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
- }
-
- private class LoadApnDefaultsTask extends AsyncTask {
-
- @Override
- protected LegacyMmsConnection.Apn doInBackground(Void... params) {
- try {
- Context context = getActivity();
-
- if (context != null) {
- return ApnDatabase.getInstance(context)
- .getDefaultApnParameters(TelephonyUtil.getMccMnc(context),
- TelephonyUtil.getApn(context));
- }
- } catch (IOException e) {
- Log.w(TAG, e);
- }
-
- return null;
- }
-
- @Override
- protected void onPostExecute(LegacyMmsConnection.Apn apnDefaults) {
- ((CustomDefaultPreference)findPreference(TextSecurePreferences.MMSC_HOST_PREF))
- .setValidator(new CustomDefaultPreference.CustomDefaultPreferenceDialogFragmentCompat.UriValidator())
- .setDefaultValue(apnDefaults.getMmsc());
-
- ((CustomDefaultPreference)findPreference(TextSecurePreferences.MMSC_PROXY_HOST_PREF))
- .setValidator(new CustomDefaultPreference.CustomDefaultPreferenceDialogFragmentCompat.HostnameValidator())
- .setDefaultValue(apnDefaults.getProxy());
-
- ((CustomDefaultPreference)findPreference(TextSecurePreferences.MMSC_PROXY_PORT_PREF))
- .setValidator(new CustomDefaultPreference.CustomDefaultPreferenceDialogFragmentCompat.PortValidator())
- .setDefaultValue(apnDefaults.getPort());
-
- ((CustomDefaultPreference)findPreference(TextSecurePreferences.MMSC_USERNAME_PREF))
- .setDefaultValue(apnDefaults.getPort());
-
- ((CustomDefaultPreference)findPreference(TextSecurePreferences.MMSC_PASSWORD_PREF))
- .setDefaultValue(apnDefaults.getPassword());
-
- ((CustomDefaultPreference)findPreference(TextSecurePreferences.MMS_USER_AGENT))
- .setDefaultValue(LegacyMmsConnection.USER_AGENT);
- }
- }
-
-}