public AsyncHandler.State onContentWritten() { return delegate.onContentWritten(); }
@Override public State onContentWritten() { return subscriber.isUnsubscribed() ? abort() : delegate().onContentWritten(); }
@Override public final State onContentWritten() { return emitter.isDisposed() ? disposed() : delegate().onContentWritten(); }
void operationComplete(Channel channel, Throwable cause) { future.touch(); // The write operation failed. If the channel was cached, it means it got asynchronously closed. // Let's retry a second time. if (abortOnThrowable(channel, cause)) { return; } if (progressAsyncHandler != null) { // We need to make sure we aren't in the middle of an authorization process before publishing events as we will re-publish again the same event after the authorization, // causing unpredictable behavior. boolean startPublishing = !future.isInAuth() && !future.isInProxyAuth(); if (startPublishing) { if (notifyHeaders) { progressAsyncHandler.onHeadersWritten(); } else { progressAsyncHandler.onContentWritten(); } } } } }
public AsyncHandler.State onContentWritten() { return delegate.onContentWritten(); }
public void operationComplete(ChannelFuture cf) { if (!abortOnThrowable(cf.getCause(), cf.getChannel())) { future.touch(); /** * We need to make sure we aren't in the middle of an authorization process before publishing events as we will re-publish again the same event after the authorization, * causing unpredictable behavior. */ Realm realm = future.getRequest().getRealm() != null ? future.getRequest().getRealm() : config.getRealm(); boolean startPublishing = future.isInAuth() || realm == null || realm.getUsePreemptiveAuth(); if (startPublishing && asyncHandler instanceof ProgressAsyncHandler) { if (notifyHeaders) { ProgressAsyncHandler.class.cast(asyncHandler).onHeadersWritten(); } else { ProgressAsyncHandler.class.cast(asyncHandler).onContentWritten(); } } } }
@Override public void operationComplete(ChannelProgressiveFuture cf) { // The write operation failed. If the channel was cached, it means it got asynchronously closed. // Let's retry a second time. if (!abortOnThrowable(cf.cause(), cf.channel())) { future.touch(); /** * We need to make sure we aren't in the middle of an authorization * process before publishing events as we will re-publish again the * same event after the authorization, causing unpredictable * behavior. */ Realm realm = future.getRequest().getRealm() != null ? future.getRequest().getRealm() : config.getRealm(); boolean startPublishing = future.isInAuth() || realm == null || realm.getUsePreemptiveAuth(); if (startPublishing && asyncHandler instanceof ProgressAsyncHandler) { ProgressAsyncHandler<?> progressAsyncHandler = (ProgressAsyncHandler<?>) asyncHandler; if (notifyHeaders) { progressAsyncHandler.onHeadersWritten(); } else { progressAsyncHandler.onContentWritten(); } } } }