OnSubscribeRedo$5.smali
.class Lrx/internal/operators/OnSubscribeRedo$5;
.super Ljava/lang/Object;
.source "OnSubscribeRedo.java"
# interfaces
.implements Lrx/Producer;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lrx/internal/operators/OnSubscribeRedo;->call(Lrx/Subscriber;)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = null
.end annotation
# instance fields
.field final synthetic this$0:Lrx/internal/operators/OnSubscribeRedo;
.field final synthetic val$arbiter:Lrx/internal/producers/ProducerArbiter;
.field final synthetic val$consumerCapacity:Ljava/util/concurrent/atomic/AtomicLong;
.field final synthetic val$resumeBoundary:Ljava/util/concurrent/atomic/AtomicBoolean;
.field final synthetic val$subscribeToSource:Lrx/functions/Action0;
.field final synthetic val$worker:Lrx/Scheduler$Worker;
# direct methods
.method constructor <init>(Lrx/internal/operators/OnSubscribeRedo;Ljava/util/concurrent/atomic/AtomicLong;Lrx/internal/producers/ProducerArbiter;Ljava/util/concurrent/atomic/AtomicBoolean;Lrx/Scheduler$Worker;Lrx/functions/Action0;)V
.registers 7
.line 1
iput-object p1, p0, Lrx/internal/operators/OnSubscribeRedo$5;->this$0:Lrx/internal/operators/OnSubscribeRedo;
iput-object p2, p0, Lrx/internal/operators/OnSubscribeRedo$5;->val$consumerCapacity:Ljava/util/concurrent/atomic/AtomicLong;
iput-object p3, p0, Lrx/internal/operators/OnSubscribeRedo$5;->val$arbiter:Lrx/internal/producers/ProducerArbiter;
iput-object p4, p0, Lrx/internal/operators/OnSubscribeRedo$5;->val$resumeBoundary:Ljava/util/concurrent/atomic/AtomicBoolean;
iput-object p5, p0, Lrx/internal/operators/OnSubscribeRedo$5;->val$worker:Lrx/Scheduler$Worker;
iput-object p6, p0, Lrx/internal/operators/OnSubscribeRedo$5;->val$subscribeToSource:Lrx/functions/Action0;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public request(J)V
.registers 6
const-wide/16 v0, 0x0
cmp-long v2, p1, v0
if-lez v2, :cond_21
.line 1
iget-object v0, p0, Lrx/internal/operators/OnSubscribeRedo$5;->val$consumerCapacity:Ljava/util/concurrent/atomic/AtomicLong;
invoke-static {v0, p1, p2}, Lrx/internal/operators/BackpressureUtils;->getAndAddRequest(Ljava/util/concurrent/atomic/AtomicLong;J)J
.line 2
iget-object v0, p0, Lrx/internal/operators/OnSubscribeRedo$5;->val$arbiter:Lrx/internal/producers/ProducerArbiter;
invoke-virtual {v0, p1, p2}, Lrx/internal/producers/ProducerArbiter;->request(J)V
.line 3
iget-object p1, p0, Lrx/internal/operators/OnSubscribeRedo$5;->val$resumeBoundary:Ljava/util/concurrent/atomic/AtomicBoolean;
const/4 p2, 0x1
const/4 v0, 0x0
invoke-virtual {p1, p2, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->compareAndSet(ZZ)Z
move-result p1
if-eqz p1, :cond_21
.line 4
iget-object p1, p0, Lrx/internal/operators/OnSubscribeRedo$5;->val$worker:Lrx/Scheduler$Worker;
iget-object p2, p0, Lrx/internal/operators/OnSubscribeRedo$5;->val$subscribeToSource:Lrx/functions/Action0;
invoke-virtual {p1, p2}, Lrx/Scheduler$Worker;->schedule(Lrx/functions/Action0;)Lrx/Subscription;
:cond_21
return-void
.end method