From: Michal Michalski Date: Wed, 27 Nov 2019 15:13:10 +0000 (+0100) Subject: [messaging] Get rid of FoldersDataCallback structure. X-Git-Tag: accepted/tizen/unified/20191212.123659~16 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F45%2F218745%2F7;p=platform%2Fcore%2Fapi%2Fwebapi-plugins.git [messaging] Get rid of FoldersDataCallback structure. [Verification] tct-messaging-*-tizen-tests 100% pass. Signed-off-by: Michal Michalski Change-Id: If63afc96ff26cbd820aad8781e233eee8b3c4e26 --- diff --git a/src/messaging/folders_callback_data.cc b/src/messaging/folders_callback_data.cc deleted file mode 100644 index 56dc6ac..0000000 --- a/src/messaging/folders_callback_data.cc +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#include "folders_callback_data.h" - -namespace extension { -namespace messaging { - -FoldersCallbackData::~FoldersCallbackData() { - ScopeLogger(); -} - -void FoldersCallbackData::addFolder(std::shared_ptr folder) { - ScopeLogger(); - m_folders.push_back(folder); -} - -const std::vector>& FoldersCallbackData::getFolders() const { - return m_folders; -} - -void FoldersCallbackData::setFilter(tizen::AbstractFilterPtr filter) { - m_filter = filter; -} - -tizen::AbstractFilterPtr FoldersCallbackData::getFilter() const { - return m_filter; -} - -void FoldersCallbackData::setMessageStorageId(int id) { - m_message_storage_id = id; -} - -int FoldersCallbackData::getMessageStorageId() const { - return m_message_storage_id; -} - -} // messaging -} // extension diff --git a/src/messaging/folders_callback_data.h b/src/messaging/folders_callback_data.h deleted file mode 100644 index 7900dbf..0000000 --- a/src/messaging/folders_callback_data.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef __TIZEN_FOLDERS_CALLBACK_DATA_H__ -#define __TIZEN_FOLDERS_CALLBACK_DATA_H__ - -#include "common/platform_result.h" - -#include -#include -#include - -#include "MsgCommon/AbstractFilter.h" -#include "messaging/callback_user_data.h" - -#include "message_folder.h" -#include "messaging_util.h" - -namespace extension { -namespace messaging { - -class MessageFolder; - -class FoldersCallbackData : public CallbackUserData { - public: - using CallbackUserData::CallbackUserData; - virtual ~FoldersCallbackData(); - - void addFolder(std::shared_ptr folder); - const std::vector>& getFolders() const; - - void setFilter(tizen::AbstractFilterPtr filter); - tizen::AbstractFilterPtr getFilter() const; - - void setMessageStorageId(int id); - int getMessageStorageId() const; - - private: - std::vector> m_folders; - tizen::AbstractFilterPtr m_filter; - int m_message_storage_id = -1; -}; - -} // messaging -} // extension - -#endif /* __TIZEN_FOLDERS_CALLBACK_DATA_H__ */ diff --git a/src/messaging/folders_change_callback.cc b/src/messaging/folders_change_callback.cc index 23809e5..97f19a0 100644 --- a/src/messaging/folders_change_callback.cc +++ b/src/messaging/folders_change_callback.cc @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +#include "common/extension.h" #include "common/logger.h" #include "common/platform_exception.h" #include "messaging_instance.h" @@ -20,6 +21,8 @@ #include "folders_change_callback.h" +using common::Instance; + namespace extension { namespace messaging { @@ -27,14 +30,10 @@ const char* FOLDERSADDED = "foldersadded"; const char* FOLDERSUPDATED = "foldersupdated"; const char* FOLDERSREMOVED = "foldersremoved"; -FoldersChangeCallback::FoldersChangeCallback(long cid, int service_id, MessageType service_type, - PostQueue& queue, MessagingInstance& instance) - : m_callback_data(queue, cid, instance, true), - m_id(service_id), - m_msg_type(service_type), - m_is_act(true) { +FoldersChangeCallback::FoldersChangeCallback(int service_id, MessageType service_type, + MessagingInstance& instance) + : m_id(service_id), m_msg_type(service_type), m_is_act(true), m_messaging_instance(instance) { ScopeLogger(); - m_callback_data.SetListenerId("FoldersChangeListener"); } FoldersChangeCallback::~FoldersChangeCallback() { @@ -68,15 +67,13 @@ FolderPtrVector FoldersChangeCallback::filterFolders(tizen::AbstractFilterPtr fi } } -void FoldersChangeCallback::added(const FolderPtrVector& folders) { - ScopeLogger("folders.size() = %zu", folders.size()); +void FoldersChangeCallback::Handler(const FolderPtrVector& folders, const char* action) { + ScopeLogger("action: %s, folders.size() = %zu", action, folders.size()); if (!m_is_act) { return; } 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; @@ -88,62 +85,24 @@ void FoldersChangeCallback::added(const FolderPtrVector& folders) { }; for_each(filtered.begin(), filtered.end(), each); - LoggerD("Calling:%s with:%zu added folders", FOLDERSADDED, filtered.size()); + LoggerD("Calling:%s with:%zu added folders", action, filtered.size()); + picojson::object data; + data["action"] = picojson::value(action); + data["result"] = picojson::value(array); + data["listenerId"] = picojson::value("FoldersChangeListener"); + Instance::PostMessage(&m_messaging_instance, picojson::value(data)); +} - m_callback_data.SetAction(FOLDERSADDED, picojson::value(array)); - m_callback_data.AddAndPost(PostPriority::MEDIUM); +void FoldersChangeCallback::added(const FolderPtrVector& folders) { + Handler(folders, FOLDERSADDED); } void FoldersChangeCallback::updated(const FolderPtrVector& folders) { - ScopeLogger("folders.size() = %zu", folders.size()); - if (!m_is_act) { - return; - } - - 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 f) -> void { - array.push_back(MessagingUtil::folderToJson(f)); - }; - for_each(filtered.begin(), filtered.end(), each); - - LoggerD("Calling:%s with:%zu updated folders", FOLDERSUPDATED, filtered.size()); - - m_callback_data.SetAction(FOLDERSUPDATED, picojson::value(array)); - m_callback_data.AddAndPost(PostPriority::LOW); + Handler(folders, FOLDERSUPDATED); } void FoldersChangeCallback::removed(const FolderPtrVector& folders) { - ScopeLogger("folders.size() = %zu", folders.size()); - if (!m_is_act) { - return; - } - - 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 f) -> void { - array.push_back(MessagingUtil::folderToJson(f)); - }; - for_each(filtered.begin(), filtered.end(), each); - - LoggerD("Calling:%s with:%zu removed folders", FOLDERSREMOVED, filtered.size()); - - m_callback_data.SetAction(FOLDERSREMOVED, picojson::value(array)); - m_callback_data.AddAndPost(PostPriority::LAST); + Handler(folders, FOLDERSREMOVED); } void FoldersChangeCallback::setFilter(tizen::AbstractFilterPtr filter) { diff --git a/src/messaging/folders_change_callback.h b/src/messaging/folders_change_callback.h index c09fa72..b3d0d01 100644 --- a/src/messaging/folders_change_callback.h +++ b/src/messaging/folders_change_callback.h @@ -22,10 +22,6 @@ #include "message_folder.h" #include "messaging_util.h" -#include "folders_callback_data.h" - -//#include - namespace extension { namespace messaging { @@ -37,10 +33,10 @@ class FoldersChangeCallback { public: typedef void (FoldersChangeCallback::*Signature)(const FolderPtrVector& conversations); - FoldersChangeCallback(long cid, int service_id, MessageType service_type, PostQueue& queue, - MessagingInstance& instance); + FoldersChangeCallback(int service_id, MessageType service_type, MessagingInstance& instance); virtual ~FoldersChangeCallback(); + void Handler(const FolderPtrVector& folders, const char* action); void added(const FolderPtrVector& folders); void updated(const FolderPtrVector& folders); void removed(const FolderPtrVector& folders); @@ -55,11 +51,11 @@ class FoldersChangeCallback { static FolderPtrVector filterFolders(tizen::AbstractFilterPtr filter, const FolderPtrVector& source_folders); - FoldersCallbackData m_callback_data; tizen::AbstractFilterPtr m_filter; int m_id; MessageType m_msg_type; bool m_is_act; + MessagingInstance& m_messaging_instance; }; } // messaging diff --git a/src/messaging/messaging.gyp b/src/messaging/messaging.gyp index a0ded5e..8f6bf48 100644 --- a/src/messaging/messaging.gyp +++ b/src/messaging/messaging.gyp @@ -102,8 +102,6 @@ 'message_conversation.h', 'conversation_callback_data.cc', 'conversation_callback_data.h', - 'folders_callback_data.cc', - 'folders_callback_data.h', 'conversations_change_callback.cc', 'conversations_change_callback.h', 'folders_change_callback.cc', diff --git a/src/messaging/messaging_instance.cc b/src/messaging/messaging_instance.cc index c325b01..91551a4 100644 --- a/src/messaging/messaging_instance.cc +++ b/src/messaging/messaging_instance.cc @@ -706,8 +706,8 @@ void MessagingInstance::MessageStorageAddFolderChangeListener(const picojson::va auto service = manager_.getMessageService(serviceId); - std::shared_ptr callback(new FoldersChangeCallback( - static_cast(-1), serviceId, service->getMsgServiceType(), queue_, *this)); + std::shared_ptr callback( + new FoldersChangeCallback(serviceId, service->getMsgServiceType(), *this)); callback->setFilter(filter);