i.smali
.class public Ljo/i;
.super Ljava/lang/Object;
.source "BaseTask.java"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;",
"Ljava/lang/Runnable;"
}
.end annotation
# static fields
.field public static final i:Ljava/lang/String;
.field public static final j:Landroid/os/Handler;
# instance fields
.field public a:Ljava/util/concurrent/atomic/AtomicInteger;
.field public b:Z
.field public c:Ljava/util/concurrent/ScheduledFuture;
.field public d:Ljo/k;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljo/k<",
"TT;>;"
}
.end annotation
.end field
.field public e:Ljo/n;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljo/n<",
"TT;>;"
}
.end annotation
.end field
.field public f:Ljo/l;
.field public g:Ljo/m;
.field public h:Ljo/j;
# direct methods
.method public static constructor <clinit>()V
.registers 2
const-class v0, Ljo/i;
invoke-virtual {v0}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v0
sput-object v0, Ljo/i;->i:Ljava/lang/String;
new-instance v0, Landroid/os/Handler;
invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
move-result-object v1
invoke-direct {v0, v1}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
sput-object v0, Ljo/i;->j:Landroid/os/Handler;
return-void
.end method
.method public constructor <init>()V
.registers 3
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger;
const/4 v1, 0x0
invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicInteger;-><init>(I)V
iput-object v0, p0, Ljo/i;->a:Ljava/util/concurrent/atomic/AtomicInteger;
iput-boolean v1, p0, Ljo/i;->b:Z
return-void
.end method
.method public static a(Ljava/lang/Runnable;)V
.registers 3
invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper;
move-result-object v0
invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
move-result-object v1
if-ne v0, v1, :cond_e
invoke-interface {p0}, Ljava/lang/Runnable;->run()V
goto :goto_13
:cond_e
sget-object v0, Ljo/i;->j:Landroid/os/Handler;
invoke-virtual {v0, p0}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
:goto_13
return-void
.end method
# virtual methods
.method public a(Ljo/j;)Ljo/i;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljo/j;",
")",
"Ljo/i<",
"TT;>;"
}
.end annotation
iput-object p1, p0, Ljo/i;->h:Ljo/j;
return-object p0
.end method
.method public a(Ljo/k;)Ljo/i;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljo/k<",
"TT;>;)",
"Ljo/i<",
"TT;>;"
}
.end annotation
iput-object p1, p0, Ljo/i;->d:Ljo/k;
return-object p0
.end method
.method public a(Ljo/l;)Ljo/i;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljo/l;",
")",
"Ljo/i<",
"TT;>;"
}
.end annotation
iput-object p1, p0, Ljo/i;->f:Ljo/l;
return-object p0
.end method
.method public a(Ljo/m;)Ljo/i;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljo/m;",
")",
"Ljo/i<",
"TT;>;"
}
.end annotation
iput-object p1, p0, Ljo/i;->g:Ljo/m;
return-object p0
.end method
.method public a(Ljo/n;)Ljo/i;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljo/n<",
"TT;>;)",
"Ljo/i<",
"TT;>;"
}
.end annotation
iput-object p1, p0, Ljo/i;->e:Ljo/n;
return-object p0
.end method
.method public synthetic a()V
.registers 2
iget-object v0, p0, Ljo/i;->h:Ljo/j;
if-eqz v0, :cond_7
invoke-interface {v0}, Ljo/j;->onCancel()V
:cond_7
invoke-virtual {p0}, Ljo/i;->b()V
return-void
.end method
.method public synthetic a(Ljava/lang/Object;)V
.registers 3
iget-object v0, p0, Ljo/i;->e:Ljo/n;
if-eqz v0, :cond_7
invoke-interface {v0, p1}, Ljo/n;->onSuccess(Ljava/lang/Object;)V
:cond_7
iget-boolean p1, p0, Ljo/i;->b:Z
if-nez p1, :cond_e
invoke-virtual {p0}, Ljo/i;->b()V
:cond_e
return-void
.end method
.method public synthetic a(Ljava/lang/Throwable;)V
.registers 3
iget-object v0, p0, Ljo/i;->f:Ljo/l;
if-eqz v0, :cond_7
invoke-interface {v0, p1}, Ljo/l;->a(Ljava/lang/Throwable;)V
:cond_7
invoke-virtual {p0}, Ljo/i;->b()V
return-void
.end method
.method public a(Ljava/util/concurrent/ScheduledFuture;)V
.registers 2
iput-object p1, p0, Ljo/i;->c:Ljava/util/concurrent/ScheduledFuture;
return-void
.end method
.method public a(Z)V
.registers 2
iput-boolean p1, p0, Ljo/i;->b:Z
return-void
.end method
.method public b()V
.registers 5
.annotation build Landroidx/annotation/CallSuper;
.end annotation
:try_start_0
invoke-static {}, Ljo/p;->b()Ljo/p;
move-result-object v0
invoke-virtual {v0}, Ljo/p;->a()Ljava/util/Queue;
move-result-object v0
if-eqz v0, :cond_d
invoke-interface {v0, p0}, Ljava/util/Queue;->remove(Ljava/lang/Object;)Z
:cond_d
iget-object v0, p0, Ljo/i;->c:Ljava/util/concurrent/ScheduledFuture;
if-eqz v0, :cond_17
iget-object v0, p0, Ljo/i;->c:Ljava/util/concurrent/ScheduledFuture;
const/4 v1, 0x1
invoke-interface {v0, v1}, Ljava/util/concurrent/ScheduledFuture;->cancel(Z)Z
:cond_17
const/4 v0, 0x0
iput-object v0, p0, Ljo/i;->c:Ljava/util/concurrent/ScheduledFuture;
iget-object v0, p0, Ljo/i;->g:Ljo/m;
if-eqz v0, :cond_3f
iget-object v0, p0, Ljo/i;->g:Ljo/m;
invoke-interface {v0}, Ljo/m;->onFinish()V
:try_end_23
.catchall {:try_start_0 .. :try_end_23} :catchall_24
goto :goto_3f
:catchall_24
move-exception v0
sget-object v1, Ljo/i;->i:Ljava/lang/String;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "finishing task encounters error : "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/Throwable;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
:cond_3f
:goto_3f
return-void
.end method
.method public run()V
.registers 5
const/4 v0, 0x1
:try_start_1
invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread;
iget-object v1, p0, Ljo/i;->a:Ljava/util/concurrent/atomic/AtomicInteger;
const/4 v2, 0x0
invoke-virtual {v1, v2, v0}, Ljava/util/concurrent/atomic/AtomicInteger;->compareAndSet(II)Z
move-result v1
if-nez v1, :cond_20
iget-boolean v1, p0, Ljo/i;->b:Z
if-eqz v1, :cond_1a
iget-object v1, p0, Ljo/i;->a:Ljava/util/concurrent/atomic/AtomicInteger;
invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;->get()I
move-result v1
if-ne v1, v0, :cond_1a
const/4 v2, 0x1
:cond_1a
if-nez v2, :cond_20
invoke-virtual {p0}, Ljo/i;->b()V
return-void
:cond_20
iget-object v1, p0, Ljo/i;->d:Ljo/k;
if-nez v1, :cond_25
return-void
:cond_25
iget-object v1, p0, Ljo/i;->d:Ljo/k;
invoke-interface {v1}, Ljo/k;->onDoTask()Ljava/lang/Object;
move-result-object v1
iget-boolean v2, p0, Ljo/i;->b:Z
if-eqz v2, :cond_3b
iget-object v2, p0, Ljo/i;->a:Ljava/util/concurrent/atomic/AtomicInteger;
invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;->get()I
move-result v2
if-eq v2, v0, :cond_48
invoke-virtual {p0}, Ljo/i;->b()V
return-void
:cond_3b
iget-object v2, p0, Ljo/i;->a:Ljava/util/concurrent/atomic/AtomicInteger;
const/4 v3, 0x5
invoke-virtual {v2, v0, v3}, Ljava/util/concurrent/atomic/AtomicInteger;->compareAndSet(II)Z
move-result v2
if-nez v2, :cond_48
invoke-virtual {p0}, Ljo/i;->b()V
return-void
:cond_48
new-instance v2, Ljo/a;
invoke-direct {v2, p0, v1}, Ljo/a;-><init>(Ljo/i;Ljava/lang/Object;)V
invoke-static {v2}, Ljo/i;->a(Ljava/lang/Runnable;)V
:try_end_50
.catch Ljava/lang/InterruptedException; {:try_start_1 .. :try_end_50} :catch_61
.catchall {:try_start_1 .. :try_end_50} :catchall_51
goto :goto_70
:catchall_51
move-exception v1
iget-object v2, p0, Ljo/i;->a:Ljava/util/concurrent/atomic/AtomicInteger;
const/4 v3, 0x4
invoke-virtual {v2, v0, v3}, Ljava/util/concurrent/atomic/AtomicInteger;->compareAndSet(II)Z
new-instance v0, Ljo/c;
invoke-direct {v0, p0, v1}, Ljo/c;-><init>(Ljo/i;Ljava/lang/Throwable;)V
invoke-static {v0}, Ljo/i;->a(Ljava/lang/Runnable;)V
goto :goto_70
:catch_61
iget-object v0, p0, Ljo/i;->a:Ljava/util/concurrent/atomic/AtomicInteger;
const/4 v1, 0x2
const/4 v2, 0x3
invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicInteger;->compareAndSet(II)Z
new-instance v0, Ljo/b;
invoke-direct {v0, p0}, Ljo/b;-><init>(Ljo/i;)V
invoke-static {v0}, Ljo/i;->a(Ljava/lang/Runnable;)V
:goto_70
return-void
.end method