From f47385682d2e9a82d007481e2c6d171a68dffa5f Mon Sep 17 00:00:00 2001 From: Gordon Sim Date: Tue, 12 Jan 2010 12:02:38 +0000 Subject: QPID-664: Added some of the missing standard message headers. Added two new test utilities for sending and receiving with the new API (both still works in progress). git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@898296 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/client/amqp0_10/IncomingMessages.cpp | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'cpp/src/qpid/client/amqp0_10/IncomingMessages.cpp') diff --git a/cpp/src/qpid/client/amqp0_10/IncomingMessages.cpp b/cpp/src/qpid/client/amqp0_10/IncomingMessages.cpp index e66dc5915c..669ffd7e9a 100644 --- a/cpp/src/qpid/client/amqp0_10/IncomingMessages.cpp +++ b/cpp/src/qpid/client/amqp0_10/IncomingMessages.cpp @@ -264,22 +264,32 @@ void IncomingMessages::MessageTransfer::retrieve(qpid::messaging::Message* messa parent.retrieve(content, message); } + +namespace { +//TODO: unify conversion to and from 0-10 message that is currently +//split between IncomingMessages and OutgoingMessage +const std::string SUBJECT("subject"); +} + void populateHeaders(qpid::messaging::Message& message, const DeliveryProperties* deliveryProperties, const MessageProperties* messageProperties) { if (deliveryProperties) { - message.setSubject(deliveryProperties->getRoutingKey()); - //TODO: convert other delivery properties + message.setTtl(deliveryProperties->getTtl()); + message.setDurable(deliveryProperties->getDeliveryMode() == DELIVERY_MODE_PERSISTENT); + MessageImplAccess::get(message).redelivered = deliveryProperties->getRedelivered(); } if (messageProperties) { message.setContentType(messageProperties->getContentType()); if (messageProperties->hasReplyTo()) { message.setReplyTo(AddressResolution::convert(messageProperties->getReplyTo())); } + message.setSubject(messageProperties->getApplicationHeaders().getAsString(SUBJECT)); message.getHeaders().clear(); translate(messageProperties->getApplicationHeaders(), message.getHeaders()); - //TODO: convert other message properties + message.setCorrelationId(messageProperties->getCorrelationId()); + message.setUserId(messageProperties->getUserId()); } } -- cgit v1.2.1