How to create queue manager and reply-to aliases
This topic explains the three ways that we can create a remote queue definition.
The remote queue definition object is used in three different ways. Table 1 explains how to define each of the three ways:- Use a remote queue definition to redefine a local queue name.
The application provides only the queue name when opening a queue, and this queue name is the name of the remote queue definition.
The remote queue definition contains the names of the target queue and queue manager. Optionally, the definition can contain the name of the transmission queue to be used. If no transmission queue name is provided, the queue manager uses the queue manager name, taken from the remote queue definition, for the transmission queue name. If a transmission queue of this name is not defined, but a default transmission queue is defined, the default transmission queue is used.
- Use a remote queue definition to redefine a queue manager name.
The application, or channel program, provides a queue name together with the remote queue manager name when opening the queue.
If we have provided a remote queue definition with the same name as the queue manager name, and you have left the queue name in the definition blank, then the queue manager substitutes the queue manager name in the open call with the queue manager name in the definition.
In addition, the definition can contain the name of the transmission queue to be used. If no transmission queue name is provided, the queue manager takes the queue manager name, taken from the remote queue definition, for the transmission queue name. If a transmission queue of this name is not defined, but a default transmission queue is defined, the default transmission queue is used.
- Use a remote queue definition to redefine a reply-to queue name.
Each time an application puts a message to a queue, it can provide the name of a reply-to queue for answer messages but with the queue manager name blank.
If you provide a remote queue definition with the same name as the reply-to queue then the local queue manager replaces the reply-to queue name with the queue name from your definition.
We can provide a queue manager name in the definition, but not a transmission queue name.
Usage | Queue manager name | Queue name | Transmission queue name |
---|---|---|---|
1. Remote queue definition (on OPEN call) | |||
Supplied in the call | blank or local QM | (*) required | not applicable |
Supplied in the definition | required | required | optional |
2. Queue manager alias (on OPEN call) | |||
Supplied in the call | (*) required and not local QM | required | not applicable |
Supplied in the definition | required | blank | optional |
3. Reply-to queue alias (on PUT call) | |||
Supplied in the call | blank | (*) required | not applicable |
Supplied in the definition | optional | optional | blank |
For a formal description, see Queue name resolution.
Parent topic: Message flow control