org.ka2ddo.aprs
Class StationCapabilities

java.lang.Object
  extended by org.ka2ddo.ax25.AX25Message
      extended by org.ka2ddo.aprs.Message
          extended by org.ka2ddo.aprs.StationCapabilities
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.lang.Comparable<AX25Message>, CommentedMessage, SendableMessage

public class StationCapabilities
extends Message
implements SendableMessage

This class decodes a Station Capabilities message (APRS protocol specification chapter 15).

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.ka2ddo.ax25.AX25Message
AX25Message.Precedence
 
Field Summary
 java.lang.String[] capabilityArray
          Ordered array of capability Strings for an APRS station.
 
Fields inherited from class org.ka2ddo.aprs.Message
comment, extensions, msgType, S_PERMANENT, S_PERMANENT_UC, symbolCode, symTableId, USASCII
 
Fields inherited from class org.ka2ddo.ax25.AX25Message
ax25Frame, invalid, ISO_8859_1, originatingCallsign, PERMANENT, rcptTime, thirdParty, timestamp, UTC, UTF8
 
Constructor Summary
StationCapabilities(byte[] body, int offset, java.lang.String tp, long rcvTimestamp)
          Constructor for Station Capabilities message when decoding a binary AX.25 frame.
StationCapabilities(java.lang.String[] params)
          Constructor for building an outgoing Station Capabilities message.
 
Method Summary
 byte[] getBody(boolean countTransmission, byte protocolId, AX25Frame frame)
          Get an instance of this message, suitable for transmitting.
 boolean isEnabled()
          Test if message should still be transmitted.
 java.lang.String paramString()
          Descriptive text about this message, to be included in the toString() method's response.
 
Methods inherited from class org.ka2ddo.aprs.Message
bodyEquals, compareTo, decodeDatestamp, decodeHurricaneParams, decodeTimestamp, decodeWeatherParams, decodeWeatherParams, dup, encodeTimestamp, extractComment, extractComment, extractSymbol, formatBody, getComment, getExtension, getExtensionString, getMsgType, getReadOnlyExtensionMap, getSymbolCode, getSymTableId, hasWeather, inferSymbol, isSymbolInferred, looksLikeLongFormatLatitude, setComment, setSymbolCode, setSymTableId, storeExtension, toString
 
Methods inherited from class org.ka2ddo.ax25.AX25Message
equals, extractSource, getAx25Frame, getFirstDigipeat, getLastDigipeat, getOriginalDestination, getOriginalSource, getOriginatingCallsign, getPrecedence, getRcptTime, getTimestamp, hashCode, hasPosition, hasThisFirstDigi, indexOf, indexOf, isInvalid, onlyDigits, onlyDigits, onlyDigitsOrPeriod, onlyDigitsOrSpace, onlyDigitsPlus, onlyPeriods, setAx25Frame, setInvalid, setOriginatingCallsign, setRcptTime, setTimestamp, split
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.ka2ddo.ax25.SendableMessage
dup
 

Field Detail

capabilityArray

public java.lang.String[] capabilityArray
Ordered array of capability Strings for an APRS station.

Constructor Detail

StationCapabilities

public StationCapabilities(byte[] body,
                           int offset,
                           java.lang.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(java.lang.String[] params)
Constructor for building an outgoing Station Capabilities message.

Parameters:
params - array of capability Strings
Method Detail

paramString

public java.lang.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:
Message.toString()

getBody

public byte[] getBody(boolean countTransmission,
                      byte 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:
AX25Frame.parsedAX25Msg

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