Completable$4.smali
.class final Lrx/Completable$4;
.super Ljava/lang/Object;
.source "Completable.java"
# interfaces
.implements Lrx/Completable$OnSubscribe;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lrx/Completable;->amb(Ljava/lang/Iterable;)Lrx/Completable;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# instance fields
.field final synthetic val$sources:Ljava/lang/Iterable;
# direct methods
.method constructor <init>(Ljava/lang/Iterable;)V
.registers 2
.line 1
iput-object p1, p0, Lrx/Completable$4;->val$sources:Ljava/lang/Iterable;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public bridge synthetic call(Ljava/lang/Object;)V
.registers 2
.line 1
check-cast p1, Lrx/CompletableSubscriber;
invoke-virtual {p0, p1}, Lrx/Completable$4;->call(Lrx/CompletableSubscriber;)V
return-void
.end method
.method public call(Lrx/CompletableSubscriber;)V
.registers 10
.line 2
new-instance v0, Lrx/subscriptions/CompositeSubscription;
invoke-direct {v0}, Lrx/subscriptions/CompositeSubscription;-><init>()V
.line 3
invoke-interface {p1, v0}, Lrx/CompletableSubscriber;->onSubscribe(Lrx/Subscription;)V
.line 4
:try_start_8
iget-object v1, p0, Lrx/Completable$4;->val$sources:Ljava/lang/Iterable;
invoke-interface {v1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object v1
:try_end_e
.catch Ljava/lang/Throwable; {:try_start_8 .. :try_end_e} :catch_a6
if-nez v1, :cond_1b
.line 5
new-instance v0, Ljava/lang/NullPointerException;
const-string v1, "The iterator returned is null"
invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
invoke-interface {p1, v0}, Lrx/CompletableSubscriber;->onError(Ljava/lang/Throwable;)V
return-void
.line 6
:cond_1b
new-instance v2, Ljava/util/concurrent/atomic/AtomicBoolean;
invoke-direct {v2}, Ljava/util/concurrent/atomic/AtomicBoolean;-><init>()V
.line 7
new-instance v3, Lrx/Completable$4$1;
invoke-direct {v3, p0, v2, v0, p1}, Lrx/Completable$4$1;-><init>(Lrx/Completable$4;Ljava/util/concurrent/atomic/AtomicBoolean;Lrx/subscriptions/CompositeSubscription;Lrx/CompletableSubscriber;)V
const/4 v4, 0x0
const/4 v5, 0x1
const/4 v6, 0x1
.line 8
:goto_28
invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z
move-result v7
if-nez v7, :cond_a5
invoke-virtual {v0}, Lrx/subscriptions/CompositeSubscription;->isUnsubscribed()Z
move-result v7
if-eqz v7, :cond_36
goto/16 :goto_a5
.line 9
:cond_36
:try_start_36
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v7
:try_end_3a
.catch Ljava/lang/Throwable; {:try_start_36 .. :try_end_3a} :catch_94
if-nez v7, :cond_42
if-eqz v6, :cond_41
.line 10
invoke-interface {p1}, Lrx/CompletableSubscriber;->onCompleted()V
:cond_41
return-void
.line 11
:cond_42
invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z
move-result v6
if-nez v6, :cond_93
invoke-virtual {v0}, Lrx/subscriptions/CompositeSubscription;->isUnsubscribed()Z
move-result v6
if-eqz v6, :cond_4f
goto :goto_93
.line 12
:cond_4f
:try_start_4f
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v6
check-cast v6, Lrx/Completable;
:try_end_55
.catch Ljava/lang/Throwable; {:try_start_4f .. :try_end_55} :catch_82
if-nez v6, :cond_6f
.line 13
new-instance v1, Ljava/lang/NullPointerException;
const-string v3, "One of the sources is null"
invoke-direct {v1, v3}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
.line 14
invoke-virtual {v2, v4, v5}, Ljava/util/concurrent/atomic/AtomicBoolean;->compareAndSet(ZZ)Z
move-result v2
if-eqz v2, :cond_6b
.line 15
invoke-virtual {v0}, Lrx/subscriptions/CompositeSubscription;->unsubscribe()V
.line 16
invoke-interface {p1, v1}, Lrx/CompletableSubscriber;->onError(Ljava/lang/Throwable;)V
goto :goto_6e
.line 17
:cond_6b
invoke-static {v1}, Lrx/plugins/RxJavaHooks;->onError(Ljava/lang/Throwable;)V
:goto_6e
return-void
.line 18
:cond_6f
invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z
move-result v7
if-nez v7, :cond_81
invoke-virtual {v0}, Lrx/subscriptions/CompositeSubscription;->isUnsubscribed()Z
move-result v7
if-eqz v7, :cond_7c
goto :goto_81
.line 19
:cond_7c
invoke-virtual {v6, v3}, Lrx/Completable;->unsafeSubscribe(Lrx/CompletableSubscriber;)V
const/4 v6, 0x0
goto :goto_28
:cond_81
:goto_81
return-void
:catch_82
move-exception v1
.line 20
invoke-virtual {v2, v4, v5}, Ljava/util/concurrent/atomic/AtomicBoolean;->compareAndSet(ZZ)Z
move-result v2
if-eqz v2, :cond_90
.line 21
invoke-virtual {v0}, Lrx/subscriptions/CompositeSubscription;->unsubscribe()V
.line 22
invoke-interface {p1, v1}, Lrx/CompletableSubscriber;->onError(Ljava/lang/Throwable;)V
goto :goto_93
.line 23
:cond_90
invoke-static {v1}, Lrx/plugins/RxJavaHooks;->onError(Ljava/lang/Throwable;)V
:cond_93
:goto_93
return-void
:catch_94
move-exception v1
.line 24
invoke-virtual {v2, v4, v5}, Ljava/util/concurrent/atomic/AtomicBoolean;->compareAndSet(ZZ)Z
move-result v2
if-eqz v2, :cond_a2
.line 25
invoke-virtual {v0}, Lrx/subscriptions/CompositeSubscription;->unsubscribe()V
.line 26
invoke-interface {p1, v1}, Lrx/CompletableSubscriber;->onError(Ljava/lang/Throwable;)V
goto :goto_a5
.line 27
:cond_a2
invoke-static {v1}, Lrx/plugins/RxJavaHooks;->onError(Ljava/lang/Throwable;)V
:cond_a5
:goto_a5
return-void
:catch_a6
move-exception v0
.line 28
invoke-interface {p1, v0}, Lrx/CompletableSubscriber;->onError(Ljava/lang/Throwable;)V
return-void
.end method