RxJava2CallAdapter.smali
.class final Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;
.super Ljava/lang/Object;
.source "RxJava2CallAdapter.java"
# interfaces
.implements Lretrofit2/CallAdapter;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<R:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;",
"Lretrofit2/CallAdapter<",
"TR;",
"Ljava/lang/Object;",
">;"
}
.end annotation
# instance fields
.field private final isAsync:Z
.field private final isBody:Z
.field private final isCompletable:Z
.field private final isFlowable:Z
.field private final isMaybe:Z
.field private final isResult:Z
.field private final isSingle:Z
.field private final responseType:Ljava/lang/reflect/Type;
.field private final scheduler:Lio/reactivex/x;
# direct methods
.method constructor <init>(Ljava/lang/reflect/Type;Lio/reactivex/x;ZZZZZZZ)V
.registers 10
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
iput-object p1, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->responseType:Ljava/lang/reflect/Type;
.line 3
iput-object p2, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->scheduler:Lio/reactivex/x;
.line 4
iput-boolean p3, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->isAsync:Z
.line 5
iput-boolean p4, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->isResult:Z
.line 6
iput-boolean p5, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->isBody:Z
.line 7
iput-boolean p6, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->isFlowable:Z
.line 8
iput-boolean p7, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->isSingle:Z
.line 9
iput-boolean p8, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->isMaybe:Z
.line 10
iput-boolean p9, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->isCompletable:Z
return-void
.end method
# virtual methods
.method public adapt(Lretrofit2/Call;)Ljava/lang/Object;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lretrofit2/Call<",
"TR;>;)",
"Ljava/lang/Object;"
}
.end annotation
.line 1
iget-boolean v0, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->isAsync:Z
if-eqz v0, :cond_a
.line 2
new-instance v0, Lretrofit2/adapter/rxjava2/CallEnqueueObservable;
invoke-direct {v0, p1}, Lretrofit2/adapter/rxjava2/CallEnqueueObservable;-><init>(Lretrofit2/Call;)V
goto :goto_f
.line 3
:cond_a
new-instance v0, Lretrofit2/adapter/rxjava2/CallExecuteObservable;
invoke-direct {v0, p1}, Lretrofit2/adapter/rxjava2/CallExecuteObservable;-><init>(Lretrofit2/Call;)V
.line 4
:goto_f
iget-boolean p1, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->isResult:Z
if-eqz p1, :cond_19
.line 5
new-instance p1, Lretrofit2/adapter/rxjava2/ResultObservable;
invoke-direct {p1, v0}, Lretrofit2/adapter/rxjava2/ResultObservable;-><init>(Lio/reactivex/p;)V
goto :goto_24
.line 6
:cond_19
iget-boolean p1, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->isBody:Z
if-eqz p1, :cond_23
.line 7
new-instance p1, Lretrofit2/adapter/rxjava2/BodyObservable;
invoke-direct {p1, v0}, Lretrofit2/adapter/rxjava2/BodyObservable;-><init>(Lio/reactivex/p;)V
goto :goto_24
:cond_23
move-object p1, v0
.line 8
:goto_24
iget-object v0, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->scheduler:Lio/reactivex/x;
if-eqz v0, :cond_2c
.line 9
invoke-virtual {p1, v0}, Lio/reactivex/p;->subscribeOn(Lio/reactivex/x;)Lio/reactivex/p;
move-result-object p1
.line 10
:cond_2c
iget-boolean v0, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->isFlowable:Z
if-eqz v0, :cond_37
.line 11
sget-object v0, Lio/reactivex/BackpressureStrategy;->LATEST:Lio/reactivex/BackpressureStrategy;
invoke-virtual {p1, v0}, Lio/reactivex/p;->toFlowable(Lio/reactivex/BackpressureStrategy;)Lio/reactivex/e;
move-result-object p1
return-object p1
.line 12
:cond_37
iget-boolean v0, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->isSingle:Z
if-eqz v0, :cond_40
.line 13
invoke-virtual {p1}, Lio/reactivex/p;->singleOrError()Lio/reactivex/y;
move-result-object p1
return-object p1
.line 14
:cond_40
iget-boolean v0, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->isMaybe:Z
if-eqz v0, :cond_49
.line 15
invoke-virtual {p1}, Lio/reactivex/p;->singleElement()Lio/reactivex/i;
move-result-object p1
return-object p1
.line 16
:cond_49
iget-boolean v0, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->isCompletable:Z
if-eqz v0, :cond_52
.line 17
invoke-virtual {p1}, Lio/reactivex/p;->ignoreElements()Lio/reactivex/a;
move-result-object p1
return-object p1
.line 18
:cond_52
invoke-static {p1}, Lio/reactivex/e/a;->a(Lio/reactivex/p;)Lio/reactivex/p;
move-result-object p1
return-object p1
.end method
.method public responseType()Ljava/lang/reflect/Type;
.registers 2
.line 1
iget-object v0, p0, Lretrofit2/adapter/rxjava2/RxJava2CallAdapter;->responseType:Ljava/lang/reflect/Type;
return-object v0
.end method