Nirvana supports filtering
at 2 levels. The 1st is between client and server and
the 2nd is between server and server. The Standard
filtering provided by Nirvana complies fully with
the JMS filtering specification. There are also some
advanced
filtering capabilities provided which are outside
the JMS specification.
All Nirvana filtering is handled by the Nirvana server
and therefore significantly reduces client overhead
and network bandwidth consumption.
Server to Client filtering
Filtered susbscriptions is a mechanism that allows a Nirvana
subscriber to enforce a server side message selector such
that only messages matching that selector are pushed down
the connection. For example if you have a channel containing
BOND trades for multiple bonds and each bond trade message
has a dictionary
entry called BONDNAME indicating what bond the trade
was made on.
If you wanted to receive all trades you would simply
do a:
myChannel.addSubscriber(mySubscriber);
while if you wanted to receive only trades on bond1
you woud do a: