final class KQueueRecvByteAllocatorHandle extends java.lang.Object implements RecvByteBufAllocator.ExtendedHandle
| Modifier and Type | Field and Description |
|---|---|
private UncheckedBooleanSupplier |
defaultMaybeMoreDataSupplier |
private RecvByteBufAllocator.ExtendedHandle |
delegate |
private long |
numberBytesPending |
private boolean |
overrideGuess |
private boolean |
readEOF |
| Constructor and Description |
|---|
KQueueRecvByteAllocatorHandle(RecvByteBufAllocator.ExtendedHandle handle) |
| Modifier and Type | Method and Description |
|---|---|
ByteBuf |
allocate(ByteBufAllocator alloc)
Creates a new receive buffer whose capacity is probably large enough to read all inbound data and small
enough not to waste its space.
|
int |
attemptedBytesRead()
Get how many bytes the read operation will (or did) attempt to read.
|
void |
attemptedBytesRead(int bytes)
Set how many bytes the read operation will (or did) attempt to read.
|
boolean |
continueReading()
Determine if the current read loop should should continue.
|
boolean |
continueReading(UncheckedBooleanSupplier maybeMoreDataSupplier)
Same as
RecvByteBufAllocator.Handle.continueReading() except "more data" is determined by the supplier parameter. |
int |
guess()
Similar to
RecvByteBufAllocator.Handle.allocate(ByteBufAllocator) except that it does not allocate anything but just tells the
capacity. |
private int |
guess0() |
void |
incMessagesRead(int numMessages)
Increment the number of messages that have been read for the current read loop.
|
int |
lastBytesRead()
Get the amount of bytes for the previous read operation.
|
void |
lastBytesRead(int bytes)
Set the bytes that have been read for the last read operation.
|
(package private) boolean |
maybeMoreDataToRead() |
(package private) void |
numberBytesPending(long numberBytesPending) |
void |
readComplete()
The read has completed.
|
(package private) void |
readEOF() |
void |
reset(ChannelConfig config)
Reset any counters that have accumulated and recommend how many messages/bytes should be read for the next
read loop.
|
private final RecvByteBufAllocator.ExtendedHandle delegate
private final UncheckedBooleanSupplier defaultMaybeMoreDataSupplier
private boolean overrideGuess
private boolean readEOF
private long numberBytesPending
KQueueRecvByteAllocatorHandle(RecvByteBufAllocator.ExtendedHandle handle)
public int guess()
RecvByteBufAllocator.HandleRecvByteBufAllocator.Handle.allocate(ByteBufAllocator) except that it does not allocate anything but just tells the
capacity.guess in interface RecvByteBufAllocator.Handlepublic void reset(ChannelConfig config)
RecvByteBufAllocator.Handle
This may be used by RecvByteBufAllocator.Handle.continueReading() to determine if the read operation should complete.
reset in interface RecvByteBufAllocator.Handleconfig - The channel configuration which may impact this object's behavior.public void incMessagesRead(int numMessages)
RecvByteBufAllocator.HandleincMessagesRead in interface RecvByteBufAllocator.HandlenumMessages - The amount to increment by.public ByteBuf allocate(ByteBufAllocator alloc)
RecvByteBufAllocator.Handleallocate in interface RecvByteBufAllocator.Handlepublic void lastBytesRead(int bytes)
RecvByteBufAllocator.HandlelastBytesRead in interface RecvByteBufAllocator.Handlebytes - The number of bytes from the previous read operation. This may be negative if an read error
occurs. If a negative value is seen it is expected to be return on the next call to
RecvByteBufAllocator.Handle.lastBytesRead(). A negative value will signal a termination condition enforced externally
to this class and is not required to be enforced in RecvByteBufAllocator.Handle.continueReading().public int lastBytesRead()
RecvByteBufAllocator.HandlelastBytesRead in interface RecvByteBufAllocator.Handlepublic void attemptedBytesRead(int bytes)
RecvByteBufAllocator.HandleattemptedBytesRead in interface RecvByteBufAllocator.Handlebytes - How many bytes the read operation will (or did) attempt to read.public int attemptedBytesRead()
RecvByteBufAllocator.HandleattemptedBytesRead in interface RecvByteBufAllocator.Handlepublic void readComplete()
RecvByteBufAllocator.HandlereadComplete in interface RecvByteBufAllocator.Handlepublic boolean continueReading(UncheckedBooleanSupplier maybeMoreDataSupplier)
RecvByteBufAllocator.ExtendedHandleRecvByteBufAllocator.Handle.continueReading() except "more data" is determined by the supplier parameter.continueReading in interface RecvByteBufAllocator.ExtendedHandlemaybeMoreDataSupplier - A supplier that determines if there maybe more data to read.public boolean continueReading()
RecvByteBufAllocator.HandlecontinueReading in interface RecvByteBufAllocator.Handletrue if the read loop should continue reading. false if the read loop is complete.void readEOF()
void numberBytesPending(long numberBytesPending)
boolean maybeMoreDataToRead()
private int guess0()