C++ で activemq プロデューサーを作成しています。これは、.net プラットフォームの activemq キューにマップ メッセージを書き込みます。同じメッセージを消費しNMSXGroupID (of the ActiveMQMapMessage type)
ているときに、メッセージを適切にルーティングするためにを使用しています。.net
private MyBytesMessage GetMyMessage(IMessage sourceMsg)
{
if (sourceMsg == null)
return null;
MyBytesMessage myMessage = null;
ActiveMQMapMessage bMessage = sourceMsg as ActiveMQMapMessage;
if (bMessage != null)
{
if (bMessage.Body.Keys.Count > 0)
{
byte[] messageBody = bMessage.Body.GetBytes("body") as byte[];
if (messageBody != null)
{
myMessage = new MyBytesMessage(messageBody);
myMessage.MessageGroupID = bMessage.NMSXGroupID;
}
}
}
return myMessage;
}
メッセージを書いているときに、C++ 側から同じ ID を設定したい。