4.4.1 tpenqueueリクエストの処理
tpenqueueリクエストの構文は次のとおりです:
tpenqueue (qspace, qname, qctl, data, len, flags)tpenqueueリクエストでは、前述のすべてのパラメータが必要です。これらのパラメータについて、以下に簡単に説明します。詳細については、Oracle TUXEDOのプログラマーズ・ガイドを参照してください。
-
QSPACE - TMQUEUE_MQMで通知されたサービスの名前。この値は、TUXEDO UBBCONFIGファイルで-sオプションを使用して上書きすることができます。例:
-s myname :MQMQUEUEデフォルトはMQMQUEUEです。
-
QNAME - アダプタがメッセージを置いたり、取り出したりするキューの名前。127文字まで指定できます。TMQUEUE_MQM構成ファイルのQUEUEセクションにあるTUXNAMEパラメータからマップされたWebSphere MQキューに相当します。
-
QCTL - メッセージに関する追加情報を指定します。
tpenqueueリクエストで定義できる、サポートされるオプションは次のとおりです。-
TPNOFLAGS - このメッセージに適用されるオプションはありません
-
TPQPRIORITY - メッセージの優先度。このフィールドで指定できるTUXEDO値は1 - 100です。指定できるMQ値は0 - 9であり、TUXEDO値に0=TUXEDO 1-10、1=TUXEDO 11-20、のようにマップされます。
-
TPQCORRID - 相関ID。リクエストに対するレスポンスを識別します。TUXEDOは最大32バイトをサポートします。MQ Adapterは最大24バイトをサポートするため、
tpenqueueリクエストではTUXEDO値が切り詰められます。 -
TPQREPLYQ - 応答メッセージを置くキューの名前。127文字まで指定できます。
-
TPQMSGID - メッセージがキューに置かれたときに生成されるメッセージIDを返します。TUXEDOは最大32バイトをサポートします。MQ Adapterでは最大24バイトをサポートするため、IDにnull値が追加されます。
-
TPQDELIVERYQOS - サービスの配信品質を指定します。TPQQOSPERSISTENTの値を指定した場合、MQの永続性はMQPER_PERSISTENTに設定されます。TPQQOSNONPERSISTENTの値を指定した場合、MQの永続性はMQPER_NOT_PERSISTENTに設定されます。TPQQOSDEFAULTPERSISTの値を指定した場合、または、TPQDELIVERYQOSの値を指定しない場合、MQの永続性は、トランザクション内でリクエストが作成された場合はMQPER_PERSISTENTに設定されますが、それ以外の場合はMQPER_PERSISTENCE_AS_Q_DEFに設定されます。
-
TPQEXPTIME_NONE - キューに登録されたメッセージが期限切れにならないことを指定します。これは、WebSphere MQに渡されるMQMD構造体のMQEI_UNLIMITEDの値に相当します。
-
TPQEXPTIME_ABS - キューに登録されたメッセージの期限の絶対時間を指定します。この値は、WebSphere MQで解釈される形式に変換されて、WebSphere MQ MQMD構造体のExpiryフィールドを通じてMQに渡されます。
-
TPQEXPTIME_REL - キューに登録されたメッセージの期限の相対時間を指定します。この値は、WebSphere MQで解釈される形式に変換されて、WebSphere MQ MQMD構造体のExpiryフィールドを通じてMQに渡されます。
ノート:
TPQFAILUREQ、TPQBEFOREMSGID、TPQTOP、TPQTIME_REL、TPQTIME_ABS、およびTPQREPLYQOSオプションは、TMQUEUE_MQMに対するtpenqueueリクエストではサポートされません。
-
-
DATA - キューに置かれるデータ
-
LEN - キューに置かれるデータの長さ
-
FLAGS - メッセージのフラグ設定を定義します。
tpenqueueリクエストでサポートされるフラグは次のとおりです。