package com.google.android.gms.common.api.internal; import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.os.Looper; import android.util.Log; import androidx.fragment.app.FragmentActivity; import com.google.android.gms.common.ConnectionResult; import com.google.android.gms.common.GoogleApiAvailability; import com.google.android.gms.common.api.Api; import com.google.android.gms.common.api.GoogleApiClient; import com.google.android.gms.common.api.PendingResult; import com.google.android.gms.common.api.Result; import com.google.android.gms.common.api.Status; import com.google.android.gms.common.api.internal.BaseImplementation; import com.google.android.gms.common.internal.ClientSettings; import com.google.android.gms.common.internal.Preconditions; import com.google.android.gms.common.internal.service.Common; import com.google.android.gms.common.util.ClientLibraryUtils; import com.google.android.gms.location.DeviceOrientationRequest; import com.google.errorprone.annotations.ResultIgnorabilityUnspecified; import java.io.FileDescriptor; import java.io.PrintWriter; import java.io.StringWriter; import java.util.ArrayList; import java.util.HashSet; import java.util.Iterator; import java.util.LinkedList; import java.util.List; import java.util.Map; import java.util.Queue; import java.util.Set; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.locks.Lock; /* JADX INFO: compiled from: com.google.android.gms:play-services-base@@18.4.0 */ /* JADX INFO: loaded from: classes2.dex */ public final class zabe extends GoogleApiClient implements zabz { zabx zab; final Map zac; Set zad; final ClientSettings zae; final Map zaf; final Api.AbstractClientBuilder zag; Set zah; final zadc zai; private final Lock zaj; private final com.google.android.gms.common.internal.zak zak; private final int zam; private final Context zan; private final Looper zao; private volatile boolean zap; private long zaq; private long zar; private final zabc zas; private final GoogleApiAvailability zat; private final ListenerHolders zau; private final ArrayList zav; private Integer zaw; private final com.google.android.gms.common.internal.zaj zax; private zaca zal = null; final Queue zaa = new LinkedList(); public zabe(Context context, Lock lock, Looper looper, ClientSettings clientSettings, GoogleApiAvailability googleApiAvailability, Api.AbstractClientBuilder abstractClientBuilder, Map map, List list, List list2, Map map2, int i, int i2, ArrayList arrayList) { this.zaq = true != ClientLibraryUtils.isPackageSide() ? 120000L : DeviceOrientationRequest.OUTPUT_PERIOD_MEDIUM; this.zar = 5000L; this.zad = new HashSet(); this.zau = new ListenerHolders(); this.zaw = null; this.zah = null; zaay zaayVar = new zaay(this); this.zax = zaayVar; this.zan = context; this.zaj = lock; this.zak = new com.google.android.gms.common.internal.zak(looper, zaayVar); this.zao = looper; this.zas = new zabc(this, looper); this.zat = googleApiAvailability; this.zam = i; if (i >= 0) { this.zaw = Integer.valueOf(i2); } this.zaf = map; this.zac = map2; this.zav = arrayList; this.zai = new zadc(); Iterator it = list.iterator(); while (it.hasNext()) { this.zak.zaf((GoogleApiClient.ConnectionCallbacks) it.next()); } Iterator it2 = list2.iterator(); while (it2.hasNext()) { this.zak.zag((GoogleApiClient.OnConnectionFailedListener) it2.next()); } this.zae = clientSettings; this.zag = abstractClientBuilder; } public static int zad(Iterable iterable, boolean z) { Iterator it = iterable.iterator(); boolean zRequiresSignIn = false; boolean zProvidesSignIn = false; while (it.hasNext()) { Api.Client client = (Api.Client) it.next(); zRequiresSignIn |= client.requiresSignIn(); zProvidesSignIn |= client.providesSignIn(); } if (zRequiresSignIn) { return (zProvidesSignIn && z) ? 2 : 1; } return 3; } static String zag(int i) { return i != 1 ? i != 2 ? i != 3 ? "UNKNOWN" : "SIGN_IN_MODE_NONE" : "SIGN_IN_MODE_OPTIONAL" : "SIGN_IN_MODE_REQUIRED"; } static /* bridge */ /* synthetic */ void zai(zabe zabeVar) { zabeVar.zaj.lock(); try { if (zabeVar.zap) { zabeVar.zan(); } } finally { zabeVar.zaj.unlock(); } } static /* bridge */ /* synthetic */ void zaj(zabe zabeVar) { zabeVar.zaj.lock(); try { if (zabeVar.zak()) { zabeVar.zan(); } } finally { zabeVar.zaj.unlock(); } } private final void zal(int i) { Integer num = this.zaw; if (num == null) { this.zaw = Integer.valueOf(i); } else if (num.intValue() != i) { throw new IllegalStateException("Cannot use sign-in mode: " + zag(i) + ". Mode was already set to " + zag(this.zaw.intValue())); } if (this.zal != null) { return; } boolean zRequiresSignIn = false; boolean zProvidesSignIn = false; for (Api.Client client : this.zac.values()) { zRequiresSignIn |= client.requiresSignIn(); zProvidesSignIn |= client.providesSignIn(); } int iIntValue = this.zaw.intValue(); if (iIntValue == 1) { if (!zRequiresSignIn) { throw new IllegalStateException("SIGN_IN_MODE_REQUIRED cannot be used on a GoogleApiClient that does not contain any authenticated APIs. Use connect() instead."); } if (zProvidesSignIn) { throw new IllegalStateException("Cannot use SIGN_IN_MODE_REQUIRED with GOOGLE_SIGN_IN_API. Use connect(SIGN_IN_MODE_OPTIONAL) instead."); } } else if (iIntValue == 2 && zRequiresSignIn) { this.zal = zaaa.zag(this.zan, this, this.zaj, this.zao, this.zat, this.zac, this.zae, this.zaf, this.zag, this.zav); return; } this.zal = new zabi(this.zan, this, this.zaj, this.zao, this.zat, this.zac, this.zae, this.zaf, this.zag, this.zav, this); } /* JADX INFO: Access modifiers changed from: private */ public final void zam(GoogleApiClient googleApiClient, StatusPendingResult statusPendingResult, boolean z) { Common.zaa.zaa(googleApiClient).setResultCallback(new zabb(this, statusPendingResult, z, googleApiClient)); } private final void zan() { this.zak.zab(); ((zaca) Preconditions.checkNotNull(this.zal)).zaq(); } @Override // com.google.android.gms.common.api.GoogleApiClient @ResultIgnorabilityUnspecified public final ConnectionResult blockingConnect() { boolean z = true; Preconditions.checkState(Looper.myLooper() != Looper.getMainLooper(), "blockingConnect must not be called on the UI thread"); this.zaj.lock(); try { if (this.zam >= 0) { if (this.zaw == null) { z = false; } Preconditions.checkState(z, "Sign-in mode should have been set explicitly by auto-manage."); } else { Integer num = this.zaw; if (num == null) { this.zaw = Integer.valueOf(zad(this.zac.values(), false)); } else if (num.intValue() == 2) { throw new IllegalStateException("Cannot call blockingConnect() when sign-in mode is set to SIGN_IN_MODE_OPTIONAL. Call connect(SIGN_IN_MODE_OPTIONAL) instead."); } } zal(((Integer) Preconditions.checkNotNull(this.zaw)).intValue()); this.zak.zab(); return ((zaca) Preconditions.checkNotNull(this.zal)).zab(); } finally { this.zaj.unlock(); } } @Override // com.google.android.gms.common.api.GoogleApiClient public final PendingResult clearDefaultAccountAndReconnect() { Preconditions.checkState(isConnected(), "GoogleApiClient is not connected yet."); Integer num = this.zaw; boolean z = true; if (num != null && num.intValue() == 2) { z = false; } Preconditions.checkState(z, "Cannot use clearDefaultAccountAndReconnect with GOOGLE_SIGN_IN_API"); StatusPendingResult statusPendingResult = new StatusPendingResult(this); if (this.zac.containsKey(Common.CLIENT_KEY)) { zam(this, statusPendingResult, false); } else { AtomicReference atomicReference = new AtomicReference(); zaaz zaazVar = new zaaz(this, atomicReference, statusPendingResult); zaba zabaVar = new zaba(this, statusPendingResult); GoogleApiClient.Builder builder = new GoogleApiClient.Builder(this.zan); builder.addApi(Common.API); builder.addConnectionCallbacks(zaazVar); builder.addOnConnectionFailedListener(zabaVar); builder.setHandler(this.zas); GoogleApiClient googleApiClientBuild = builder.build(); atomicReference.set(googleApiClientBuild); googleApiClientBuild.connect(); } return statusPendingResult; } @Override // com.google.android.gms.common.api.GoogleApiClient public final void connect() { this.zaj.lock(); try { int i = 2; boolean z = false; if (this.zam >= 0) { Preconditions.checkState(this.zaw != null, "Sign-in mode should have been set explicitly by auto-manage."); } else { Integer num = this.zaw; if (num == null) { this.zaw = Integer.valueOf(zad(this.zac.values(), false)); } else if (num.intValue() == 2) { throw new IllegalStateException("Cannot call connect() when SignInMode is set to SIGN_IN_MODE_OPTIONAL. Call connect(SIGN_IN_MODE_OPTIONAL) instead."); } } int iIntValue = ((Integer) Preconditions.checkNotNull(this.zaw)).intValue(); this.zaj.lock(); if (iIntValue != 3 && iIntValue != 1) { if (iIntValue != 2) { i = iIntValue; } Preconditions.checkArgument(z, "Illegal sign-in mode: " + i); zal(i); zan(); this.zaj.unlock(); } i = iIntValue; z = true; Preconditions.checkArgument(z, "Illegal sign-in mode: " + i); zal(i); zan(); this.zaj.unlock(); } catch (Throwable th) { throw th; } finally { this.zaj.unlock(); } } @Override // com.google.android.gms.common.api.GoogleApiClient public final void disconnect() { this.zaj.lock(); try { this.zai.zab(); zaca zacaVar = this.zal; if (zacaVar != null) { zacaVar.zar(); } this.zau.zab(); for (BaseImplementation.ApiMethodImpl apiMethodImpl : this.zaa) { apiMethodImpl.zan(null); apiMethodImpl.cancel(); } this.zaa.clear(); if (this.zal != null) { zak(); this.zak.zaa(); } } finally { this.zaj.unlock(); } } @Override // com.google.android.gms.common.api.GoogleApiClient public final void dump(String str, FileDescriptor fileDescriptor, PrintWriter printWriter, String[] strArr) { printWriter.append((CharSequence) str).append("mContext=").println(this.zan); printWriter.append((CharSequence) str).append("mResuming=").print(this.zap); printWriter.append(" mWorkQueue.size()=").print(this.zaa.size()); printWriter.append(" mUnconsumedApiCalls.size()=").println(this.zai.zab.size()); zaca zacaVar = this.zal; if (zacaVar != null) { zacaVar.zas(str, fileDescriptor, printWriter, strArr); } } @Override // com.google.android.gms.common.api.GoogleApiClient @ResultIgnorabilityUnspecified public final > T enqueue(T t) { Api api = t.getApi(); Preconditions.checkArgument(this.zac.containsKey(t.getClientKey()), "GoogleApiClient is not configured to use " + (api != null ? api.zad() : "the API") + " required for this call."); this.zaj.lock(); try { zaca zacaVar = this.zal; if (zacaVar == null) { this.zaa.add(t); } else { t = (T) zacaVar.zae(t); } return t; } finally { this.zaj.unlock(); } } @Override // com.google.android.gms.common.api.GoogleApiClient @ResultIgnorabilityUnspecified public final > T execute(T t) { Map map = this.zac; Api api = t.getApi(); Preconditions.checkArgument(map.containsKey(t.getClientKey()), "GoogleApiClient is not configured to use " + (api != null ? api.zad() : "the API") + " required for this call."); this.zaj.lock(); try { zaca zacaVar = this.zal; if (zacaVar == null) { throw new IllegalStateException("GoogleApiClient is not connected yet."); } if (this.zap) { this.zaa.add(t); while (!this.zaa.isEmpty()) { BaseImplementation.ApiMethodImpl apiMethodImpl = (BaseImplementation.ApiMethodImpl) this.zaa.remove(); this.zai.zaa(apiMethodImpl); apiMethodImpl.setFailedResult(Status.RESULT_INTERNAL_ERROR); } } else { t = (T) zacaVar.zaf(t); } return t; } finally { this.zaj.unlock(); } } @Override // com.google.android.gms.common.api.GoogleApiClient public final C getClient(Api.AnyClientKey anyClientKey) { C c = (C) this.zac.get(anyClientKey); Preconditions.checkNotNull(c, "Appropriate Api was not requested."); return c; } @Override // com.google.android.gms.common.api.GoogleApiClient public final ConnectionResult getConnectionResult(Api api) { ConnectionResult connectionResult; this.zaj.lock(); try { if (!isConnected() && !this.zap) { throw new IllegalStateException("Cannot invoke getConnectionResult unless GoogleApiClient is connected"); } if (!this.zac.containsKey(api.zab())) { throw new IllegalArgumentException(api.zad() + " was never registered with GoogleApiClient"); } ConnectionResult connectionResultZad = ((zaca) Preconditions.checkNotNull(this.zal)).zad(api); if (connectionResultZad != null) { return connectionResultZad; } if (this.zap) { connectionResult = ConnectionResult.RESULT_SUCCESS; } else { Log.w("GoogleApiClientImpl", zaf()); Log.wtf("GoogleApiClientImpl", api.zad() + " requested in getConnectionResult is not connected but is not present in the failed connections map", new Exception()); connectionResult = new ConnectionResult(8, null); } return connectionResult; } finally { this.zaj.unlock(); } } @Override // com.google.android.gms.common.api.GoogleApiClient public final Context getContext() { return this.zan; } @Override // com.google.android.gms.common.api.GoogleApiClient public final Looper getLooper() { return this.zao; } @Override // com.google.android.gms.common.api.GoogleApiClient public final boolean hasApi(Api api) { return this.zac.containsKey(api.zab()); } @Override // com.google.android.gms.common.api.GoogleApiClient public final boolean hasConnectedApi(Api api) { Api.Client client; return isConnected() && (client = (Api.Client) this.zac.get(api.zab())) != null && client.isConnected(); } @Override // com.google.android.gms.common.api.GoogleApiClient public final boolean isConnected() { zaca zacaVar = this.zal; return zacaVar != null && zacaVar.zaw(); } @Override // com.google.android.gms.common.api.GoogleApiClient public final boolean isConnecting() { zaca zacaVar = this.zal; return zacaVar != null && zacaVar.zax(); } @Override // com.google.android.gms.common.api.GoogleApiClient public final boolean isConnectionCallbacksRegistered(GoogleApiClient.ConnectionCallbacks connectionCallbacks) { return this.zak.zaj(connectionCallbacks); } @Override // com.google.android.gms.common.api.GoogleApiClient public final boolean isConnectionFailedListenerRegistered(GoogleApiClient.OnConnectionFailedListener onConnectionFailedListener) { return this.zak.zak(onConnectionFailedListener); } @Override // com.google.android.gms.common.api.GoogleApiClient public final boolean maybeSignIn(SignInConnectionListener signInConnectionListener) { zaca zacaVar = this.zal; return zacaVar != null && zacaVar.zay(signInConnectionListener); } @Override // com.google.android.gms.common.api.GoogleApiClient public final void maybeSignOut() { zaca zacaVar = this.zal; if (zacaVar != null) { zacaVar.zau(); } } @Override // com.google.android.gms.common.api.GoogleApiClient public final void reconnect() { disconnect(); connect(); } @Override // com.google.android.gms.common.api.GoogleApiClient public final void registerConnectionCallbacks(GoogleApiClient.ConnectionCallbacks connectionCallbacks) { this.zak.zaf(connectionCallbacks); } @Override // com.google.android.gms.common.api.GoogleApiClient public final void registerConnectionFailedListener(GoogleApiClient.OnConnectionFailedListener onConnectionFailedListener) { this.zak.zag(onConnectionFailedListener); } @Override // com.google.android.gms.common.api.GoogleApiClient public final ListenerHolder registerListener(L l) { this.zaj.lock(); try { return this.zau.zaa(l, this.zao, "NO_TYPE"); } finally { this.zaj.unlock(); } } @Override // com.google.android.gms.common.api.GoogleApiClient public final void stopAutoManage(FragmentActivity fragmentActivity) { LifecycleActivity lifecycleActivity = new LifecycleActivity((Activity) fragmentActivity); if (this.zam < 0) { throw new IllegalStateException("Called stopAutoManage but automatic lifecycle management is not enabled."); } zak.zaa(lifecycleActivity).zae(this.zam); } @Override // com.google.android.gms.common.api.GoogleApiClient public final void unregisterConnectionCallbacks(GoogleApiClient.ConnectionCallbacks connectionCallbacks) { this.zak.zah(connectionCallbacks); } @Override // com.google.android.gms.common.api.GoogleApiClient public final void unregisterConnectionFailedListener(GoogleApiClient.OnConnectionFailedListener onConnectionFailedListener) { this.zak.zai(onConnectionFailedListener); } @Override // com.google.android.gms.common.api.internal.zabz public final void zaa(ConnectionResult connectionResult) { if (!this.zat.isPlayServicesPossiblyUpdating(this.zan, connectionResult.getErrorCode())) { zak(); } if (this.zap) { return; } this.zak.zac(connectionResult); this.zak.zaa(); } @Override // com.google.android.gms.common.api.internal.zabz public final void zab(Bundle bundle) { while (!this.zaa.isEmpty()) { execute((BaseImplementation.ApiMethodImpl) this.zaa.remove()); } this.zak.zad(bundle); } final String zaf() { StringWriter stringWriter = new StringWriter(); dump("", null, new PrintWriter(stringWriter), null); return stringWriter.toString(); } @ResultIgnorabilityUnspecified final boolean zak() { if (!this.zap) { return false; } this.zap = false; this.zas.removeMessages(2); this.zas.removeMessages(1); zabx zabxVar = this.zab; if (zabxVar != null) { zabxVar.zab(); this.zab = null; } return true; } @Override // com.google.android.gms.common.api.GoogleApiClient public final void zao(zada zadaVar) { this.zaj.lock(); try { if (this.zah == null) { this.zah = new HashSet(); } this.zah.add(zadaVar); } finally { this.zaj.unlock(); } } @Override // com.google.android.gms.common.api.GoogleApiClient public final void zap(zada zadaVar) { this.zaj.lock(); try { Set set = this.zah; if (set == null) { Log.wtf("GoogleApiClientImpl", "Attempted to remove pending transform when no transforms are registered.", new Exception()); } else if (set.remove(zadaVar)) { this.zaj.lock(); Set set2 = this.zah; if (set2 == null) { this.zaj.unlock(); } else { boolean zIsEmpty = set2.isEmpty(); this.zaj.unlock(); if (zIsEmpty) { } } zaca zacaVar = this.zal; if (zacaVar != null) { zacaVar.zat(); } } else { Log.wtf("GoogleApiClientImpl", "Failed to remove pending transform - this may lead to memory leaks!", new Exception()); } } catch (Throwable th) { throw th; } finally { this.zaj.unlock(); } } @Override // com.google.android.gms.common.api.internal.zabz public final void zac(int i, boolean z) { if (i == 1) { if (!z && !this.zap) { this.zap = true; if (this.zab == null && !ClientLibraryUtils.isPackageSide()) { try { this.zab = this.zat.zac(this.zan.getApplicationContext(), new zabd(this)); } catch (SecurityException unused) { } } zabc zabcVar = this.zas; zabcVar.sendMessageDelayed(zabcVar.obtainMessage(1), this.zaq); zabc zabcVar2 = this.zas; zabcVar2.sendMessageDelayed(zabcVar2.obtainMessage(2), this.zar); } i = 1; } for (BasePendingResult basePendingResult : (BasePendingResult[]) this.zai.zab.toArray(new BasePendingResult[0])) { basePendingResult.forceFailureUnlessReady(zadc.zaa); } this.zak.zae(i); this.zak.zaa(); if (i == 2) { zan(); } } @Override // com.google.android.gms.common.api.GoogleApiClient public final ConnectionResult blockingConnect(long j, TimeUnit timeUnit) { Preconditions.checkState(Looper.myLooper() != Looper.getMainLooper(), "blockingConnect must not be called on the UI thread"); Preconditions.checkNotNull(timeUnit, "TimeUnit must not be null"); this.zaj.lock(); try { Integer num = this.zaw; if (num != null) { if (num.intValue() == 2) { throw new IllegalStateException("Cannot call blockingConnect() when sign-in mode is set to SIGN_IN_MODE_OPTIONAL. Call connect(SIGN_IN_MODE_OPTIONAL) instead."); } } else { this.zaw = Integer.valueOf(zad(this.zac.values(), false)); } zal(((Integer) Preconditions.checkNotNull(this.zaw)).intValue()); this.zak.zab(); return ((zaca) Preconditions.checkNotNull(this.zal)).zac(j, timeUnit); } finally { this.zaj.unlock(); } } @Override // com.google.android.gms.common.api.GoogleApiClient public final void connect(int i) { this.zaj.lock(); boolean z = true; if (i != 3 && i != 1) { if (i == 2) { i = 2; } else { z = false; } } try { Preconditions.checkArgument(z, "Illegal sign-in mode: " + i); zal(i); zan(); } finally { this.zaj.unlock(); } } }