85 lines
3.0 KiB
Java
85 lines
3.0 KiB
Java
package com.google.android.gms.common.api.internal;
|
|
|
|
import com.google.android.gms.common.Feature;
|
|
import com.google.android.gms.common.api.Api;
|
|
import com.google.android.gms.common.api.Api.AnyClient;
|
|
import com.google.android.gms.common.api.internal.ListenerHolder;
|
|
import com.google.android.gms.common.internal.Preconditions;
|
|
import com.google.android.gms.tasks.TaskCompletionSource;
|
|
|
|
/* loaded from: classes.dex */
|
|
public class RegistrationMethods<A extends Api.AnyClient, L> {
|
|
public final RegisterListenerMethod<A, L> register;
|
|
public final UnregisterListenerMethod<A, L> zaa;
|
|
public final Runnable zab;
|
|
|
|
/* loaded from: classes.dex */
|
|
public static class Builder<A extends Api.AnyClient, L> {
|
|
private RemoteCall<A, TaskCompletionSource<Void>> zaa;
|
|
private RemoteCall<A, TaskCompletionSource<Boolean>> zab;
|
|
private ListenerHolder<L> zad;
|
|
private Feature[] zae;
|
|
private int zag;
|
|
private Runnable zac = zacj.zaa;
|
|
private boolean zaf = true;
|
|
|
|
public RegistrationMethods<A, L> build() {
|
|
Preconditions.checkArgument(this.zaa != null, "Must set register function");
|
|
Preconditions.checkArgument(this.zab != null, "Must set unregister function");
|
|
Preconditions.checkArgument(this.zad != null, "Must set holder");
|
|
return new RegistrationMethods<>(new zack(this, this.zad, this.zae, this.zaf, this.zag), new zacl(this, (ListenerHolder.ListenerKey) Preconditions.checkNotNull(this.zad.getListenerKey(), "Key must not be null")), this.zac, null);
|
|
}
|
|
|
|
public Builder<A, L> withHolder(ListenerHolder<L> listenerHolder) {
|
|
this.zad = listenerHolder;
|
|
return this;
|
|
}
|
|
|
|
public Builder<A, L> unregister(RemoteCall<A, TaskCompletionSource<Boolean>> remoteCall) {
|
|
this.zab = remoteCall;
|
|
return this;
|
|
}
|
|
|
|
public Builder<A, L> setMethodKey(int i) {
|
|
this.zag = i;
|
|
return this;
|
|
}
|
|
|
|
public Builder<A, L> setFeatures(Feature... featureArr) {
|
|
this.zae = featureArr;
|
|
return this;
|
|
}
|
|
|
|
public Builder<A, L> setAutoResolveMissingFeatures(boolean z) {
|
|
this.zaf = z;
|
|
return this;
|
|
}
|
|
|
|
public Builder<A, L> register(RemoteCall<A, TaskCompletionSource<Void>> remoteCall) {
|
|
this.zaa = remoteCall;
|
|
return this;
|
|
}
|
|
|
|
public Builder<A, L> onConnectionSuspended(Runnable runnable) {
|
|
this.zac = runnable;
|
|
return this;
|
|
}
|
|
|
|
/* synthetic */ Builder(zacm zacmVar) {
|
|
}
|
|
|
|
private Builder() {
|
|
}
|
|
}
|
|
|
|
public static <A extends Api.AnyClient, L> Builder<A, L> builder() {
|
|
return new Builder<>(null);
|
|
}
|
|
|
|
/* synthetic */ RegistrationMethods(RegisterListenerMethod registerListenerMethod, UnregisterListenerMethod unregisterListenerMethod, Runnable runnable, zacn zacnVar) {
|
|
this.register = registerListenerMethod;
|
|
this.zaa = unregisterListenerMethod;
|
|
this.zab = runnable;
|
|
}
|
|
}
|