final ChannelConfig config = config(); if (shouldBreakReadReady(config)) { clearReadFilter0(); return; final ByteBufAllocator allocator = config.getAllocator(); allocHandle.reset(config); readReadyBefore(); shutdownInput(false); handleReadException(pipeline, byteBuf, t, close, allocHandle); } finally { readReadyFinally(config);
private void handleReadException(ChannelPipeline pipeline, ByteBuf byteBuf, Throwable cause, boolean close, KQueueRecvByteAllocatorHandle allocHandle) { if (byteBuf != null) { if (byteBuf.isReadable()) { readPending = false; pipeline.fireChannelRead(byteBuf); } else { byteBuf.release(); } } if (!failConnectPromise(cause)) { allocHandle.readComplete(); pipeline.fireChannelReadComplete(); pipeline.fireExceptionCaught(cause); if (close || cause instanceof IOException) { shutdownInput(false); } } } }
@Override void readReady(KQueueRecvByteAllocatorHandle allocHandle) { switch (config().getReadMode()) { case BYTES: super.readReady(allocHandle); break; case FILE_DESCRIPTORS: readReadyFd(); break; default: throw new Error(); } }
final ChannelConfig config = config(); if (shouldBreakReadReady(config)) { clearReadFilter0(); return; final ByteBufAllocator allocator = config.getAllocator(); allocHandle.reset(config); readReadyBefore(); shutdownInput(false); handleReadException(pipeline, byteBuf, t, close, allocHandle); } finally { readReadyFinally(config);
final ChannelConfig config = config(); if (shouldBreakReadReady(config)) { clearReadFilter0(); return; final ByteBufAllocator allocator = config.getAllocator(); allocHandle.reset(config); readReadyBefore(); shutdownInput(false); handleReadException(pipeline, byteBuf, t, close, allocHandle); } finally { readReadyFinally(config);
final ChannelConfig config = config(); if (shouldBreakReadReady(config)) { clearReadFilter0(); return; final ByteBufAllocator allocator = config.getAllocator(); allocHandle.reset(config); readReadyBefore(); shutdownInput(false); handleReadException(pipeline, byteBuf, t, close, allocHandle); } finally { readReadyFinally(config);
final ChannelConfig config = config(); if (shouldBreakReadReady(config)) { clearReadFilter0(); return; final ByteBufAllocator allocator = config.getAllocator(); allocHandle.reset(config); readReadyBefore(); shutdownInput(false); handleReadException(pipeline, byteBuf, t, close, allocHandle); } finally { readReadyFinally(config);
private void readReadyFd() { if (socket.isInputShutdown()) { super.clearReadFilter0(); return;
private void readReadyFd() { if (socket.isInputShutdown()) { super.clearReadFilter0(); return;
private void readReadyFd() { if (socket.isInputShutdown()) { super.clearReadFilter0(); return;
private void readReadyFd() { if (socket.isInputShutdown()) { super.clearReadFilter0(); return;
private void handleReadException(ChannelPipeline pipeline, ByteBuf byteBuf, Throwable cause, boolean close, KQueueRecvByteAllocatorHandle allocHandle) { if (byteBuf != null) { if (byteBuf.isReadable()) { readPending = false; pipeline.fireChannelRead(byteBuf); } else { byteBuf.release(); } } if (!failConnectPromise(cause)) { allocHandle.readComplete(); pipeline.fireChannelReadComplete(); pipeline.fireExceptionCaught(cause); if (close || cause instanceof IOException) { shutdownInput(false); } } } }
private void handleReadException(ChannelPipeline pipeline, ByteBuf byteBuf, Throwable cause, boolean close, KQueueRecvByteAllocatorHandle allocHandle) { if (byteBuf != null) { if (byteBuf.isReadable()) { readPending = false; pipeline.fireChannelRead(byteBuf); } else { byteBuf.release(); } } if (!failConnectPromise(cause)) { allocHandle.readComplete(); pipeline.fireChannelReadComplete(); pipeline.fireExceptionCaught(cause); if (close || cause instanceof IOException) { shutdownInput(false); } } } }
private void handleReadException(ChannelPipeline pipeline, ByteBuf byteBuf, Throwable cause, boolean close, KQueueRecvByteAllocatorHandle allocHandle) { if (byteBuf != null) { if (byteBuf.isReadable()) { readPending = false; pipeline.fireChannelRead(byteBuf); } else { byteBuf.release(); } } if (!failConnectPromise(cause)) { allocHandle.readComplete(); pipeline.fireChannelReadComplete(); pipeline.fireExceptionCaught(cause); if (close || cause instanceof IOException) { shutdownInput(false); } } } }
private void handleReadException(ChannelPipeline pipeline, ByteBuf byteBuf, Throwable cause, boolean close, KQueueRecvByteAllocatorHandle allocHandle) { if (byteBuf != null) { if (byteBuf.isReadable()) { readPending = false; pipeline.fireChannelRead(byteBuf); } else { byteBuf.release(); } } if (!failConnectPromise(cause)) { allocHandle.readComplete(); pipeline.fireChannelReadComplete(); pipeline.fireExceptionCaught(cause); if (close || cause instanceof IOException) { shutdownInput(false); } } } }
@Override void readReady(KQueueRecvByteAllocatorHandle allocHandle) { switch (config().getReadMode()) { case BYTES: super.readReady(allocHandle); break; case FILE_DESCRIPTORS: readReadyFd(); break; default: throw new Error(); } }
@Override protected AbstractKQueueUnsafe newUnsafe() { return new KQueueStreamUnsafe(); }
@Override void readReady(KQueueRecvByteAllocatorHandle allocHandle) { switch (config().getReadMode()) { case BYTES: super.readReady(allocHandle); break; case FILE_DESCRIPTORS: readReadyFd(); break; default: throw new Error(); } }
@Override protected AbstractKQueueUnsafe newUnsafe() { return new KQueueStreamUnsafe(); }
@Override void readReady(KQueueRecvByteAllocatorHandle allocHandle) { switch (config().getReadMode()) { case BYTES: super.readReady(allocHandle); break; case FILE_DESCRIPTORS: readReadyFd(); break; default: throw new Error(); } }