apkfuckery/com.discord/smali_classes2/g0/m/a/l$b.smali

325 lines
6.2 KiB
Smali
Raw Normal View History

2020-03-26 05:26:27 +00:00
.class public final Lg0/m/a/l$b;
.super Lg0/m/a/l$a;
2019-07-24 11:27:29 +00:00
.source "OnSubscribeCreate.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
2020-03-26 05:26:27 +00:00
value = Lg0/m/a/l;
2019-07-24 11:27:29 +00:00
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
2019-12-06 03:29:40 +00:00
accessFlags = 0x19
2019-07-24 11:27:29 +00:00
name = "b"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
2020-03-26 05:26:27 +00:00
"Lg0/m/a/l$a<",
2019-07-24 11:27:29 +00:00
"TT;>;"
}
.end annotation
# static fields
2019-12-06 03:29:40 +00:00
.field public static final serialVersionUID:J = 0x21aef8f9f7f1cbc3L
2019-07-24 11:27:29 +00:00
# instance fields
2019-12-06 03:29:40 +00:00
.field public volatile done:Z
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
.field public error:Ljava/lang/Throwable;
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
.field public final queue:Ljava/util/Queue;
2019-07-24 11:27:29 +00:00
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Queue<",
"Ljava/lang/Object;",
">;"
}
.end annotation
.end field
2019-12-06 03:29:40 +00:00
.field public final wip:Ljava/util/concurrent/atomic/AtomicInteger;
2019-07-24 11:27:29 +00:00
# direct methods
.method public constructor <init>(Lrx/Subscriber;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lrx/Subscriber<",
"-TT;>;I)V"
}
.end annotation
2020-03-26 05:26:27 +00:00
invoke-direct {p0, p1}, Lg0/m/a/l$a;-><init>(Lrx/Subscriber;)V
2019-07-24 11:27:29 +00:00
2020-03-26 05:26:27 +00:00
invoke-static {}, Lg0/m/e/o/z;->a()Z
2019-07-24 11:27:29 +00:00
move-result p1
if-eqz p1, :cond_0
2020-03-26 05:26:27 +00:00
new-instance p1, Lg0/m/e/o/u;
2019-07-24 11:27:29 +00:00
2020-03-26 05:26:27 +00:00
invoke-direct {p1, p2}, Lg0/m/e/o/u;-><init>(I)V
2019-07-24 11:27:29 +00:00
goto :goto_0
:cond_0
2020-03-26 05:26:27 +00:00
new-instance p1, Lg0/m/e/n/g;
2019-07-24 11:27:29 +00:00
2020-03-26 05:26:27 +00:00
invoke-direct {p1, p2}, Lg0/m/e/n/g;-><init>(I)V
2019-07-24 11:27:29 +00:00
:goto_0
2020-03-26 05:26:27 +00:00
iput-object p1, p0, Lg0/m/a/l$b;->queue:Ljava/util/Queue;
2019-07-24 11:27:29 +00:00
new-instance p1, Ljava/util/concurrent/atomic/AtomicInteger;
invoke-direct {p1}, Ljava/util/concurrent/atomic/AtomicInteger;-><init>()V
2020-03-26 05:26:27 +00:00
iput-object p1, p0, Lg0/m/a/l$b;->wip:Ljava/util/concurrent/atomic/AtomicInteger;
2019-07-24 11:27:29 +00:00
return-void
.end method
2019-12-06 03:29:40 +00:00
# virtual methods
.method public a()V
.locals 0
2020-03-26 05:26:27 +00:00
invoke-virtual {p0}, Lg0/m/a/l$b;->c()V
2019-12-06 03:29:40 +00:00
return-void
.end method
.method public b()V
.locals 1
2020-03-26 05:26:27 +00:00
iget-object v0, p0, Lg0/m/a/l$b;->wip:Ljava/util/concurrent/atomic/AtomicInteger;
2019-12-06 03:29:40 +00:00
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;->getAndIncrement()I
move-result v0
if-nez v0, :cond_0
2020-03-26 05:26:27 +00:00
iget-object v0, p0, Lg0/m/a/l$b;->queue:Ljava/util/Queue;
2019-12-06 03:29:40 +00:00
invoke-interface {v0}, Ljava/util/Queue;->clear()V
:cond_0
return-void
.end method
.method public c()V
2019-11-20 22:09:14 +00:00
.locals 14
2019-07-24 11:27:29 +00:00
2020-03-26 05:26:27 +00:00
iget-object v0, p0, Lg0/m/a/l$b;->wip:Ljava/util/concurrent/atomic/AtomicInteger;
2019-07-24 11:27:29 +00:00
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;->getAndIncrement()I
move-result v0
if-eqz v0, :cond_0
return-void
:cond_0
2020-03-26 05:26:27 +00:00
iget-object v0, p0, Lg0/m/a/l$a;->actual:Lrx/Subscriber;
2019-07-24 11:27:29 +00:00
2020-03-26 05:26:27 +00:00
iget-object v1, p0, Lg0/m/a/l$b;->queue:Ljava/util/Queue;
2019-07-24 11:27:29 +00:00
const/4 v2, 0x1
const/4 v3, 0x1
:cond_1
2019-12-06 03:29:40 +00:00
invoke-virtual {p0}, Ljava/util/concurrent/atomic/AtomicLong;->get()J
2019-07-24 11:27:29 +00:00
move-result-wide v4
const-wide/16 v6, 0x0
move-wide v8, v6
:goto_0
cmp-long v10, v8, v4
2019-12-06 03:29:40 +00:00
if-eqz v10, :cond_7
2019-07-24 11:27:29 +00:00
invoke-virtual {v0}, Lrx/Subscriber;->isUnsubscribed()Z
2019-11-20 22:09:14 +00:00
move-result v11
2019-07-24 11:27:29 +00:00
2019-11-20 22:09:14 +00:00
if-eqz v11, :cond_2
2019-07-24 11:27:29 +00:00
invoke-interface {v1}, Ljava/util/Queue;->clear()V
return-void
:cond_2
2020-03-26 05:26:27 +00:00
iget-boolean v11, p0, Lg0/m/a/l$b;->done:Z
2019-07-24 11:27:29 +00:00
invoke-interface {v1}, Ljava/util/Queue;->poll()Ljava/lang/Object;
2019-11-20 22:09:14 +00:00
move-result-object v12
2019-07-24 11:27:29 +00:00
2019-11-20 22:09:14 +00:00
if-nez v12, :cond_3
2019-07-24 11:27:29 +00:00
2019-11-20 22:09:14 +00:00
const/4 v13, 0x1
2019-07-24 11:27:29 +00:00
goto :goto_1
:cond_3
2019-11-20 22:09:14 +00:00
const/4 v13, 0x0
2019-07-24 11:27:29 +00:00
:goto_1
2019-11-20 22:09:14 +00:00
if-eqz v11, :cond_5
2019-07-24 11:27:29 +00:00
2019-11-20 22:09:14 +00:00
if-eqz v13, :cond_5
2019-07-24 11:27:29 +00:00
2020-03-26 05:26:27 +00:00
iget-object v0, p0, Lg0/m/a/l$b;->error:Ljava/lang/Throwable;
2019-07-24 11:27:29 +00:00
if-eqz v0, :cond_4
2020-03-26 05:26:27 +00:00
invoke-super {p0, v0}, Lg0/m/a/l$a;->onError(Ljava/lang/Throwable;)V
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
goto :goto_2
2019-07-24 11:27:29 +00:00
:cond_4
2020-03-26 05:26:27 +00:00
invoke-super {p0}, Lg0/m/a/l$a;->onCompleted()V
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
:goto_2
2019-07-24 11:27:29 +00:00
return-void
:cond_5
2019-12-06 03:29:40 +00:00
if-eqz v13, :cond_6
goto :goto_3
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
:cond_6
2020-03-26 05:26:27 +00:00
invoke-static {v12}, Lg0/m/a/h;->a(Ljava/lang/Object;)Ljava/lang/Object;
2019-07-24 11:27:29 +00:00
move-result-object v10
2020-03-26 05:26:27 +00:00
invoke-interface {v0, v10}, Lg0/g;->onNext(Ljava/lang/Object;)V
2019-07-24 11:27:29 +00:00
const-wide/16 v10, 0x1
add-long/2addr v8, v10
goto :goto_0
2019-12-06 03:29:40 +00:00
:cond_7
:goto_3
if-nez v10, :cond_a
2019-07-24 11:27:29 +00:00
invoke-virtual {v0}, Lrx/Subscriber;->isUnsubscribed()Z
move-result v4
2019-12-06 03:29:40 +00:00
if-eqz v4, :cond_8
2019-07-24 11:27:29 +00:00
invoke-interface {v1}, Ljava/util/Queue;->clear()V
return-void
2019-12-06 03:29:40 +00:00
:cond_8
2020-03-26 05:26:27 +00:00
iget-boolean v4, p0, Lg0/m/a/l$b;->done:Z
2019-07-24 11:27:29 +00:00
invoke-interface {v1}, Ljava/util/Queue;->isEmpty()Z
move-result v5
2019-12-06 03:29:40 +00:00
if-eqz v4, :cond_a
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
if-eqz v5, :cond_a
2019-07-24 11:27:29 +00:00
2020-03-26 05:26:27 +00:00
iget-object v0, p0, Lg0/m/a/l$b;->error:Ljava/lang/Throwable;
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
if-eqz v0, :cond_9
2019-07-24 11:27:29 +00:00
2020-03-26 05:26:27 +00:00
invoke-super {p0, v0}, Lg0/m/a/l$a;->onError(Ljava/lang/Throwable;)V
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
goto :goto_4
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
:cond_9
2020-03-26 05:26:27 +00:00
invoke-super {p0}, Lg0/m/a/l$a;->onCompleted()V
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
:goto_4
2019-07-24 11:27:29 +00:00
return-void
2019-12-06 03:29:40 +00:00
:cond_a
2019-07-24 11:27:29 +00:00
cmp-long v4, v8, v6
2019-12-06 03:29:40 +00:00
if-eqz v4, :cond_b
2019-07-24 11:27:29 +00:00
2020-03-26 05:26:27 +00:00
invoke-static {p0, v8, v9}, Lz/a/a2/w;->b(Ljava/util/concurrent/atomic/AtomicLong;J)J
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
:cond_b
2020-03-26 05:26:27 +00:00
iget-object v4, p0, Lg0/m/a/l$b;->wip:Ljava/util/concurrent/atomic/AtomicInteger;
2019-07-24 11:27:29 +00:00
neg-int v3, v3
invoke-virtual {v4, v3}, Ljava/util/concurrent/atomic/AtomicInteger;->addAndGet(I)I
move-result v3
if-nez v3, :cond_1
return-void
.end method
2019-12-06 03:29:40 +00:00
.method public onCompleted()V
2019-07-24 11:27:29 +00:00
.locals 1
const/4 v0, 0x1
2020-03-26 05:26:27 +00:00
iput-boolean v0, p0, Lg0/m/a/l$b;->done:Z
2019-07-24 11:27:29 +00:00
2020-03-26 05:26:27 +00:00
invoke-virtual {p0}, Lg0/m/a/l$b;->c()V
2019-07-24 11:27:29 +00:00
return-void
.end method
2019-12-06 03:29:40 +00:00
.method public onError(Ljava/lang/Throwable;)V
2019-07-24 11:27:29 +00:00
.locals 0
2020-03-26 05:26:27 +00:00
iput-object p1, p0, Lg0/m/a/l$b;->error:Ljava/lang/Throwable;
2019-07-24 11:27:29 +00:00
const/4 p1, 0x1
2020-03-26 05:26:27 +00:00
iput-boolean p1, p0, Lg0/m/a/l$b;->done:Z
2019-07-24 11:27:29 +00:00
2020-03-26 05:26:27 +00:00
invoke-virtual {p0}, Lg0/m/a/l$b;->c()V
2019-07-24 11:27:29 +00:00
return-void
.end method
2019-12-06 03:29:40 +00:00
.method public onNext(Ljava/lang/Object;)V
2019-07-24 11:27:29 +00:00
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;)V"
}
.end annotation
2020-03-26 05:26:27 +00:00
iget-object v0, p0, Lg0/m/a/l$b;->queue:Ljava/util/Queue;
2019-07-24 11:27:29 +00:00
2020-03-26 05:26:27 +00:00
invoke-static {p1}, Lg0/m/a/h;->e(Ljava/lang/Object;)Ljava/lang/Object;
2019-07-24 11:27:29 +00:00
move-result-object p1
invoke-interface {v0, p1}, Ljava/util/Queue;->offer(Ljava/lang/Object;)Z
2020-03-26 05:26:27 +00:00
invoke-virtual {p0}, Lg0/m/a/l$b;->c()V
2019-07-24 11:27:29 +00:00
return-void
.end method