|
XNIO API 3.0.4.GA | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface SuspendableWriteChannel
A suspendable writable channel. This type of channel is associated with a listener which can suspend and resume writes as needed.
Method Summary | |
---|---|
void |
awaitWritable()
Block until this channel becomes writable again. |
void |
awaitWritable(long time,
TimeUnit timeUnit)
Block until this channel becomes writable again, or until the timeout expires. |
void |
close()
Close this channel. |
boolean |
flush()
Flush any waiting partial send or write. |
ChannelListener.Setter<? extends SuspendableWriteChannel> |
getCloseSetter()
Get the setter which can be used to change the close listener for this channel. |
ChannelListener.Setter<? extends SuspendableWriteChannel> |
getWriteSetter()
Get the setter which can be used to change the write listener for this channel. |
XnioExecutor |
getWriteThread()
Get the write thread for this channel. |
boolean |
isWriteResumed()
Determine whether writes are resumed. |
void |
resumeWrites()
Resume writes on this channel. |
void |
shutdownWrites()
Indicate that writing is complete for this channel. |
void |
suspendWrites()
Suspend further write notifications on this channel. |
void |
wakeupWrites()
Resume writes on this channel, and force the write listener to be triggered even if the
channel isn't actually writable. |
Methods inherited from interface org.xnio.channels.CloseableChannel |
---|
getWorker |
Methods inherited from interface java.nio.channels.Channel |
---|
isOpen |
Methods inherited from interface org.xnio.channels.Configurable |
---|
getOption, setOption, supportsOption |
Method Detail |
---|
void suspendWrites()
void resumeWrites()
boolean isWriteResumed()
true
if writes are resumed, false
if writes are suspendedvoid wakeupWrites()
Resume writes
on this channel, and force the write listener to be triggered even if the
channel isn't actually writable.
void shutdownWrites() throws IOException
flush()
method; once this is done, if the read side of the channel was shut down, the channel will
automatically close.
IOException
- if an I/O error occursvoid awaitWritable() throws IOException
InterruptedIOException
- if the operation is interrupted; the thread's interrupt flag will be set as well
IOException
- if an I/O error occursvoid awaitWritable(long time, TimeUnit timeUnit) throws IOException
time
- the time to waittimeUnit
- the time unit
InterruptedIOException
- if the operation is interrupted; the thread's interrupt flag will be set as well
IOException
- if an I/O error occursXnioExecutor getWriteThread()
null
if none is configured or availableChannelListener.Setter<? extends SuspendableWriteChannel> getWriteSetter()
ChannelListener.Setter<? extends SuspendableWriteChannel> getCloseSetter()
getCloseSetter
in interface CloseableChannel
boolean flush() throws IOException
true
. If there is data to flush which cannot be immediately written, this method
will return false
. If this method returns true
after shutdownWrites()
was called on
this channel, the write listener will no longer be invoked on this channel. If this is case and additionally
this is a write-only channel or the read side was previously shut down, then the channel will
automatically be closed.
true
if the message was flushed, or false
if the result would block
IOException
- if an I/O error occursvoid close() throws IOException
close
in interface Channel
close
in interface Closeable
close
in interface CloseableChannel
close
in interface InterruptibleChannel
IOException
- if the close failed
|
XNIO API 3.0.4.GA | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |