Class PacketTypeFilter

java.lang.Object
org.ka2ddo.yaac.filter.Filter
org.ka2ddo.yaac.filter.PacketTypeFilter

public class PacketTypeFilter extends Filter

Filter based on the type of APRS packet in the frame. This filter has no affect (positive or negative) on non-APRS packets.

The present implementation of this filter does not permit editing or modification of the filter settings. As such, it does not have an associated configuration editor class.

Author:
Andrew Pavlin, KA2DDO
  • Constructor Details

    • PacketTypeFilter

      public PacketTypeFilter(String typeCodes) throws IllegalArgumentException
      Create a non-modifiable PacketTypeFilter that will only pass packets matching the specified APRS packet types. Type codes that can be specified in the parameter are:

      pPosition packets
      oObjects
      iItems
      mMessage
      qQuery
      sStatus
      tTelemetry
      uUser-defined
      nNWS format messages and objects
      wWeather
      Parameters:
      typeCodes - String of lowercase letters matching the types to be accepted by the filter.
      Throws:
      IllegalArgumentException - if an unrecognized type code is specified in typeCodes
  • Method Details

    • acceptAX25Frame

      public int acceptAX25Frame(AX25Frame frame)
      Indicate whether the specified frame should be displayed.
      Specified by:
      acceptAX25Frame in class Filter
      Parameters:
      frame - the timestamped AX25 frame record to analyze
      Returns:
      RESULT_xxx constant indicating if message information should be displayed
    • getFilterTypeTagName

      public String getFilterTypeTagName()
      Report a tag name used to look up the labelling for an editor panel for this editor instance in a ResourceBundle of translated names.
      Specified by:
      getFilterTypeTagName in class Filter
      Returns:
      String to use in looking up form label for this filter's editor
    • getFilterHelpTagName

      public String getFilterHelpTagName()
      Report a tag name used to look up JavaHelp for a filter editor.
      Specified by:
      getFilterHelpTagName in class Filter
      Returns:
      String name (as defined in HelpMap.jhm) for this filter's online help, or null if there is no filter specific help
    • getFilterUIName

      public String getFilterUIName()
      Get the class name of a dynamically loadable class for the the GUI for this filter. The name is allowed to have a wildcard '*' in it where a GUI type ("gui" for standard Java or "android" for Android) can be substituted.
      Specified by:
      getFilterUIName in class Filter
      Returns:
      String name of GUI class for this filter
    • acceptStation

      public int acceptStation(StationState ss)
      Indicate whether the specified station should be displayed. The acceptMessage() and acceptAX25Frame() methods may be called to assist in the determination.
      Specified by:
      acceptStation in class Filter
      Parameters:
      ss - StationState record to analyze
      Returns:
      RESULT_xxx constant indicating if station information should be displayed
    • acceptMessage

      public int acceptMessage(AX25Message msg)
      Indicate whether the specified message should be displayed or used to determine if a station should be displayed (if recursively called from acceptStation()).
      Specified by:
      acceptMessage in class Filter
      Parameters:
      msg - the APRS Message record to analyze
      Returns:
      RESULT_xxx constant indicating if message information should be displayed
    • addFilterChangeListener

      public void addFilterChangeListener(FilterChangeListener l)
      Register a listener for changes of this Filter.
      Specified by:
      addFilterChangeListener in class Filter
      Parameters:
      l - FilterChangeListener to register
    • removeFilterChangeListener

      public void removeFilterChangeListener(FilterChangeListener l)
      Deregisters a listener. The listener will no longer be informed of changes to this filter.
      Specified by:
      removeFilterChangeListener in class Filter
      Parameters:
      l - FilterChangeListener to deregister
    • setToPassall

      public void setToPassall()
      Reset the filter to a configuration that would pass the maximum amount of messages, packets, and stations. Because this filter is presently not modifiable, this method is a no-op.
      Specified by:
      setToPassall in class Filter