granularity level: instruction

		.class public final Lcom/google/android/gms/tasks/Tasks;
.super Ljava/lang/Object;
.source "com.google.android.gms:play-services-tasks@@18.0.1"




.method private constructor <init>()V
	.locals 0

	invoke-direct/range {p0 .. p0}, Ljava/lang/Object;-><init>()V
	return-void
.end method

.method public static await(Lcom/google/android/gms/tasks/Task;)Ljava/lang/Object;
	.locals 2
	.annotation system Ldalvik/annotation/Throws;
	value = {
	Ljava/util/concurrent/ExecutionException;,
	Ljava/lang/InterruptedException;
	}
	.end annotation
	.annotation system Ldalvik/annotation/Signature;
	value = {
	"<TResult:",
	"Ljava/lang/Object;",
	">(",
	"Lcom/google/android/gms/tasks/Task<",
	"TTResult;>;)TTResult;"
	}
	.end annotation

	invoke-static {}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotMainThread()V
	const-string v0, "Task must not be null"
	invoke-static {p0, v0}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
	invoke-virtual {p0}, Lcom/google/android/gms/tasks/Task;->isComplete()Z
	move-result v0
	if-eqz v0, :cond_0
	invoke-static {p0}, Lcom/google/android/gms/tasks/Tasks;->zza(Lcom/google/android/gms/tasks/Task;)Ljava/lang/Object;
	move-result-object p0
	return-object p0
	:cond_0
	new-instance v0, Lcom/google/android/gms/tasks/zzad;
	const/4 v1, 0x0
	invoke-direct {v0, v1}, Lcom/google/android/gms/tasks/zzad;-><init>(Lcom/google/android/gms/tasks/zzac;)V
	invoke-static {p0, v0}, Lcom/google/android/gms/tasks/Tasks;->zzb(Lcom/google/android/gms/tasks/Task;Lcom/google/android/gms/tasks/zzae;)V
	invoke-virtual {v0}, Lcom/google/android/gms/tasks/zzad;->zza()V
	invoke-static {p0}, Lcom/google/android/gms/tasks/Tasks;->zza(Lcom/google/android/gms/tasks/Task;)Ljava/lang/Object;
	move-result-object p0
	return-object p0
.end method

.method public static await(Lcom/google/android/gms/tasks/Task;JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
	.locals 2
	.annotation system Ldalvik/annotation/Throws;
	value = {
	Ljava/util/concurrent/ExecutionException;,
	Ljava/lang/InterruptedException;,
	Ljava/util/concurrent/TimeoutException;
	}
	.end annotation
	.annotation system Ldalvik/annotation/Signature;
	value = {
	"<TResult:",
	"Ljava/lang/Object;",
	">(",
	"Lcom/google/android/gms/tasks/Task<",
	"TTResult;>;J",
	"Ljava/util/concurrent/TimeUnit;",
	")TTResult;"
	}
	.end annotation

	invoke-static {}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotMainThread()V
	const-string v0, "Task must not be null"
	invoke-static {p0, v0}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
	const-string v0, "TimeUnit must not be null"
	invoke-static {p3, v0}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
	invoke-virtual {p0}, Lcom/google/android/gms/tasks/Task;->isComplete()Z
	move-result v0
	if-eqz v0, :cond_0
	invoke-static {p0}, Lcom/google/android/gms/tasks/Tasks;->zza(Lcom/google/android/gms/tasks/Task;)Ljava/lang/Object;
	move-result-object p0
	return-object p0
	:cond_0
	new-instance v0, Lcom/google/android/gms/tasks/zzad;
	const/4 v1, 0x0
	invoke-direct {v0, v1}, Lcom/google/android/gms/tasks/zzad;-><init>(Lcom/google/android/gms/tasks/zzac;)V
	invoke-static {p0, v0}, Lcom/google/android/gms/tasks/Tasks;->zzb(Lcom/google/android/gms/tasks/Task;Lcom/google/android/gms/tasks/zzae;)V
	invoke-virtual {v0, p1, p2, p3}, Lcom/google/android/gms/tasks/zzad;->zzb(JLjava/util/concurrent/TimeUnit;)Z
	move-result p1
	if-eqz p1, :cond_1
	invoke-static {p0}, Lcom/google/android/gms/tasks/Tasks;->zza(Lcom/google/android/gms/tasks/Task;)Ljava/lang/Object;
	move-result-object p0
	return-object p0
	:cond_1
	new-instance p0, Ljava/util/concurrent/TimeoutException;
	const-string p1, "Timed out waiting for Task"
	invoke-direct {p0, p1}, Ljava/util/concurrent/TimeoutException;-><init>(Ljava/lang/String;)V
	throw p0
.end method

.method public static call(Ljava/util/concurrent/Callable;)Lcom/google/android/gms/tasks/Task;
	.locals 1
	.annotation runtime Ljava/lang/Deprecated;
	.end annotation
	.annotation system Ldalvik/annotation/Signature;
	value = {
	"<TResult:",
	"Ljava/lang/Object;",
	">(",
	"Ljava/util/concurrent/Callable<",
	"TTResult;>;)",
	"Lcom/google/android/gms/tasks/Task<",
	"TTResult;>;"
	}
	.end annotation

	const/4 v0, 0x0
	return-object v0
.end method

.method public static call(Ljava/util/concurrent/Executor;Ljava/util/concurrent/Callable;)Lcom/google/android/gms/tasks/Task;
	.locals 2
	.annotation runtime Ljava/lang/Deprecated;
	.end annotation
	.annotation system Ldalvik/annotation/Signature;
	value = {
	"<TResult:",
	"Ljava/lang/Object;",
	">(",
	"Ljava/util/concurrent/Executor;",
	"Ljava/util/concurrent/Callable<",
	"TTResult;>;)",
	"Lcom/google/android/gms/tasks/Task<",
	"TTResult;>;"
	}
	.end annotation

	const-string v0, "Executor must not be null"
	invoke-static {p0, v0}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
	const-string v0, "Callback must not be null"
	invoke-static {p1, v0}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
	new-instance v0, Lcom/google/android/gms/tasks/zzw;
	invoke-direct {v0}, Lcom/google/android/gms/tasks/zzw;-><init>()V
	new-instance v1, Lcom/google/android/gms/tasks/zzz;
	invoke-direct {v1, v0, p1}, Lcom/google/android/gms/tasks/zzz;-><init>(Lcom/google/android/gms/tasks/zzw;Ljava/util/concurrent/Callable;)V
	invoke-interface {p0, v1}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
	return-object v0
.end method

.method public static forCanceled()Lcom/google/android/gms/tasks/Task;
	.locals 1
	.annotation system Ldalvik/annotation/Signature;
	value = {
	"<TResult:",
	"Ljava/lang/Object;",
	">()",
	"Lcom/google/android/gms/tasks/Task<",
	"TTResult;>;"
	}
	.end annotation

	const/4 v0, 0x0
	return-object v0
.end method

.method public static forException(Ljava/lang/Exception;)Lcom/google/android/gms/tasks/Task;
	.locals 1
	.annotation system Ldalvik/annotation/Signature;
	value = {
	"<TResult:",
	"Ljava/lang/Object;",
	">(",
	"Ljava/lang/Exception;",
	")",
	"Lcom/google/android/gms/tasks/Task<",
	"TTResult;>;"
	}
	.end annotation

	const/4 v0, 0x0
	return-object v0
.end method

.method public static forResult(Ljava/lang/Object;)Lcom/google/android/gms/tasks/Task;
	.locals 1
	.annotation system Ldalvik/annotation/Signature;
	value = {
	"<TResult:",
	"Ljava/lang/Object;",
	">(TTResult;)",
	"Lcom/google/android/gms/tasks/Task<",
	"TTResult;>;"
	}
	.end annotation

	new-instance v0, Lcom/google/android/gms/tasks/zzw;
	invoke-direct {v0}, Lcom/google/android/gms/tasks/zzw;-><init>()V
	invoke-virtual {v0, p0}, Lcom/google/android/gms/tasks/zzw;->zzb(Ljava/lang/Object;)V
	return-object v0
.end method

.method public static whenAll(Ljava/util/Collection;)Lcom/google/android/gms/tasks/Task;
	.locals 3
	.annotation system Ldalvik/annotation/Signature;
	value = {
	"(",
	"Ljava/util/Collection<",
	"+",
	"Lcom/google/android/gms/tasks/Task<",
	"*>;>;)",
	"Lcom/google/android/gms/tasks/Task<",
	"Ljava/lang/Void;",
	">;"
	}
	.end annotation

	const/4 v0, 0x0
	return-object v0
.end method

.method public static varargs whenAll([Lcom/google/android/gms/tasks/Task;)Lcom/google/android/gms/tasks/Task;
	.locals 1
	.annotation system Ldalvik/annotation/Signature;
	value = {
	"([",
	"Lcom/google/android/gms/tasks/Task<",
	"*>;)",
	"Lcom/google/android/gms/tasks/Task<",
	"Ljava/lang/Void;",
	">;"
	}
	.end annotation

	const/4 v0, 0x0
	return-object v0
.end method

.method public static whenAllComplete(Ljava/util/Collection;)Lcom/google/android/gms/tasks/Task;
	.locals 2
	.annotation system Ldalvik/annotation/Signature;
	value = {
	"(",
	"Ljava/util/Collection<",
	"+",
	"Lcom/google/android/gms/tasks/Task<",
	"*>;>;)",
	"Lcom/google/android/gms/tasks/Task<",
	"Ljava/util/List<",
	"Lcom/google/android/gms/tasks/Task<",
	"*>;>;>;"
	}
	.end annotation

	const/4 v0, 0x0
	return-object v0
.end method

.method public static varargs whenAllComplete([Lcom/google/android/gms/tasks/Task;)Lcom/google/android/gms/tasks/Task;
	.locals 1
	.annotation system Ldalvik/annotation/Signature;
	value = {
	"([",
	"Lcom/google/android/gms/tasks/Task<",
	"*>;)",
	"Lcom/google/android/gms/tasks/Task<",
	"Ljava/util/List<",
	"Lcom/google/android/gms/tasks/Task<",
	"*>;>;>;"
	}
	.end annotation

	const/4 v0, 0x0
	return-object v0
.end method

.method public static whenAllSuccess(Ljava/util/Collection;)Lcom/google/android/gms/tasks/Task;
	.locals 2
	.annotation system Ldalvik/annotation/Signature;
	value = {
	"<TResult:",
	"Ljava/lang/Object;",
	">(",
	"Ljava/util/Collection<",
	"+",
	"Lcom/google/android/gms/tasks/Task;",
	">;)",
	"Lcom/google/android/gms/tasks/Task<",
	"Ljava/util/List<",
	"TTResult;>;>;"
	}
	.end annotation

	const/4 v0, 0x0
	return-object v0
.end method

.method public static varargs whenAllSuccess([Lcom/google/android/gms/tasks/Task;)Lcom/google/android/gms/tasks/Task;
	.locals 1
	.annotation system Ldalvik/annotation/Signature;
	value = {
	"<TResult:",
	"Ljava/lang/Object;",
	">([",
	"Lcom/google/android/gms/tasks/Task;",
	")",
	"Lcom/google/android/gms/tasks/Task<",
	"Ljava/util/List<",
	"TTResult;>;>;"
	}
	.end annotation

	const/4 v0, 0x0
	return-object v0
.end method

.method public static withTimeout(Lcom/google/android/gms/tasks/Task;JLjava/util/concurrent/TimeUnit;)Lcom/google/android/gms/tasks/Task;
	.locals 4
	.annotation system Ldalvik/annotation/Signature;
	value = {
	"<T:",
	"Ljava/lang/Object;",
	">(",
	"Lcom/google/android/gms/tasks/Task<",
	"TT;>;J",
	"Ljava/util/concurrent/TimeUnit;",
	")",
	"Lcom/google/android/gms/tasks/Task<",
	"TT;>;"
	}
	.end annotation

	const/4 v0, 0x0
	return-object v0
.end method

.method private static zza(Lcom/google/android/gms/tasks/Task;)Ljava/lang/Object;
	.locals 1
	.annotation system Ldalvik/annotation/Throws;
	value = {
	Ljava/util/concurrent/ExecutionException;
	}
	.end annotation
	.annotation system Ldalvik/annotation/Signature;
	value = {
	"<TResult:",
	"Ljava/lang/Object;",
	">(",
	"Lcom/google/android/gms/tasks/Task<",
	"TTResult;>;)TTResult;"
	}
	.end annotation

	invoke-virtual {p0}, Lcom/google/android/gms/tasks/Task;->isSuccessful()Z
	move-result v0
	invoke-virtual {p0}, Lcom/google/android/gms/tasks/Task;->getResult()Ljava/lang/Object;
	move-result-object p0
	return-object p0
.end method

.method private static zzb(Lcom/google/android/gms/tasks/Task;Lcom/google/android/gms/tasks/zzae;)V
	.locals 1
	.annotation system Ldalvik/annotation/Signature;
	value = {
	"<T:",
	"Ljava/lang/Object;",
	">(",
	"Lcom/google/android/gms/tasks/Task<",
	"TT;>;",
	"Lcom/google/android/gms/tasks/zzae<",
	"-TT;>;)V"
	}
	.end annotation

	sget-object v0, Lcom/google/android/gms/tasks/TaskExecutors;->zza:Ljava/util/concurrent/Executor;
	invoke-virtual {p0, v0, p1}, Lcom/google/android/gms/tasks/Task;->addOnSuccessListener(Ljava/util/concurrent/Executor;Lcom/google/android/gms/tasks/OnSuccessListener;)Lcom/google/android/gms/tasks/Task;
	sget-object v0, Lcom/google/android/gms/tasks/TaskExecutors;->zza:Ljava/util/concurrent/Executor;
	invoke-virtual {p0, v0, p1}, Lcom/google/android/gms/tasks/Task;->addOnFailureListener(Ljava/util/concurrent/Executor;Lcom/google/android/gms/tasks/OnFailureListener;)Lcom/google/android/gms/tasks/Task;
	sget-object v0, Lcom/google/android/gms/tasks/TaskExecutors;->zza:Ljava/util/concurrent/Executor;
	invoke-virtual {p0, v0, p1}, Lcom/google/android/gms/tasks/Task;->addOnCanceledListener(Ljava/util/concurrent/Executor;Lcom/google/android/gms/tasks/OnCanceledListener;)Lcom/google/android/gms/tasks/Task;
	return-void
.end method