Class AbstractShortsDestination

    • Constructor Summary

      Constructors 
      Constructor Description
      AbstractShortsDestination()
      Constructs a AbstractShortsDestination with a default sized blocking queue enabling a maximum of DATAGRAM_QUEUE_SIZE datagrams. ------------------------------------------------------------------------- Make sure your code fetches the datagrams quick enough to prevent filling up of the queue.
      AbstractShortsDestination​(int aCapacity)
      Constructs a AbstractShortsDestination with a custom sized blocking queue enabling a maximum of datagrams as specified by the capacity parameter. ------------------------------------------------------------------------- Make sure your code fetches the datagrams quick enough to prevent filling up of the queue.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void pushDatagram​(short aDatagram)
      Pushes a datagram into the receiver and puts it into the blocking queue containing the so far received datagrams.
      protected void pushDatagrams​(short[] aDatagrams)
      Pushes datagrams into the receiver and puts them into the blocking queue containing the so far received datagrams.
      protected void pushDatagrams​(short[] aDatagrams, int aOffset, int aLength)
      Pushes datagrams into the receiver and puts them into the blocking queue containing the so far received datagrams.
      short[] receiveAllShorts()
      Reads (receives) the all currently available data.
      short receiveShort()
      Reads (receives) the next short available, in case none short is available, then this method blocks until one is available.
      short[] receiveShorts​(int aMaxLength)
      Similar to ShortsDestination.receiveAllShorts() though at maximum the amount of data as provided returned.
      • Methods inherited from interface org.refcodes.mixin.Loggable

        alert, alert, critical, critical, debug, error, info, notice, panic, trace, warn, warn
    • Constructor Detail

      • AbstractShortsDestination

        public AbstractShortsDestination()
        Constructs a AbstractShortsDestination with a default sized blocking queue enabling a maximum of DATAGRAM_QUEUE_SIZE datagrams. ------------------------------------------------------------------------- Make sure your code fetches the datagrams quick enough to prevent filling up of the queue. In case the queue is filled up, adding elements via pushDatagram(short) to the queue is blocked until elements are taken from the queue via receiveShort().
      • AbstractShortsDestination

        public AbstractShortsDestination​(int aCapacity)
        Constructs a AbstractShortsDestination with a custom sized blocking queue enabling a maximum of datagrams as specified by the capacity parameter. ------------------------------------------------------------------------- Make sure your code fetches the datagrams quick enough to prevent filling up of the queue. In case the queue is filled up, adding elements via pushDatagram(short) to the queue is blocked until elements are taken from the queue via receiveShort().
        Parameters:
        aCapacity - The capacity of the queue holding the received datagrams.
    • Method Detail

      • receiveShort

        public short receiveShort()
                           throws IOException,
                                  EOFException
        Reads (receives) the next short available, in case none short is available, then this method blocks until one is available.
        Specified by:
        receiveShort in interface ShortDestination
        Specified by:
        receiveShort in interface ShortsDestination
        Returns:
        The next short sent from the ShortsTransmitter counterpart.
        Throws:
        IOException - Thrown in case opening or accessing an open line (connection, junction, link) caused problems.
        EOFException - Signals that an end of file or end of stream has been reached unexpectedly during input.
      • pushDatagram

        protected void pushDatagram​(short aDatagram)
                             throws IOException
        Pushes a datagram into the receiver and puts it into the blocking queue containing the so far received datagrams. Them datagrams can be retrieved via receiveShort(): Use AbstractBytesReceiver extension's AbstractBytesReceiver.available() to test beforehand whether there is a datagram available.
        Parameters:
        aDatagram - The datagram to be pushed at the end of the blocking queue; to be retrieved with the receiveShort() method.
        Throws:
        IOException - the open exception
      • pushDatagrams

        protected void pushDatagrams​(short[] aDatagrams)
                              throws IOException
        Pushes datagrams into the receiver and puts them into the blocking queue containing the so far received datagrams. Them datagrams can be retrieved via receiveShort(): Use AbstractBytesReceiver extension's AbstractBytesReceiver.available() to test beforehand whether there is a datagram available.
        Parameters:
        aDatagrams - The datagrams to be pushed at the end of the blocking queue; to be retrieved with the receiveShort() method.
        Throws:
        IOException - the open exception
      • pushDatagrams

        protected void pushDatagrams​(short[] aDatagrams,
                                     int aOffset,
                                     int aLength)
                              throws IOException
        Pushes datagrams into the receiver and puts them into the blocking queue containing the so far received datagrams. Them datagrams can be retrieved via receiveShort(): Use AbstractBytesReceiver extension's AbstractBytesReceiver.available() to test beforehand whether there is a datagram available.
        Parameters:
        aDatagrams - The datagrams to be pushed at the end of the blocking queue; to be retrieved with the receiveShort() method.
        aOffset - The offset to start taking data from to be pushed.
        aLength - The number of elements to be pushed from the offset onwards.
        Throws:
        IOException - the open exception