From edf4e28afab99a81ce32eb0b33495fb1800c5404 Mon Sep 17 00:00:00 2001 From: Chris Vest Date: Thu, 26 Aug 2021 09:43:17 +0200 Subject: [PATCH] Change `!future.isSuccess()` to `future.isFailed()` where it makes sense (#11616) Motivation: The expression "not is success" can mean that either the future failed, or it has not yet completed. However, many places where such an expression is used is expecting the future to have completed. Specifically, they are expecting to be able to call `cause()` on the future. It is both more correct, and semantically clearer, to call `isFailed()` instead of `!isSuccess()`. Modification: Change all places that used `!isSuccess()` to mean that the future had failed, to use `isFailed()`. A few places are relying on `isSuccess()` returning `false` for _incomplete_ futures, and these places have been left unchanged. Result: Clearer code, with potentially fewer latent bugs. --- .../handler/codec/haproxy/HAProxyMessageDecoderTest.java | 2 +- .../io/netty/handler/codec/http/HttpObjectAggregator.java | 4 ++-- .../websocketx/WebSocketClientProtocolHandshakeHandler.java | 2 +- .../websocketx/WebSocketServerProtocolHandshakeHandler.java | 2 +- .../handler/codec/http2/DefaultHttp2ConnectionEncoder.java | 4 ++-- .../io/netty/handler/codec/http2/Http2ConnectionHandler.java | 2 +- .../java/io/netty/handler/codec/http2/Http2FrameCodec.java | 2 +- .../io/netty/handler/codec/http2/Http2MultiplexHandler.java | 2 +- .../main/java/io/netty/handler/codec/MessageAggregator.java | 2 +- .../main/java/io/netty/util/concurrent/PromiseCombiner.java | 2 +- .../java/io/netty/util/concurrent/PromiseCombinerTest.java | 1 + .../example/http2/helloworld/client/Http2SettingsHandler.java | 2 +- .../example/http2/helloworld/client/HttpResponseHandler.java | 4 ++-- example/src/main/java/io/netty/example/redis/RedisClient.java | 2 +- .../src/main/java/io/netty/handler/proxy/ProxyHandler.java | 2 +- .../src/test/java/io/netty/handler/proxy/ProxyServer.java | 2 +- handler/src/main/java/io/netty/handler/ssl/SniHandler.java | 2 +- .../java/io/netty/handler/stream/ChunkedWriteHandler.java | 4 ++-- .../io/netty/handler/ssl/ParameterizedSslHandlerTest.java | 2 +- .../src/test/java/io/netty/handler/ssl/RenegotiateTest.java | 2 +- .../src/main/java/io/netty/resolver/dns/DnsNameResolver.java | 2 +- .../src/main/java/io/netty/resolver/dns/DnsQueryContext.java | 2 +- .../testsuite/transport/socket/AbstractSocketReuseFdTest.java | 2 +- .../java/io/netty/channel/epoll/EpollDomainSocketFdTest.java | 2 +- .../io/netty/channel/kqueue/KQueueDomainSocketFdTest.java | 2 +- .../src/main/java/io/netty/bootstrap/AbstractBootstrap.java | 2 +- transport/src/main/java/io/netty/bootstrap/Bootstrap.java | 2 +- .../src/main/java/io/netty/bootstrap/ServerBootstrap.java | 2 +- .../main/java/io/netty/channel/ChannelFutureListeners.java | 4 ++-- .../main/java/io/netty/channel/embedded/EmbeddedChannel.java | 2 +- .../io/netty/channel/group/DefaultChannelGroupFuture.java | 2 +- 31 files changed, 36 insertions(+), 35 deletions(-) diff --git a/codec-haproxy/src/test/java/io/netty/handler/codec/haproxy/HAProxyMessageDecoderTest.java b/codec-haproxy/src/test/java/io/netty/handler/codec/haproxy/HAProxyMessageDecoderTest.java index e180f556e8..da7aa8c3af 100644 --- a/codec-haproxy/src/test/java/io/netty/handler/codec/haproxy/HAProxyMessageDecoderTest.java +++ b/codec-haproxy/src/test/java/io/netty/handler/codec/haproxy/HAProxyMessageDecoderTest.java @@ -233,7 +233,7 @@ public class HAProxyMessageDecoderTest { // swallow this exception since we're just testing to be sure the channel was closed } boolean isComplete = closeFuture.awaitUninterruptibly(5000); - if (!isComplete || !closeFuture.isDone() || !closeFuture.isSuccess()) { + if (!isComplete || !closeFuture.isDone() || closeFuture.isFailed()) { fail("Expected channel close"); } } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/HttpObjectAggregator.java b/codec-http/src/main/java/io/netty/handler/codec/http/HttpObjectAggregator.java index 497396f80c..1ac0c55989 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/HttpObjectAggregator.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/HttpObjectAggregator.java @@ -251,14 +251,14 @@ public class HttpObjectAggregator !HttpUtil.is100ContinueExpected(oversized) && !HttpUtil.isKeepAlive(oversized)) { Future future = ctx.writeAndFlush(TOO_LARGE_CLOSE.retainedDuplicate()); future.addListener(future1 -> { - if (!future1.isSuccess()) { + if (future1.isFailed()) { logger.debug("Failed to send a 413 Request Entity Too Large.", future1.cause()); } ctx.close(); }); } else { ctx.writeAndFlush(TOO_LARGE.retainedDuplicate()).addListener(future -> { - if (!future.isSuccess()) { + if (future.isFailed()) { logger.debug("Failed to send a 413 Request Entity Too Large.", future.cause()); ctx.close(); } diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketClientProtocolHandshakeHandler.java b/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketClientProtocolHandshakeHandler.java index 6dcf9ff79d..6aa4e49258 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketClientProtocolHandshakeHandler.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketClientProtocolHandshakeHandler.java @@ -54,7 +54,7 @@ class WebSocketClientProtocolHandshakeHandler implements ChannelHandler { public void channelActive(final ChannelHandlerContext ctx) throws Exception { ctx.fireChannelActive(); handshaker.handshake(ctx.channel()).addListener(future -> { - if (!future.isSuccess()) { + if (future.isFailed()) { handshakePromise.tryFailure(future.cause()); ctx.fireExceptionCaught(future.cause()); } else { diff --git a/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketServerProtocolHandshakeHandler.java b/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketServerProtocolHandshakeHandler.java index b02682bd2b..87868f8e3b 100644 --- a/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketServerProtocolHandshakeHandler.java +++ b/codec-http/src/main/java/io/netty/handler/codec/http/websocketx/WebSocketServerProtocolHandshakeHandler.java @@ -86,7 +86,7 @@ class WebSocketServerProtocolHandshakeHandler implements ChannelHandler { Future handshakeFuture = handshaker.handshake(ctx.channel(), req); handshakeFuture.addListener(future -> { - if (!future.isSuccess()) { + if (future.isFailed()) { localHandshakePromise.tryFailure(future.cause()); ctx.fireExceptionCaught(future.cause()); } else { diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionEncoder.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionEncoder.java index b04111e466..4ad0644afe 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionEncoder.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionEncoder.java @@ -583,7 +583,7 @@ public class DefaultHttp2ConnectionEncoder implements Http2ConnectionEncoder, Ht Future f = sendHeaders(frameWriter, ctx, stream.id(), headers, hasPriority, streamDependency, weight, exclusive, padding, endOfStream, promise); // Writing headers may fail during the encode state if they violate HPACK limits. - if (f.isSuccess() || !f.isDone()) { + if (!f.isFailed()) { // "not failed" means either not done, or completed successfully. // This just sets internal stream state which is used elsewhere in the codec and doesn't // necessarily mean the write will complete successfully. stream.headersSent(isInformational); @@ -623,7 +623,7 @@ public class DefaultHttp2ConnectionEncoder implements Http2ConnectionEncoder, Ht @Override public void operationComplete(Future future) throws Exception { - if (!future.isSuccess()) { + if (future.isFailed()) { error(flowController().channelHandlerContext(), future.cause()); } } diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2ConnectionHandler.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2ConnectionHandler.java index 420eb02e7a..22ae39d6d1 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2ConnectionHandler.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2ConnectionHandler.java @@ -842,7 +842,7 @@ public class Http2ConnectionHandler extends ByteToMessageDecoder implements Http } private void closeConnectionOnError(ChannelHandlerContext ctx, Future future) { - if (!future.isSuccess()) { + if (future.isFailed()) { onConnectionError(ctx, true, future.cause(), null); } } diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameCodec.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameCodec.java index 50b7da2f50..60c692f58d 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameCodec.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2FrameCodec.java @@ -463,7 +463,7 @@ public class Http2FrameCodec extends Http2ConnectionHandler { } private void handleHeaderFuture(Future channelFuture, int streamId) { - if (!channelFuture.isSuccess()) { + if (channelFuture.isFailed()) { frameStreamToInitializeMap.remove(streamId); } } diff --git a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2MultiplexHandler.java b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2MultiplexHandler.java index c2ff0e1111..cbafce863c 100644 --- a/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2MultiplexHandler.java +++ b/codec-http2/src/main/java/io/netty/handler/codec/http2/Http2MultiplexHandler.java @@ -129,7 +129,7 @@ public final class Http2MultiplexHandler extends Http2ChannelDuplexHandler { // Handle any errors that occurred on the local thread while registering. Even though // failures can happen after this point, they will be handled by the channel by closing the // childChannel. - if (!future.isSuccess()) { + if (future.isFailed()) { if (childChannel.isRegistered()) { childChannel.close(); } else { diff --git a/codec/src/main/java/io/netty/handler/codec/MessageAggregator.java b/codec/src/main/java/io/netty/handler/codec/MessageAggregator.java index 6bde83307b..9ef363a37b 100644 --- a/codec/src/main/java/io/netty/handler/codec/MessageAggregator.java +++ b/codec/src/main/java/io/netty/handler/codec/MessageAggregator.java @@ -225,7 +225,7 @@ public abstract class MessageAggregator listener = continueResponseWriteListener; if (listener == null) { continueResponseWriteListener = listener = (context, future) -> { - if (!future.isSuccess()) { + if (future.isFailed()) { context.fireExceptionCaught(future.cause()); } }; diff --git a/common/src/main/java/io/netty/util/concurrent/PromiseCombiner.java b/common/src/main/java/io/netty/util/concurrent/PromiseCombiner.java index 54912a3cd9..039e28dc6d 100644 --- a/common/src/main/java/io/netty/util/concurrent/PromiseCombiner.java +++ b/common/src/main/java/io/netty/util/concurrent/PromiseCombiner.java @@ -51,7 +51,7 @@ public final class PromiseCombiner { private void operationComplete0(Future future) { assert executor.inEventLoop(); ++doneCount; - if (!future.isSuccess() && cause == null) { + if (future.isFailed() && cause == null) { cause = future.cause(); } if (doneCount == expectedCount && aggregatePromise != null) { diff --git a/common/src/test/java/io/netty/util/concurrent/PromiseCombinerTest.java b/common/src/test/java/io/netty/util/concurrent/PromiseCombinerTest.java index 7a7b1c7d48..7d80a7fc4e 100644 --- a/common/src/test/java/io/netty/util/concurrent/PromiseCombinerTest.java +++ b/common/src/test/java/io/netty/util/concurrent/PromiseCombinerTest.java @@ -215,6 +215,7 @@ public class PromiseCombinerTest { private static void mockFailedPromise(Promise p, Throwable cause, FutureListenerConsumer consumer) { when(p.isDone()).thenReturn(true); when(p.isSuccess()).thenReturn(false); + when(p.isFailed()).thenReturn(true); when(p.cause()).thenReturn(cause); mockListener(p, consumer); } diff --git a/example/src/main/java/io/netty/example/http2/helloworld/client/Http2SettingsHandler.java b/example/src/main/java/io/netty/example/http2/helloworld/client/Http2SettingsHandler.java index e0aac0737b..af409398f8 100644 --- a/example/src/main/java/io/netty/example/http2/helloworld/client/Http2SettingsHandler.java +++ b/example/src/main/java/io/netty/example/http2/helloworld/client/Http2SettingsHandler.java @@ -48,7 +48,7 @@ public class Http2SettingsHandler extends SimpleChannelInboundHandler promise = entry.getValue().getValue(); if (!promise.awaitUninterruptibly(timeout, unit)) { throw new IllegalStateException("Timed out waiting for response on stream id " + entry.getKey()); } - if (!promise.isSuccess()) { + if (promise.isFailed()) { throw new RuntimeException(promise.cause()); } System.out.println("---Stream id: " + entry.getKey() + " received---"); diff --git a/example/src/main/java/io/netty/example/redis/RedisClient.java b/example/src/main/java/io/netty/example/redis/RedisClient.java index 477c09d3e0..ad6b20084b 100644 --- a/example/src/main/java/io/netty/example/redis/RedisClient.java +++ b/example/src/main/java/io/netty/example/redis/RedisClient.java @@ -78,7 +78,7 @@ public class RedisClient { // Sends the received line to the server. lastWriteFuture = ch.writeAndFlush(line); lastWriteFuture.addListener(future -> { - if (!future.isSuccess()) { + if (future.isFailed()) { System.err.print("write failed: "); future.cause().printStackTrace(System.err); } diff --git a/handler-proxy/src/main/java/io/netty/handler/proxy/ProxyHandler.java b/handler-proxy/src/main/java/io/netty/handler/proxy/ProxyHandler.java index e3806a1b27..7f953fc91c 100644 --- a/handler-proxy/src/main/java/io/netty/handler/proxy/ProxyHandler.java +++ b/handler-proxy/src/main/java/io/netty/handler/proxy/ProxyHandler.java @@ -62,7 +62,7 @@ public abstract class ProxyHandler implements ChannelHandler { private final Promise connectPromise = new LazyPromise(); private ScheduledFuture connectTimeoutFuture; private final FutureListener writeListener = future -> { - if (!future.isSuccess()) { + if (future.isFailed()) { setConnectFailure(future.cause()); } }; diff --git a/handler-proxy/src/test/java/io/netty/handler/proxy/ProxyServer.java b/handler-proxy/src/test/java/io/netty/handler/proxy/ProxyServer.java index 1bed137652..b95e488786 100644 --- a/handler-proxy/src/test/java/io/netty/handler/proxy/ProxyServer.java +++ b/handler-proxy/src/test/java/io/netty/handler/proxy/ProxyServer.java @@ -169,7 +169,7 @@ abstract class ProxyServer { this.finished = true; Future f = connectToDestination(ctx.channel().executor(), new BackendHandler(ctx)); f.addListener(future -> { - if (!future.isSuccess()) { + if (future.isFailed()) { recordException(future.cause()); ctx.close(); } else { diff --git a/handler/src/main/java/io/netty/handler/ssl/SniHandler.java b/handler/src/main/java/io/netty/handler/ssl/SniHandler.java index a55d45afa0..5a4fe8d8cc 100644 --- a/handler/src/main/java/io/netty/handler/ssl/SniHandler.java +++ b/handler/src/main/java/io/netty/handler/ssl/SniHandler.java @@ -100,7 +100,7 @@ public class SniHandler extends AbstractSniHandler { @Override protected final void onLookupComplete(ChannelHandlerContext ctx, String hostname, Future future) throws Exception { - if (!future.isSuccess()) { + if (future.isFailed()) { final Throwable cause = future.cause(); if (cause instanceof Error) { throw (Error) cause; diff --git a/handler/src/main/java/io/netty/handler/stream/ChunkedWriteHandler.java b/handler/src/main/java/io/netty/handler/stream/ChunkedWriteHandler.java index 46c49575f5..1f78dc680c 100644 --- a/handler/src/main/java/io/netty/handler/stream/ChunkedWriteHandler.java +++ b/handler/src/main/java/io/netty/handler/stream/ChunkedWriteHandler.java @@ -300,7 +300,7 @@ public class ChunkedWriteHandler implements ChannelHandler { private static void handleEndOfInputFuture(Future future, PendingWrite currentWrite) { ChunkedInput input = (ChunkedInput) currentWrite.msg; - if (!future.isSuccess()) { + if (future.isFailed()) { closeInput(input); currentWrite.fail(future.cause()); } else { @@ -314,7 +314,7 @@ public class ChunkedWriteHandler implements ChannelHandler { private void handleFuture(Channel channel, Future future, PendingWrite currentWrite, boolean resume) { ChunkedInput input = (ChunkedInput) currentWrite.msg; - if (!future.isSuccess()) { + if (future.isFailed()) { closeInput(input); currentWrite.fail(future.cause()); } else { diff --git a/handler/src/test/java/io/netty/handler/ssl/ParameterizedSslHandlerTest.java b/handler/src/test/java/io/netty/handler/ssl/ParameterizedSslHandlerTest.java index 20a34beda5..fc88cb9c0b 100644 --- a/handler/src/test/java/io/netty/handler/ssl/ParameterizedSslHandlerTest.java +++ b/handler/src/test/java/io/netty/handler/ssl/ParameterizedSslHandlerTest.java @@ -433,7 +433,7 @@ public class ParameterizedSslHandlerTest { PromiseNotifier.cascade(handler.sslCloseFuture(), serverPromise); handler.handshakeFuture().addListener(future -> { - if (!future.isSuccess()) { + if (future.isFailed()) { // Something bad happened during handshake fail the promise! serverPromise.tryFailure(future.cause()); } diff --git a/handler/src/test/java/io/netty/handler/ssl/RenegotiateTest.java b/handler/src/test/java/io/netty/handler/ssl/RenegotiateTest.java index a37c3b98ff..811966dc52 100644 --- a/handler/src/test/java/io/netty/handler/ssl/RenegotiateTest.java +++ b/handler/src/test/java/io/netty/handler/ssl/RenegotiateTest.java @@ -81,7 +81,7 @@ public abstract class RenegotiateTest { renegotiate = true; handler.renegotiate().addListener((FutureListener) future -> { - if (!future.isSuccess()) { + if (future.isFailed()) { error.compareAndSet(null, future.cause()); ctx.close(); } diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/DnsNameResolver.java b/resolver-dns/src/main/java/io/netty/resolver/dns/DnsNameResolver.java index b25ac14a9c..e895d4e4c3 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/DnsNameResolver.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/DnsNameResolver.java @@ -1276,7 +1276,7 @@ public class DnsNameResolver extends InetNameResolver { .channelFactory(socketChannelFactory) .handler(TCP_ENCODER); bs.connect(res.sender()).addListener(future -> { - if (!future.isSuccess()) { + if (future.isFailed()) { if (logger.isDebugEnabled()) { logger.debug("{} Unable to fallback to TCP [{}]", queryId, future.cause()); } diff --git a/resolver-dns/src/main/java/io/netty/resolver/dns/DnsQueryContext.java b/resolver-dns/src/main/java/io/netty/resolver/dns/DnsQueryContext.java index 76ce8fd42f..d95fce064b 100644 --- a/resolver-dns/src/main/java/io/netty/resolver/dns/DnsQueryContext.java +++ b/resolver-dns/src/main/java/io/netty/resolver/dns/DnsQueryContext.java @@ -147,7 +147,7 @@ abstract class DnsQueryContext implements FutureListener writeFuture, Promise writePromise) { - if (!writeFuture.isSuccess()) { + if (writeFuture.isFailed()) { writePromise.setFailure(writeFuture.cause()); tryFailure("failed to send a query via " + protocol(), writeFuture.cause(), false); return; diff --git a/testsuite/src/main/java/io/netty/testsuite/transport/socket/AbstractSocketReuseFdTest.java b/testsuite/src/main/java/io/netty/testsuite/transport/socket/AbstractSocketReuseFdTest.java index f65bd23efa..c8d68a98e9 100644 --- a/testsuite/src/main/java/io/netty/testsuite/transport/socket/AbstractSocketReuseFdTest.java +++ b/testsuite/src/main/java/io/netty/testsuite/transport/socket/AbstractSocketReuseFdTest.java @@ -91,7 +91,7 @@ public abstract class AbstractSocketReuseFdTest extends AbstractSocketTest { }); FutureListener listener = future -> { - if (!future.isSuccess()) { + if (future.isFailed()) { clientDonePromise.tryFailure(future.cause()); } }; diff --git a/transport-native-epoll/src/test/java/io/netty/channel/epoll/EpollDomainSocketFdTest.java b/transport-native-epoll/src/test/java/io/netty/channel/epoll/EpollDomainSocketFdTest.java index c61772d87d..eb5a2d5c4e 100644 --- a/transport-native-epoll/src/test/java/io/netty/channel/epoll/EpollDomainSocketFdTest.java +++ b/transport-native-epoll/src/test/java/io/netty/channel/epoll/EpollDomainSocketFdTest.java @@ -65,7 +65,7 @@ public class EpollDomainSocketFdTest extends AbstractSocketTest { final EpollDomainSocketChannel ch = new EpollDomainSocketChannel(ctx.channel().executor()); ctx.writeAndFlush(ch.fd()).addListener(future -> { - if (!future.isSuccess()) { + if (future.isFailed()) { Throwable cause = future.cause(); queue.offer(cause); } diff --git a/transport-native-kqueue/src/test/java/io/netty/channel/kqueue/KQueueDomainSocketFdTest.java b/transport-native-kqueue/src/test/java/io/netty/channel/kqueue/KQueueDomainSocketFdTest.java index 0fce83ed8c..b3d85359ef 100644 --- a/transport-native-kqueue/src/test/java/io/netty/channel/kqueue/KQueueDomainSocketFdTest.java +++ b/transport-native-kqueue/src/test/java/io/netty/channel/kqueue/KQueueDomainSocketFdTest.java @@ -65,7 +65,7 @@ public class KQueueDomainSocketFdTest extends AbstractSocketTest { final KQueueDomainSocketChannel ch = new KQueueDomainSocketChannel(ctx.channel().executor()); ctx.writeAndFlush(ch.fd()).addListener(future -> { - if (!future.isSuccess()) { + if (future.isFailed()) { Throwable cause = future.cause(); queue.offer(cause); } diff --git a/transport/src/main/java/io/netty/bootstrap/AbstractBootstrap.java b/transport/src/main/java/io/netty/bootstrap/AbstractBootstrap.java index d35cecb92e..8959b8caf9 100644 --- a/transport/src/main/java/io/netty/bootstrap/AbstractBootstrap.java +++ b/transport/src/main/java/io/netty/bootstrap/AbstractBootstrap.java @@ -301,7 +301,7 @@ public abstract class AbstractBootstrap, C Channel channel = newChannel(loop); init(channel).addListener(future -> { - if (!future.isSuccess()) { + if (future.isFailed()) { channel.unsafe().closeForcibly(); } }); diff --git a/transport/src/main/java/io/netty/bootstrap/Bootstrap.java b/transport/src/main/java/io/netty/bootstrap/Bootstrap.java index 99488ac177..f825377d2b 100644 --- a/transport/src/main/java/io/netty/bootstrap/Bootstrap.java +++ b/transport/src/main/java/io/netty/bootstrap/Bootstrap.java @@ -190,7 +190,7 @@ public class Bootstrap extends AbstractBootstrap resolveAndConnectPromise = new DefaultPromise<>(loop); if (regFuture.isDone()) { - if (!regFuture.isSuccess()) { + if (regFuture.isFailed()) { return regFuture; } Channel channel = regFuture.getNow(); diff --git a/transport/src/main/java/io/netty/bootstrap/ServerBootstrap.java b/transport/src/main/java/io/netty/bootstrap/ServerBootstrap.java index def4eb1850..82aeb90aab 100644 --- a/transport/src/main/java/io/netty/bootstrap/ServerBootstrap.java +++ b/transport/src/main/java/io/netty/bootstrap/ServerBootstrap.java @@ -263,7 +263,7 @@ public class ServerBootstrap extends AbstractBootstrap { - if (!future.isSuccess()) { + if (future.isFailed()) { forceClose(child, future.cause()); } }); diff --git a/transport/src/main/java/io/netty/channel/ChannelFutureListeners.java b/transport/src/main/java/io/netty/channel/ChannelFutureListeners.java index 69792a67a1..8cc3f31e71 100644 --- a/transport/src/main/java/io/netty/channel/ChannelFutureListeners.java +++ b/transport/src/main/java/io/netty/channel/ChannelFutureListeners.java @@ -49,12 +49,12 @@ public enum ChannelFutureListeners implements FutureContextListener future) { - if (!future.isSuccess()) { + if (future.isFailed()) { recordException(future.cause()); } } diff --git a/transport/src/main/java/io/netty/channel/group/DefaultChannelGroupFuture.java b/transport/src/main/java/io/netty/channel/group/DefaultChannelGroupFuture.java index 92849a7600..7b345e5c8f 100644 --- a/transport/src/main/java/io/netty/channel/group/DefaultChannelGroupFuture.java +++ b/transport/src/main/java/io/netty/channel/group/DefaultChannelGroupFuture.java @@ -62,7 +62,7 @@ final class DefaultChannelGroupFuture extends DefaultPromise implements Ch List> failed = new ArrayList<>(failureCount); for (Entry> entry: futures.entrySet()) { - if (!entry.getValue().isSuccess()) { + if (entry.getValue().isFailed()) { failed.add(new DefaultEntry<>(entry.getKey(), entry.getValue().cause())); } }