public final class CumulativeBooleanOrFilter extends Filter implements CumulativeFilter, MonitoringFilter, FilterChangeListener, java.lang.Iterable<Filter>, java.lang.Cloneable, PersistingFilter, java.io.Closeable
Filter
,
MonitoringFilter
RESULT_NEUTRAL, RESULT_PASS, RESULT_REJECT, RESULT_WEAK_PASS, RESULT_WEAK_REJECT
Constructor and Description |
---|
CumulativeBooleanOrFilter() |
Modifier and Type | Method and Description |
---|---|
int |
acceptAX25Frame(AX25Frame frame)
Indicate whether the specified message should be displayed or used
to determine if a station should be displayed (if recursively called from
acceptStation()).
|
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()).
|
int |
acceptStation(StationState ss)
Indicate whether the specified station should be displayed.
|
void |
addFilter(Filter filter)
Add a sub-Filter to this CumulativeBooleanOrFilter.
|
void |
addFilterChangeListener(FilterChangeListener l)
Register a listener for changes of this Filter.
|
boolean |
canRejectSome()
Specifies that this filter may reject some stations, messages, and/or frames.
|
java.lang.Object |
clone()
Creates and returns a copy of this object.
|
void |
close()
Closes this filter and releases any system resources associated
with it.
|
void |
filterSettingsChanged(Filter changedFilter,
boolean changedByUser)
DO NOT CALL.
|
Filter |
getFilter(int index)
Get a reference to the Nth Filter installed in this CumulativeBooleanOrFilter.
|
int |
getFilterCount()
Get the number of sub-filters in this CumulativeBooleanOrFilter.
|
java.lang.String |
getFilterHelpTagName()
Report a tag name used to look up JavaHelp for a filter editor.
|
int |
getFilterNum()
Get sequence number for this filter instance.
|
java.lang.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.
|
java.lang.String |
getFilterUIName()
Get the class name of a dynamically loadable class for the the GUI for this
filter.
|
java.util.Iterator<Filter> |
iterator()
Returns an iterator over the child Filters of this CumulativeBooleanOrFilter.
|
void |
removeFilter(Filter filter)
Disconnect the specified Filter from this CumulativeBooleanOrFilter.
|
void |
removeFilterChangeListener(FilterChangeListener l)
Deregisters a listener.
|
void |
setFilterTypeTagName(java.lang.String tagName)
Set the tag name to be used by this particular instance of CumulativeBooleanOrFilter.
|
void |
setPrefPrefix(java.lang.String prefPrefix)
Change the persisted parameter prefix for this Filter instance.
|
void |
setToPassall()
Reset the filter to a configuration that would pass the maximum
amount of messages, packets, and stations.
|
void |
startRealTimeTracking()
Start automatically collecting real-time data as YAAC learns about them.
|
void |
stopRealTimeTracking()
Stop automatically collecting new real-time data and keep the current cache stable.
|
public void addFilter(Filter filter)
addFilter
in interface CumulativeFilter
filter
- Filter to be added to this filterpublic void removeFilter(Filter filter)
removeFilter
in interface CumulativeFilter
filter
- Filter to remove; if not found, nothing happenspublic int getFilterCount()
getFilterCount
in interface CumulativeFilter
public Filter getFilter(int index) throws java.lang.IndexOutOfBoundsException
getFilter
in interface CumulativeFilter
index
- zero-based index into this containing Filterjava.lang.IndexOutOfBoundsException
- if the index is out of rangepublic java.util.Iterator<Filter> iterator()
iterator
in interface java.lang.Iterable<Filter>
iterator
in interface CumulativeFilter
public java.lang.String getFilterTypeTagName()
getFilterTypeTagName
in class Filter
public java.lang.String getFilterHelpTagName()
getFilterHelpTagName
in class Filter
public void setFilterTypeTagName(java.lang.String tagName)
tagName
- String tag name to returngetFilterTypeTagName()
public java.lang.String getFilterUIName()
getFilterUIName
in class Filter
public void setPrefPrefix(java.lang.String prefPrefix)
setPrefPrefix
in interface PersistingFilter
prefPrefix
- prefix String (can be empty string "") or null to indicate this filter should not be persistedpublic int getFilterNum()
public int acceptAX25Frame(AX25Frame frame)
acceptAX25Frame
in class Filter
frame
- the timestamped AX25 frame record to analyzepublic int acceptMessage(AX25Message msg)
acceptMessage
in class Filter
msg
- the APRS Message record to analyzepublic int acceptStation(StationState ss)
acceptStation
in class Filter
ss
- StationState record to analyzepublic void addFilterChangeListener(FilterChangeListener l)
addFilterChangeListener
in class Filter
l
- FilterChangeListener to registerpublic void removeFilterChangeListener(FilterChangeListener l)
removeFilterChangeListener
in class Filter
l
- FilterChangeListener to deregisterpublic void setToPassall()
setToPassall
in class Filter
public boolean canRejectSome()
canRejectSome
in class Filter
setToPassall()
public void filterSettingsChanged(Filter changedFilter, boolean changedByUser)
filterSettingsChanged
in interface FilterChangeListener
changedFilter
- the sub-Filter originally reporting the filter changechangedByUser
- boolean true if change was manually made by user, false if
change was made automatically by dynamic filter logicpublic java.lang.Object clone() throws java.lang.CloneNotSupportedException
clone
in class Filter
java.lang.CloneNotSupportedException
- if the object's class does not
support the Cloneable
interface. Subclasses
that override the clone
method can also
throw this exception to indicate that an instance cannot
be cloned.Cloneable
public void startRealTimeTracking()
startRealTimeTracking
in interface MonitoringFilter
public void stopRealTimeTracking()
stopRealTimeTracking
in interface MonitoringFilter
public void close() throws java.io.IOException
close
in interface java.io.Closeable
close
in interface java.lang.AutoCloseable
java.io.IOException
- if an I/O error occurs