4.4.1 Processing a tpenqueue Request

The syntax for a tpenqueue request is as follows:

tpenqueue (qspace, qname, qctl, data, len, flags)

A tpenqueue request requires all parameters shown previously. Following are brief descriptions of these parameters. For more information, refer to the Oracle TUXEDO Programmer's Guide.

QSPACE
The name of the service advertised by TMQUEUE_MQM. This value can be overwritten in the TUXEDO UBBCONFIG file using the - s option. For example:
-s myname :MQMQUEUE

Default is MQMQUEUE.

QNAME
The name of the queue where you want the adapter to place or retrieve messages. Can contain up to 127 characters. Corresponds to a WebSphere MQ queue mapped from the TUXNAME parameter in the QUEUE section of the TMQUEUE_MQM configuration file.
QCTL
Provides additional information about the message. The supported options you can define for tpenqueue requests are as follows:
TPNOFLAGS
No options apply to this message
TPQPRIORITY
Message priority. TUXEDO values for this field can be from 1-100. The MQ values can be 0-9 and are mapped to TUXEDO values as follows: 0=TUXEDO 1-10, 1=TUXEDO 11-20, etc.
TPQCORRID
Correlation ID. Identifies the response to a request. TUXEDO supports up to 32 bytes. The MQ Adapter supports up to 24 bytes, so TUXEDO values are truncated on tpenqueue requests.
TPQREPLYQ
Name of the queue where you want to place reply messages. Can contain up to 127 characters.
TPQMSGID
Return the message ID generated when the message is placed on the queue. TUXEDO supports up to 32 bytes. The MQ Adapter supports up to 24 bytes and pads the ID with nulls.
TPQDELIVERYQOS
Specifies the delivery quality of service. If a value of TPQQOSPERSISTENT is specified, the MQ persistence is set to MQPER_PERSISTENT. If a value of TPQQOSNONPERSISTENT is specified, the MQ persistence is set to MQPER_NOT_PERSISTENT. If a value of TPQQOSDEFAULTPERSIST is specified or if TPQDELIVERYQOS is not specified, then MQ persistence is set to MQPER_PERSISTENT if the request was made in a transaction and is set to MQPER_PERSISTENCE_AS_Q_DEF otherwise.
TPQEXPTIME_NONE
Specifies that the queued message should not expire. This corresponds to a value of MQEI_UNLIMITED in the MQMD structure passed to WebSphere MQ.
TPQEXPTIME_ABS
Specifies an absolute expiration time for the queued message. This value is converted to a format understood by WebSphere MQ and passed to MQ via the Expiry field of the WebSphere MQ MQMD structure.
TPQEXPTIME_REL
Specifies a relative expiration time for the queued message. This value is converted to a format understood by WebSphere MQ and passed to MQ via the Expiry field of the WebSphere MQ MQMD structure.

Note:

The TPQFAILUREQ, TPQBEFOREMSGID, TPQTOP, TPQTIME_REL, TPQTIME_ABS, and TPQREPLYQOS options are not supported for tpenqueue requests to TMQUEUE_MQM
DATA
Data to be placed on the queue
LEN
Length of the data to be placed on the queue
FLAGS
Defines the flag settings for the message. The supported flags for tpenqueue requests are as follows:
TPNOTRAN
Messages from callers that are in transaction mode are not queued within the same transaction as the caller.