package com.google.android.gms.common.internal;

import android.content.ComponentName;
import android.content.Context;
import android.content.ServiceConnection;
import android.os.HandlerThread;
import com.google.android.gms.common.annotation.KeepForSdk;
import com.google.errorprone.annotations.ResultIgnorabilityUnspecified;
import defpackage.rq6;
import defpackage.sma;
import defpackage.vo6;
import java.util.concurrent.Executor;

/* JADX INFO: loaded from: classes2.dex */
@KeepForSdk
public abstract class GmsClientSupervisor {

    @rq6
    @sma
    static HandlerThread zza = null;
    private static final Object zzb = new Object();

    @rq6
    private static zzs zzc = null;

    @rq6
    private static Executor zzd = null;
    private static boolean zze = false;

    @KeepForSdk
    public static int getDefaultBindFlags() {
        return 4225;
    }

    @vo6
    @KeepForSdk
    public static GmsClientSupervisor getInstance(@vo6 Context context) {
        synchronized (zzb) {
            try {
                if (zzc == null) {
                    zzc = new zzs(context.getApplicationContext(), zze ? getOrStartHandlerThread().getLooper() : context.getMainLooper(), zzd);
                }
            } catch (Throwable th) {
                throw th;
            }
        }
        return zzc;
    }

    @vo6
    @KeepForSdk
    public static HandlerThread getOrStartHandlerThread() {
        synchronized (zzb) {
            try {
                HandlerThread handlerThread = zza;
                if (handlerThread != null) {
                    return handlerThread;
                }
                HandlerThread handlerThread2 = new HandlerThread("GoogleApiHandler", 9);
                zza = handlerThread2;
                handlerThread2.start();
                return zza;
            } catch (Throwable th) {
                throw th;
            }
        }
    }

    @KeepForSdk
    public static void setDefaultBindExecutor(@rq6 Executor executor) {
        synchronized (zzb) {
            try {
                zzs zzsVar = zzc;
                if (zzsVar != null) {
                    zzsVar.zzi(executor);
                }
                zzd = executor;
            } catch (Throwable th) {
                throw th;
            }
        }
    }

    @KeepForSdk
    public static void setUseHandlerThreadForCallbacks() {
        synchronized (zzb) {
            try {
                zzs zzsVar = zzc;
                if (zzsVar != null && !zze) {
                    zzsVar.zzj(getOrStartHandlerThread().getLooper());
                }
                zze = true;
            } catch (Throwable th) {
                throw th;
            }
        }
    }

    @KeepForSdk
    public boolean bindService(@vo6 ComponentName componentName, @vo6 ServiceConnection serviceConnection, @vo6 String str) {
        return zzc(new zzo(componentName, 4225), serviceConnection, str, null);
    }

    @KeepForSdk
    public void unbindService(@vo6 ComponentName componentName, @vo6 ServiceConnection serviceConnection, @vo6 String str) {
        zza(new zzo(componentName, 4225), serviceConnection, str);
    }

    public abstract void zza(zzo zzoVar, ServiceConnection serviceConnection, String str);

    public final void zzb(@vo6 String str, @vo6 String str2, int i, @vo6 ServiceConnection serviceConnection, @vo6 String str3, boolean z) {
        zza(new zzo(str, str2, 4225, z), serviceConnection, str3);
    }

    public abstract boolean zzc(zzo zzoVar, ServiceConnection serviceConnection, String str, @rq6 Executor executor);

    @KeepForSdk
    public boolean bindService(@vo6 ComponentName componentName, @vo6 ServiceConnection serviceConnection, @vo6 String str, @rq6 Executor executor) {
        return zzc(new zzo(componentName, 4225), serviceConnection, str, executor);
    }

    @KeepForSdk
    public void unbindService(@vo6 String str, @vo6 ServiceConnection serviceConnection, @vo6 String str2) {
        zza(new zzo(str, 4225, false), serviceConnection, str2);
    }

    @vo6
    @KeepForSdk
    public static HandlerThread getOrStartHandlerThread(int i) {
        synchronized (zzb) {
            try {
                HandlerThread handlerThread = zza;
                if (handlerThread != null) {
                    return handlerThread;
                }
                HandlerThread handlerThread2 = new HandlerThread("GoogleApiHandler", i);
                zza = handlerThread2;
                handlerThread2.start();
                return zza;
            } catch (Throwable th) {
                throw th;
            }
        }
    }

    @ResultIgnorabilityUnspecified
    @KeepForSdk
    public boolean bindService(@vo6 String str, @vo6 ServiceConnection serviceConnection, @vo6 String str2) {
        return zzc(new zzo(str, 4225, false), serviceConnection, str2, null);
    }
}
