Module 

Interface ReadableMultipointMessageChannel

All Superinterfaces:
AutoCloseable, Channel, Closeable, CloseableChannel, Configurable, InterruptibleChannel, SuspendableReadChannel
All Known Subinterfaces:
BoundMultipointMessageChannel, MulticastMessageChannel, MultipointMessageChannel

public interface ReadableMultipointMessageChannel extends SuspendableReadChannel
The readable side of a multipoint message channel.
  • Method Details

    • receiveFrom

      int receiveFrom(SocketAddressBuffer addressBuffer, ByteBuffer buffer) throws IOException
      Receive a message via this channel. If a message is immediately available, then the datagram is written into the given buffer and the source and destination addresses (if available) read into the address buffer. If there is no message immediately available, this method will return 0.
      Parameters:
      addressBuffer - the address buffer into which the source and destination addresses should be written (null to discard that information)
      buffer - the buffer into which data should be read
      Returns:
      the size of the received message, 0 if no message is available, and -1 if the message channel has reached an end-of-file condition
      Throws:
      IOException - if an I/O error occurs
    • receiveFrom

      long receiveFrom(SocketAddressBuffer addressBuffer, ByteBuffer[] buffers) throws IOException
      Receive a message. If a message is immediately available, then the datagram is written into the given buffers in a "scatter" fashion and the source and destination addresses (if available) read into the address buffer. If there is no message immediately available, this method will return 0.
      Parameters:
      addressBuffer - the address buffer into which the source and destination addresses should be written (null to discard that information)
      buffers - the buffers that will hold the message
      Returns:
      the size of the received message, 0 if no message is available, and -1 if the message channel has reached an end-of-file condition
      Throws:
      IOException - if an I/O error occurs
    • receiveFrom

      long receiveFrom(SocketAddressBuffer addressBuffer, ByteBuffer[] buffers, int offs, int len) throws IOException
      Receive a message. If a message is immediately available, then the datagram is written into the given buffers in a "scatter" fashion and the source and destination addresses (if available) read into the address buffer. If there is no message immediately available, this method will return 0.
      Parameters:
      addressBuffer - the address buffer into which the source and destination addresses should be written (null to discard that information)
      buffers - the buffers that will hold the message
      offs - the offset into the array of buffers of the first buffer to read into
      len - the number of buffers to fill
      Returns:
      the size of the received message, 0 if no message is available, and -1 if the message channel has reached an end-of-file condition
      Throws:
      IOException - if an I/O error occurs
    • getReadSetter

      Get the setter which can be used to change the read listener for this channel.
      Specified by:
      getReadSetter in interface SuspendableReadChannel
      Returns:
      the setter
    • 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 interface CloseableChannel
      Specified by:
      getCloseSetter in interface SuspendableReadChannel
      Returns:
      the setter