-
- All Superinterfaces:
java.lang.AutoCloseable
,java.nio.channels.Channel
,java.io.Closeable
,CloseableChannel
,Configurable
,java.nio.channels.InterruptibleChannel
,SuspendableWriteChannel
- All Known Subinterfaces:
ConnectedMessageChannel
,MessageChannel
- All Known Implementing Classes:
AssembledConnectedMessageChannel
,AssembledMessageChannel
,ConduitWritableMessageChannel
,FramedMessageChannel
public interface WritableMessageChannel extends SuspendableWriteChannel, Configurable
A channel that can send messages.
-
-
Field Summary
-
Fields inherited from interface org.xnio.channels.Configurable
EMPTY
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ChannelListener.Setter<? extends WritableMessageChannel>
getCloseSetter()
Get the setter which can be used to change the close listener for this channel.ChannelListener.Setter<? extends WritableMessageChannel>
getWriteSetter()
Get the setter which can be used to change the write listener for this channel.boolean
send(java.nio.ByteBuffer buffer)
Send a complete message.boolean
send(java.nio.ByteBuffer[] buffers)
Send a complete message.boolean
send(java.nio.ByteBuffer[] buffers, int offs, int len)
Send a complete message.boolean
sendFinal(java.nio.ByteBuffer buffer)
Send a complete message.boolean
sendFinal(java.nio.ByteBuffer[] buffers)
Send a complete message.boolean
sendFinal(java.nio.ByteBuffer[] buffers, int offs, int len)
Send a complete message.-
Methods inherited from interface org.xnio.channels.CloseableChannel
getIoThread, getWorker
-
Methods inherited from interface org.xnio.channels.Configurable
getOption, setOption, supportsOption
-
Methods inherited from interface org.xnio.channels.SuspendableWriteChannel
awaitWritable, awaitWritable, close, flush, getWriteThread, isOpen, isWriteResumed, resumeWrites, shutdownWrites, suspendWrites, wakeupWrites
-
-
-
-
Method Detail
-
send
boolean send(java.nio.ByteBuffer buffer) throws java.io.IOException
Send a complete message.- Parameters:
buffer
- the message to send- Returns:
- the result of the send operation;
true
if the message was sent, orfalse
if it would block - Throws:
java.io.IOException
- if an I/O error occurs
-
send
boolean send(java.nio.ByteBuffer[] buffers) throws java.io.IOException
Send a complete message.- Parameters:
buffers
- the buffers holding the message to send- Returns:
- the result of the send operation;
true
if the message was sent, orfalse
if it would block - Throws:
java.io.IOException
- if an I/O error occurs
-
send
boolean send(java.nio.ByteBuffer[] buffers, int offs, int len) throws java.io.IOException
Send a complete message.- Parameters:
buffers
- the buffers holding the message to sendoffs
- the offset into the buffer array of the first bufferlen
- the number of buffers that contain data to send- Returns:
- the result of the send operation;
true
if the message was sent, orfalse
if it would block - Throws:
java.io.IOException
- if an I/O error occurs
-
sendFinal
boolean sendFinal(java.nio.ByteBuffer buffer) throws java.io.IOException
Send a complete message. If the message was successfully sent the channel with have its writes shutdown.- Parameters:
buffer
- the message to send- Returns:
- the result of the send operation;
true
if the message was sent, orfalse
if it would block - Throws:
java.io.IOException
- if an I/O error occurs
-
sendFinal
boolean sendFinal(java.nio.ByteBuffer[] buffers) throws java.io.IOException
Send a complete message. If the message was successfully sent the channel with have its writes shutdown.- Parameters:
buffers
- the buffers holding the message to send- Returns:
- the result of the send operation;
true
if the message was sent, orfalse
if it would block - Throws:
java.io.IOException
- if an I/O error occurs
-
sendFinal
boolean sendFinal(java.nio.ByteBuffer[] buffers, int offs, int len) throws java.io.IOException
Send a complete message. If the message was successfully sent the channel with have its writes shutdown.- Parameters:
buffers
- the buffers holding the message to sendoffs
- the offset into the buffer array of the first bufferlen
- the number of buffers that contain data to send- Returns:
- the result of the send operation;
true
if the message was sent, orfalse
if it would block - Throws:
java.io.IOException
- if an I/O error occurs
-
getWriteSetter
ChannelListener.Setter<? extends WritableMessageChannel> getWriteSetter()
Get the setter which can be used to change the write listener for this channel.- Specified by:
getWriteSetter
in interfaceSuspendableWriteChannel
- Returns:
- the setter
-
getCloseSetter
ChannelListener.Setter<? extends WritableMessageChannel> getCloseSetter()
Get the setter which can be used to change the close listener for this channel. If the channel is already closed, then the listener will not be called.- Specified by:
getCloseSetter
in interfaceCloseableChannel
- Specified by:
getCloseSetter
in interfaceSuspendableWriteChannel
- Returns:
- the setter
-
-