[Messaging] Fixed TODO sections for filter handling.
authorTomasz Marciniak <t.marciniak@samsung.com>
Tue, 6 Oct 2015 08:17:45 +0000 (10:17 +0200)
committerTomasz Marciniak <t.marciniak@samsung.com>
Tue, 6 Oct 2015 08:17:45 +0000 (10:17 +0200)
[Verification] Code compiles. TCT pass rate 100%

Change-Id: I032fc218b49a0bf818bec4a1c5d151adfa6269c6
Signed-off-by: Tomasz Marciniak <t.marciniak@samsung.com>
src/messaging/change_listener_container.h
src/messaging/conversations_change_callback.cc
src/messaging/folders_change_callback.cc

index 4a76e4bd28cfe7723bb63d5ba369f74a5a9fcaa7..115950ad3b4d997a87d2aebc2d102a68544c7f89 100755 (executable)
@@ -44,7 +44,6 @@ struct EventMessages {
     MessageType service_type;
     MessagePtrVector items;
     ConversationPtrVector removed_conversations;
-    // TODO: Filtering support
 };
 
 //! Data related to ConversationChange event passed to add/update/remove callbacks
@@ -52,7 +51,6 @@ struct EventConversations {
     int service_id;
     MessageType service_type;
     ConversationPtrVector items;
-    // TODO: Filtering support
 };
 
 //! Data related to FolderChange event passed to add/update/remove callbacks
@@ -60,7 +58,6 @@ struct EventFolders {
     int service_id;
     MessageType service_type;
     FolderPtrVector items;
-    // TODO: Filtering support
 };
 
 template <class T > struct CallbackDataHolder {
@@ -165,7 +162,6 @@ class ChangeListenerContainer {
                             && callback->getServiceId() == event->service_id) {
                         LoggerD("Found callback for given service id (%d) and type (%d)",
                                 event->service_id, event->service_type);
-                        //@todo filter msgs
                         callback->added(event->items);
                     }
                 }
@@ -194,7 +190,6 @@ class ChangeListenerContainer {
                             && callback->getServiceId() == event->service_id) {
                         LoggerD("Found callback for given service id (%d) and type (%d)",
                                 event->service_id, event->service_type);
-                        //@todo filter msgs
                         callback->updated(event->items);
                     }
                 }
@@ -224,7 +219,6 @@ class ChangeListenerContainer {
                             && callback->getServiceId() == event->service_id) {
                         LoggerD("Found callback for given service id (%d) and type (%d)",
                                 event->service_id, event->service_type);
-                        //@todo filter msgs
                         callback->removed(event->items);
                     }
                 }
index 9e0cc33d67fba9c0a9dce1857492e27973ef9edd..841fef614bf49c8b47022db636fdd83b440d515f 100755 (executable)
@@ -101,6 +101,12 @@ void ConversationsChangeCallback::added(
 
     ConversationPtrVector filtered = filterConversations(m_filter, conversations);
 
+    //if filter is set but there is no conversation matched just return;
+    if (!filtered.size()) {
+      LoggerD("There is no matched result.");
+      return;
+    }
+
     picojson::array array;
     auto each = [&array] (std::shared_ptr<MessageConversation> c)->void {
         array.push_back(MessagingUtil::conversationToJson(c));
@@ -129,6 +135,12 @@ void ConversationsChangeCallback::updated(
 
     ConversationPtrVector filtered = filterConversations(m_filter, conversations);
 
+    //if filter is set but there is no conversation matched just return;
+    if (!filtered.size()) {
+      LoggerD("There is no matched result.");
+      return;
+    }
+
     picojson::array array;
     auto each = [&array] (std::shared_ptr<MessageConversation> c)->void {
         array.push_back(MessagingUtil::conversationToJson(c));
@@ -157,6 +169,12 @@ void ConversationsChangeCallback::removed(
 
     ConversationPtrVector filtered = filterConversations(m_filter, conversations);
 
+    //if filter is set but there is no conversation matched just return;
+    if (!filtered.size()) {
+      LoggerD("There is no matched result.");
+      return;
+    }
+
     picojson::array array;
     auto each = [&array] (std::shared_ptr<MessageConversation> c)->void {
         array.push_back(MessagingUtil::conversationToJson(c));
index 810cc573fdaf1b108a284d5c83f412e685f64163..504f8b538679dd1b821f9db3ce384699fa74e4e4 100755 (executable)
@@ -84,6 +84,12 @@ void FoldersChangeCallback::added(const FolderPtrVector& folders)
 
     FolderPtrVector filtered = filterFolders(m_filter, folders);
 
+    //if filter is set but there is no folder matched just return;
+    if (!filtered.size()) {
+      LoggerD("There is no matched result.");
+      return;
+    }
+
     picojson::array array;
     auto each = [&array] (std::shared_ptr<MessageFolder> f)->void {
         array.push_back(MessagingUtil::folderToJson(f));
@@ -115,6 +121,12 @@ void FoldersChangeCallback::updated(const FolderPtrVector& folders)
 
     FolderPtrVector filtered = filterFolders(m_filter, folders);
 
+    //if filter is set but there is no folder matched just return;
+    if (!filtered.size()) {
+      LoggerD("There is no matched result.");
+      return;
+    }
+
     picojson::array array;
     auto each = [&array] (std::shared_ptr<MessageFolder> f)->void {
         array.push_back(MessagingUtil::folderToJson(f));
@@ -146,6 +158,12 @@ void FoldersChangeCallback::removed(const FolderPtrVector& folders)
 
     FolderPtrVector filtered = filterFolders(m_filter, folders);
 
+    //if filter is set but there is no folder matched just return;
+    if (!filtered.size()) {
+      LoggerD("There is no matched result.");
+      return;
+    }
+
     picojson::array array;
     auto each = [&array] (std::shared_ptr<MessageFolder> f)->void {
         array.push_back(MessagingUtil::folderToJson(f));