.class public final Lcom/google/firebase/sessions/settings/SettingsCache; .super Ljava/lang/Object; .source "SourceFile" # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Lcom/google/firebase/sessions/settings/SettingsCache$Companion; } .end annotation # static fields .field public static final CACHE_DURATION_SECONDS:Landroidx/datastore/preferences/core/Preferences$Key; .field public static final CACHE_UPDATED_TIME:Landroidx/datastore/preferences/core/Preferences$Key; .field public static final Companion:Lcom/google/firebase/sessions/settings/SettingsCache$Companion; .field public static final RESTART_TIMEOUT_SECONDS:Landroidx/datastore/preferences/core/Preferences$Key; .field public static final SAMPLING_RATE:Landroidx/datastore/preferences/core/Preferences$Key; .field public static final SESSIONS_ENABLED:Landroidx/datastore/preferences/core/Preferences$Key; # instance fields .field public final dataStore:Landroidx/datastore/core/DataStore; .field public sessionConfigs:Lcom/google/firebase/sessions/settings/SessionConfigs; # direct methods .method static constructor ()V .locals 2 new-instance v0, Lcom/google/firebase/sessions/settings/SettingsCache$Companion; const/4 v1, 0x0 invoke-direct {v0, v1}, Lcom/google/firebase/sessions/settings/SettingsCache$Companion;->(Lkotlin/jvm/internal/DefaultConstructorMarker;)V sput-object v0, Lcom/google/firebase/sessions/settings/SettingsCache;->Companion:Lcom/google/firebase/sessions/settings/SettingsCache$Companion; const-string v0, "firebase_sessions_enabled" .line 135 invoke-static {v0}, Landroidx/datastore/preferences/core/PreferencesKeys;->booleanKey(Ljava/lang/String;)Landroidx/datastore/preferences/core/Preferences$Key; move-result-object v0 sput-object v0, Lcom/google/firebase/sessions/settings/SettingsCache;->SESSIONS_ENABLED:Landroidx/datastore/preferences/core/Preferences$Key; const-string v0, "firebase_sessions_sampling_rate" .line 136 invoke-static {v0}, Landroidx/datastore/preferences/core/PreferencesKeys;->doubleKey(Ljava/lang/String;)Landroidx/datastore/preferences/core/Preferences$Key; move-result-object v0 sput-object v0, Lcom/google/firebase/sessions/settings/SettingsCache;->SAMPLING_RATE:Landroidx/datastore/preferences/core/Preferences$Key; const-string v0, "firebase_sessions_restart_timeout" .line 137 invoke-static {v0}, Landroidx/datastore/preferences/core/PreferencesKeys;->intKey(Ljava/lang/String;)Landroidx/datastore/preferences/core/Preferences$Key; move-result-object v0 sput-object v0, Lcom/google/firebase/sessions/settings/SettingsCache;->RESTART_TIMEOUT_SECONDS:Landroidx/datastore/preferences/core/Preferences$Key; const-string v0, "firebase_sessions_cache_duration" .line 138 invoke-static {v0}, Landroidx/datastore/preferences/core/PreferencesKeys;->intKey(Ljava/lang/String;)Landroidx/datastore/preferences/core/Preferences$Key; move-result-object v0 sput-object v0, Lcom/google/firebase/sessions/settings/SettingsCache;->CACHE_DURATION_SECONDS:Landroidx/datastore/preferences/core/Preferences$Key; const-string v0, "firebase_sessions_cache_updated_time" .line 139 invoke-static {v0}, Landroidx/datastore/preferences/core/PreferencesKeys;->longKey(Ljava/lang/String;)Landroidx/datastore/preferences/core/Preferences$Key; move-result-object v0 sput-object v0, Lcom/google/firebase/sessions/settings/SettingsCache;->CACHE_UPDATED_TIME:Landroidx/datastore/preferences/core/Preferences$Key; return-void .end method .method public constructor (Landroidx/datastore/core/DataStore;)V .locals 2 const-string v0, "dataStore" invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V .line 40 invoke-direct {p0}, Ljava/lang/Object;->()V iput-object p1, p0, Lcom/google/firebase/sessions/settings/SettingsCache;->dataStore:Landroidx/datastore/core/DataStore; .line 46 new-instance p1, Lcom/google/firebase/sessions/settings/SettingsCache$1; const/4 v0, 0x0 invoke-direct {p1, p0, v0}, Lcom/google/firebase/sessions/settings/SettingsCache$1;->(Lcom/google/firebase/sessions/settings/SettingsCache;Lkotlin/coroutines/Continuation;)V const/4 v1, 0x1 invoke-static {v0, p1, v1, v0}, Lkotlinx/coroutines/BuildersKt;->runBlocking$default(Lkotlin/coroutines/CoroutineContext;Lkotlin/jvm/functions/Function2;ILjava/lang/Object;)Ljava/lang/Object; return-void .end method .method public static final synthetic access$getDataStore$p(Lcom/google/firebase/sessions/settings/SettingsCache;)Landroidx/datastore/core/DataStore; .locals 0 .line 40 iget-object p0, p0, Lcom/google/firebase/sessions/settings/SettingsCache;->dataStore:Landroidx/datastore/core/DataStore; return-object p0 .end method .method public static final synthetic access$updateConfigValue(Lcom/google/firebase/sessions/settings/SettingsCache;Landroidx/datastore/preferences/core/Preferences$Key;Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; .locals 0 .line 40 invoke-virtual {p0, p1, p2, p3}, Lcom/google/firebase/sessions/settings/SettingsCache;->updateConfigValue(Landroidx/datastore/preferences/core/Preferences$Key;Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; move-result-object p0 return-object p0 .end method .method public static final synthetic access$updateSessionConfigs(Lcom/google/firebase/sessions/settings/SettingsCache;Landroidx/datastore/preferences/core/Preferences;)V .locals 0 .line 40 invoke-virtual {p0, p1}, Lcom/google/firebase/sessions/settings/SettingsCache;->updateSessionConfigs(Landroidx/datastore/preferences/core/Preferences;)V return-void .end method # virtual methods .method public final hasCacheExpired$com_google_firebase_firebase_sessions()Z .locals 6 iget-object v0, p0, Lcom/google/firebase/sessions/settings/SettingsCache;->sessionConfigs:Lcom/google/firebase/sessions/settings/SessionConfigs; const/4 v1, 0x0 const-string v2, "sessionConfigs" if-nez v0, :cond_0 .line 62 invoke-static {v2}, Lkotlin/jvm/internal/Intrinsics;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V move-object v0, v1 :cond_0 invoke-virtual {v0}, Lcom/google/firebase/sessions/settings/SessionConfigs;->getCacheUpdatedTime()Ljava/lang/Long; move-result-object v0 iget-object v3, p0, Lcom/google/firebase/sessions/settings/SettingsCache;->sessionConfigs:Lcom/google/firebase/sessions/settings/SessionConfigs; if-nez v3, :cond_1 .line 63 invoke-static {v2}, Lkotlin/jvm/internal/Intrinsics;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V goto :goto_0 :cond_1 move-object v1, v3 :goto_0 invoke-virtual {v1}, Lcom/google/firebase/sessions/settings/SessionConfigs;->getCacheDuration()Ljava/lang/Integer; move-result-object v1 if-eqz v0, :cond_2 if-eqz v1, :cond_2 .line 66 invoke-static {}, Ljava/lang/System;->currentTimeMillis()J move-result-wide v2 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v4 sub-long/2addr v2, v4 const/16 v0, 0x3e8 int-to-long v4, v0 div-long/2addr v2, v4 .line 67 invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I move-result v0 int-to-long v0, v0 cmp-long v0, v2, v0 if-gez v0, :cond_2 const/4 v0, 0x0 return v0 :cond_2 const/4 v0, 0x1 return v0 .end method .method public final sessionRestartTimeout()Ljava/lang/Integer; .locals 1 iget-object v0, p0, Lcom/google/firebase/sessions/settings/SettingsCache;->sessionConfigs:Lcom/google/firebase/sessions/settings/SessionConfigs; if-nez v0, :cond_0 const-string v0, "sessionConfigs" .line 78 invoke-static {v0}, Lkotlin/jvm/internal/Intrinsics;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V const/4 v0, 0x0 :cond_0 invoke-virtual {v0}, Lcom/google/firebase/sessions/settings/SessionConfigs;->getSessionRestartTimeout()Ljava/lang/Integer; move-result-object v0 return-object v0 .end method .method public final sessionSamplingRate()Ljava/lang/Double; .locals 1 iget-object v0, p0, Lcom/google/firebase/sessions/settings/SettingsCache;->sessionConfigs:Lcom/google/firebase/sessions/settings/SessionConfigs; if-nez v0, :cond_0 const-string v0, "sessionConfigs" .line 76 invoke-static {v0}, Lkotlin/jvm/internal/Intrinsics;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V const/4 v0, 0x0 :cond_0 invoke-virtual {v0}, Lcom/google/firebase/sessions/settings/SessionConfigs;->getSessionSamplingRate()Ljava/lang/Double; move-result-object v0 return-object v0 .end method .method public final sessionsEnabled()Ljava/lang/Boolean; .locals 1 iget-object v0, p0, Lcom/google/firebase/sessions/settings/SettingsCache;->sessionConfigs:Lcom/google/firebase/sessions/settings/SessionConfigs; if-nez v0, :cond_0 const-string v0, "sessionConfigs" .line 74 invoke-static {v0}, Lkotlin/jvm/internal/Intrinsics;->throwUninitializedPropertyAccessException(Ljava/lang/String;)V const/4 v0, 0x0 :cond_0 invoke-virtual {v0}, Lcom/google/firebase/sessions/settings/SessionConfigs;->getSessionEnabled()Ljava/lang/Boolean; move-result-object v0 return-object v0 .end method .method public final updateConfigValue(Landroidx/datastore/preferences/core/Preferences$Key;Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; .locals 5 instance-of v0, p3, Lcom/google/firebase/sessions/settings/SettingsCache$updateConfigValue$1; if-eqz v0, :cond_0 move-object v0, p3 check-cast v0, Lcom/google/firebase/sessions/settings/SettingsCache$updateConfigValue$1; iget v1, v0, Lcom/google/firebase/sessions/settings/SettingsCache$updateConfigValue$1;->label:I const/high16 v2, -0x80000000 and-int v3, v1, v2 if-eqz v3, :cond_0 sub-int/2addr v1, v2 iput v1, v0, Lcom/google/firebase/sessions/settings/SettingsCache$updateConfigValue$1;->label:I goto :goto_0 :cond_0 new-instance v0, Lcom/google/firebase/sessions/settings/SettingsCache$updateConfigValue$1; invoke-direct {v0, p0, p3}, Lcom/google/firebase/sessions/settings/SettingsCache$updateConfigValue$1;->(Lcom/google/firebase/sessions/settings/SettingsCache;Lkotlin/coroutines/Continuation;)V :goto_0 iget-object p3, v0, Lcom/google/firebase/sessions/settings/SettingsCache$updateConfigValue$1;->result:Ljava/lang/Object; invoke-static {}, Lkotlin/coroutines/intrinsics/IntrinsicsKt;->getCOROUTINE_SUSPENDED()Ljava/lang/Object; move-result-object v1 .line 116 iget v2, v0, Lcom/google/firebase/sessions/settings/SettingsCache$updateConfigValue$1;->label:I const/4 v3, 0x1 if-eqz v2, :cond_2 if-ne v2, v3, :cond_1 :try_start_0 invoke-static {p3}, Lkotlin/ResultKt;->throwOnFailure(Ljava/lang/Object;)V :try_end_0 .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_2 :catch_0 move-exception p1 goto :goto_1 :cond_1 new-instance p1, Ljava/lang/IllegalStateException; const-string p2, "call to \'resume\' before \'invoke\' with coroutine" invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw p1 :cond_2 invoke-static {p3}, Lkotlin/ResultKt;->throwOnFailure(Ljava/lang/Object;)V :try_start_1 iget-object p3, p0, Lcom/google/firebase/sessions/settings/SettingsCache;->dataStore:Landroidx/datastore/core/DataStore; .line 119 new-instance v2, Lcom/google/firebase/sessions/settings/SettingsCache$updateConfigValue$2; const/4 v4, 0x0 invoke-direct {v2, p2, p1, p0, v4}, Lcom/google/firebase/sessions/settings/SettingsCache$updateConfigValue$2;->(Ljava/lang/Object;Landroidx/datastore/preferences/core/Preferences$Key;Lcom/google/firebase/sessions/settings/SettingsCache;Lkotlin/coroutines/Continuation;)V iput v3, v0, Lcom/google/firebase/sessions/settings/SettingsCache$updateConfigValue$1;->label:I invoke-static {p3, v2, v0}, Landroidx/datastore/preferences/core/PreferencesKt;->edit(Landroidx/datastore/core/DataStore;Lkotlin/jvm/functions/Function2;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; move-result-object p1 :try_end_1 .catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_0 if-ne p1, v1, :cond_3 return-object v1 .line 128 :goto_1 new-instance p2, Ljava/lang/StringBuilder; invoke-direct {p2}, Ljava/lang/StringBuilder;->()V const-string p3, "Failed to update cache config value: " invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 const-string p2, "SettingsCache" invoke-static {p2, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I .line 130 :cond_3 :goto_2 sget-object p1, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit; return-object p1 .end method .method public final updateSamplingRate(Ljava/lang/Double;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; .locals 1 sget-object v0, Lcom/google/firebase/sessions/settings/SettingsCache;->SAMPLING_RATE:Landroidx/datastore/preferences/core/Preferences$Key; .line 85 invoke-virtual {p0, v0, p1, p2}, Lcom/google/firebase/sessions/settings/SettingsCache;->updateConfigValue(Landroidx/datastore/preferences/core/Preferences$Key;Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; move-result-object p1 invoke-static {}, Lkotlin/coroutines/intrinsics/IntrinsicsKt;->getCOROUTINE_SUSPENDED()Ljava/lang/Object; move-result-object p2 if-ne p1, p2, :cond_0 return-object p1 :cond_0 sget-object p1, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit; return-object p1 .end method .method public final updateSessionCacheDuration(Ljava/lang/Integer;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; .locals 1 sget-object v0, Lcom/google/firebase/sessions/settings/SettingsCache;->CACHE_DURATION_SECONDS:Landroidx/datastore/preferences/core/Preferences$Key; .line 93 invoke-virtual {p0, v0, p1, p2}, Lcom/google/firebase/sessions/settings/SettingsCache;->updateConfigValue(Landroidx/datastore/preferences/core/Preferences$Key;Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; move-result-object p1 invoke-static {}, Lkotlin/coroutines/intrinsics/IntrinsicsKt;->getCOROUTINE_SUSPENDED()Ljava/lang/Object; move-result-object p2 if-ne p1, p2, :cond_0 return-object p1 :cond_0 sget-object p1, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit; return-object p1 .end method .method public final updateSessionCacheUpdatedTime(Ljava/lang/Long;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; .locals 1 sget-object v0, Lcom/google/firebase/sessions/settings/SettingsCache;->CACHE_UPDATED_TIME:Landroidx/datastore/preferences/core/Preferences$Key; .line 97 invoke-virtual {p0, v0, p1, p2}, Lcom/google/firebase/sessions/settings/SettingsCache;->updateConfigValue(Landroidx/datastore/preferences/core/Preferences$Key;Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; move-result-object p1 invoke-static {}, Lkotlin/coroutines/intrinsics/IntrinsicsKt;->getCOROUTINE_SUSPENDED()Ljava/lang/Object; move-result-object p2 if-ne p1, p2, :cond_0 return-object p1 :cond_0 sget-object p1, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit; return-object p1 .end method .method public final updateSessionConfigs(Landroidx/datastore/preferences/core/Preferences;)V .locals 7 .line 52 new-instance v6, Lcom/google/firebase/sessions/settings/SessionConfigs; sget-object v0, Lcom/google/firebase/sessions/settings/SettingsCache;->SESSIONS_ENABLED:Landroidx/datastore/preferences/core/Preferences$Key; .line 53 invoke-virtual {p1, v0}, Landroidx/datastore/preferences/core/Preferences;->get(Landroidx/datastore/preferences/core/Preferences$Key;)Ljava/lang/Object; move-result-object v0 move-object v1, v0 check-cast v1, Ljava/lang/Boolean; sget-object v0, Lcom/google/firebase/sessions/settings/SettingsCache;->SAMPLING_RATE:Landroidx/datastore/preferences/core/Preferences$Key; .line 54 invoke-virtual {p1, v0}, Landroidx/datastore/preferences/core/Preferences;->get(Landroidx/datastore/preferences/core/Preferences$Key;)Ljava/lang/Object; move-result-object v0 move-object v2, v0 check-cast v2, Ljava/lang/Double; sget-object v0, Lcom/google/firebase/sessions/settings/SettingsCache;->RESTART_TIMEOUT_SECONDS:Landroidx/datastore/preferences/core/Preferences$Key; .line 55 invoke-virtual {p1, v0}, Landroidx/datastore/preferences/core/Preferences;->get(Landroidx/datastore/preferences/core/Preferences$Key;)Ljava/lang/Object; move-result-object v0 move-object v3, v0 check-cast v3, Ljava/lang/Integer; sget-object v0, Lcom/google/firebase/sessions/settings/SettingsCache;->CACHE_DURATION_SECONDS:Landroidx/datastore/preferences/core/Preferences$Key; .line 56 invoke-virtual {p1, v0}, Landroidx/datastore/preferences/core/Preferences;->get(Landroidx/datastore/preferences/core/Preferences$Key;)Ljava/lang/Object; move-result-object v0 move-object v4, v0 check-cast v4, Ljava/lang/Integer; sget-object v0, Lcom/google/firebase/sessions/settings/SettingsCache;->CACHE_UPDATED_TIME:Landroidx/datastore/preferences/core/Preferences$Key; .line 57 invoke-virtual {p1, v0}, Landroidx/datastore/preferences/core/Preferences;->get(Landroidx/datastore/preferences/core/Preferences$Key;)Ljava/lang/Object; move-result-object p1 move-object v5, p1 check-cast v5, Ljava/lang/Long; move-object v0, v6 .line 52 invoke-direct/range {v0 .. v5}, Lcom/google/firebase/sessions/settings/SessionConfigs;->(Ljava/lang/Boolean;Ljava/lang/Double;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Long;)V iput-object v6, p0, Lcom/google/firebase/sessions/settings/SettingsCache;->sessionConfigs:Lcom/google/firebase/sessions/settings/SessionConfigs; return-void .end method .method public final updateSessionRestartTimeout(Ljava/lang/Integer;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; .locals 1 sget-object v0, Lcom/google/firebase/sessions/settings/SettingsCache;->RESTART_TIMEOUT_SECONDS:Landroidx/datastore/preferences/core/Preferences$Key; .line 89 invoke-virtual {p0, v0, p1, p2}, Lcom/google/firebase/sessions/settings/SettingsCache;->updateConfigValue(Landroidx/datastore/preferences/core/Preferences$Key;Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; move-result-object p1 invoke-static {}, Lkotlin/coroutines/intrinsics/IntrinsicsKt;->getCOROUTINE_SUSPENDED()Ljava/lang/Object; move-result-object p2 if-ne p1, p2, :cond_0 return-object p1 :cond_0 sget-object p1, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit; return-object p1 .end method .method public final updateSettingsEnabled(Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; .locals 1 sget-object v0, Lcom/google/firebase/sessions/settings/SettingsCache;->SESSIONS_ENABLED:Landroidx/datastore/preferences/core/Preferences$Key; .line 81 invoke-virtual {p0, v0, p1, p2}, Lcom/google/firebase/sessions/settings/SettingsCache;->updateConfigValue(Landroidx/datastore/preferences/core/Preferences$Key;Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; move-result-object p1 invoke-static {}, Lkotlin/coroutines/intrinsics/IntrinsicsKt;->getCOROUTINE_SUSPENDED()Ljava/lang/Object; move-result-object p2 if-ne p1, p2, :cond_0 return-object p1 :cond_0 sget-object p1, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit; return-object p1 .end method