あるキューで送信されたメッセージが別のキューで受信されるかどうかをテストする 2 つのメソッドを作成しようとしています。
メソッドの送信 - 「メッセージ 123」などのメッセージを送信して、一意の相関 ID を持つキューをエクスポートします。
メソッドを取得
このキューには多くのメッセージがありますが、相関 ID に基づいて上から送信したメッセージのみを取得したいと考えています。
相関 ID に基づいてメッセージをチェックするコード
properties = new Hashtable();
properties.Add(MQC.CONNECTION_NAME_PROPERTY, "connection name");
properties.Add(MQC.TRANSPORT_PROPERTY, "transport type");
properties.Add(MQC.CHANNEL_PROPERTY, "channel name");
properties.Add(MQC.CONNECT_OPTIONS_PROPERTY, MQC.MQCNO_HANDLE_SHARE_BLOCK);
mqGetMsgOpts = new MQGetMessageOptions();
mqGetMsgOpts.Options = MQC.MQGMO_BROWSE_FIRST | MQC.MQGMO_WAIT | MQC.MQOO_INQUIRE;
mqGetMsgOpts.MatchOptions = MQC.MQMO_MATCH_CORREL_ID;
mqGetMsgOpts.WaitInterval = 3000; //3 secs wait time
直面している問題は、メッセージを読むときに、インポート キューからすべてのメッセージを取得することです。
自分が送信したメッセージだけを取得し、エクスポート キューで受信したメッセージが自分のものであることを確認するにはどうすればよいですか?
理論的には、このようなもの
インポート キューの message.correlationid は、エクスポート キューの message.correlationid と一致します。