Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: src/org/adblockplus/android/ProxyService.java

Issue 29329928: Issue 3297 - Fix issues introduced by recent libadblockplus changes and update dependencies (Closed)
Patch Set: MinSDK and copy'n'paste Created Nov. 20, 2015, 12:19 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/org/adblockplus/android/ProxyService.java
diff --git a/src/org/adblockplus/android/ProxyService.java b/src/org/adblockplus/android/ProxyService.java
index 860f3375ca9cb8ebc490623b082e47c8df9520ae..e71a97bba60dd0391b8c6bd430cd5f6f5339f758 100755
--- a/src/org/adblockplus/android/ProxyService.java
+++ b/src/org/adblockplus/android/ProxyService.java
@@ -26,7 +26,6 @@ import java.util.Properties;
import org.adblockplus.android.configurators.ProxyConfigurator;
import org.adblockplus.android.configurators.ProxyConfigurators;
import org.adblockplus.android.configurators.ProxyRegistrationType;
-import org.adblockplus.libadblockplus.Notification.Type;
import org.apache.commons.lang.StringUtils;
import sunlabs.brazil.server.Server;
@@ -92,8 +91,6 @@ public class ProxyService extends Service implements OnSharedPreferenceChangeLis
private ProxyConfigurator proxyConfigurator = null;
- private NotificationWatcher notificationWatcher = null;
-
@SuppressLint("NewApi")
@Override
public void onCreate()
@@ -225,8 +222,6 @@ public class ProxyService extends Service implements OnSharedPreferenceChangeLis
sendStateChangedBroadcast();
- this.startNotificationWatcher();
-
Log.i(TAG, "Service started");
}
@@ -241,8 +236,6 @@ public class ProxyService extends Service implements OnSharedPreferenceChangeLis
{
super.onDestroy();
- this.stopNotificationWatcher();
-
unregisterReceiver(this.proxyReceiver);
unregisterReceiver(this.proxyStateChangedReceiver);
@@ -602,120 +595,4 @@ public class ProxyService extends Service implements OnSharedPreferenceChangeLis
}
}
}
-
- private void startNotificationWatcher()
- {
- this.stopNotificationWatcher();
-
- this.notificationWatcher = new NotificationWatcher(this);
-
- final Thread thread = new Thread(this.notificationWatcher);
- thread.setDaemon(true);
- thread.start();
- }
-
- private void stopNotificationWatcher()
- {
- if (this.notificationWatcher != null)
- {
- this.notificationWatcher.stop();
- this.notificationWatcher = null;
- }
- }
-
- private static class NotificationWatcher implements Runnable
- {
- public static final int DEFAULT_POLL_DELAY = 3 * 60; /* seconds */
- public static final int DEFAULT_POLL_INTERVAL = 0; /* seconds */
-
- private final ProxyService proxyService;
- private final int pollDelay;
- private final int pollInterval;
-
- volatile boolean running = true;
-
- public NotificationWatcher(final ProxyService proxyService, final int pollDelay,
- final int pollInterval)
- {
- this.proxyService = proxyService;
- this.pollDelay = Math.max(0, pollDelay);
- this.pollInterval = Math.max(0, pollInterval);
- }
-
- public NotificationWatcher(final ProxyService proxyService)
- {
- this(proxyService, DEFAULT_POLL_DELAY, DEFAULT_POLL_INTERVAL);
- }
-
- protected void stop()
- {
- this.running = false;
- }
-
- @Override
- public void run()
- {
- if (this.pollDelay == 0)
- {
- this.running = false;
- return;
- }
-
- long nextPoll = System.currentTimeMillis() + 1000L * this.pollDelay;
-
- while (this.running)
- {
- try
- {
- Thread.sleep(250);
- }
- catch (InterruptedException ex)
- {
- break;
- }
-
- if (System.currentTimeMillis() >= nextPoll && this.running)
- {
- try
- {
- Log.d(TAG, "Polling for notifications");
- org.adblockplus.libadblockplus.Notification notification =
- AdblockPlus.getApplication().getNextNotificationToShow();
-
- while (notification != null
- && (notification.getType() == Type.INVALID || notification.getType() == Type.QUESTION))
- {
- notification = AdblockPlus.getApplication().getNextNotificationToShow();
- }
-
- if (notification != null)
- {
- final NotificationManager notificationManager = (NotificationManager) this.proxyService
- .getSystemService(NOTIFICATION_SERVICE);
-
- notificationManager.notify(AdblockPlus.SERVER_NOTIFICATION_ID,
- new NotificationCompat.Builder(this.proxyService.getApplicationContext())
- .setSmallIcon(R.drawable.ic_stat_blocking)
- .setContentTitle(notification.getTitle())
- .setContentText(notification.getMessageString())
- .getNotification());
- }
- }
- catch (Exception ex)
- {
- Log.e(TAG, "Polling for notifications failed: " + ex.getMessage(), ex);
- }
-
- if (this.pollInterval == 0)
- {
- this.running = false;
- }
- else
- {
- nextPoll = System.currentTimeMillis() + 1000L * this.pollInterval;
- }
- }
- }
- }
- }
}
« no previous file with comments | « src/org/adblockplus/android/AndroidShowNotificationCallback.java ('k') | src/org/adblockplus/libadblockplus/AppInfo.java » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld