summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/SemanticState.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/qpid/broker/SemanticState.cpp')
-rw-r--r--cpp/src/qpid/broker/SemanticState.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/cpp/src/qpid/broker/SemanticState.cpp b/cpp/src/qpid/broker/SemanticState.cpp
index 2251901340..c2f6e3c307 100644
--- a/cpp/src/qpid/broker/SemanticState.cpp
+++ b/cpp/src/qpid/broker/SemanticState.cpp
@@ -34,7 +34,7 @@
#include "TxPublish.h"
#include "qpid/framing/reply_exceptions.h"
#include "qpid/framing/MessageTransferBody.h"
-#include "qpid/framing/Message010TransferBody.h"
+#include "qpid/framing/MessageXTransferBody.h"
#include "qpid/log/Statement.h"
#include "qpid/ptr_map.h"
@@ -351,10 +351,11 @@ void SemanticState::handle(intrusive_ptr<Message> msg) {
void SemanticState::route(intrusive_ptr<Message> msg, Deliverable& strategy) {
std::string exchangeName = msg->getExchangeName();
- if (msg->isA<MessageTransferBody>()) {
+ //TODO: the following should be hidden behind message (using MessageAdapter or similar)
+ if (msg->isA<MessageXTransferBody>()) {
+ msg->getProperties<PreviewDeliveryProperties>()->setExchange(exchangeName);
+ } else if (msg->isA<MessageTransferBody>()) {
msg->getProperties<DeliveryProperties>()->setExchange(exchangeName);
- } else if (msg->isA<Message010TransferBody>()) {
- msg->getProperties<DeliveryProperties010>()->setExchange(exchangeName);
}
if (!cacheExchange || cacheExchange->getName() != exchangeName){
cacheExchange = session.getBroker().getExchanges().get(exchangeName);