Class StationCapabilities

All Implemented Interfaces:
Serializable, Cloneable, Comparable<AX25Message>, CommentedMessage, SendableMessage

public class StationCapabilities extends Message implements SendableMessage
This class decodes a Station Capabilities message (APRS protocol specification chapter 15).
Author:
Andrew Pavlin, KA2DDO
See Also:
  • Field Details

    • capabilityArray

      public String[] capabilityArray
      Ordered array of capability Strings for an APRS station.
  • Constructor Details

    • StationCapabilities

      public StationCapabilities(byte[] body, int offset, String tp, long rcvTimestamp)
      Constructor for Station Capabilities message when decoding a binary AX.25 frame.
      Parameters:
      body - byte array of frame body
      offset - int array index offset for start of message (non-zero for encapsulated messages)
      tp - third-party relay String for encapsulated messages, or null for no third-party wrapper
      rcvTimestamp - Unix time when message was actually received by YAAC
    • StationCapabilities

      public StationCapabilities(String[] params)
      Constructor for building an outgoing Station Capabilities message.
      Parameters:
      params - array of capability Strings
    • StationCapabilities

      public StationCapabilities(List<String> params)
      Constructor for building an outgoing Station Capabilities message.
      Parameters:
      params - List of capability Strings
  • Method Details

    • paramString

      public String paramString()
      Descriptive text about this message, to be included in the toString() method's response.
      Overrides:
      paramString in class Message
      Returns:
      String describing the contents of this message
      See Also:
    • getBody

      public byte[] getBody(boolean countTransmission, ProtocolFamily protocolId, AX25Frame frame)
      Get an instance of this message, suitable for transmitting.
      Specified by:
      getBody in interface SendableMessage
      Parameters:
      countTransmission - number of times the message has been transmitted
      protocolId - AX.25 protocol type for this message
      frame - AX25Frame into which the message will be placed, so any alternate AX25Message can be linked to it
      Returns:
      byte array of message
      See Also:
    • isEnabled

      public boolean isEnabled()
      Test if message should still be transmitted.
      Specified by:
      isEnabled in interface SendableMessage
      Returns:
      boolean true if message should still be transmitted
    • disableForTransmit

      public void disableForTransmit()
      Specify that message should no longer be transmitted.
      Specified by:
      disableForTransmit in interface SendableMessage