From f9e89679b3ad73071a74020079945f04f7201243 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Wed, 4 Oct 2017 11:39:32 +0200 Subject: [PATCH] Added implementation of == operator on Content object + added logs and return values in CPIM Chat Message Modifier --- src/chat/modifier/cpim-chat-message-modifier.cpp | 12 ++++++++---- src/content/content.cpp | 4 ++-- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/chat/modifier/cpim-chat-message-modifier.cpp b/src/chat/modifier/cpim-chat-message-modifier.cpp index 8cac39ada..14fe313ab 100644 --- a/src/chat/modifier/cpim-chat-message-modifier.cpp +++ b/src/chat/modifier/cpim-chat-message-modifier.cpp @@ -22,6 +22,7 @@ #include "content/content-type.h" #include "content/content.h" #include "address/address.h" +#include "logger/logger.h" #include "chat/chat-message-p.h" // ============================================================================= @@ -60,7 +61,8 @@ int CpimChatMessageModifier::encode (ChatMessagePrivate *messagePrivate) { message.setContent(contentBody); if (!message.isValid()) { - //TODO + lError() << "[CPIM] Message is invalid: " << contentBody; + return 500; } else { Content newContent; ContentType newContentType("Message/CPIM"); @@ -80,7 +82,7 @@ int CpimChatMessageModifier::decode (ChatMessagePrivate *messagePrivate) { } ContentType contentType = content.getContentType(); - if (contentType.asString() == "Message/CPIM") { + if (ContentType::isCpim(contentType.asString())) { const vector body = content.getBody(); string contentBody(body.begin(), body.end()); shared_ptr message = Cpim::Message::createFromString(contentBody); @@ -91,10 +93,12 @@ int CpimChatMessageModifier::decode (ChatMessagePrivate *messagePrivate) { newContent.setBody(message->getContent()); messagePrivate->internalContent = newContent; } else { - //TODO + lError() << "[CPIM] Message is invalid: " << contentBody; + return 500; } } else { - //TODO + lError() << "[CPIM] Message is not CPIM but " << contentType.asString(); + return -1; } return 0; } diff --git a/src/content/content.cpp b/src/content/content.cpp index 25cf8dd91..de2ebb9fb 100644 --- a/src/content/content.cpp +++ b/src/content/content.cpp @@ -72,8 +72,8 @@ Content &Content::operator= (Content &&src) { } bool Content::operator==(const Content& content) { - // return true if the two are equal, and false otherwise. - return true; + L_D(); + return d->contentType == content.getContentType() && d->body == content.getBody() && d->contentDisposition == content.getContentDisposition(); } const ContentType &Content::getContentType () const {