.class final Lcom/google/android/gms/measurement/internal/zzfm; .super Ljava/util/concurrent/FutureTask; .source "com.google.android.gms:play-services-measurement-impl@@20.1.0" # interfaces .implements Ljava/lang/Comparable; # instance fields .field public final zza:Z .field public final synthetic zzb:Lcom/google/android/gms/measurement/internal/zzfo; .field private final zzc:J .field private final zzd:Ljava/lang/String; # direct methods .method public constructor (Lcom/google/android/gms/measurement/internal/zzfo;Ljava/lang/Runnable;ZLjava/lang/String;)V .locals 2 .line 1 iput-object p1, p0, Lcom/google/android/gms/measurement/internal/zzfm;->zzb:Lcom/google/android/gms/measurement/internal/zzfo; const/4 v0, 0x0 invoke-direct {p0, p2, v0}, Ljava/util/concurrent/FutureTask;->(Ljava/lang/Runnable;Ljava/lang/Object;)V .line 2 invoke-static {p4}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; invoke-static {}, Lcom/google/android/gms/measurement/internal/zzfo;->zzk()Ljava/util/concurrent/atomic/AtomicLong; move-result-object p2 .line 3 invoke-virtual {p2}, Ljava/util/concurrent/atomic/AtomicLong;->getAndIncrement()J move-result-wide v0 iput-wide v0, p0, Lcom/google/android/gms/measurement/internal/zzfm;->zzc:J iput-object p4, p0, Lcom/google/android/gms/measurement/internal/zzfm;->zzd:Ljava/lang/String; iput-boolean p3, p0, Lcom/google/android/gms/measurement/internal/zzfm;->zza:Z const-wide p2, 0x7fffffffffffffffL cmp-long p2, v0, p2 if-nez p2, :cond_0 iget-object p1, p1, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; const-string p2, "Tasks index overflow" .line 4 invoke-static {p1, p2}, Lcom/google/android/gms/measurement/internal/a;->a(Lcom/google/android/gms/measurement/internal/zzfr;Ljava/lang/String;)V :cond_0 return-void .end method .method public constructor (Lcom/google/android/gms/measurement/internal/zzfo;Ljava/util/concurrent/Callable;ZLjava/lang/String;)V .locals 2 .line 5 iput-object p1, p0, Lcom/google/android/gms/measurement/internal/zzfm;->zzb:Lcom/google/android/gms/measurement/internal/zzfo; invoke-direct {p0, p2}, Ljava/util/concurrent/FutureTask;->(Ljava/util/concurrent/Callable;)V const-string p2, "Task exception on worker thread" .line 6 invoke-static {p2}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; invoke-static {}, Lcom/google/android/gms/measurement/internal/zzfo;->zzk()Ljava/util/concurrent/atomic/AtomicLong; move-result-object p4 .line 7 invoke-virtual {p4}, Ljava/util/concurrent/atomic/AtomicLong;->getAndIncrement()J move-result-wide v0 iput-wide v0, p0, Lcom/google/android/gms/measurement/internal/zzfm;->zzc:J iput-object p2, p0, Lcom/google/android/gms/measurement/internal/zzfm;->zzd:Ljava/lang/String; iput-boolean p3, p0, Lcom/google/android/gms/measurement/internal/zzfm;->zza:Z const-wide p2, 0x7fffffffffffffffL cmp-long p2, v0, p2 if-nez p2, :cond_0 iget-object p1, p1, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; const-string p2, "Tasks index overflow" .line 8 invoke-static {p1, p2}, Lcom/google/android/gms/measurement/internal/a;->a(Lcom/google/android/gms/measurement/internal/zzfr;Ljava/lang/String;)V :cond_0 return-void .end method # virtual methods .method public final bridge synthetic compareTo(Ljava/lang/Object;)I .locals 6 .param p1 # Ljava/lang/Object; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .line 1 check-cast p1, Lcom/google/android/gms/measurement/internal/zzfm; iget-boolean v0, p0, Lcom/google/android/gms/measurement/internal/zzfm;->zza:Z .line 2 iget-boolean v1, p1, Lcom/google/android/gms/measurement/internal/zzfm;->zza:Z const/4 v2, 0x1 const/4 v3, -0x1 if-eq v0, v1, :cond_1 if-nez v0, :cond_0 goto :goto_0 :cond_0 return v3 :cond_1 iget-wide v0, p0, Lcom/google/android/gms/measurement/internal/zzfm;->zzc:J .line 3 iget-wide v4, p1, Lcom/google/android/gms/measurement/internal/zzfm;->zzc:J cmp-long p1, v0, v4 if-gez p1, :cond_2 move v2, v3 goto :goto_0 :cond_2 if-lez p1, :cond_3 :goto_0 return v2 :cond_3 iget-object p1, p0, Lcom/google/android/gms/measurement/internal/zzfm;->zzb:Lcom/google/android/gms/measurement/internal/zzfo; iget-object p1, p1, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; .line 4 invoke-virtual {p1}, Lcom/google/android/gms/measurement/internal/zzfr;->zzay()Lcom/google/android/gms/measurement/internal/zzeh; move-result-object p1 .line 5 invoke-virtual {p1}, Lcom/google/android/gms/measurement/internal/zzeh;->zzh()Lcom/google/android/gms/measurement/internal/zzef; move-result-object p1 iget-wide v0, p0, Lcom/google/android/gms/measurement/internal/zzfm;->zzc:J invoke-static {v0, v1}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; move-result-object v0 const-string v1, "Two tasks share the same index. index" invoke-virtual {p1, v1, v0}, Lcom/google/android/gms/measurement/internal/zzef;->zzb(Ljava/lang/String;Ljava/lang/Object;)V const/4 p1, 0x0 return p1 .end method .method public final setException(Ljava/lang/Throwable;)V .locals 2 .line 1 iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzfm;->zzb:Lcom/google/android/gms/measurement/internal/zzfo; iget-object v0, v0, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzfr;->zzay()Lcom/google/android/gms/measurement/internal/zzeh; move-result-object v0 .line 2 invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzeh;->zzd()Lcom/google/android/gms/measurement/internal/zzef; move-result-object v0 iget-object v1, p0, Lcom/google/android/gms/measurement/internal/zzfm;->zzd:Ljava/lang/String; invoke-virtual {v0, v1, p1}, Lcom/google/android/gms/measurement/internal/zzef;->zzb(Ljava/lang/String;Ljava/lang/Object;)V .line 3 instance-of v0, p1, Lcom/google/android/gms/measurement/internal/zzfk; if-eqz v0, :cond_0 .line 4 invoke-static {}, Ljava/lang/Thread;->getDefaultUncaughtExceptionHandler()Ljava/lang/Thread$UncaughtExceptionHandler; move-result-object v0 if-eqz v0, :cond_0 .line 5 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object v1 invoke-interface {v0, v1, p1}, Ljava/lang/Thread$UncaughtExceptionHandler;->uncaughtException(Ljava/lang/Thread;Ljava/lang/Throwable;)V .line 6 :cond_0 invoke-super {p0, p1}, Ljava/util/concurrent/FutureTask;->setException(Ljava/lang/Throwable;)V return-void .end method