Interface DatagramProvider<DATA extends java.io.Serializable>

    • Method Detail

      • readDatagram

        DATA readDatagram​()
                   throws org.refcodes.component.OpenException,
                          java.lang.InterruptedException
        Reads (receives) the next datagram passed from a DatagramSender counterpart. In case none datagram is available, then this method blocks until one is available. To prevent blocking, use the DatagramReceiver extension's Receivable.hasDatagram() method to test beforehand whether a byte is available (in a multi-threaded usage scenario, Receivable.hasDatagram() is not a reliable indicator whether this method will block or not). When a Thread is waiting for a datagram to be read and Thread.interrupt() is being called, then the operation is aborted and an InterruptedException is thrown.
        Returns:
        The next datagram sent from the DatagramSender counterpart.
        Throws:
        org.refcodes.component.OpenException - Thrown in case opening or accessing an open line (connection, junction, link) caused problems.
        java.lang.InterruptedException - Thrown when a Thread is waiting, sleeping, or otherwise occupied, and the Thread is interrupted, either before or during the activity.