CompletableMergeArray$InnerCompletableObserver.smali
.class final Lio/reactivex/internal/operators/completable/CompletableMergeArray$InnerCompletableObserver;
.super Ljava/util/concurrent/atomic/AtomicInteger;
.source "CompletableMergeArray.java"
# interfaces
.implements Lio/reactivex/CompletableObserver;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lio/reactivex/internal/operators/completable/CompletableMergeArray;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "InnerCompletableObserver"
.end annotation
# static fields
.field private static final serialVersionUID:J = -0x7406a1ef165c572aL
# instance fields
.field final actual:Lio/reactivex/CompletableObserver;
.field final once:Ljava/util/concurrent/atomic/AtomicBoolean;
.field final set:Lio/reactivex/disposables/CompositeDisposable;
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method constructor <init>(Lio/reactivex/CompletableObserver;Ljava/util/concurrent/atomic/AtomicBoolean;Lio/reactivex/disposables/CompositeDisposable;I)V
.registers 5
.param p1, "actual" # Lio/reactivex/CompletableObserver;
.param p2, "once" # Ljava/util/concurrent/atomic/AtomicBoolean;
.param p3, "set" # Lio/reactivex/disposables/CompositeDisposable;
.param p4, "n" # I
.line 64
invoke-direct {p0}, Ljava/util/concurrent/atomic/AtomicInteger;-><init>()V
.line 65
iput-object p1, p0, Lio/reactivex/internal/operators/completable/CompletableMergeArray$InnerCompletableObserver;->actual:Lio/reactivex/CompletableObserver;
.line 66
iput-object p2, p0, Lio/reactivex/internal/operators/completable/CompletableMergeArray$InnerCompletableObserver;->once:Ljava/util/concurrent/atomic/AtomicBoolean;
.line 67
iput-object p3, p0, Lio/reactivex/internal/operators/completable/CompletableMergeArray$InnerCompletableObserver;->set:Lio/reactivex/disposables/CompositeDisposable;
.line 68
invoke-virtual {p0, p4}, Lio/reactivex/internal/operators/completable/CompletableMergeArray$InnerCompletableObserver;->lazySet(I)V
.line 69
return-void
.end method
# virtual methods
.method public onComplete()V
.registers 4
.line 88
invoke-virtual {p0}, Lio/reactivex/internal/operators/completable/CompletableMergeArray$InnerCompletableObserver;->decrementAndGet()I
move-result v0
if-nez v0, :cond_15
.line 89
iget-object v0, p0, Lio/reactivex/internal/operators/completable/CompletableMergeArray$InnerCompletableObserver;->once:Ljava/util/concurrent/atomic/AtomicBoolean;
const/4 v1, 0x0
const/4 v2, 0x1
invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;->compareAndSet(ZZ)Z
move-result v0
if-eqz v0, :cond_15
.line 90
iget-object v0, p0, Lio/reactivex/internal/operators/completable/CompletableMergeArray$InnerCompletableObserver;->actual:Lio/reactivex/CompletableObserver;
invoke-interface {v0}, Lio/reactivex/CompletableObserver;->onComplete()V
.line 93
:cond_15
return-void
.end method
.method public onError(Ljava/lang/Throwable;)V
.registers 5
.param p1, "e" # Ljava/lang/Throwable;
.line 78
iget-object v0, p0, Lio/reactivex/internal/operators/completable/CompletableMergeArray$InnerCompletableObserver;->set:Lio/reactivex/disposables/CompositeDisposable;
invoke-virtual {v0}, Lio/reactivex/disposables/CompositeDisposable;->dispose()V
.line 79
iget-object v0, p0, Lio/reactivex/internal/operators/completable/CompletableMergeArray$InnerCompletableObserver;->once:Ljava/util/concurrent/atomic/AtomicBoolean;
const/4 v1, 0x0
const/4 v2, 0x1
invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;->compareAndSet(ZZ)Z
move-result v0
if-eqz v0, :cond_15
.line 80
iget-object v0, p0, Lio/reactivex/internal/operators/completable/CompletableMergeArray$InnerCompletableObserver;->actual:Lio/reactivex/CompletableObserver;
invoke-interface {v0, p1}, Lio/reactivex/CompletableObserver;->onError(Ljava/lang/Throwable;)V
goto :goto_18
.line 82
:cond_15
invoke-static {p1}, Lio/reactivex/plugins/RxJavaPlugins;->onError(Ljava/lang/Throwable;)V
.line 84
:goto_18
return-void
.end method
.method public onSubscribe(Lio/reactivex/disposables/Disposable;)V
.registers 3
.param p1, "d" # Lio/reactivex/disposables/Disposable;
.line 73
iget-object v0, p0, Lio/reactivex/internal/operators/completable/CompletableMergeArray$InnerCompletableObserver;->set:Lio/reactivex/disposables/CompositeDisposable;
invoke-virtual {v0, p1}, Lio/reactivex/disposables/CompositeDisposable;->add(Lio/reactivex/disposables/Disposable;)Z
.line 74
return-void
.end method