discord-jadx/app/src/main/java/rx/subscriptions/SerialSubscription.java

39 lines
1.0 KiB
Java

package rx.subscriptions;
import j0.l.d.a;
import j0.l.d.b;
import rx.Subscription;
public final class SerialSubscription implements Subscription {
public final a i = new a();
public void a(Subscription subscription) {
Subscription subscription2;
if (subscription != null) {
a aVar = this.i;
do {
subscription2 = aVar.get();
if (subscription2 == b.INSTANCE) {
subscription.unsubscribe();
return;
}
} while (!aVar.compareAndSet(subscription2, subscription));
if (subscription2 != null) {
subscription2.unsubscribe();
return;
}
return;
}
throw new IllegalArgumentException("Subscription can not be null");
}
@Override // rx.Subscription
public boolean isUnsubscribed() {
return this.i.isUnsubscribed();
}
@Override // rx.Subscription
public void unsubscribe() {
this.i.unsubscribe();
}
}