SingleOnSubscribeUsing.smali
.class public final Lrx/internal/operators/SingleOnSubscribeUsing;
.super Ljava/lang/Object;
.source "SingleOnSubscribeUsing.java"
# interfaces
.implements Lrx/Single$OnSubscribe;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
"Resource:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;",
"Lrx/Single$OnSubscribe<",
"TT;>;"
}
.end annotation
# instance fields
.field final disposeAction:Lrx/functions/Action1;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lrx/functions/Action1<",
"-TResource;>;"
}
.end annotation
.end field
.field final disposeEagerly:Z
.field final resourceFactory:Lrx/functions/Func0;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lrx/functions/Func0<",
"TResource;>;"
}
.end annotation
.end field
.field final singleFactory:Lrx/functions/Func1;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lrx/functions/Func1<",
"-TResource;+",
"Lrx/Single<",
"+TT;>;>;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Lrx/functions/Func0;Lrx/functions/Func1;Lrx/functions/Action1;Z)V
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lrx/functions/Func0<",
"TResource;>;",
"Lrx/functions/Func1<",
"-TResource;+",
"Lrx/Single<",
"+TT;>;>;",
"Lrx/functions/Action1<",
"-TResource;>;Z)V"
}
.end annotation
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
iput-object p1, p0, Lrx/internal/operators/SingleOnSubscribeUsing;->resourceFactory:Lrx/functions/Func0;
.line 3
iput-object p2, p0, Lrx/internal/operators/SingleOnSubscribeUsing;->singleFactory:Lrx/functions/Func1;
.line 4
iput-object p3, p0, Lrx/internal/operators/SingleOnSubscribeUsing;->disposeAction:Lrx/functions/Action1;
.line 5
iput-boolean p4, p0, Lrx/internal/operators/SingleOnSubscribeUsing;->disposeEagerly:Z
return-void
.end method
# virtual methods
.method public bridge synthetic call(Ljava/lang/Object;)V
.registers 2
.line 1
check-cast p1, Lrx/SingleSubscriber;
invoke-virtual {p0, p1}, Lrx/internal/operators/SingleOnSubscribeUsing;->call(Lrx/SingleSubscriber;)V
return-void
.end method
.method public call(Lrx/SingleSubscriber;)V
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lrx/SingleSubscriber<",
"-TT;>;)V"
}
.end annotation
.line 2
:try_start_0
iget-object v0, p0, Lrx/internal/operators/SingleOnSubscribeUsing;->resourceFactory:Lrx/functions/Func0;
invoke-interface {v0}, Lrx/functions/Func0;->call()Ljava/lang/Object;
move-result-object v0
:try_end_6
.catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_6} :catch_2c
.line 3
:try_start_6
iget-object v1, p0, Lrx/internal/operators/SingleOnSubscribeUsing;->singleFactory:Lrx/functions/Func1;
invoke-interface {v1, v0}, Lrx/functions/Func1;->call(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Lrx/Single;
:try_end_e
.catch Ljava/lang/Throwable; {:try_start_6 .. :try_end_e} :catch_27
if-nez v1, :cond_1b
.line 4
new-instance v1, Ljava/lang/NullPointerException;
const-string v2, "The single"
invoke-direct {v1, v2}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
invoke-virtual {p0, p1, v0, v1}, Lrx/internal/operators/SingleOnSubscribeUsing;->handleSubscriptionTimeError(Lrx/SingleSubscriber;Ljava/lang/Object;Ljava/lang/Throwable;)V
return-void
.line 5
:cond_1b
new-instance v2, Lrx/internal/operators/SingleOnSubscribeUsing$1;
invoke-direct {v2, p0, v0, p1}, Lrx/internal/operators/SingleOnSubscribeUsing$1;-><init>(Lrx/internal/operators/SingleOnSubscribeUsing;Ljava/lang/Object;Lrx/SingleSubscriber;)V
.line 6
invoke-virtual {p1, v2}, Lrx/SingleSubscriber;->add(Lrx/Subscription;)V
.line 7
invoke-virtual {v1, v2}, Lrx/Single;->subscribe(Lrx/SingleSubscriber;)Lrx/Subscription;
return-void
:catch_27
move-exception v1
.line 8
invoke-virtual {p0, p1, v0, v1}, Lrx/internal/operators/SingleOnSubscribeUsing;->handleSubscriptionTimeError(Lrx/SingleSubscriber;Ljava/lang/Object;Ljava/lang/Throwable;)V
return-void
:catch_2c
move-exception v0
.line 9
invoke-static {v0}, Lrx/exceptions/Exceptions;->throwIfFatal(Ljava/lang/Throwable;)V
.line 10
invoke-virtual {p1, v0}, Lrx/SingleSubscriber;->onError(Ljava/lang/Throwable;)V
return-void
.end method
.method handleSubscriptionTimeError(Lrx/SingleSubscriber;Ljava/lang/Object;Ljava/lang/Throwable;)V
.registers 8
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lrx/SingleSubscriber<",
"-TT;>;TResource;",
"Ljava/lang/Throwable;",
")V"
}
.end annotation
.line 1
invoke-static {p3}, Lrx/exceptions/Exceptions;->throwIfFatal(Ljava/lang/Throwable;)V
.line 2
iget-boolean v0, p0, Lrx/internal/operators/SingleOnSubscribeUsing;->disposeEagerly:Z
if-eqz v0, :cond_24
.line 3
:try_start_7
iget-object v0, p0, Lrx/internal/operators/SingleOnSubscribeUsing;->disposeAction:Lrx/functions/Action1;
invoke-interface {v0, p2}, Lrx/functions/Action1;->call(Ljava/lang/Object;)V
:try_end_c
.catch Ljava/lang/Throwable; {:try_start_7 .. :try_end_c} :catch_d
goto :goto_24
:catch_d
move-exception v0
.line 4
invoke-static {v0}, Lrx/exceptions/Exceptions;->throwIfFatal(Ljava/lang/Throwable;)V
.line 5
new-instance v1, Lrx/exceptions/CompositeException;
const/4 v2, 0x2
new-array v2, v2, [Ljava/lang/Throwable;
const/4 v3, 0x0
aput-object p3, v2, v3
const/4 p3, 0x1
aput-object v0, v2, p3
invoke-static {v2}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object p3
invoke-direct {v1, p3}, Lrx/exceptions/CompositeException;-><init>(Ljava/util/Collection;)V
move-object p3, v1
.line 6
:cond_24
:goto_24
invoke-virtual {p1, p3}, Lrx/SingleSubscriber;->onError(Ljava/lang/Throwable;)V
.line 7
iget-boolean p1, p0, Lrx/internal/operators/SingleOnSubscribeUsing;->disposeEagerly:Z
if-nez p1, :cond_38
.line 8
:try_start_2b
iget-object p1, p0, Lrx/internal/operators/SingleOnSubscribeUsing;->disposeAction:Lrx/functions/Action1;
invoke-interface {p1, p2}, Lrx/functions/Action1;->call(Ljava/lang/Object;)V
:try_end_30
.catch Ljava/lang/Throwable; {:try_start_2b .. :try_end_30} :catch_31
goto :goto_38
:catch_31
move-exception p1
.line 9
invoke-static {p1}, Lrx/exceptions/Exceptions;->throwIfFatal(Ljava/lang/Throwable;)V
.line 10
invoke-static {p1}, Lrx/plugins/RxJavaHooks;->onError(Ljava/lang/Throwable;)V
:cond_38
:goto_38
return-void
.end method