public final class io.reactivex.internal.util.EndConsumerHelper
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: io.reactivex.internal.util.EndConsumerHelper
super_class: java.lang.Object
{
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: new java.lang.IllegalStateException
dup
ldc "No instances!"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/reactivex/internal/util/EndConsumerHelper;
public static boolean validate(io.reactivex.disposables.Disposable, io.reactivex.disposables.Disposable, java.lang.Class<?>);
descriptor: (Lio/reactivex/disposables/Disposable;Lio/reactivex/disposables/Disposable;Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ldc "next is null"
invokestatic io.reactivex.internal.functions.ObjectHelper.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
ifnull 6
2: aload 1
invokeinterface io.reactivex.disposables.Disposable.dispose:()V
3: aload 0
getstatic io.reactivex.internal.disposables.DisposableHelper.DISPOSED:Lio/reactivex/internal/disposables/DisposableHelper;
if_acmpeq 5
4: aload 2
invokestatic io.reactivex.internal.util.EndConsumerHelper.reportDoubleSubscription:(Ljava/lang/Class;)V
5: StackMap locals:
StackMap stack:
iconst_0
ireturn
6: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 upstream Lio/reactivex/disposables/Disposable;
0 7 1 next Lio/reactivex/disposables/Disposable;
0 7 2 observer Ljava/lang/Class<*>;
Signature: (Lio/reactivex/disposables/Disposable;Lio/reactivex/disposables/Disposable;Ljava/lang/Class<*>;)Z
MethodParameters:
Name Flags
upstream
next
observer
public static boolean setOnce(java.util.concurrent.atomic.AtomicReference<io.reactivex.disposables.Disposable>, io.reactivex.disposables.Disposable, java.lang.Class<?>);
descriptor: (Ljava/util/concurrent/atomic/AtomicReference;Lio/reactivex/disposables/Disposable;Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ldc "next is null"
invokestatic io.reactivex.internal.functions.ObjectHelper.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
aconst_null
aload 1
invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifne 6
2: aload 1
invokeinterface io.reactivex.disposables.Disposable.dispose:()V
3: aload 0
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
getstatic io.reactivex.internal.disposables.DisposableHelper.DISPOSED:Lio/reactivex/internal/disposables/DisposableHelper;
if_acmpeq 5
4: aload 2
invokestatic io.reactivex.internal.util.EndConsumerHelper.reportDoubleSubscription:(Ljava/lang/Class;)V
5: StackMap locals:
StackMap stack:
iconst_0
ireturn
6: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 upstream Ljava/util/concurrent/atomic/AtomicReference<Lio/reactivex/disposables/Disposable;>;
0 7 1 next Lio/reactivex/disposables/Disposable;
0 7 2 observer Ljava/lang/Class<*>;
Signature: (Ljava/util/concurrent/atomic/AtomicReference<Lio/reactivex/disposables/Disposable;>;Lio/reactivex/disposables/Disposable;Ljava/lang/Class<*>;)Z
MethodParameters:
Name Flags
upstream
next
observer
public static boolean validate(org.reactivestreams.Subscription, org.reactivestreams.Subscription, java.lang.Class<?>);
descriptor: (Lorg/reactivestreams/Subscription;Lorg/reactivestreams/Subscription;Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ldc "next is null"
invokestatic io.reactivex.internal.functions.ObjectHelper.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
ifnull 6
2: aload 1
invokeinterface org.reactivestreams.Subscription.cancel:()V
3: aload 0
getstatic io.reactivex.internal.subscriptions.SubscriptionHelper.CANCELLED:Lio/reactivex/internal/subscriptions/SubscriptionHelper;
if_acmpeq 5
4: aload 2
invokestatic io.reactivex.internal.util.EndConsumerHelper.reportDoubleSubscription:(Ljava/lang/Class;)V
5: StackMap locals:
StackMap stack:
iconst_0
ireturn
6: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 upstream Lorg/reactivestreams/Subscription;
0 7 1 next Lorg/reactivestreams/Subscription;
0 7 2 subscriber Ljava/lang/Class<*>;
Signature: (Lorg/reactivestreams/Subscription;Lorg/reactivestreams/Subscription;Ljava/lang/Class<*>;)Z
MethodParameters:
Name Flags
upstream
next
subscriber
public static boolean setOnce(java.util.concurrent.atomic.AtomicReference<org.reactivestreams.Subscription>, org.reactivestreams.Subscription, java.lang.Class<?>);
descriptor: (Ljava/util/concurrent/atomic/AtomicReference;Lorg/reactivestreams/Subscription;Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ldc "next is null"
invokestatic io.reactivex.internal.functions.ObjectHelper.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
aconst_null
aload 1
invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifne 6
2: aload 1
invokeinterface org.reactivestreams.Subscription.cancel:()V
3: aload 0
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
getstatic io.reactivex.internal.subscriptions.SubscriptionHelper.CANCELLED:Lio/reactivex/internal/subscriptions/SubscriptionHelper;
if_acmpeq 5
4: aload 2
invokestatic io.reactivex.internal.util.EndConsumerHelper.reportDoubleSubscription:(Ljava/lang/Class;)V
5: StackMap locals:
StackMap stack:
iconst_0
ireturn
6: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 upstream Ljava/util/concurrent/atomic/AtomicReference<Lorg/reactivestreams/Subscription;>;
0 7 1 next Lorg/reactivestreams/Subscription;
0 7 2 subscriber Ljava/lang/Class<*>;
Signature: (Ljava/util/concurrent/atomic/AtomicReference<Lorg/reactivestreams/Subscription;>;Lorg/reactivestreams/Subscription;Ljava/lang/Class<*>;)Z
MethodParameters:
Name Flags
upstream
next
subscriber
public static java.lang.String composeMessage(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "It is not allowed to subscribe with a(n) "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " multiple times. "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: ldc "Please create a fresh instance of "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " and subscribe that to the target source instead."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 consumer Ljava/lang/String;
MethodParameters:
Name Flags
consumer
public static void reportDoubleSubscription(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new io.reactivex.exceptions.ProtocolViolationException
dup
aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokestatic io.reactivex.internal.util.EndConsumerHelper.composeMessage:(Ljava/lang/String;)Ljava/lang/String;
invokespecial io.reactivex.exceptions.ProtocolViolationException.<init>:(Ljava/lang/String;)V
invokestatic io.reactivex.plugins.RxJavaPlugins.onError:(Ljava/lang/Throwable;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 consumer Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)V
MethodParameters:
Name Flags
consumer
}
SourceFile: "EndConsumerHelper.java"