package io.reactivex.internal.subscribers; import io.reactivex.FlowableSubscriber; import io.reactivex.internal.subscriptions.DeferredScalarSubscription; import io.reactivex.internal.subscriptions.SubscriptionHelper; import org.reactivestreams.Subscriber; import org.reactivestreams.Subscription; /* loaded from: classes2.dex */ public abstract class DeferredScalarSubscriber extends DeferredScalarSubscription implements FlowableSubscriber { private static final long serialVersionUID = 2984505488220891551L; protected boolean hasValue; protected Subscription upstream; public DeferredScalarSubscriber(Subscriber subscriber) { super(subscriber); } @Override // io.reactivex.internal.subscriptions.DeferredScalarSubscription, org.reactivestreams.Subscription public void cancel() { super.cancel(); this.upstream.cancel(); } @Override // org.reactivestreams.Subscriber public void onComplete() { if (this.hasValue) { complete(this.value); } else { this.downstream.onComplete(); } } @Override // org.reactivestreams.Subscriber public void onError(Throwable th) { this.value = null; this.downstream.onError(th); } @Override // org.reactivestreams.Subscriber public void onSubscribe(Subscription subscription) { if (SubscriptionHelper.validate(this.upstream, subscription)) { this.upstream = subscription; this.downstream.onSubscribe(this); subscription.request(Long.MAX_VALUE); } } }