@Override public void channelInactive(ChannelHandlerContext ctx) throws Exception { if (!id2Call.isEmpty()) { cleanupCalls(ctx, new ConnectionClosedException("Connection closed")); } conn.shutdown(); ctx.fireChannelInactive(); }
@Override public void channelInactive(ChannelHandlerContext ctx) throws Exception { saslRpcClient.dispose(); saslPromise.tryFailure(new ConnectionClosedException("Connection closed")); ctx.fireChannelInactive(); }
@Override public void close(ChannelHandlerContext ctx, ChannelPromise promise) throws Exception { if (!queue.isEmpty()) { queue.releaseAndFailAll(new ConnectionClosedException("Connection closed")); } ctx.close(promise); } }
@Override public void close(ChannelHandlerContext ctx, ChannelPromise promise) throws Exception { if (!queue.isEmpty()) { queue.releaseAndFailAll(new ConnectionClosedException("Connection closed")); } ctx.close(promise); } }
@Override public void channelInactive(ChannelHandlerContext ctx) throws Exception { if (!id2Call.isEmpty()) { cleanupCalls(ctx, new ConnectionClosedException("Connection closed")); } conn.shutdown(); ctx.fireChannelInactive(); }
@Override public void close(ChannelHandlerContext ctx, ChannelPromise promise) throws Exception { if (!queue.isEmpty()) { queue.releaseAndFailAll(new ConnectionClosedException("Connection closed")); } ctx.close(promise); } }
@Override public void close(ChannelHandlerContext ctx, ChannelPromise promise) throws Exception { if (!queue.isEmpty()) { queue.releaseAndFailAll(new ConnectionClosedException("Connection closed")); } ctx.close(promise); } }
@Override public void channelInactive(ChannelHandlerContext ctx) throws Exception { saslRpcClient.dispose(); saslPromise.tryFailure(new ConnectionClosedException("Connection closed")); ctx.fireChannelInactive(); }