Bug 1273689 - Factor out getSharedPreferences call. r=sebastian
The same preferences will be used by the new code & the old code.
MozReview-Commit-ID: BXuSQjhhXQq
--- a/mobile/android/base/java/org/mozilla/gecko/telemetry/TelemetryCorePingUploadDelegate.java
+++ b/mobile/android/base/java/org/mozilla/gecko/telemetry/TelemetryCorePingUploadDelegate.java
@@ -53,16 +53,20 @@ public class TelemetryCorePingUploadDele
private TelemetryDispatcher getTelemetryDispatcher(final BrowserApp browserApp) {
if (telemetryDispatcher == null) {
final String profilePath = browserApp.getProfile().getDir().getAbsolutePath();
telemetryDispatcher = new TelemetryDispatcher(profilePath);
}
return telemetryDispatcher;
}
+ private SharedPreferences getSharedPreferences(final BrowserApp activity) {
+ return GeckoSharedPrefs.forProfileName(activity, activity.getProfile().getName());
+ }
+
private class UploadTelemetryCorePingCallback implements SearchEngineManager.SearchEngineCallback {
private final WeakReference<BrowserApp> activityWeakReference;
private UploadTelemetryCorePingCallback(final BrowserApp activity) {
this.activityWeakReference = new WeakReference<>(activity);
}
// May be called from any thread.
@@ -96,17 +100,17 @@ public class TelemetryCorePingUploadDele
try {
clientID = profile.getClientId();
} catch (final IOException e) {
Log.w(LOGTAG, "Unable to get client ID to generate core ping: " + e);
return;
}
// Each profile can have different telemetry data so we intentionally grab the shared prefs for the profile.
- final SharedPreferences sharedPrefs = GeckoSharedPrefs.forProfileName(activity, profile.getName());
+ final SharedPreferences sharedPrefs = getSharedPreferences(activity);
final SessionMeasurements.SessionMeasurementsContainer sessionMeasurementsContainer =
activity.getSessionMeasurementDelegate().getAndResetSessionMeasurements(activity);
final TelemetryCorePingBuilder pingBuilder = new TelemetryCorePingBuilder(activity)
.setClientID(clientID)
.setDefaultSearchEngine(TelemetryCorePingBuilder.getEngineIdentifier(engine))
.setProfileCreationDate(TelemetryCorePingBuilder.getProfileCreationDate(activity, profile))
.setSequenceNumber(TelemetryCorePingBuilder.getAndIncrementSequenceNumber(sharedPrefs))
.setSessionCount(sessionMeasurementsContainer.sessionCount)