public <T> void onError(AbstractListenerWriteFlushProcessor<T> processor, Throwable ex) { if (processor.changeState(this, COMPLETED)) { processor.resultPublisher.publishError(ex); } else { processor.state.get().onError(processor, ex); } }
public <T> void onError(AbstractListenerWriteProcessor<T> processor, Throwable ex) { if (processor.changeState(this, COMPLETED)) { processor.discardCurrentData(); processor.writingComplete(); processor.resultPublisher.publishError(ex); } else { processor.state.get().onError(processor, ex); } }
public <T> void onError(AbstractListenerWriteFlushProcessor<T> processor, Throwable ex) { if (processor.changeState(this, COMPLETED)) { processor.resultPublisher.publishError(ex); } else { processor.state.get().onError(processor, ex); } }
@Override void subscribe(WriteResultPublisher publisher, Subscriber<? super Void> subscriber) { Assert.notNull(subscriber, "Subscriber must not be null"); if (publisher.changeState(this, SUBSCRIBING)) { Subscription subscription = new WriteResultSubscription(publisher); publisher.subscriber = subscriber; subscriber.onSubscribe(subscription); publisher.changeState(SUBSCRIBING, SUBSCRIBED); // Now safe to check "beforeSubscribed" flags, they won't change once in NO_DEMAND if (publisher.completedBeforeSubscribed) { publisher.publishComplete(); } Throwable publisherError = publisher.errorBeforeSubscribed; if (publisherError != null) { publisher.publishError(publisherError); } } else { throw new IllegalStateException(toString()); } } @Override
public <T> void onError(AbstractListenerWriteProcessor<T> processor, Throwable ex) { if (processor.changeState(this, COMPLETED)) { processor.discardCurrentData(); processor.writingComplete(); processor.resultPublisher.publishError(ex); } else { processor.state.get().onError(processor, ex); } }
@Override void subscribe(WriteResultPublisher publisher, Subscriber<? super Void> subscriber) { Assert.notNull(subscriber, "Subscriber must not be null"); if (publisher.changeState(this, SUBSCRIBING)) { Subscription subscription = new WriteResultSubscription(publisher); publisher.subscriber = subscriber; subscriber.onSubscribe(subscription); publisher.changeState(SUBSCRIBING, SUBSCRIBED); // Now safe to check "beforeSubscribed" flags, they won't change once in NO_DEMAND if (publisher.completedBeforeSubscribed) { publisher.publishComplete(); } Throwable publisherError = publisher.errorBeforeSubscribed; if (publisherError != null) { publisher.publishError(publisherError); } } else { throw new IllegalStateException(toString()); } } @Override
public <T> void onError(AbstractListenerWriteFlushProcessor<T> processor, Throwable ex) { if (processor.changeState(this, COMPLETED)) { processor.resultPublisher.publishError(ex); } else { processor.state.get().onError(processor, ex); } }
public <T> void onError(AbstractListenerWriteProcessor<T> processor, Throwable ex) { if (processor.changeState(this, COMPLETED)) { processor.discardCurrentData(); processor.writingComplete(); processor.resultPublisher.publishError(ex); } else { processor.state.get().onError(processor, ex); } }
public <T> void onError(AbstractListenerWriteFlushProcessor<T> processor, Throwable ex) { if (processor.changeState(this, COMPLETED)) { processor.resultPublisher.publishError(ex); } else { processor.state.get().onError(processor, ex); } }
public <T> void onError(AbstractListenerWriteProcessor<T> processor, Throwable ex) { if (processor.changeState(this, COMPLETED)) { processor.discardCurrentData(); processor.writingComplete(); processor.resultPublisher.publishError(ex); } else { processor.state.get().onError(processor, ex); } }
@Override void subscribe(WriteResultPublisher publisher, Subscriber<? super Void> subscriber) { Assert.notNull(subscriber, "Subscriber must not be null"); if (publisher.changeState(this, SUBSCRIBING)) { Subscription subscription = new WriteResultSubscription(publisher); publisher.subscriber = subscriber; subscriber.onSubscribe(subscription); publisher.changeState(SUBSCRIBING, SUBSCRIBED); // Now safe to check "beforeSubscribed" flags, they won't change once in NO_DEMAND if (publisher.completedBeforeSubscribed) { publisher.publishComplete(); } Throwable publisherError = publisher.errorBeforeSubscribed; if (publisherError != null) { publisher.publishError(publisherError); } } else { throw new IllegalStateException(toString()); } } @Override
@Override void subscribe(WriteResultPublisher publisher, Subscriber<? super Void> subscriber) { Assert.notNull(subscriber, "Subscriber must not be null"); if (publisher.changeState(this, SUBSCRIBING)) { Subscription subscription = new WriteResultSubscription(publisher); publisher.subscriber = subscriber; subscriber.onSubscribe(subscription); publisher.changeState(SUBSCRIBING, SUBSCRIBED); // Now safe to check "beforeSubscribed" flags, they won't change once in NO_DEMAND if (publisher.completedBeforeSubscribed) { publisher.publishComplete(); } Throwable publisherError = publisher.errorBeforeSubscribed; if (publisherError != null) { publisher.publishError(publisherError); } } else { throw new IllegalStateException(toString()); } } @Override