Package org.apache.sshd.common.channel
Class ChannelAsyncOutputStream.WriteState
- java.lang.Object
-
- org.apache.sshd.common.channel.ChannelAsyncOutputStream.WriteState
-
- Enclosing class:
- ChannelAsyncOutputStream
protected static class ChannelAsyncOutputStream.WriteState extends Object
Collects state variables; access is always synchronized on the single instance per stream.
-
-
Field Summary
Fields Modifier and Type Field Description protected IoWriteFutureImpl
lastWrite
The future describing the last executed *buffer* writeChannelAsyncOutputStream.writeBuffer(Buffer)
.protected AbstractCloseable.State
openState
A copy of the channel state.protected IoWriteFutureImpl
pendingWrite
The future describing the current packet write; ifnull
, there is nothing to write orChannelAsyncOutputStream.writePacket(IoWriteFutureImpl, boolean)
is running.protected boolean
waitingOnIo
...unless the currentpendingWrite
is waiting on I/O (which will either finish or continue the write anyway).protected boolean
windowExpanded
Set to true when there was a remote window expansion whileChannelAsyncOutputStream.writePacket(IoWriteFutureImpl, boolean)
was in progress.protected boolean
writeInProgress
Flag to throw an exception if non-sequentialChannelAsyncOutputStream.writeBuffer(Buffer)
calls should occur.
-
Constructor Summary
Constructors Modifier Constructor Description protected
WriteState()
-
-
-
Field Detail
-
lastWrite
protected IoWriteFutureImpl lastWrite
The future describing the last executed *buffer* writeChannelAsyncOutputStream.writeBuffer(Buffer)
. Used for graceful closing.
-
pendingWrite
protected IoWriteFutureImpl pendingWrite
The future describing the current packet write; ifnull
, there is nothing to write orChannelAsyncOutputStream.writePacket(IoWriteFutureImpl, boolean)
is running.
-
writeInProgress
protected boolean writeInProgress
Flag to throw an exception if non-sequentialChannelAsyncOutputStream.writeBuffer(Buffer)
calls should occur.
-
windowExpanded
protected boolean windowExpanded
Set to true when there was a remote window expansion whileChannelAsyncOutputStream.writePacket(IoWriteFutureImpl, boolean)
was in progress. If set,ChannelAsyncOutputStream.doWriteIfPossible(boolean)
will run aChannelAsyncOutputStream.writePacket(IoWriteFutureImpl, boolean)
again...
-
waitingOnIo
protected boolean waitingOnIo
...unless the currentpendingWrite
is waiting on I/O (which will either finish or continue the write anyway).
-
openState
protected AbstractCloseable.State openState
A copy of the channel state.
-
-