ตรวจว่า message ที่รับเข้ามาเป็นแบบใด โดยใช้การ GetType() ของ object
IMessage message = consumer.Receive("TEST.FOO");
Type amqTypeText = typeof(ActiveMQTextMessage);
Type amqTypeBinary = typeof(ActiveMQBytesMessage);
Type amqStream = typeof(ActiveMQStreamMessage);
Console.WriteLine("message type is:" + message.GetType());
if (amqTypeText.IsInstanceOfType(message))
{
Console.WriteLine("receive TEXT message");
ActiveMQTextMessage _textMessage = (ActiveMQTextMessage)message;
messageType = _textMessage.NMSType;
data = Encoding.ASCII.GetBytes(_textMessage.Text);
}
if (amqTypeBinary.IsInstanceOfType(message))
{
Console.WriteLine("receive BYTE message");
ActiveMQBytesMessage _bytesMessage = (ActiveMQBytesMessage)message;
messageType = _bytesMessage.NMSType;
data = _bytesMessage.Content;
}
if (amqStream.IsInstanceOfType(message))
{
Console.WriteLine("receive Stream messge");
ActiveMQStreamMessage _streamMessage = (ActiveMQStreamMessage)message;
messageType = _streamMessage.NMSType;
data = _streamMessage.Content;
}
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment