Scheduler$DisposeTask.smali
.class final Lio/reactivex/Scheduler$DisposeTask;
.super Ljava/lang/Object;
# interfaces
.implements Lio/reactivex/disposables/Disposable;
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lio/reactivex/Scheduler;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "DisposeTask"
.end annotation
# instance fields
.field final f:Ljava/lang/Runnable;
.field final g:Lio/reactivex/Scheduler$Worker;
.field h:Ljava/lang/Thread;
# direct methods
.method constructor <init>(Ljava/lang/Runnable;Lio/reactivex/Scheduler$Worker;)V
.registers 3
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lio/reactivex/Scheduler$DisposeTask;->f:Ljava/lang/Runnable;
iput-object p2, p0, Lio/reactivex/Scheduler$DisposeTask;->g:Lio/reactivex/Scheduler$Worker;
return-void
.end method
# virtual methods
.method public g()V
.registers 3
iget-object v0, p0, Lio/reactivex/Scheduler$DisposeTask;->h:Ljava/lang/Thread;
invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread;
move-result-object v1
if-ne v0, v1, :cond_14
iget-object v0, p0, Lio/reactivex/Scheduler$DisposeTask;->g:Lio/reactivex/Scheduler$Worker;
instance-of v1, v0, Lio/reactivex/internal/schedulers/NewThreadWorker;
if-eqz v1, :cond_14
check-cast v0, Lio/reactivex/internal/schedulers/NewThreadWorker;
invoke-virtual {v0}, Lio/reactivex/internal/schedulers/NewThreadWorker;->e()V
goto :goto_19
:cond_14
iget-object v0, p0, Lio/reactivex/Scheduler$DisposeTask;->g:Lio/reactivex/Scheduler$Worker;
invoke-interface {v0}, Lio/reactivex/disposables/Disposable;->g()V
:goto_19
return-void
.end method
.method public j()Z
.registers 2
iget-object v0, p0, Lio/reactivex/Scheduler$DisposeTask;->g:Lio/reactivex/Scheduler$Worker;
invoke-interface {v0}, Lio/reactivex/disposables/Disposable;->j()Z
move-result v0
return v0
.end method
.method public run()V
.registers 3
invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread;
move-result-object v0
iput-object v0, p0, Lio/reactivex/Scheduler$DisposeTask;->h:Ljava/lang/Thread;
const/4 v0, 0x0
:try_start_7
iget-object v1, p0, Lio/reactivex/Scheduler$DisposeTask;->f:Ljava/lang/Runnable;
invoke-interface {v1}, Ljava/lang/Runnable;->run()V
:try_end_c
.catchall {:try_start_7 .. :try_end_c} :catchall_12
invoke-virtual {p0}, Lio/reactivex/Scheduler$DisposeTask;->g()V
iput-object v0, p0, Lio/reactivex/Scheduler$DisposeTask;->h:Ljava/lang/Thread;
return-void
:catchall_12
move-exception v1
invoke-virtual {p0}, Lio/reactivex/Scheduler$DisposeTask;->g()V
iput-object v0, p0, Lio/reactivex/Scheduler$DisposeTask;->h:Ljava/lang/Thread;
throw v1
.end method