CompletableCreate$Emitter.smali
.class final Lio/reactivex/internal/operators/completable/CompletableCreate$Emitter;
.super Ljava/util/concurrent/atomic/AtomicReference;
.source "CompletableCreate.java"
# interfaces
.implements Lio/reactivex/CompletableEmitter;
.implements Lio/reactivex/disposables/Disposable;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lio/reactivex/internal/operators/completable/CompletableCreate;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "Emitter"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/atomic/AtomicReference<",
"Lio/reactivex/disposables/Disposable;",
">;",
"Lio/reactivex/CompletableEmitter;",
"Lio/reactivex/disposables/Disposable;"
}
.end annotation
# static fields
.field private static final serialVersionUID:J = -0x223dd198233781a4L
# instance fields
.field final actual:Lio/reactivex/CompletableObserver;
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method constructor <init>(Lio/reactivex/CompletableObserver;)V
.registers 2
.param p1, "actual" # Lio/reactivex/CompletableObserver;
.line 54
invoke-direct {p0}, Ljava/util/concurrent/atomic/AtomicReference;-><init>()V
.line 55
iput-object p1, p0, Lio/reactivex/internal/operators/completable/CompletableCreate$Emitter;->actual:Lio/reactivex/CompletableObserver;
.line 56
return-void
.end method
# virtual methods
.method public dispose()V
.registers 1
.line 114
invoke-static {p0}, Lio/reactivex/internal/disposables/DisposableHelper;->dispose(Ljava/util/concurrent/atomic/AtomicReference;)Z
.line 115
return-void
.end method
.method public isDisposed()Z
.registers 2
.line 119
invoke-virtual {p0}, Lio/reactivex/internal/operators/completable/CompletableCreate$Emitter;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lio/reactivex/disposables/Disposable;
invoke-static {v0}, Lio/reactivex/internal/disposables/DisposableHelper;->isDisposed(Lio/reactivex/disposables/Disposable;)Z
move-result v0
return v0
.end method
.method public onComplete()V
.registers 3
.line 60
invoke-virtual {p0}, Lio/reactivex/internal/operators/completable/CompletableCreate$Emitter;->get()Ljava/lang/Object;
move-result-object v0
sget-object v1, Lio/reactivex/internal/disposables/DisposableHelper;->DISPOSED:Lio/reactivex/internal/disposables/DisposableHelper;
if-eq v0, v1, :cond_26
.line 61
sget-object v0, Lio/reactivex/internal/disposables/DisposableHelper;->DISPOSED:Lio/reactivex/internal/disposables/DisposableHelper;
invoke-virtual {p0, v0}, Lio/reactivex/internal/operators/completable/CompletableCreate$Emitter;->getAndSet(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lio/reactivex/disposables/Disposable;
.line 62
.local v0, "d":Lio/reactivex/disposables/Disposable;
sget-object v1, Lio/reactivex/internal/disposables/DisposableHelper;->DISPOSED:Lio/reactivex/internal/disposables/DisposableHelper;
if-eq v0, v1, :cond_26
.line 64
:try_start_14
iget-object v1, p0, Lio/reactivex/internal/operators/completable/CompletableCreate$Emitter;->actual:Lio/reactivex/CompletableObserver;
invoke-interface {v1}, Lio/reactivex/CompletableObserver;->onComplete()V
:try_end_19
.catchall {:try_start_14 .. :try_end_19} :catchall_1f
.line 66
if-eqz v0, :cond_26
.line 67
invoke-interface {v0}, Lio/reactivex/disposables/Disposable;->dispose()V
goto :goto_26
.line 66
:catchall_1f
move-exception v1
if-eqz v0, :cond_25
.line 67
invoke-interface {v0}, Lio/reactivex/disposables/Disposable;->dispose()V
:cond_25
throw v1
.line 72
.end local v0 # "d":Lio/reactivex/disposables/Disposable;
:cond_26
:goto_26
return-void
.end method
.method public onError(Ljava/lang/Throwable;)V
.registers 3
.param p1, "t" # Ljava/lang/Throwable;
.line 76
invoke-virtual {p0, p1}, Lio/reactivex/internal/operators/completable/CompletableCreate$Emitter;->tryOnError(Ljava/lang/Throwable;)Z
move-result v0
if-nez v0, :cond_9
.line 77
invoke-static {p1}, Lio/reactivex/plugins/RxJavaPlugins;->onError(Ljava/lang/Throwable;)V
.line 79
:cond_9
return-void
.end method
.method public setCancellable(Lio/reactivex/functions/Cancellable;)V
.registers 3
.param p1, "c" # Lio/reactivex/functions/Cancellable;
.line 109
new-instance v0, Lio/reactivex/internal/disposables/CancellableDisposable;
invoke-direct {v0, p1}, Lio/reactivex/internal/disposables/CancellableDisposable;-><init>(Lio/reactivex/functions/Cancellable;)V
invoke-virtual {p0, v0}, Lio/reactivex/internal/operators/completable/CompletableCreate$Emitter;->setDisposable(Lio/reactivex/disposables/Disposable;)V
.line 110
return-void
.end method
.method public setDisposable(Lio/reactivex/disposables/Disposable;)V
.registers 2
.param p1, "d" # Lio/reactivex/disposables/Disposable;
.line 104
invoke-static {p0, p1}, Lio/reactivex/internal/disposables/DisposableHelper;->set(Ljava/util/concurrent/atomic/AtomicReference;Lio/reactivex/disposables/Disposable;)Z
.line 105
return-void
.end method
.method public tryOnError(Ljava/lang/Throwable;)Z
.registers 4
.param p1, "t" # Ljava/lang/Throwable;
.line 83
if-nez p1, :cond_a
.line 84
new-instance v0, Ljava/lang/NullPointerException;
const-string v1, "onError called with null. Null values are generally not allowed in 2.x operators and sources."
invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
move-object p1, v0
.line 86
:cond_a
invoke-virtual {p0}, Lio/reactivex/internal/operators/completable/CompletableCreate$Emitter;->get()Ljava/lang/Object;
move-result-object v0
sget-object v1, Lio/reactivex/internal/disposables/DisposableHelper;->DISPOSED:Lio/reactivex/internal/disposables/DisposableHelper;
if-eq v0, v1, :cond_31
.line 87
sget-object v0, Lio/reactivex/internal/disposables/DisposableHelper;->DISPOSED:Lio/reactivex/internal/disposables/DisposableHelper;
invoke-virtual {p0, v0}, Lio/reactivex/internal/operators/completable/CompletableCreate$Emitter;->getAndSet(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lio/reactivex/disposables/Disposable;
.line 88
.local v0, "d":Lio/reactivex/disposables/Disposable;
sget-object v1, Lio/reactivex/internal/disposables/DisposableHelper;->DISPOSED:Lio/reactivex/internal/disposables/DisposableHelper;
if-eq v0, v1, :cond_31
.line 90
:try_start_1e
iget-object v1, p0, Lio/reactivex/internal/operators/completable/CompletableCreate$Emitter;->actual:Lio/reactivex/CompletableObserver;
invoke-interface {v1, p1}, Lio/reactivex/CompletableObserver;->onError(Ljava/lang/Throwable;)V
:try_end_23
.catchall {:try_start_1e .. :try_end_23} :catchall_2a
.line 92
if-eqz v0, :cond_28
.line 93
invoke-interface {v0}, Lio/reactivex/disposables/Disposable;->dispose()V
.line 96
:cond_28
const/4 v1, 0x1
return v1
.line 92
:catchall_2a
move-exception v1
if-eqz v0, :cond_30
.line 93
invoke-interface {v0}, Lio/reactivex/disposables/Disposable;->dispose()V
:cond_30
throw v1
.line 99
.end local v0 # "d":Lio/reactivex/disposables/Disposable;
:cond_31
const/4 v0, 0x0
return v0
.end method