260 lines
16 KiB
Java
260 lines
16 KiB
Java
package com.google.firebase.sessions.api;
|
|
|
|
import android.util.Log;
|
|
import com.google.firebase.sessions.api.SessionSubscriber;
|
|
import java.util.Collections;
|
|
import java.util.LinkedHashMap;
|
|
import java.util.Map;
|
|
import kotlin.Metadata;
|
|
import kotlin.jvm.JvmStatic;
|
|
import kotlin.jvm.internal.DefaultConstructorMarker;
|
|
import kotlin.jvm.internal.Intrinsics;
|
|
import kotlinx.coroutines.sync.Mutex;
|
|
import kotlinx.coroutines.sync.MutexKt;
|
|
|
|
@Metadata(d1 = {"\u00006\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0010\u000e\n\u0000\n\u0002\u0010%\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0010$\n\u0000\n\u0002\u0010\u0002\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0002\b\n\bÆ\u0002\u0018\u00002\u00020\u0001:\u0001\u0019B\u0007\b\u0002¢\u0006\u0002\u0010\u0002J\u000e\u0010\u000b\u001a\u00020\f2\u0006\u0010\r\u001a\u00020\u0007J\u0010\u0010\u000e\u001a\u00020\t2\u0006\u0010\r\u001a\u00020\u0007H\u0002J\u001f\u0010\u000f\u001a\u000e\u0012\u0004\u0012\u00020\u0007\u0012\u0004\u0012\u00020\u00100\nH\u0080@ø\u0001\u0000¢\u0006\u0004\b\u0011\u0010\u0012J\u0015\u0010\u0013\u001a\u00020\u00102\u0006\u0010\r\u001a\u00020\u0007H\u0001¢\u0006\u0002\b\u0014J\u0010\u0010\u0015\u001a\u00020\f2\u0006\u0010\u0016\u001a\u00020\u0010H\u0007J\r\u0010\u0017\u001a\u00020\fH\u0001¢\u0006\u0002\b\u0018R\u000e\u0010\u0003\u001a\u00020\u0004X\u0082T¢\u0006\u0002\n\u0000RN\u0010\u0005\u001aB\u0012\f\u0012\n \b*\u0004\u0018\u00010\u00070\u0007\u0012\f\u0012\n \b*\u0004\u0018\u00010\t0\t \b* \u0012\f\u0012\n \b*\u0004\u0018\u00010\u00070\u0007\u0012\f\u0012\n \b*\u0004\u0018\u00010\t0\t\u0018\u00010\n0\u0006X\u0082\u0004¢\u0006\u0002\n\u0000\u0082\u0002\u0004\n\u0002\b\u0019¨\u0006\u001a"}, d2 = {"Lcom/google/firebase/sessions/api/FirebaseSessionsDependencies;", "", "()V", "TAG", "", "dependencies", "", "Lcom/google/firebase/sessions/api/SessionSubscriber$Name;", "kotlin.jvm.PlatformType", "Lcom/google/firebase/sessions/api/FirebaseSessionsDependencies$Dependency;", "", "addDependency", "", "subscriberName", "getDependency", "getRegisteredSubscribers", "Lcom/google/firebase/sessions/api/SessionSubscriber;", "getRegisteredSubscribers$com_google_firebase_firebase_sessions", "(Lkotlin/coroutines/Continuation;)Ljava/lang/Object;", "getSubscriber", "getSubscriber$com_google_firebase_firebase_sessions", "register", "subscriber", "reset", "reset$com_google_firebase_firebase_sessions", "Dependency", "com.google.firebase-firebase-sessions"}, k = 1, mv = {1, 7, 1}, xi = 48)
|
|
/* loaded from: classes3.dex */
|
|
public final class FirebaseSessionsDependencies {
|
|
private static final String TAG = "SessionsDependencies";
|
|
public static final FirebaseSessionsDependencies INSTANCE = new FirebaseSessionsDependencies();
|
|
private static final Map<SessionSubscriber.Name, Dependency> dependencies = Collections.synchronizedMap(new LinkedHashMap());
|
|
|
|
@Metadata(d1 = {"\u0000,\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u000b\n\u0002\u0010\u000b\n\u0002\b\u0002\n\u0002\u0010\b\n\u0000\n\u0002\u0010\u000e\n\u0000\b\u0082\b\u0018\u00002\u00020\u0001B\u0019\u0012\u0006\u0010\u0002\u001a\u00020\u0003\u0012\n\b\u0002\u0010\u0004\u001a\u0004\u0018\u00010\u0005¢\u0006\u0002\u0010\u0006J\t\u0010\r\u001a\u00020\u0003HÆ\u0003J\u000b\u0010\u000e\u001a\u0004\u0018\u00010\u0005HÆ\u0003J\u001f\u0010\u000f\u001a\u00020\u00002\b\b\u0002\u0010\u0002\u001a\u00020\u00032\n\b\u0002\u0010\u0004\u001a\u0004\u0018\u00010\u0005HÆ\u0001J\u0013\u0010\u0010\u001a\u00020\u00112\b\u0010\u0012\u001a\u0004\u0018\u00010\u0001HÖ\u0003J\t\u0010\u0013\u001a\u00020\u0014HÖ\u0001J\t\u0010\u0015\u001a\u00020\u0016HÖ\u0001R\u0011\u0010\u0002\u001a\u00020\u0003¢\u0006\b\n\u0000\u001a\u0004\b\u0007\u0010\bR\u001c\u0010\u0004\u001a\u0004\u0018\u00010\u0005X\u0086\u000e¢\u0006\u000e\n\u0000\u001a\u0004\b\t\u0010\n\"\u0004\b\u000b\u0010\f¨\u0006\u0017"}, d2 = {"Lcom/google/firebase/sessions/api/FirebaseSessionsDependencies$Dependency;", "", "mutex", "Lkotlinx/coroutines/sync/Mutex;", "subscriber", "Lcom/google/firebase/sessions/api/SessionSubscriber;", "(Lkotlinx/coroutines/sync/Mutex;Lcom/google/firebase/sessions/api/SessionSubscriber;)V", "getMutex", "()Lkotlinx/coroutines/sync/Mutex;", "getSubscriber", "()Lcom/google/firebase/sessions/api/SessionSubscriber;", "setSubscriber", "(Lcom/google/firebase/sessions/api/SessionSubscriber;)V", "component1", "component2", "copy", "equals", "", "other", "hashCode", "", "toString", "", "com.google.firebase-firebase-sessions"}, k = 1, mv = {1, 7, 1}, xi = 48)
|
|
/* loaded from: classes3.dex */
|
|
public static final /* data */ class Dependency {
|
|
private final Mutex mutex;
|
|
private SessionSubscriber subscriber;
|
|
|
|
public Dependency(Mutex mutex, SessionSubscriber sessionSubscriber) {
|
|
Intrinsics.checkNotNullParameter(mutex, "mutex");
|
|
this.mutex = mutex;
|
|
this.subscriber = sessionSubscriber;
|
|
}
|
|
|
|
public static /* synthetic */ Dependency copy$default(Dependency dependency, Mutex mutex, SessionSubscriber sessionSubscriber, int i, Object obj) {
|
|
if ((i & 1) != 0) {
|
|
mutex = dependency.mutex;
|
|
}
|
|
if ((i & 2) != 0) {
|
|
sessionSubscriber = dependency.subscriber;
|
|
}
|
|
return dependency.copy(mutex, sessionSubscriber);
|
|
}
|
|
|
|
/* renamed from: component1, reason: from getter */
|
|
public final Mutex getMutex() {
|
|
return this.mutex;
|
|
}
|
|
|
|
/* renamed from: component2, reason: from getter */
|
|
public final SessionSubscriber getSubscriber() {
|
|
return this.subscriber;
|
|
}
|
|
|
|
public final Dependency copy(Mutex mutex, SessionSubscriber subscriber) {
|
|
Intrinsics.checkNotNullParameter(mutex, "mutex");
|
|
return new Dependency(mutex, subscriber);
|
|
}
|
|
|
|
public boolean equals(Object other) {
|
|
if (this == other) {
|
|
return true;
|
|
}
|
|
if (!(other instanceof Dependency)) {
|
|
return false;
|
|
}
|
|
Dependency dependency = (Dependency) other;
|
|
return Intrinsics.areEqual(this.mutex, dependency.mutex) && Intrinsics.areEqual(this.subscriber, dependency.subscriber);
|
|
}
|
|
|
|
public final Mutex getMutex() {
|
|
return this.mutex;
|
|
}
|
|
|
|
public final SessionSubscriber getSubscriber() {
|
|
return this.subscriber;
|
|
}
|
|
|
|
public int hashCode() {
|
|
int hashCode = this.mutex.hashCode() * 31;
|
|
SessionSubscriber sessionSubscriber = this.subscriber;
|
|
return hashCode + (sessionSubscriber == null ? 0 : sessionSubscriber.hashCode());
|
|
}
|
|
|
|
public final void setSubscriber(SessionSubscriber sessionSubscriber) {
|
|
this.subscriber = sessionSubscriber;
|
|
}
|
|
|
|
public String toString() {
|
|
return "Dependency(mutex=" + this.mutex + ", subscriber=" + this.subscriber + ')';
|
|
}
|
|
|
|
public /* synthetic */ Dependency(Mutex mutex, SessionSubscriber sessionSubscriber, int i, DefaultConstructorMarker defaultConstructorMarker) {
|
|
this(mutex, (i & 2) != 0 ? null : sessionSubscriber);
|
|
}
|
|
}
|
|
|
|
private FirebaseSessionsDependencies() {
|
|
}
|
|
|
|
private final Dependency getDependency(SessionSubscriber.Name subscriberName) {
|
|
Map<SessionSubscriber.Name, Dependency> dependencies2 = dependencies;
|
|
Intrinsics.checkNotNullExpressionValue(dependencies2, "dependencies");
|
|
Dependency dependency = dependencies2.get(subscriberName);
|
|
if (dependency != null) {
|
|
Intrinsics.checkNotNullExpressionValue(dependency, "dependencies.getOrElse(s…load time.\"\n )\n }");
|
|
return dependency;
|
|
}
|
|
throw new IllegalStateException("Cannot get dependency " + subscriberName + ". Dependencies should be added at class load time.");
|
|
}
|
|
|
|
@JvmStatic
|
|
public static final void register(SessionSubscriber subscriber) {
|
|
Intrinsics.checkNotNullParameter(subscriber, "subscriber");
|
|
SessionSubscriber.Name sessionSubscriberName = subscriber.getSessionSubscriberName();
|
|
Dependency dependency = INSTANCE.getDependency(sessionSubscriberName);
|
|
if (dependency.getSubscriber() != null) {
|
|
Log.d(TAG, "Subscriber " + sessionSubscriberName + " already registered.");
|
|
return;
|
|
}
|
|
dependency.setSubscriber(subscriber);
|
|
Log.d(TAG, "Subscriber " + sessionSubscriberName + " registered.");
|
|
Mutex.DefaultImpls.unlock$default(dependency.getMutex(), null, 1, null);
|
|
}
|
|
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
public final void addDependency(SessionSubscriber.Name subscriberName) {
|
|
Intrinsics.checkNotNullParameter(subscriberName, "subscriberName");
|
|
if (subscriberName == SessionSubscriber.Name.PERFORMANCE) {
|
|
throw new IllegalArgumentException("Incompatible versions of Firebase Perf and Firebase Sessions.\nA safe combination would be:\n firebase-sessions:1.1.0\n firebase-crashlytics:18.5.0\n firebase-perf:20.5.0\nFor more information contact Firebase Support.");
|
|
}
|
|
Map<SessionSubscriber.Name, Dependency> dependencies2 = dependencies;
|
|
if (dependencies2.containsKey(subscriberName)) {
|
|
Log.d(TAG, "Dependency " + subscriberName + " already added.");
|
|
return;
|
|
}
|
|
Intrinsics.checkNotNullExpressionValue(dependencies2, "dependencies");
|
|
dependencies2.put(subscriberName, new Dependency(MutexKt.Mutex(true), null, 2, 0 == true ? 1 : 0));
|
|
Log.d(TAG, "Dependency to " + subscriberName + " added.");
|
|
}
|
|
|
|
/* JADX WARN: Removed duplicated region for block: B:15:0x006f */
|
|
/* JADX WARN: Removed duplicated region for block: B:20:0x00b3 A[RETURN] */
|
|
/* JADX WARN: Removed duplicated region for block: B:27:0x0048 */
|
|
/* JADX WARN: Removed duplicated region for block: B:8:0x0024 */
|
|
/* JADX WARN: Unsupported multi-entry loop pattern (BACK_EDGE: B:19:0x009f -> B:10:0x00a0). Please report as a decompilation issue!!! */
|
|
/*
|
|
Code decompiled incorrectly, please refer to instructions dump.
|
|
To view partially-correct add '--show-bad-code' argument
|
|
*/
|
|
public final java.lang.Object getRegisteredSubscribers$com_google_firebase_firebase_sessions(kotlin.coroutines.Continuation<? super java.util.Map<com.google.firebase.sessions.api.SessionSubscriber.Name, ? extends com.google.firebase.sessions.api.SessionSubscriber>> r10) {
|
|
/*
|
|
r9 = this;
|
|
boolean r0 = r10 instanceof com.google.firebase.sessions.api.FirebaseSessionsDependencies$getRegisteredSubscribers$1
|
|
if (r0 == 0) goto L13
|
|
r0 = r10
|
|
com.google.firebase.sessions.api.FirebaseSessionsDependencies$getRegisteredSubscribers$1 r0 = (com.google.firebase.sessions.api.FirebaseSessionsDependencies$getRegisteredSubscribers$1) r0
|
|
int r1 = r0.label
|
|
r2 = -2147483648(0xffffffff80000000, float:-0.0)
|
|
r3 = r1 & r2
|
|
if (r3 == 0) goto L13
|
|
int r1 = r1 - r2
|
|
r0.label = r1
|
|
goto L18
|
|
L13:
|
|
com.google.firebase.sessions.api.FirebaseSessionsDependencies$getRegisteredSubscribers$1 r0 = new com.google.firebase.sessions.api.FirebaseSessionsDependencies$getRegisteredSubscribers$1
|
|
r0.<init>(r9, r10)
|
|
L18:
|
|
java.lang.Object r9 = r0.result
|
|
java.lang.Object r10 = kotlin.coroutines.intrinsics.IntrinsicsKt.getCOROUTINE_SUSPENDED()
|
|
int r1 = r0.label
|
|
r2 = 1
|
|
r3 = 0
|
|
if (r1 == 0) goto L48
|
|
if (r1 != r2) goto L40
|
|
java.lang.Object r1 = r0.L$5
|
|
java.lang.Object r4 = r0.L$4
|
|
java.util.Map r4 = (java.util.Map) r4
|
|
java.lang.Object r5 = r0.L$3
|
|
kotlinx.coroutines.sync.Mutex r5 = (kotlinx.coroutines.sync.Mutex) r5
|
|
java.lang.Object r6 = r0.L$2
|
|
com.google.firebase.sessions.api.SessionSubscriber$Name r6 = (com.google.firebase.sessions.api.SessionSubscriber.Name) r6
|
|
java.lang.Object r7 = r0.L$1
|
|
java.util.Iterator r7 = (java.util.Iterator) r7
|
|
java.lang.Object r8 = r0.L$0
|
|
java.util.Map r8 = (java.util.Map) r8
|
|
kotlin.ResultKt.throwOnFailure(r9)
|
|
goto La0
|
|
L40:
|
|
java.lang.IllegalStateException r9 = new java.lang.IllegalStateException
|
|
java.lang.String r10 = "call to 'resume' before 'invoke' with coroutine"
|
|
r9.<init>(r10)
|
|
throw r9
|
|
L48:
|
|
kotlin.ResultKt.throwOnFailure(r9)
|
|
java.util.Map<com.google.firebase.sessions.api.SessionSubscriber$Name, com.google.firebase.sessions.api.FirebaseSessionsDependencies$Dependency> r9 = com.google.firebase.sessions.api.FirebaseSessionsDependencies.dependencies
|
|
java.lang.String r1 = "dependencies"
|
|
kotlin.jvm.internal.Intrinsics.checkNotNullExpressionValue(r9, r1)
|
|
java.util.LinkedHashMap r1 = new java.util.LinkedHashMap
|
|
int r4 = r9.size()
|
|
int r4 = kotlin.collections.MapsKt.mapCapacity(r4)
|
|
r1.<init>(r4)
|
|
java.util.Set r9 = r9.entrySet()
|
|
java.util.Iterator r9 = r9.iterator()
|
|
r7 = r9
|
|
r4 = r1
|
|
L69:
|
|
boolean r9 = r7.hasNext()
|
|
if (r9 == 0) goto Lb3
|
|
java.lang.Object r9 = r7.next()
|
|
java.util.Map$Entry r9 = (java.util.Map.Entry) r9
|
|
java.lang.Object r1 = r9.getKey()
|
|
java.lang.Object r5 = r9.getKey()
|
|
r6 = r5
|
|
com.google.firebase.sessions.api.SessionSubscriber$Name r6 = (com.google.firebase.sessions.api.SessionSubscriber.Name) r6
|
|
java.lang.Object r9 = r9.getValue()
|
|
com.google.firebase.sessions.api.FirebaseSessionsDependencies$Dependency r9 = (com.google.firebase.sessions.api.FirebaseSessionsDependencies.Dependency) r9
|
|
kotlinx.coroutines.sync.Mutex r5 = r9.getMutex()
|
|
r0.L$0 = r4
|
|
r0.L$1 = r7
|
|
r0.L$2 = r6
|
|
r0.L$3 = r5
|
|
r0.L$4 = r4
|
|
r0.L$5 = r1
|
|
r0.label = r2
|
|
java.lang.Object r9 = r5.lock(r3, r0)
|
|
if (r9 != r10) goto L9f
|
|
return r10
|
|
L9f:
|
|
r8 = r4
|
|
La0:
|
|
com.google.firebase.sessions.api.FirebaseSessionsDependencies r9 = com.google.firebase.sessions.api.FirebaseSessionsDependencies.INSTANCE // Catch: java.lang.Throwable -> Lae
|
|
com.google.firebase.sessions.api.SessionSubscriber r9 = r9.getSubscriber$com_google_firebase_firebase_sessions(r6) // Catch: java.lang.Throwable -> Lae
|
|
r5.unlock(r3)
|
|
r4.put(r1, r9)
|
|
r4 = r8
|
|
goto L69
|
|
Lae:
|
|
r9 = move-exception
|
|
r5.unlock(r3)
|
|
throw r9
|
|
Lb3:
|
|
return r4
|
|
*/
|
|
throw new UnsupportedOperationException("Method not decompiled: com.google.firebase.sessions.api.FirebaseSessionsDependencies.getRegisteredSubscribers$com_google_firebase_firebase_sessions(kotlin.coroutines.Continuation):java.lang.Object");
|
|
}
|
|
|
|
public final SessionSubscriber getSubscriber$com_google_firebase_firebase_sessions(SessionSubscriber.Name subscriberName) {
|
|
Intrinsics.checkNotNullParameter(subscriberName, "subscriberName");
|
|
SessionSubscriber subscriber = getDependency(subscriberName).getSubscriber();
|
|
if (subscriber != null) {
|
|
return subscriber;
|
|
}
|
|
throw new IllegalStateException("Subscriber " + subscriberName + " has not been registered.");
|
|
}
|
|
|
|
public final void reset$com_google_firebase_firebase_sessions() {
|
|
dependencies.clear();
|
|
}
|
|
}
|