Class PacketHandler

  • Direct Known Subclasses:
    LLCHandler, LLCReliableHandler

    public abstract class PacketHandler
    extends java.lang.Object
    Abstract packet handler. Implementations must include sendPacket, receivePacket and isPacketAvailable(). The other methods are optional.
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      void close()
      Close this packet handler and all lower layers.
      int getError()
      Get the last error.
      boolean isAckAvailable()
      Check if an ack is available
      abstract boolean isPacketAvailable()
      Check if a packet is available
      void open​(byte source, byte destination)
      Set the source and destination for this connection.
      int receiveAck​(byte[] buffer)  
      abstract int receivePacket​(byte[] buffer)
      Receive a packet.
      void reset()
      Reset sequence numbers for this handler
      abstract boolean sendPacket​(byte[] packet, int len)
      Send a packet.
      void setListen​(boolean listen)
      Set or unset the listen flag to keep a PC serial tower alive
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • PacketHandler

        public PacketHandler()
    • Method Detail

      • open

        public void open​(byte source,
                         byte destination)
        Set the source and destination for this connection.
      • reset

        public void reset()
        Reset sequence numbers for this handler
      • setListen

        public void setListen​(boolean listen)
        Set or unset the listen flag to keep a PC serial tower alive
        Parameters:
        listen - true to set listen mode, else false
      • sendPacket

        public abstract boolean sendPacket​(byte[] packet,
                                           int len)
        Send a packet.
        Parameters:
        packet - the bytes to send
        len - the number of bytes to send
        Returns:
        true if the send was successful, else false
      • receivePacket

        public abstract int receivePacket​(byte[] buffer)
        Receive a packet.
        Parameters:
        buffer - the buffer to receive the packet into
        Returns:
        the number of bytes received
      • receiveAck

        public int receiveAck​(byte[] buffer)
      • isPacketAvailable

        public abstract boolean isPacketAvailable()
        Check if a packet is available
        Returns:
        true if a Packet is available, else false
      • isAckAvailable

        public boolean isAckAvailable()
        Check if an ack is available
        Returns:
        true if a ack is available, else false
      • close

        public void close()
        Close this packet handler and all lower layers.
      • getError

        public int getError()
        Get the last error.
        Returns:
        the error number, or zero for success