public abstract class AbstractOioByteChannel extends AbstractOioChannel
AbstractChannel.AbstractUnsafe
Channel.Unsafe
Modifier and Type | Field and Description |
---|---|
private static java.lang.String |
EXPECTED_TYPES |
private static ChannelMetadata |
METADATA |
readPending, SO_TIMEOUT
Modifier | Constructor and Description |
---|---|
protected |
AbstractOioByteChannel(Channel parent) |
Modifier and Type | Method and Description |
---|---|
protected abstract int |
available()
Return the number of bytes ready to read from the underlying Socket.
|
private void |
closeOnRead(ChannelPipeline pipeline) |
protected void |
doRead() |
protected abstract int |
doReadBytes(ByteBuf buf)
Read bytes from the underlying Socket.
|
protected void |
doWrite(ChannelOutboundBuffer in)
Flush the content of the given buffer to the remote peer.
|
protected abstract void |
doWriteBytes(ByteBuf buf)
Write the data which is hold by the
ByteBuf to the underlying Socket. |
protected abstract void |
doWriteFileRegion(FileRegion region)
Write the data which is hold by the
FileRegion to the underlying Socket. |
protected java.lang.Object |
filterOutboundMessage(java.lang.Object msg)
Invoked when a new message is added to a
ChannelOutboundBuffer of this AbstractChannel , so that
the Channel implementation converts the message to another. |
private void |
handleReadException(ChannelPipeline pipeline,
ByteBuf byteBuf,
java.lang.Throwable cause,
boolean close,
RecvByteBufAllocator.Handle allocHandle) |
protected abstract boolean |
isInputShutdown()
Determine if the input side of this channel is shutdown.
|
ChannelMetadata |
metadata()
|
protected abstract ChannelFuture |
shutdownInput()
Shutdown the input side of this channel.
|
clearReadPending, doBeginRead, doConnect, isCompatible, isReadPending, newUnsafe, setReadPending
alloc, bind, bind, bytesBeforeUnwritable, bytesBeforeWritable, close, close, closeFuture, compareTo, connect, connect, connect, connect, deregister, deregister, disconnect, disconnect, doBind, doClose, doDeregister, doDisconnect, doRegister, equals, eventLoop, flush, hashCode, id, invalidateLocalAddress, invalidateRemoteAddress, isRegistered, isWritable, localAddress, localAddress0, newChannelPipeline, newFailedFuture, newId, newProgressivePromise, newPromise, newSucceededFuture, parent, pipeline, read, remoteAddress, remoteAddress0, toString, unsafe, voidPromise, write, write, writeAndFlush, writeAndFlush
attr, hasAttr
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
attr, hasAttr
private static final ChannelMetadata METADATA
private static final java.lang.String EXPECTED_TYPES
protected AbstractOioByteChannel(Channel parent)
AbstractOioByteChannel(Channel)
public ChannelMetadata metadata()
Channel
protected abstract boolean isInputShutdown()
true
if the input side of this channel is shutdown.protected abstract ChannelFuture shutdownInput()
private void closeOnRead(ChannelPipeline pipeline)
private void handleReadException(ChannelPipeline pipeline, ByteBuf byteBuf, java.lang.Throwable cause, boolean close, RecvByteBufAllocator.Handle allocHandle)
protected void doRead()
doRead
in class AbstractOioChannel
protected void doWrite(ChannelOutboundBuffer in) throws java.lang.Exception
AbstractChannel
doWrite
in class AbstractChannel
java.lang.Exception
protected final java.lang.Object filterOutboundMessage(java.lang.Object msg) throws java.lang.Exception
AbstractChannel
ChannelOutboundBuffer
of this AbstractChannel
, so that
the Channel
implementation converts the message to another. (e.g. heap buffer -> direct buffer)filterOutboundMessage
in class AbstractChannel
java.lang.Exception
protected abstract int available()
protected abstract int doReadBytes(ByteBuf buf) throws java.lang.Exception
buf
- the ByteBuf
into which the read bytes will be writtenjava.lang.Exception
- is thrown if an error occurredprotected abstract void doWriteBytes(ByteBuf buf) throws java.lang.Exception
ByteBuf
to the underlying Socket.buf
- the ByteBuf
which holds the data to transferjava.lang.Exception
- is thrown if an error occurredprotected abstract void doWriteFileRegion(FileRegion region) throws java.lang.Exception
FileRegion
to the underlying Socket.region
- the FileRegion
which holds the data to transferjava.lang.Exception
- is thrown if an error occurred