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

Unified Diff: components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java

Issue 2709403003: [Android Crash Reporting] Componentize MinidumpUploadJobService.java (Closed)
Patch Set: Init ContextUtils from Webview implemenation only Created 3 years, 10 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
« no previous file with comments | « components/minidump_uploader/BUILD.gn ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java
diff --git a/android_webview/java/src/org/chromium/android_webview/crash/MinidumpUploadJobService.java b/components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java
similarity index 65%
rename from android_webview/java/src/org/chromium/android_webview/crash/MinidumpUploadJobService.java
rename to components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java
index 82a684b2262c876cca43372d58d41202987fcce3..c275030846f7b104471f8a6dc2c0397644de1848 100644
--- a/android_webview/java/src/org/chromium/android_webview/crash/MinidumpUploadJobService.java
+++ b/components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java
@@ -1,47 +1,30 @@
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-package org.chromium.android_webview.crash;
+package org.chromium.components.minidump_uploader;
import android.annotation.TargetApi;
import android.app.job.JobParameters;
import android.app.job.JobService;
import android.os.Build;
-import org.chromium.android_webview.command_line.CommandLineUtil;
-import org.chromium.base.ContextUtils;
-import org.chromium.components.minidump_uploader.MinidumpUploader;
-
/**
* Class that interacts with the Android JobScheduler to upload Minidumps at appropriate times.
*/
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
-// OBS: This class needs to be public to be started from android.app.ActivityThread.
-public class MinidumpUploadJobService extends JobService {
+public abstract class MinidumpUploadJobService extends JobService {
Object mRunningLock = new Object();
boolean mRunningJob = false;
MinidumpUploader mMinidumpUploader;
@Override
- public void onCreate() {
- super.onCreate();
- // This overwrites the command line set by ChromeApplication.onCreate() to use a
- // WebView-specific command line file. This is okay since this Service is not running in the
- // same process as the main Chrome process.
- CommandLineUtil.initCommandLine();
- }
-
- @Override
public boolean onStartJob(JobParameters params) {
- // Ensure we can use ContextUtils later on (from minidump_uploader component).
- ContextUtils.initApplicationContext(this.getApplicationContext());
-
// Ensure we only run one job at a time.
synchronized (mRunningLock) {
assert !mRunningJob;
mRunningJob = true;
}
- mMinidumpUploader = new MinidumpUploaderImpl(this, true /* cleanOutMinidumps */);
+ mMinidumpUploader = createMinidumpUploader();
mMinidumpUploader.uploadAllMinidumps(createJobFinishedCallback(params));
return true; // true = processing work on a separate thread, false = done already.
}
@@ -55,6 +38,12 @@ public class MinidumpUploadJobService extends JobService {
return reschedule;
}
+ @Override
+ public void onDestroy() {
+ mMinidumpUploader = null;
+ super.onDestroy();
+ }
+
private MinidumpUploader.UploadsFinishedCallback createJobFinishedCallback(
final JobParameters params) {
return new MinidumpUploader.UploadsFinishedCallback() {
@@ -68,9 +57,8 @@ public class MinidumpUploadJobService extends JobService {
};
}
- @Override
- public void onDestroy() {
- mMinidumpUploader = null;
- super.onDestroy();
- }
+ /**
+ * @return The minidump uploader that jobs should use.
+ */
+ protected abstract MinidumpUploader createMinidumpUploader();
}
« no previous file with comments | « components/minidump_uploader/BUILD.gn ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698