In the Java™ code base, each queue has its own set of rules.
A solution can extend the behavior of these rules. All queue rules should
descend from class com.ibm.mqe.MQeQueueRule.
In the C code base, only a single set of rules is loaded.
A user can implement different rules for different queues by loading other
rules modules from the 'master' module. The master rules functions can then
invoke the corresponding functions in any other modules as required.
Queue rules are called when:
- The queue is activated.
- The queue is closed.
- A message is placed on the queue using a put operation (Java
code base only).
- A message is removed from the queue using a get operation.
- A message is deleted from the queue using a delete operation (Java
code base only).
- The queue is browsed.
- An undo operation is performed on a message on the queue.
- A message listener is added to the queue (Java
code base only).
- A message listener is removed from the queue (Java
code base only).
- A message expires.
- An attempt is made to change a queue's attributes, that is authenticator,
cryptor, compressor (Java code base only).
- A duplicate message is put onto a queue.
- A message is being transmitted from a remote asynchronous queue.