Nirvana provides publish subscribe functionality through
the use of channel objects. Channels are the logical
rendezvous point for publishers (producers) and subscribers
(consumers) or data (events).
Channels can be equated with JMS Topics if you are
using the Nirvana JMS implementation although Nirvana
channels provide a much richer level of functionality
than is available via the JMS API..
Publish / Subscribe using channels differs from message
queues in the way that events are delivered to consumers.
Under the publish / subscribe paradigm, each event is
delivered to each subscriber once and only once per
subscription, and is not removed from the channel after
being consumed.
This section demonstrates how Nirvana pub / sub works,
and provides example code snippets for all relevant
concepts.