HandlerScheduler$HandlerWorker.smali
.class final Lio/reactivex/android/schedulers/HandlerScheduler$HandlerWorker;
.super Lio/reactivex/Scheduler$Worker;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lio/reactivex/android/schedulers/HandlerScheduler;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1a
name = "HandlerWorker"
.end annotation
# instance fields
.field private final f:Landroid/os/Handler;
.field private final g:Z
.field private volatile h:Z
# direct methods
.method constructor <init>(Landroid/os/Handler;Z)V
.registers 3
invoke-direct {p0}, Lio/reactivex/Scheduler$Worker;-><init>()V
iput-object p1, p0, Lio/reactivex/android/schedulers/HandlerScheduler$HandlerWorker;->f:Landroid/os/Handler;
iput-boolean p2, p0, Lio/reactivex/android/schedulers/HandlerScheduler$HandlerWorker;->g:Z
return-void
.end method
# virtual methods
.method public b(Ljava/lang/Runnable;JLjava/util/concurrent/TimeUnit;)Lio/reactivex/disposables/Disposable;
.registers 7
.annotation build Landroid/annotation/SuppressLint;
value = {
"NewApi"
}
.end annotation
if-eqz p1, :cond_48
if-eqz p4, :cond_40
iget-boolean v0, p0, Lio/reactivex/android/schedulers/HandlerScheduler$HandlerWorker;->h:Z
if-eqz v0, :cond_d
invoke-static {}, Lio/reactivex/disposables/Disposables;->a()Lio/reactivex/disposables/Disposable;
move-result-object p1
return-object p1
:cond_d
invoke-static {p1}, Lio/reactivex/plugins/RxJavaPlugins;->o(Ljava/lang/Runnable;)Ljava/lang/Runnable;
move-result-object p1
new-instance v0, Lio/reactivex/android/schedulers/HandlerScheduler$ScheduledRunnable;
iget-object v1, p0, Lio/reactivex/android/schedulers/HandlerScheduler$HandlerWorker;->f:Landroid/os/Handler;
invoke-direct {v0, v1, p1}, Lio/reactivex/android/schedulers/HandlerScheduler$ScheduledRunnable;-><init>(Landroid/os/Handler;Ljava/lang/Runnable;)V
iget-object p1, p0, Lio/reactivex/android/schedulers/HandlerScheduler$HandlerWorker;->f:Landroid/os/Handler;
invoke-static {p1, v0}, Landroid/os/Message;->obtain(Landroid/os/Handler;Ljava/lang/Runnable;)Landroid/os/Message;
move-result-object p1
iput-object p0, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
iget-boolean v1, p0, Lio/reactivex/android/schedulers/HandlerScheduler$HandlerWorker;->g:Z
if-eqz v1, :cond_28
const/4 v1, 0x1
invoke-virtual {p1, v1}, Landroid/os/Message;->setAsynchronous(Z)V
:cond_28
iget-object v1, p0, Lio/reactivex/android/schedulers/HandlerScheduler$HandlerWorker;->f:Landroid/os/Handler;
invoke-virtual {p4, p2, p3}, Ljava/util/concurrent/TimeUnit;->toMillis(J)J
move-result-wide p2
invoke-virtual {v1, p1, p2, p3}, Landroid/os/Handler;->sendMessageDelayed(Landroid/os/Message;J)Z
iget-boolean p1, p0, Lio/reactivex/android/schedulers/HandlerScheduler$HandlerWorker;->h:Z
if-eqz p1, :cond_3f
iget-object p1, p0, Lio/reactivex/android/schedulers/HandlerScheduler$HandlerWorker;->f:Landroid/os/Handler;
invoke-virtual {p1, v0}, Landroid/os/Handler;->removeCallbacks(Ljava/lang/Runnable;)V
invoke-static {}, Lio/reactivex/disposables/Disposables;->a()Lio/reactivex/disposables/Disposable;
move-result-object p1
return-object p1
:cond_3f
return-object v0
:cond_40
new-instance p1, Ljava/lang/NullPointerException;
const-string p2, "unit == null"
invoke-direct {p1, p2}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw p1
:cond_48
new-instance p1, Ljava/lang/NullPointerException;
const-string p2, "run == null"
invoke-direct {p1, p2}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public g()V
.registers 2
const/4 v0, 0x1
iput-boolean v0, p0, Lio/reactivex/android/schedulers/HandlerScheduler$HandlerWorker;->h:Z
iget-object v0, p0, Lio/reactivex/android/schedulers/HandlerScheduler$HandlerWorker;->f:Landroid/os/Handler;
invoke-virtual {v0, p0}, Landroid/os/Handler;->removeCallbacksAndMessages(Ljava/lang/Object;)V
return-void
.end method
.method public j()Z
.registers 2
iget-boolean v0, p0, Lio/reactivex/android/schedulers/HandlerScheduler$HandlerWorker;->h:Z
return v0
.end method