diff options
| author | Gordon Sim <gsim@apache.org> | 2013-08-23 16:06:41 +0000 |
|---|---|---|
| committer | Gordon Sim <gsim@apache.org> | 2013-08-23 16:06:41 +0000 |
| commit | c26fc960c121e6f0eb58c7a971e5614629643eb1 (patch) | |
| tree | 3476cfc8d18cb5ea16a0eeb7b9341863ce401d70 /cpp/src | |
| parent | 0eb45ebc51e1f420ac4f98b77496d193dd5dbf41 (diff) | |
| download | qpid-python-c26fc960c121e6f0eb58c7a971e5614629643eb1.tar.gz | |
QPID-5090: Infer text/plain as content type over 0-10 for utf8 content
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1516917 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src')
| -rw-r--r-- | cpp/src/qpid/client/amqp0_10/OutgoingMessage.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/cpp/src/qpid/client/amqp0_10/OutgoingMessage.cpp b/cpp/src/qpid/client/amqp0_10/OutgoingMessage.cpp index 41b30be4fe..834ba1fe9f 100644 --- a/cpp/src/qpid/client/amqp0_10/OutgoingMessage.cpp +++ b/cpp/src/qpid/client/amqp0_10/OutgoingMessage.cpp @@ -21,6 +21,7 @@ #include "qpid/client/amqp0_10/OutgoingMessage.h" #include "qpid/client/amqp0_10/AddressResolution.h" #include "qpid/amqp_0_10/Codecs.h" +#include "qpid/types/encodings.h" #include "qpid/types/Variant.h" #include "qpid/messaging/Address.h" #include "qpid/messaging/Message.h" @@ -45,6 +46,7 @@ const std::string SUBJECT("qpid.subject"); const std::string X_APP_ID("x-amqp-0-10.app-id"); const std::string X_ROUTING_KEY("x-amqp-0-10.routing-key"); const std::string X_CONTENT_ENCODING("x-amqp-0-10.content-encoding"); +const std::string TEXT_PLAIN("text/plain"); } void OutgoingMessage::convert(const qpid::messaging::Message& from) @@ -60,6 +62,10 @@ void OutgoingMessage::convert(const qpid::messaging::Message& from) qpid::amqp_0_10::ListCodec::encode(from.getContentObject().asList(), content); message.getMessageProperties().setContentType(qpid::amqp_0_10::ListCodec::contentType); message.setData(content); + } else if (from.getContentObject().getType() == qpid::types::VAR_STRING && + (from.getContentObject().getEncoding() == qpid::types::encodings::UTF8 || from.getContentObject().getEncoding() == qpid::types::encodings::ASCII)) { + message.getMessageProperties().setContentType(TEXT_PLAIN); + message.setData(from.getContent()); } else { message.setData(from.getContent()); message.getMessageProperties().setContentType(from.getContentType()); |
