public final class io.reactivex.internal.operators.flowable.FlowableRetryWhen<T> extends io.reactivex.internal.operators.flowable.AbstractFlowableWithUpstream<T, T>
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: io.reactivex.internal.operators.flowable.FlowableRetryWhen
super_class: io.reactivex.internal.operators.flowable.AbstractFlowableWithUpstream
{
final io.reactivex.functions.Function<? super io.reactivex.Flowable<java.lang.Throwable>, ? extends org.reactivestreams.Publisher<?>> handler;
descriptor: Lio/reactivex/functions/Function;
flags: (0x0010) ACC_FINAL
Signature: Lio/reactivex/functions/Function<-Lio/reactivex/Flowable<Ljava/lang/Throwable;>;+Lorg/reactivestreams/Publisher<*>;>;
public void <init>(io.reactivex.Flowable<T>, io.reactivex.functions.Function<? super io.reactivex.Flowable<java.lang.Throwable>, ? extends org.reactivestreams.Publisher<?>>);
descriptor: (Lio/reactivex/Flowable;Lio/reactivex/functions/Function;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokespecial io.reactivex.internal.operators.flowable.AbstractFlowableWithUpstream.<init>:(Lio/reactivex/Flowable;)V
1: aload 0
aload 2
putfield io.reactivex.internal.operators.flowable.FlowableRetryWhen.handler:Lio/reactivex/functions/Function;
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/reactivex/internal/operators/flowable/FlowableRetryWhen<TT;>;
0 3 1 source Lio/reactivex/Flowable<TT;>;
0 3 2 handler Lio/reactivex/functions/Function<-Lio/reactivex/Flowable<Ljava/lang/Throwable;>;+Lorg/reactivestreams/Publisher<*>;>;
Signature: (Lio/reactivex/Flowable<TT;>;Lio/reactivex/functions/Function<-Lio/reactivex/Flowable<Ljava/lang/Throwable;>;+Lorg/reactivestreams/Publisher<*>;>;)V
MethodParameters:
Name Flags
source
handler
public void subscribeActual(org.reactivestreams.Subscriber<? super T>);
descriptor: (Lorg/reactivestreams/Subscriber;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: new io.reactivex.subscribers.SerializedSubscriber
dup
aload 1
invokespecial io.reactivex.subscribers.SerializedSubscriber.<init>:(Lorg/reactivestreams/Subscriber;)V
astore 2
start local 2 1: bipush 8
invokestatic io.reactivex.processors.UnicastProcessor.create:(I)Lio/reactivex/processors/UnicastProcessor;
invokevirtual io.reactivex.processors.UnicastProcessor.toSerialized:()Lio/reactivex/processors/FlowableProcessor;
astore 3
start local 3 2: aload 0
getfield io.reactivex.internal.operators.flowable.FlowableRetryWhen.handler:Lio/reactivex/functions/Function;
aload 3
invokeinterface io.reactivex.functions.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.reactivestreams.Publisher
ldc "handler returned a null Publisher"
invokestatic io.reactivex.internal.functions.ObjectHelper.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast org.reactivestreams.Publisher
astore 4
start local 4 3: goto 8
end local 4 StackMap locals: io.reactivex.internal.operators.flowable.FlowableRetryWhen org.reactivestreams.Subscriber io.reactivex.subscribers.SerializedSubscriber io.reactivex.processors.FlowableProcessor
StackMap stack: java.lang.Throwable
4: astore 5
start local 5 5: aload 5
invokestatic io.reactivex.exceptions.Exceptions.throwIfFatal:(Ljava/lang/Throwable;)V
6: aload 5
aload 1
invokestatic io.reactivex.internal.subscriptions.EmptySubscription.error:(Ljava/lang/Throwable;Lorg/reactivestreams/Subscriber;)V
7: return
end local 5 start local 4 8: StackMap locals: org.reactivestreams.Publisher
StackMap stack:
new io.reactivex.internal.operators.flowable.FlowableRepeatWhen$WhenReceiver
dup
aload 0
getfield io.reactivex.internal.operators.flowable.FlowableRetryWhen.source:Lio/reactivex/Flowable;
invokespecial io.reactivex.internal.operators.flowable.FlowableRepeatWhen$WhenReceiver.<init>:(Lorg/reactivestreams/Publisher;)V
astore 5
start local 5 9: new io.reactivex.internal.operators.flowable.FlowableRetryWhen$RetryWhenSubscriber
dup
aload 2
aload 3
aload 5
invokespecial io.reactivex.internal.operators.flowable.FlowableRetryWhen$RetryWhenSubscriber.<init>:(Lorg/reactivestreams/Subscriber;Lio/reactivex/processors/FlowableProcessor;Lorg/reactivestreams/Subscription;)V
astore 6
start local 6 10: aload 5
aload 6
putfield io.reactivex.internal.operators.flowable.FlowableRepeatWhen$WhenReceiver.subscriber:Lio/reactivex/internal/operators/flowable/FlowableRepeatWhen$WhenSourceSubscriber;
11: aload 1
aload 6
invokeinterface org.reactivestreams.Subscriber.onSubscribe:(Lorg/reactivestreams/Subscription;)V
12: aload 4
aload 5
invokeinterface org.reactivestreams.Publisher.subscribe:(Lorg/reactivestreams/Subscriber;)V
13: aload 5
iconst_0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual io.reactivex.internal.operators.flowable.FlowableRepeatWhen$WhenReceiver.onNext:(Ljava/lang/Object;)V
14: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lio/reactivex/internal/operators/flowable/FlowableRetryWhen<TT;>;
0 15 1 s Lorg/reactivestreams/Subscriber<-TT;>;
1 15 2 z Lio/reactivex/subscribers/SerializedSubscriber<TT;>;
2 15 3 processor Lio/reactivex/processors/FlowableProcessor<Ljava/lang/Throwable;>;
3 4 4 when Lorg/reactivestreams/Publisher<*>;
8 15 4 when Lorg/reactivestreams/Publisher<*>;
5 8 5 ex Ljava/lang/Throwable;
9 15 5 receiver Lio/reactivex/internal/operators/flowable/FlowableRepeatWhen$WhenReceiver<TT;Ljava/lang/Throwable;>;
10 15 6 subscriber Lio/reactivex/internal/operators/flowable/FlowableRetryWhen$RetryWhenSubscriber<TT;>;
Exception table:
from to target type
2 3 4 Class java.lang.Throwable
Signature: (Lorg/reactivestreams/Subscriber<-TT;>;)V
MethodParameters:
Name Flags
s
}
Signature: <T:Ljava/lang/Object;>Lio/reactivex/internal/operators/flowable/AbstractFlowableWithUpstream<TT;TT;>;
SourceFile: "FlowableRetryWhen.java"
NestMembers:
io.reactivex.internal.operators.flowable.FlowableRetryWhen$RetryWhenSubscriber
InnerClasses:
final WhenReceiver = io.reactivex.internal.operators.flowable.FlowableRepeatWhen$WhenReceiver of io.reactivex.internal.operators.flowable.FlowableRepeatWhen
final RetryWhenSubscriber = io.reactivex.internal.operators.flowable.FlowableRetryWhen$RetryWhenSubscriber of io.reactivex.internal.operators.flowable.FlowableRetryWhen