- 28,932 files - Full Java source code - Smali files - Resources Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
60 lines
2.0 KiB
Java
60 lines
2.0 KiB
Java
package com.google.android.gms.dynamic;
|
|
|
|
import android.content.Context;
|
|
import android.os.IBinder;
|
|
import androidx.annotation.NonNull;
|
|
import com.google.android.gms.common.GooglePlayServicesUtilLight;
|
|
import com.google.android.gms.common.annotation.KeepForSdk;
|
|
import com.google.android.gms.common.internal.Preconditions;
|
|
|
|
@KeepForSdk
|
|
/* loaded from: classes2.dex */
|
|
public abstract class RemoteCreator<T> {
|
|
private final String zza;
|
|
private Object zzb;
|
|
|
|
@KeepForSdk
|
|
public static class RemoteCreatorException extends Exception {
|
|
@KeepForSdk
|
|
public RemoteCreatorException(@NonNull String str) {
|
|
super(str);
|
|
}
|
|
|
|
@KeepForSdk
|
|
public RemoteCreatorException(@NonNull String str, @NonNull Throwable th) {
|
|
super(str, th);
|
|
}
|
|
}
|
|
|
|
@KeepForSdk
|
|
public RemoteCreator(@NonNull String str) {
|
|
this.zza = str;
|
|
}
|
|
|
|
@NonNull
|
|
@KeepForSdk
|
|
public abstract T getRemoteCreator(@NonNull IBinder iBinder);
|
|
|
|
@NonNull
|
|
@KeepForSdk
|
|
public final T getRemoteCreatorInstance(@NonNull Context context) throws RemoteCreatorException {
|
|
if (this.zzb == null) {
|
|
Preconditions.checkNotNull(context);
|
|
Context remoteContext = GooglePlayServicesUtilLight.getRemoteContext(context);
|
|
if (remoteContext == null) {
|
|
throw new RemoteCreatorException("Could not get remote context.");
|
|
}
|
|
try {
|
|
this.zzb = getRemoteCreator((IBinder) remoteContext.getClassLoader().loadClass(this.zza).newInstance());
|
|
} catch (ClassNotFoundException e) {
|
|
throw new RemoteCreatorException("Could not load creator class.", e);
|
|
} catch (IllegalAccessException e2) {
|
|
throw new RemoteCreatorException("Could not access creator.", e2);
|
|
} catch (InstantiationException e3) {
|
|
throw new RemoteCreatorException("Could not instantiate creator.", e3);
|
|
}
|
|
}
|
|
return (T) this.zzb;
|
|
}
|
|
}
|