A message that is put to a remote queue that is defined as synchronous
is transmitted immediately. Messages put to remote queues defined as asynchronous
are stored within the local queue manager until the queue manager is triggered
into transmitting them. The queue manager can be triggered directly by an
application. The process can be modified or monitored using the queue manager's
transmission rules.
The transmission rules are a subset of the queue manager rules. The two
rules that allow control over message transmission are:
- triggerTransmission()
- This rule determines whether to allow message transmission at the time
when the rule is called. This can be used to veto or allow the transmission
of all messages, that is, either all or none are allowed to be transmitted.
- transmit()
- This rule makes a decision to allow transmission on a per queue basis
for asynchronous remote queues. For example, this makes it possible only to
transmit the messages from queues deemed to be high priority. The transmit() rule
is only called if the triggerTransmission() rule returns
successfully.