Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(704)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadRetry.java

Issue 2599063002: [minidump uploader] Retries: only initiate uploads when on WiFi/Ethernet (Closed)
Patch Set: s/mPermManager/mPermissionManager/ and remove lock mechanism in test. Created 3 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadRetry.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadRetry.java b/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadRetry.java
index 8e1befc206bb2086cbc03a2b54fc45028d845818..2828f54223a631b70a348c9f9780a81c085cfe0f 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadRetry.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadRetry.java
@@ -9,7 +9,7 @@ import android.os.Handler;
import org.chromium.base.NonThreadSafe;
import org.chromium.base.annotations.SuppressFBWarnings;
-import org.chromium.net.ConnectionType;
+import org.chromium.components.minidump_uploader.util.CrashReportingPermissionManager;
import org.chromium.net.NetworkChangeNotifier;
/**
@@ -18,14 +18,17 @@ import org.chromium.net.NetworkChangeNotifier;
*/
class MinidumpUploadRetry implements NetworkChangeNotifier.ConnectionTypeObserver {
private final Context mContext;
+ private final CrashReportingPermissionManager mPermissionManager;
private static MinidumpUploadRetry sSingleton;
private static class Scheduler implements Runnable {
private static NonThreadSafe sThreadCheck;
private final Context mContext;
+ private final CrashReportingPermissionManager mPermissionManager;
- private Scheduler(Context context) {
+ private Scheduler(Context context, CrashReportingPermissionManager permissionManager) {
this.mContext = context;
+ mPermissionManager = permissionManager;
}
@Override
@@ -39,7 +42,7 @@ class MinidumpUploadRetry implements NetworkChangeNotifier.ConnectionTypeObserve
return;
}
if (sSingleton == null) {
- sSingleton = new MinidumpUploadRetry(mContext);
+ sSingleton = new MinidumpUploadRetry(mContext, mPermissionManager);
}
}
}
@@ -47,24 +50,23 @@ class MinidumpUploadRetry implements NetworkChangeNotifier.ConnectionTypeObserve
/**
* Schedule a retry. If there is already one schedule, this is NO-OP.
*/
- static void scheduleRetry(Context context) {
+ static void scheduleRetry(Context context, CrashReportingPermissionManager permissionManager) {
// NetworkChangeNotifier is not thread safe. We will post to UI thread
// instead since that's where it fires off notification changes.
- new Handler(context.getMainLooper()).post(new Scheduler(context));
+ new Handler(context.getMainLooper()).post(new Scheduler(context, permissionManager));
}
- private MinidumpUploadRetry(Context context) {
+ private MinidumpUploadRetry(
+ Context context, CrashReportingPermissionManager permissionManager) {
this.mContext = context;
+ this.mPermissionManager = permissionManager;
NetworkChangeNotifier.addConnectionTypeObserver(this);
}
@SuppressFBWarnings("ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD")
@Override
public void onConnectionTypeChanged(int connectionType) {
- // Look for "favorable" connections. Note that we never
- // know what the user's crash upload preference is until
- // the time when we are actually uploading.
- if (connectionType == ConnectionType.CONNECTION_NONE) {
+ if (!mPermissionManager.isNetworkAvailableForCrashUploads()) {
Maria 2017/01/03 19:28:41 As a small optimization I would keep the check for
gsennton 2017/01/03 20:00:35 Done.
return;
}
MinidumpUploadService.tryUploadAllCrashDumps(mContext);

Powered by Google App Engine
This is Rietveld 408576698