[messaging] Replace MessageFolder with json. 57/219757/4
authorMichal Michalski <m.michalski2@partner.samsung.com>
Mon, 9 Dec 2019 15:37:30 +0000 (16:37 +0100)
committerMichal Michalski <m.michalski2@partner.samsung.com>
Tue, 10 Dec 2019 13:51:06 +0000 (14:51 +0100)
[Verification] tct-messaging-*-tizen-tests 100% pass.

Signed-off-by: Michal Michalski <m.michalski2@partner.samsung.com>
Change-Id: I211ef9a458b3bab6f795071dc6ed8daa14e6bcf3

src/messaging/DBus/MessageProxy.cpp
src/messaging/email_manager.cc
src/messaging/folders_change_callback.cc
src/messaging/message_folder.cc
src/messaging/message_folder.h
src/messaging/message_storage_email.cc
src/messaging/messaging_instance.cc
src/messaging/messaging_native.cc

index 9297c13..ed918a2 100644 (file)
@@ -252,9 +252,7 @@ PlatformResult MessageProxy::handleMailboxEvent(int account_id, int mailbox_id,
   eventFolder->service_type = MessageType::EMAIL;
   eventFolder->service_id = account_id;
 
-  auto folder = std::make_shared<MessageFolder>();
-  folder->attributes = createMessageFolder(std::to_string(mailbox_id));
-
+  auto folder = std::make_shared<MessageFolder>(createMessageFolder(std::to_string(mailbox_id)));
   if (event != NOTI_MAILBOX_DELETE) {
     auto ret = native::EmailGetMailboxById(mailbox_id, *folder);
     if (ret.IsError()) {
index efa2b57..52ec4e0 100644 (file)
@@ -729,8 +729,7 @@ void EmailManager::syncFolder(SyncFolderCallbackData* callback) {
 
   email_mailbox_t* mailbox = NULL;
 
-  const std::string folder_id_str =
-      callback->getMessageFolder()->attributes.get("id").get<std::string>();
+  const std::string folder_id_str = callback->getMessageFolder()->get("id").get<std::string>();
   int folder_id = 0;
   std::istringstream(folder_id_str) >> folder_id;
 
index 7db9867..c92d04b 100644 (file)
@@ -53,9 +53,7 @@ void FoldersChangeCallback::Handler(const FolderPtrVector& folders, const char*
   }
 
   picojson::array array;
-  auto each = [&array](std::shared_ptr<MessageFolder> f) -> void {
-    array.push_back(picojson::value(f->attributes));
-  };
+  auto each = [&array](std::shared_ptr<MessageFolder> f) -> void { array.push_back(*f); };
   for_each(filtered.begin(), filtered.end(), each);
 
   LoggerD("Calling:%s with:%zu added folders", action, filtered.size());
index f33e64e..5ede30f 100644 (file)
@@ -63,15 +63,15 @@ FolderPtrVector filterFolders(tizen::AbstractFilterPtr filter,
 
   FolderPtrVector filtered_folders;
   for (const auto& fp : source_folders) {
-    if (filter->isMatching(picojson::value(fp->attributes))) {
+    if (filter->isMatching(*fp)) {
       LoggerD("folder id: %s, folder name: %s, match: yes",
-              fp->attributes.get(MESSAGE_FOLDER_ATTRIBUTE_ID).get<std::string>().c_str(),
-              fp->attributes.get(MESSAGE_FOLDER_ATTRIBUTE_NAME).get<std::string>().c_str());
+              fp->get(MESSAGE_FOLDER_ATTRIBUTE_ID).get<std::string>().c_str(),
+              fp->get(MESSAGE_FOLDER_ATTRIBUTE_NAME).get<std::string>().c_str());
       filtered_folders.push_back(fp);
     } else {
       LoggerD("folder id: %s, folder name: %s, match: no",
-              fp->attributes.get(MESSAGE_FOLDER_ATTRIBUTE_ID).get<std::string>().c_str(),
-              fp->attributes.get(MESSAGE_FOLDER_ATTRIBUTE_NAME).get<std::string>().c_str());
+              fp->get(MESSAGE_FOLDER_ATTRIBUTE_ID).get<std::string>().c_str(),
+              fp->get(MESSAGE_FOLDER_ATTRIBUTE_NAME).get<std::string>().c_str());
     }
   }
 
index 461c87a..852d581 100644 (file)
@@ -45,10 +45,7 @@ picojson::value createMessageFolder(const std::string& id, const std::string& na
                                     const std::string& path = "",
                                     const std::string& parent_id = "");
 
-struct MessageFolder {
-  picojson::value attributes;
-};
-
+using MessageFolder = picojson::value;
 typedef std::vector<std::shared_ptr<MessageFolder>> FolderPtrVector;
 FolderPtrVector filterFolders(tizen::AbstractFilterPtr filter,
                               const FolderPtrVector& source_folders);
index bad9ce0..47700cc 100644 (file)
@@ -230,8 +230,8 @@ static gboolean FindFoldersGlibTask(void* data) {
   auto json = picojson::value(picojson::array());
   auto& folders_list = json.get<picojson::array>();
   for (const auto& folder : folders) {
-    if (params->filter->isMatching(picojson::value(folder.attributes))) {
-      folders_list.push_back(picojson::value(folder.attributes));
+    if (params->filter->isMatching(folder)) {
+      folders_list.push_back(folder);
     }
   }
 
index 1a2aa1e..89dd5b8 100644 (file)
@@ -345,8 +345,7 @@ void MessagingInstance::MessageServiceSyncFolder(const picojson::value& args,
 
   SyncFolderCallbackData* callback = new SyncFolderCallbackData(queue_, callbackId, *this);
   callback->setAccountId(id);
-  auto folder_ptr = std::make_shared<MessageFolder>();
-  folder_ptr->attributes = v_folder;
+  auto folder_ptr = std::make_shared<MessageFolder>(v_folder);
   callback->setMessageFolder(folder_ptr);
   callback->setLimit(limit);
 
index 5154193..47b7a41 100644 (file)
@@ -88,7 +88,7 @@ PlatformResult EmailGetMailboxList(int account_id, std::vector<MessageFolder>& f
 
   for (int i = 0; i < count; ++i) {
     MessageFolder folder;
-    folder.attributes = ConvertMailboxToJson(mailboxes[i]);
+    folder = ConvertMailboxToJson(mailboxes[i]);
     folders.push_back(folder);
   }
 
@@ -104,7 +104,7 @@ PlatformResult EmailGetMailboxById(int mailbox_id, MessageFolder& folder) {
     return PlatformResult(ErrorCode::UNKNOWN_ERR, "email_get_mailbox_by_mailbox_id() failed.");
   }
 
-  folder.attributes = ConvertMailboxToJson(*mailbox);
+  folder = ConvertMailboxToJson(*mailbox);
   if (EMAIL_ERROR_NONE != email_free_mailbox(&mailbox, 1)) {
     LoggerW("Calling email_free_mailbox() failed.");
   }