- All Implemented Interfaces:
- javax.jms.ExceptionListener, javax.jms.MessageListener
public class Receiver
extends Client
implements javax.jms.MessageListener
A generic receiver which consumes messages
from a given address in a broker (host/port)
until told to stop by killing it.
It participates in a feedback loop to ensure the producer
doesn't fill up the queue. If it receives an "End" msg
it sends a reply to the replyTo address in that msg.
It doesn't check for correctness or measure anything
leaving those concerns to another entity.
However it prints a timestamp every x secs(-Dreport_frequency)
as checkpoint to figure out how far the test has progressed if
a failure occurred.
It also takes in an optional Error handler to
pass out any error in addition to writing them to std err.
This is intended more as building block to create
more complex test cases. However there is a main method
provided to use this standalone.
The following options are available and configurable
via jvm args.
sync_rcv - Whether to consume sync (instead of using a listener).
report_frequency - how often a timestamp is printed
durable
transacted
tx_size - size of transaction batch in # msgs. *
check_for_dups - check for duplicate messages and out of order messages.
jms_durable_sub - create a durable subscription instead of a regular subscription.