public abstract class FilterTable
extends java.lang.Object
DefaultFilterTable
is used.
A filter table is used by MessageAgent
to collect filters
together so message matching can be optimized. Filters are placed
into one of four filter table instances:
Each Filter
instance can provide FilterTables to use. If
none are provided (they return 'null'), then a DefaultFilterTable
is used.
Constructor and Description |
---|
FilterTable() |
Modifier and Type | Method and Description |
---|---|
abstract void |
addFilter(Subscription sub,
java.lang.Object object)
Add subscription to filter table.
|
abstract FilterTableResult |
match(Message message,
boolean collectTriggers)
Match message against filters.
|
abstract void |
removeFilter(Subscription sub,
java.lang.Object object)
Remove subscription from filter table.
|
public abstract void addFilter(Subscription sub, java.lang.Object object)
public abstract void removeFilter(Subscription sub, java.lang.Object object)
public abstract FilterTableResult match(Message message, boolean collectTriggers)
message
- Message to match.matches
- Will be populated with subscription's associated
objects.triggers
- Will be populated with subscriptions whose
triggers should be run.matches
.