118 lines
4.5 KiB
Java
118 lines
4.5 KiB
Java
package io.fabric.sdk.android.services.settings;
|
|
|
|
import android.annotation.SuppressLint;
|
|
import android.content.SharedPreferences;
|
|
import io.fabric.sdk.android.Fabric;
|
|
import io.fabric.sdk.android.Kit;
|
|
import io.fabric.sdk.android.services.common.CommonUtils;
|
|
import io.fabric.sdk.android.services.common.CurrentTimeProvider;
|
|
import io.fabric.sdk.android.services.persistence.PreferenceStore;
|
|
import io.fabric.sdk.android.services.persistence.PreferenceStoreImpl;
|
|
import org.json.JSONException;
|
|
import org.json.JSONObject;
|
|
|
|
/* loaded from: classes2.dex */
|
|
class DefaultSettingsController implements SettingsController {
|
|
private final SettingsRequest a;
|
|
private final SettingsJsonTransform b;
|
|
private final CurrentTimeProvider c;
|
|
private final CachedSettingsIo d;
|
|
private final SettingsSpiCall e;
|
|
private final Kit f;
|
|
private final PreferenceStore g;
|
|
|
|
public DefaultSettingsController(Kit kit, SettingsRequest settingsRequest, CurrentTimeProvider currentTimeProvider, SettingsJsonTransform settingsJsonTransform, CachedSettingsIo cachedSettingsIo, SettingsSpiCall settingsSpiCall) {
|
|
this.f = kit;
|
|
this.a = settingsRequest;
|
|
this.c = currentTimeProvider;
|
|
this.b = settingsJsonTransform;
|
|
this.d = cachedSettingsIo;
|
|
this.e = settingsSpiCall;
|
|
this.g = new PreferenceStoreImpl(this.f);
|
|
}
|
|
|
|
private SettingsData b(SettingsCacheBehavior settingsCacheBehavior) {
|
|
SettingsData settingsData = null;
|
|
try {
|
|
if (!SettingsCacheBehavior.SKIP_CACHE_LOOKUP.equals(settingsCacheBehavior)) {
|
|
JSONObject a = this.d.a();
|
|
if (a != null) {
|
|
SettingsData a2 = this.b.a(this.c, a);
|
|
if (a2 != null) {
|
|
a(a, "Loaded cached settings: ");
|
|
long a3 = this.c.a();
|
|
if (!SettingsCacheBehavior.IGNORE_CACHE_EXPIRATION.equals(settingsCacheBehavior) && a2.a(a3)) {
|
|
Fabric.g().d("Fabric", "Cached settings have expired.");
|
|
}
|
|
try {
|
|
Fabric.g().d("Fabric", "Returning cached settings.");
|
|
settingsData = a2;
|
|
} catch (Exception e) {
|
|
e = e;
|
|
settingsData = a2;
|
|
Fabric.g().b("Fabric", "Failed to get cached settings", e);
|
|
return settingsData;
|
|
}
|
|
} else {
|
|
Fabric.g().b("Fabric", "Failed to transform cached settings data.", null);
|
|
}
|
|
} else {
|
|
Fabric.g().d("Fabric", "No cached settings data found.");
|
|
}
|
|
}
|
|
} catch (Exception e2) {
|
|
e = e2;
|
|
}
|
|
return settingsData;
|
|
}
|
|
|
|
@Override // io.fabric.sdk.android.services.settings.SettingsController
|
|
public SettingsData a() {
|
|
return a(SettingsCacheBehavior.USE_CACHE);
|
|
}
|
|
|
|
String c() {
|
|
return CommonUtils.a(CommonUtils.g(this.f.d()));
|
|
}
|
|
|
|
String d() {
|
|
return this.g.get().getString("existing_instance_identifier", "");
|
|
}
|
|
|
|
@Override // io.fabric.sdk.android.services.settings.SettingsController
|
|
public SettingsData a(SettingsCacheBehavior settingsCacheBehavior) {
|
|
JSONObject a;
|
|
SettingsData settingsData = null;
|
|
try {
|
|
if (!Fabric.i() && !b()) {
|
|
settingsData = b(settingsCacheBehavior);
|
|
}
|
|
if (settingsData == null && (a = this.e.a(this.a)) != null) {
|
|
settingsData = this.b.a(this.c, a);
|
|
this.d.a(settingsData.c, a);
|
|
a(a, "Loaded settings: ");
|
|
a(c());
|
|
}
|
|
return settingsData == null ? b(SettingsCacheBehavior.IGNORE_CACHE_EXPIRATION) : settingsData;
|
|
} catch (Exception e) {
|
|
Fabric.g().b("Fabric", "Unknown error while loading Crashlytics settings. Crashes will be cached until settings can be retrieved.", e);
|
|
return null;
|
|
}
|
|
}
|
|
|
|
private void a(JSONObject jSONObject, String str) throws JSONException {
|
|
Fabric.g().d("Fabric", str + jSONObject.toString());
|
|
}
|
|
|
|
@SuppressLint({"CommitPrefEdits"})
|
|
boolean a(String str) {
|
|
SharedPreferences.Editor edit = this.g.edit();
|
|
edit.putString("existing_instance_identifier", str);
|
|
return this.g.a(edit);
|
|
}
|
|
|
|
boolean b() {
|
|
return !d().equals(c());
|
|
}
|
|
}
|