m_id(-1), m_id_set(false), m_conversation_id(-1),
m_conversation_id_set(false), m_folder_id(-1), m_folder_id_set(false),
m_type(UNDEFINED), m_timestamp_set(false), m_from_set(false),
- //m_body(new(std::nothrow) MessageBody()),
+ m_body(new(std::nothrow) MessageBody()),
m_service_id(0), m_is_read(false), m_has_attachment(false),
m_high_priority(false), m_in_response(-1), m_in_response_set(false),
m_service_id_set(false), m_status(STATUS_UNDEFINED),
{
// while replacing message body old body should have some invalid id mark
m_body->setMessageId(-1);
+
m_body = body;
if(m_id_set) {
m_body->setMessageId(m_id);
const char* MESSAGE_ATTRIBUTE_MESSAGE_STATUS = "messageStatus";
const char* MESSAGE_ATTRIBUTE_ATTACHMENTS = "attachments";
const char* MESSAGE_ATTRIBUTE_HAS_ATTACHMENT = "hasAttachment";
+const char* MESSAGE_ATTRIBUTE_MESSAGE_BODY = "body";
+
+const char* MESSAGE_BODY_ATTRIBUTE_LOADED = "loaded";
+const char* MESSAGE_BODY_ATTRIBUTE_PLAIN_BODY = "plainBody";
+const char* MESSAGE_BODY_ATTRIBUTE_HTML_BODY = "htmlBody";
namespace {
const std::string TYPE_SMS = "messaging.sms";
MESSAGE_ATTRIBUTE_IS_HIGH_PRIORITY);
message->setIsHighPriority(priority);
- // TODO MessageBody
+ std::shared_ptr<MessageBody> body = std::shared_ptr<MessageBody>(new MessageBody());
+ picojson::object mb = MessagingUtil::getValueFromJSONObject<picojson::object>(
+ data, MESSAGE_ATTRIBUTE_MESSAGE_BODY);
+
+ bool loaded = MessagingUtil::getValueFromJSONObject<bool>(mb,
+ MESSAGE_BODY_ATTRIBUTE_LOADED);
+ body->setLoaded(loaded);
+
+ std::string html = MessagingUtil::getValueFromJSONObject<std::string>(mb,
+ MESSAGE_BODY_ATTRIBUTE_HTML_BODY);
+ body->setHtmlBody(html);
+
+ std::string plain = MessagingUtil::getValueFromJSONObject<std::string>(mb,
+ MESSAGE_BODY_ATTRIBUTE_PLAIN_BODY);
+ body->setPlainBody(plain);
+
+ message->setBody(body);
+
+ // TODO MessageAttachments
return message;
extern const char* MESSAGE_ATTRIBUTE_MESSAGE_STATUS;
extern const char* MESSAGE_ATTRIBUTE_ATTACHMENTS;
extern const char* MESSAGE_ATTRIBUTE_HAS_ATTACHMENT;
+extern const char* MESSAGE_ATTRIBUTE_MESSAGE_BODY;
+
+extern const char* MESSAGE_BODY_ATTRIBUTE_LOADED;
+extern const char* MESSAGE_BODY_ATTRIBUTE_PLAIN_BODY;
+extern const char* MESSAGE_BODY_ATTRIBUTE_HTML_BODY;
enum MessageType {
UNDEFINED = 0,