Replaced all PostMessage() instances with its safe counterpart.
authorPawel Andruszkiewicz <p.andruszkie@samsung.com>
Fri, 28 Aug 2015 12:07:33 +0000 (14:07 +0200)
committerPawel Andruszkiewicz <p.andruszkie@samsung.com>
Mon, 31 Aug 2015 06:03:15 +0000 (08:03 +0200)
[Verification] TCT pass rate did not change.

Change-Id: I58c3061407709acfd69d8b412dd2917dd60aae28
Signed-off-by: Pawel Andruszkiewicz <p.andruszkie@samsung.com>
45 files changed:
src/account/account_instance.cc
src/application/application_instance.cc
src/application/application_manager.cc
src/archive/archive_callback_data.cc
src/archive/archive_instance.cc
src/badge/badge_manager.cc
src/bluetooth/bluetooth_instance.cc
src/calendar/calendar.cc
src/calendar/calendar_instance.cc
src/callhistory/callhistory.cc
src/callhistory/callhistory_instance.cc
src/common/extension.h
src/contact/addressbook.cc
src/contact/contact_instance.cc
src/contact/contact_manager.cc
src/content/content_instance.cc
src/datacontrol/datacontrol_instance.cc
src/download/download_instance.cc
src/exif/exif_instance.cc
src/filesystem/filesystem_instance.cc
src/humanactivitymonitor/humanactivitymonitor_instance.cc
src/keymanager/keymanager_instance.cc
src/mediacontroller/mediacontroller_instance.cc
src/mediakey/mediakey_instance.cc
src/messageport/messageport_instance.cc
src/messaging/messaging_manager.cc
src/messaging/messaging_util.cc
src/networkbearerselection/networkbearerselection_instance.cc
src/nfc/nfc_instance.cc
src/package/package_instance.cc
src/power/power_instance.cc
src/push/push_instance.cc
src/radio/radio_manager.cc
src/radio/radio_manager.h
src/secureelement/secureelement_instance.cc
src/secureelement/secureelement_seservice.cc
src/sensor/sensor_service.cc
src/sound/sound_instance.cc
src/sound/sound_manager.cc
src/systeminfo/systeminfo_instance.cc
src/systemsetting/systemsetting_instance.cc
src/time/time_instance.cc
src/tvaudio/tvaudio_instance.cc
src/tvchannel/tvchannel_instance.cc
src/tvdisplay/tvdisplay_instance.cc

index 0c0f87b..9a249be 100755 (executable)
@@ -112,7 +112,7 @@ void AccountInstance::AccountGetExtendedData(const picojson::value& args,
 
   auto get_extended_data_result = [this, callback_id](const std::shared_ptr<picojson::value>& result) {
     result->get<picojson::object>()["callbackId"] = picojson::value{static_cast<double>(callback_id)};
-    this->PostMessage(result->serialize().c_str());
+    Instance::PostMessage(this, result->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
@@ -180,7 +180,7 @@ void AccountInstance::AccountManagerGetAccounts(const picojson::value& args,
 
   auto get_accounts_result = [this, callback_id](const std::shared_ptr<picojson::value>& result) {
     result->get<picojson::object>()["callbackId"] = picojson::value{static_cast<double>(callback_id)};
-    this->PostMessage(result->serialize().c_str());
+    Instance::PostMessage(this, result->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
@@ -219,7 +219,7 @@ void AccountInstance::AccountManagerGetProviders(const picojson::value& args,
 
   auto get_providers_result = [this, callback_id](const std::shared_ptr<picojson::value>& result) {
     result->get<picojson::object>()["callbackId"] = picojson::value{static_cast<double>(callback_id)};
-    this->PostMessage(result->serialize().c_str());
+    Instance::PostMessage(this, result->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
@@ -233,7 +233,7 @@ void AccountInstance::AccountManagerGetProviders(const picojson::value& args,
 void AccountInstance::InvokeListener(picojson::object& param) {
   LoggerD("Enter");
   picojson::value result = picojson::value(param);
-  PostMessage(result.serialize().c_str());
+  Instance::PostMessage(this, result.serialize().c_str());
 }
 
 static bool AccountEventCb(const char *event_type, int account_id,
index 69cd278..e35e335 100755 (executable)
@@ -241,7 +241,7 @@ void ApplicationInstance::AddEventListener(const picojson::value& args, picojson
    picojson::object& event_o = event->get<picojson::object>();
    event_o["listenerId"] = args.get("listenerId");
    LOGGER(DEBUG) << event->serialize().c_str();
-   PostMessage(event->serialize().c_str());
+   Instance::PostMessage(this, event->serialize().c_str());
    LOGGER(DEBUG) << event->serialize().c_str();
   };
 
index 9da4a0f..24825fd 100755 (executable)
@@ -161,7 +161,7 @@ class TerminateHandler {
         const std::shared_ptr<picojson::value>& response) {
       picojson::object& obj = response->get<picojson::object>();
       obj.insert(std::make_pair(kCallbackId, picojson::value(static_cast<double>(callback_id))));
-      app_instance->PostMessage(response->serialize().c_str());
+      Instance::PostMessage(app_instance, response->serialize().c_str());
     }, response);
   }
 
@@ -223,7 +223,7 @@ void ApplicationManager::AsyncResponse(PlatformResult& result,
 
   TaskQueue::GetInstance().Async<picojson::value>([this](
       const std::shared_ptr<picojson::value>& response) {
-        this->instance_.PostMessage(response->serialize().c_str());
+        Instance::PostMessage(&this->instance_, response->serialize().c_str());
       }, *response);
 }
 
@@ -587,7 +587,7 @@ void ApplicationManager::LaunchAppControl(const picojson::value& args) {
 
         return_value_obj.insert(
             std::make_pair("listenerId", picojson::value(reply_callback->reply_callback)));
-        reply_callback->app_instance->PostMessage(return_value.serialize().c_str());
+        Instance::PostMessage(reply_callback->app_instance, return_value.serialize().c_str());
         delete reply_callback;
       };
     }
@@ -644,7 +644,7 @@ void ApplicationManager::LaunchAppControl(const picojson::value& args) {
   };
 
   auto launch_response = [this](const std::shared_ptr<picojson::value>& response) -> void {
-    this->instance_.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&this->instance_, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(launch, launch_response, response);
@@ -723,7 +723,7 @@ void ApplicationManager::FindAppControl(const picojson::value& args) {
   };
 
   auto find_response = [this](const std::shared_ptr<picojson::value>& response) -> void {
-    this->instance_.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&this->instance_, response->serialize().c_str());
   };
 
   // prepare result object, we need to do that here, as input parameter is passed to result callback
@@ -782,7 +782,7 @@ void ApplicationManager::GetAppsContext(const picojson::value& args) {
       const std::shared_ptr<picojson::value>& response) -> void {
     picojson::object& obj = response->get<picojson::object>();
     obj.insert(std::make_pair(kCallbackId, picojson::value(static_cast<double>(callback_id))));
-    this->instance_.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&this->instance_, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
@@ -883,7 +883,7 @@ void ApplicationManager::GetAppsInfo(const picojson::value& args) {
       const std::shared_ptr<picojson::value>& response) -> void {
     picojson::object& obj = response->get<picojson::object>();
     obj.insert(std::make_pair(kCallbackId, picojson::value(static_cast<double>(callback_id))));
-    this->instance_.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&this->instance_, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
@@ -1214,7 +1214,7 @@ class ApplicationListChangedBroker {
       data_obj["listenerId"] = picojson::value("ApplicationEventListener");
 
       for (auto instance : app_instance_list_) {
-        instance->PostMessage(value.serialize().c_str());
+        Instance::PostMessage(instance, value.serialize().c_str());
       }
     }
   }
@@ -1288,7 +1288,7 @@ class ApplicationListChangedBroker {
       data_obj["listenerId"] = picojson::value("ApplicationEventListener");
 
       for (auto instance : app_instance_list_) {
-        instance->PostMessage(value.serialize().c_str());
+        Instance::PostMessage(instance, value.serialize().c_str());
       }
     }
   }
index 79e9355..3554349 100755 (executable)
@@ -123,7 +123,7 @@ void OperationCallbackData::setIsCanceled(bool canceled)
 
 void OperationCallbackData::PostMessage(const char* msg) {
   LoggerD("Enter");
-  instance_.PostMessage(msg);
+  Instance::PostMessage(&instance_, msg);
 }
 
 const ErrorCode& OperationCallbackData::getErrorCode() const
@@ -416,7 +416,7 @@ gboolean BaseProgressCallback::callSuccessCallbackCB(void* data)
 
         LoggerD("%s", val.serialize().c_str());
 
-        callback->instance_.PostMessage(val.serialize().c_str());
+        Instance::PostMessage(&callback->instance_, val.serialize().c_str());
     } else {
         LoggerW("Not calling error callback in such case");
     }
@@ -449,7 +449,7 @@ void BaseProgressCallback::callProgressCallback(long operationId,
 
     LoggerD("%s", val.serialize().c_str());
 
-    instance_.PostMessage(val.serialize().c_str());
+    Instance::PostMessage(&instance_, val.serialize().c_str());
 }
 
 void BaseProgressCallback::callProgressCallbackOnMainThread(const double progress,
index 163f066..1863e6f 100755 (executable)
@@ -92,7 +92,7 @@ void ArchiveInstance::PostError(const PlatformResult& e, double callback_id) {
     args[ERROR_CALLBACK_CODE] = picojson::value(static_cast<double>(e.error_code()));
     args[ERROR_CALLBACK_MESSAGE] = picojson::value(e.message());
 
-    PostMessage(val.serialize().c_str());
+    Instance::PostMessage(this, val.serialize().c_str());
 }
 
 void ArchiveInstance::Open(const picojson::value& args, picojson::object& out) {
index b927713..bcebc36 100755 (executable)
@@ -227,7 +227,7 @@ void BadgeManager::badge_changed_cb(unsigned int action, const char *pkgname,
         std::make_pair("listenerId", picojson::value(std::string("BadgeChangeListener"))));
     response_obj.insert(std::make_pair("appId", picojson::value(pkgname)));
     response_obj.insert(std::make_pair("count", picojson::value(std::to_string(count))));
-    that->instance_.PostMessage(response.serialize().c_str());
+    Instance::PostMessage(&that->instance_, response.serialize().c_str());
   }
 }
 
index fef33bb..2351162 100755 (executable)
@@ -205,14 +205,14 @@ void BluetoothInstance::SyncResponse(double callback_handle, const std::shared_p
   LoggerD("Entered");
   auto& obj = response->get<picojson::object>();
   obj[JSON_CALLBACK_ID] = picojson::value(callback_handle);
-  PostMessage(response->serialize().c_str());
+  Instance::PostMessage(this, response->serialize().c_str());
 }
 
 void BluetoothInstance::FireEvent(const std::string& event, picojson::value& value) {
   LoggerD("Entered");
   auto& obj = value.get<picojson::object>();
   obj[JSON_LISTENER_ID] = picojson::value(event);
-  PostMessage(value.serialize().c_str());
+  Instance::PostMessage(this, value.serialize().c_str());
 }
 
 void BluetoothInstance::FireEvent(const std::string& event, const picojson::value& value) {
index c28a8fe..bb1b9be 100755 (executable)
@@ -1147,7 +1147,8 @@ void Calendar::ChangeCallback(const char* view_uri, void* user_data) {
     return;
   }
   c->current_db_version_ = updated_version;
-  c->instance_.PostMessage(response.serialize().c_str());
+  LoggerD("-> Calendar::ChangeCallback");
+  Instance::PostMessage(&c->instance_, response.serialize().c_str());
 }
 
 PlatformResult Calendar::ErrorChecker(int errorCode) {
index 733c354..bfc91be 100755 (executable)
@@ -107,8 +107,10 @@ void CalendarInstance::CalendarAdd(const JsonValue& args, JsonObject& out) {
 void CalendarInstance::CalendarAddBatch(const JsonValue& args,
                                         JsonObject& out) {
   LoggerD("Enter");
+
   const double callback_id = args.get("callbackId").get<double>();
   auto get = [=](const std::shared_ptr<JsonValue>& response) -> void {
+    LoggerD("CalendarAddBatch->get");
     JsonValue result = JsonValue(JsonArray());
     PlatformResult status = calendar_.AddBatch(
         common::JsonCast<JsonObject>(args), result.get<JsonArray>());
@@ -124,10 +126,11 @@ void CalendarInstance::CalendarAddBatch(const JsonValue& args,
 
   auto get_response =
       [callback_id, this](const std::shared_ptr<JsonValue>& response) -> void {
+    LoggerD("CalendarAddBatch->get_response");
     picojson::object& obj = response->get<picojson::object>();
     obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
     LoggerD("callback is %s", response->serialize().c_str());
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<JsonValue>(
@@ -154,8 +157,10 @@ void CalendarInstance::CalendarUpdate(const JsonValue& args, JsonObject& out) {
 void CalendarInstance::CalendarUpdateBatch(const JsonValue& args,
                                            JsonObject& out) {
   LoggerD("Enter");
+
   const double callback_id = args.get("callbackId").get<double>();
   auto get = [=](const std::shared_ptr<JsonValue>& response) -> void {
+    LoggerD("CalendarUpdateBatch->get");
     JsonValue result = JsonValue(JsonArray());
     PlatformResult status = calendar_.UpdateBatch(
         common::JsonCast<JsonObject>(args), result.get<JsonArray>());
@@ -171,10 +176,11 @@ void CalendarInstance::CalendarUpdateBatch(const JsonValue& args,
 
   auto get_response =
       [callback_id, this](const std::shared_ptr<JsonValue>& response) -> void {
+    LoggerD("CalendarUpdateBatch->get_response");
     picojson::object& obj = response->get<picojson::object>();
     obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
     LoggerD("callback is %s", response->serialize().c_str());
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<JsonValue>(
@@ -201,8 +207,10 @@ void CalendarInstance::CalendarRemove(const JsonValue& args, JsonObject& out) {
 void CalendarInstance::CalendarRemoveBatch(const JsonValue& args,
                                            JsonObject& out) {
   LoggerD("Enter");
+
   const double callback_id = args.get("callbackId").get<double>();
   auto get = [=](const std::shared_ptr<JsonValue>& response) -> void {
+    LoggerD("CalendarRemoveBatch->get");
     JsonValue result = JsonValue(JsonArray());
     PlatformResult status = calendar_.RemoveBatch(
         common::JsonCast<JsonObject>(args), result.get<JsonArray>());
@@ -218,10 +226,11 @@ void CalendarInstance::CalendarRemoveBatch(const JsonValue& args,
 
   auto get_response =
       [callback_id, this](const std::shared_ptr<JsonValue>& response) -> void {
+    LoggerD("CalendarRemoveBatch->get_response");
     picojson::object& obj = response->get<picojson::object>();
     obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
     LoggerD("callback is %s", response->serialize().c_str());
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<JsonValue>(
@@ -231,8 +240,10 @@ void CalendarInstance::CalendarRemoveBatch(const JsonValue& args,
 
 void CalendarInstance::CalendarFind(const JsonValue& args, JsonObject& out) {
   LoggerD("Enter");
+
   const double callback_id = args.get("callbackId").get<double>();
   auto get = [=](const std::shared_ptr<JsonValue>& response) -> void {
+    LoggerD("CalendarFind->get");
     JsonValue result = JsonValue(JsonArray());
     PlatformResult status = calendar_.Find(
         common::JsonCast<JsonObject>(args), result.get<JsonArray>());
@@ -248,10 +259,11 @@ void CalendarInstance::CalendarFind(const JsonValue& args, JsonObject& out) {
 
   auto get_response =
       [callback_id, this](const std::shared_ptr<JsonValue>& response) -> void {
+    LoggerD("CalendarFind->get_response");
     picojson::object& obj = response->get<picojson::object>();
     obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
     LoggerD("callback isssssss %s", response->serialize().c_str());
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<JsonValue>(
@@ -329,8 +341,10 @@ void CalendarInstance::CalendarManagerGetCalendar(const JsonValue& args,
 void CalendarInstance::CalendarManagerGetCalendars(const JsonValue& args,
                                                    JsonObject& out) {
   LoggerD("Enter");
+
   const double callback_id = args.get("callbackId").get<double>();
   auto get = [=](const std::shared_ptr<JsonValue>& response) -> void {
+    LoggerD("CalendarManagerGetCalendars->get");
     JsonValue result = JsonValue(JsonArray());
 
     PlatformResult status = CalendarManager::GetInstance().GetCalendars(
@@ -347,10 +361,11 @@ void CalendarInstance::CalendarManagerGetCalendars(const JsonValue& args,
 
   auto get_response = [ callback_id, this ](const std::shared_ptr<JsonValue> &
                                             response)->void {
+    LoggerD("CalendarManagerGetCalendars->get_response");
     picojson::object& obj = response->get<picojson::object>();
     obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
     LoggerD("callback is %s", response->serialize().c_str());
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<JsonValue>(
index 7a6c726..b28ca83 100755 (executable)
@@ -633,7 +633,7 @@ void CallHistory::PostMessage(const CallHistory* instance, const std::string& ms
 
   for (auto it = instances_.begin(); it != instances_.end(); ++it) {
     if (*it == instance) {
-      instance->instance_.PostMessage(msg.c_str());
+      Instance::PostMessage(&instance->instance_, msg.c_str());
       return;
     }
   }
index 1f1cada..7b74910 100755 (executable)
@@ -124,7 +124,7 @@ void CallHistoryInstance::CallHistoryChange(picojson::object& data) {
   picojson::object& obj = event.get<picojson::object>();
   obj["listenerId"] = picojson::value("CallHistoryChangeCallback");
 
-  PostMessage(event.serialize().c_str());
+  Instance::PostMessage(this, event.serialize().c_str());
 }
 
 } // namespace callhistory
index 3e65e8d..f443234 100755 (executable)
@@ -106,7 +106,6 @@ class Instance {
 
   static void PostMessage(Instance* that, const char* msg);
 
-  void PostMessage(const char* msg);
   void PostData(const char* msg, uint8_t* buffer, size_t len);
   void SendSyncReply(const char* reply);
   void SendSyncReply(const char* reply, uint8_t* buffer, size_t len);
@@ -122,6 +121,8 @@ class Instance {
   XW_Instance xw_instance() const { return xw_instance_; }
 
  private:
+  void PostMessage(const char* msg);
+
   friend class Extension;
 
   static std::mutex instance_mutex_;
index 6bb6bd4..b656e36 100755 (executable)
@@ -834,7 +834,7 @@ void AddressBookListenerCallback(const char* view_uri, void* user_data) {
       }
     }
 
-    instance->PostMessage(result.serialize().c_str());
+    Instance::PostMessage(instance, result.serialize().c_str());
   }
 
   instance->set_current_state(current_version);
index 4a1b555..335027d 100755 (executable)
@@ -131,7 +131,7 @@ void ContactInstance::AddressBookAddBatch(const JsonValue& args,
       [this, callback_id](const std::shared_ptr<JsonValue>& response) {
     JsonObject& obj = response->get<JsonObject>();
     obj["callbackId"] = picojson::value(static_cast<double>(callback_id));
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<JsonValue>(
@@ -163,7 +163,7 @@ void ContactInstance::AddressBookRemoveBatch(const JsonValue& args,
       [this, callback_id](const std::shared_ptr<JsonValue>& response) {
     JsonObject& obj = response->get<JsonObject>();
     obj["callbackId"] = picojson::value(static_cast<double>(callback_id));
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<JsonValue>(
@@ -195,7 +195,7 @@ void ContactInstance::AddressBookUpdateBatch(const JsonValue& args,
       [this, callback_id](const std::shared_ptr<JsonValue>& response) {
     JsonObject& obj = response->get<JsonObject>();
     obj["callbackId"] = picojson::value(static_cast<double>(callback_id));
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<JsonValue>(
@@ -244,7 +244,7 @@ void ContactInstance::AddressBookFind(const JsonValue& args, JsonObject& out) {
       [this, callback_id](const std::shared_ptr<JsonValue>& response) {
     JsonObject& obj = response->get<JsonObject>();
     obj["callbackId"] = picojson::value(static_cast<double>(callback_id));
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<JsonValue>(
@@ -326,7 +326,7 @@ void ContactInstance::ContactManagerGetAddressBooks(const JsonValue& args,
       [this, callback_id](const std::shared_ptr<JsonValue>& response) {
     JsonObject& obj = response->get<JsonObject>();
     obj["callbackId"] = picojson::value(static_cast<double>(callback_id));
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<JsonValue>(
@@ -434,7 +434,7 @@ void ContactInstance::ContactManagerUpdateBatch(const JsonValue& args,
       [this, callback_id](const std::shared_ptr<JsonValue>& response) {
     JsonObject& obj = response->get<JsonObject>();
     obj["callbackId"] = picojson::value(static_cast<double>(callback_id));
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<JsonValue>(
@@ -477,7 +477,7 @@ void ContactInstance::ContactManagerRemoveBatch(const JsonValue& args,
       [this, callback_id](const std::shared_ptr<JsonValue>& response) {
     JsonObject& obj = response->get<JsonObject>();
     obj["callbackId"] = picojson::value(static_cast<double>(callback_id));
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<JsonValue>(
@@ -505,7 +505,7 @@ void ContactInstance::ContactManagerFind(const JsonValue& args,
       [this, callback_id](const std::shared_ptr<JsonValue>& response) {
     JsonObject& obj = response->get<JsonObject>();
     obj["callbackId"] = picojson::value(static_cast<double>(callback_id));
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<JsonValue>(
index 0123860..569395c 100755 (executable)
@@ -919,7 +919,7 @@ void ContactManagerListenerCallback(const char* view_uri, char* changes,
   }
 
   ContactInstance* instance = static_cast<ContactInstance*>(user_data);
-  instance->PostMessage(result.serialize().c_str());
+  Instance::PostMessage(instance, result.serialize().c_str());
 }
 }
 
index 5f1649f..9257f28 100755 (executable)
@@ -88,7 +88,7 @@ static gboolean CompletedCallback(const std::shared_ptr<ReplyCallbackData>& user
     ReportError(user_data->isSuccess, &out);
   }
 
-  user_data->instance->PostMessage(picojson::value(out).serialize().c_str());
+  common::Instance::PostMessage(user_data->instance, picojson::value(out).serialize().c_str());
 
   return false;
 }
@@ -191,7 +191,7 @@ static void ScanDirectoryCallback(media_content_error_e error, void* user_data)
     ReportError(out);
   }
 
-  cbData->instance->PostMessage(picojson::value(out).serialize().c_str());
+  common::Instance::PostMessage(cbData->instance, picojson::value(out).serialize().c_str());
 }
 
 
@@ -269,7 +269,7 @@ static void changedContentCallback(media_content_error_e error,
   }
 
   obj["listenerId"] = cbData->args.get("listenerId");
-  cbData->instance->PostMessage(result.serialize().c_str());
+  common::Instance::PostMessage(cbData->instance, result.serialize().c_str());
 }
 
 
index dfc8463..24958d5 100755 (executable)
@@ -49,7 +49,7 @@ struct DatacontrolInformation {
   int requestId;
   int userDefinedRequestId;
 };
-static DatacontrolInstance *Self = NULL;
+
 static std::map<int, DatacontrolInformation*> IdMap;
 
 DatacontrolInstance::DatacontrolInstance() {
@@ -73,27 +73,20 @@ DatacontrolInstance::DatacontrolInstance() {
   REGISTER_SYNC("MappedDataControlConsumer_getValue",
                 MappedDataControlConsumerGetvalue);
   #undef REGISTER_SYNC
-
-  Self = this;
 }
 
 DatacontrolInstance::~DatacontrolInstance() {
-  Self = NULL;
 }
 
-static void ReplyAsync(int callbackId, bool isSuccess,
-                       picojson::object* param) {
+static void ReplyAsync(DatacontrolInstance* instance, int callbackId,
+                       bool isSuccess, picojson::object* param) {
   LoggerD("Enter");
   (*param)["callbackId"] = picojson::value(static_cast<double>(callbackId));
   (*param)["status"] = picojson::value(isSuccess ? "success" : "error");
 
   picojson::value result = picojson::value(*param);
 
-  if (Self) {
-    Self->PostMessage(result.serialize().c_str());
-  } else {
-    LoggerE("Current Instance is not registed");
-  }
+  common::Instance::PostMessage(instance, result.serialize().c_str());
 }
 
 static bool SQLColumnName(result_set_cursor cursor, int columnIndex,
@@ -195,7 +188,8 @@ static void MAPAddResponseCallback(int requestId, data_control_h handle,
     obj["result"] = InvalidValuesException(error).ToJSON();
   }
 
-  ReplyAsync(info->callbackId, providerResult, &obj);
+  ReplyAsync(static_cast<DatacontrolInstance*>(user_data), info->callbackId,
+             providerResult, &obj);
   delete info;
   IdMap.erase(requestId);
 }
@@ -217,7 +211,7 @@ static void MAPSetResponseCallback(int requestId, data_control_h handle,
     obj["result"] = NotFoundException(error).ToJSON();
   }
 
-  ReplyAsync(info->callbackId, providerResult, &obj);
+  ReplyAsync(static_cast<DatacontrolInstance*>(user_data), info->callbackId, providerResult, &obj);
   delete info;
   IdMap.erase(requestId);
 }
@@ -247,7 +241,8 @@ static void MAPGetResponseCallback(int requestId, data_control_h handle,
     obj["result"] = picojson::value(result);
   }
 
-  ReplyAsync(info->callbackId, providerResult, &obj);
+  ReplyAsync(static_cast<DatacontrolInstance*>(user_data), info->callbackId,
+             providerResult, &obj);
   delete info;
   IdMap.erase(requestId);
 }
@@ -269,7 +264,8 @@ static void MAPRemoveReponseCallback(int requestId, data_control_h handle,
     obj["result"] = NotFoundException(error).ToJSON();
   }
 
-  ReplyAsync(info->callbackId, providerResult, &obj);
+  ReplyAsync(static_cast<DatacontrolInstance*>(user_data), info->callbackId,
+             providerResult, &obj);
   delete info;
   IdMap.erase(requestId);
 }
@@ -314,7 +310,8 @@ static void SQLSelectResponseCallback(int requestId, data_control_h handle,
     }
     obj["result"] = picojson::value(result);
   }
-  ReplyAsync(info->callbackId, providerResult, &obj);
+  ReplyAsync(static_cast<DatacontrolInstance*>(user_data), info->callbackId,
+             providerResult, &obj);
   delete info;
   IdMap.erase(requestId);
 }
@@ -339,7 +336,8 @@ static void SQLInsertResponseCallback(int requestId, data_control_h handle,
     obj["result"] = picojson::value(static_cast<double>(inserted_row_id));
   }
 
-  ReplyAsync(info->callbackId, providerResult, &obj);
+  ReplyAsync(static_cast<DatacontrolInstance*>(user_data), info->callbackId,
+             providerResult, &obj);
   delete info;
   IdMap.erase(requestId);
 }
@@ -361,7 +359,8 @@ static void SQLUpdateResponseCallback(int requestId, data_control_h handle,
     obj["result"] = InvalidValuesException(error).ToJSON();
   }
 
-  ReplyAsync(info->callbackId, providerResult, &obj);
+  ReplyAsync(static_cast<DatacontrolInstance*>(user_data), info->callbackId,
+             providerResult, &obj);
   delete info;
   IdMap.erase(requestId);
 }
@@ -383,7 +382,8 @@ static void SQLDeleteResponseCallback(int requestId, data_control_h handle,
     obj["result"] = InvalidValuesException(error).ToJSON();
   }
 
-  ReplyAsync(info->callbackId, providerResult, &obj);
+  ReplyAsync(static_cast<DatacontrolInstance*>(user_data), info->callbackId,
+             providerResult, &obj);
   delete info;
   IdMap.erase(requestId);
 }
@@ -439,7 +439,7 @@ int DatacontrolInstance::RunMAPDataControlJob(const std::string& providerId,
 
   result =
       ::data_control_map_register_response_cb(handle, &mapResponseCallback,
-                                              NULL);
+                                              this);
   RETURN_IF_FAIL(result, "Setting result Callback failed with error");
 
   result = job(handle, &info->requestId);
@@ -479,7 +479,7 @@ int DatacontrolInstance::RunSQLDataControlJob(const std::string& providerId,
 
   result =
       ::data_control_sql_register_response_cb(handle, &sqlResponseCallback,
-                                              NULL);
+                                              this);
   RETURN_IF_FAIL(result, "Setting result Callback failed with error");
 
   result = job(handle, &info->requestId);
index e1b8325..4803878 100755 (executable)
@@ -175,7 +175,7 @@ gboolean DownloadInstance::OnProgressChanged(void* user_data) {
     downCbPtr->callbackId, downCbPtr->received);
 
   picojson::value v = picojson::value(out);
-  downCbPtr->instance->PostMessage(v.serialize().c_str());
+  Instance::PostMessage(downCbPtr->instance, v.serialize().c_str());
 
   return FALSE;
 }
@@ -225,7 +225,7 @@ gboolean DownloadInstance::OnFinished(void* user_data) {
     picojson::value(static_cast<double>(downCbPtr->callbackId));
   out["fullPath"] = picojson::value(fullPath);
 
-  downCbPtr->instance->PostMessage(picojson::value(out).serialize().c_str());
+  Instance::PostMessage(downCbPtr->instance, picojson::value(out).serialize().c_str());
   downCbPtr->instance->downCbMap.erase(downCbPtr->callbackId);
   delete (downCbPtr);
 
@@ -251,7 +251,7 @@ gboolean DownloadInstance::OnPaused(void* user_data) {
   out["callbackId"] =
     picojson::value(static_cast<double>(downCbPtr->callbackId));
 
-  downCbPtr->instance->PostMessage(picojson::value(out).serialize().c_str());
+  Instance::PostMessage(downCbPtr->instance, picojson::value(out).serialize().c_str());
   return FALSE;
 }
 
@@ -276,7 +276,7 @@ gboolean DownloadInstance::OnCanceled(void* user_data) {
   out["callbackId"] =
     picojson::value(static_cast<double>(downCbPtr->callbackId));
 
-  downCbPtr->instance->PostMessage(picojson::value(out).serialize().c_str());
+  Instance::PostMessage(downCbPtr->instance, picojson::value(out).serialize().c_str());
   downCbPtr->instance->downCbMap.erase(downCbPtr->callbackId);
   delete (downCbPtr);
 
@@ -404,7 +404,7 @@ gboolean DownloadInstance::OnFailed(void* user_data) {
   out["callbackId"] =
     picojson::value(static_cast<double>(downCbPtr->callbackId));
 
-  downCbPtr->instance->PostMessage(picojson::value(out).serialize().c_str());
+  Instance::PostMessage(downCbPtr->instance, picojson::value(out).serialize().c_str());
   return FALSE;
 }
 
index fb54baa..b2aaf5d 100755 (executable)
@@ -75,7 +75,7 @@ void ExifInstance::ExifManagerGetExifInfo(const picojson::value& args, picojson:
   auto get_response = [callback_id, this](const std::shared_ptr<JsonValue>& response)->void {
       picojson::object& obj = response->get<picojson::object>();
       obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
-      PostMessage(response->serialize().c_str());
+      Instance::PostMessage(this, response->serialize().c_str());
   };
 
   common::TaskQueue::GetInstance().Queue<JsonValue>(
@@ -108,7 +108,7 @@ void ExifInstance::ExifManagerSaveExifInfo(const picojson::value& args,
   auto get_response = [callback_id, this](const std::shared_ptr<JsonValue>& response) -> void {
       picojson::object& obj = response->get<picojson::object>();
       obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
-      PostMessage(response->serialize().c_str());
+      Instance::PostMessage(this, response->serialize().c_str());
   };
 
   common::TaskQueue::GetInstance().Queue<JsonValue>(get, get_response,
@@ -178,7 +178,7 @@ void ExifInstance::ExifManagerGetThumbnail(const picojson::value& args,
   auto get_response = [callback_id, this](const std::shared_ptr<JsonValue>& response)->void {
       picojson::object& obj = response->get<picojson::object>();
       obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
-      PostMessage(response->serialize().c_str());
+      Instance::PostMessage(this, response->serialize().c_str());
   };
 
   common::TaskQueue::GetInstance().Queue<JsonValue>(
index 5e4d10b..e276666 100755 (executable)
@@ -122,7 +122,7 @@ void FilesystemInstance::FileRename(const picojson::value& args,
     picojson::object& obj = response.get<picojson::object>();
     obj["callbackId"] = picojson::value(callback_id);
     ReportSuccess(data.toJSON(), obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   auto onError = [this, callback_id](FilesystemError e) {
@@ -131,7 +131,7 @@ void FilesystemInstance::FileRename(const picojson::value& args,
     picojson::object& obj = response.get<picojson::object>();
     obj["callbackId"] = picojson::value(callback_id);
     PrepareError(e, obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   FilesystemManager& fsm = FilesystemManager::GetInstance();
@@ -158,7 +158,7 @@ void FilesystemInstance::FileRead(const picojson::value& args,
     picojson::object& obj = response.get<picojson::object>();
     obj["callbackId"] = picojson::value(callback_id);
     ReportSuccess(picojson::value(data), obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   auto onError = [this, callback_id](FilesystemError e) {
@@ -167,7 +167,7 @@ void FilesystemInstance::FileRead(const picojson::value& args,
     picojson::object& obj = response.get<picojson::object>();
     obj["callbackId"] = picojson::value(callback_id);
     PrepareError(e, obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   FilesystemManager& fsm = FilesystemManager::GetInstance();
@@ -224,7 +224,7 @@ void FilesystemInstance::FileWrite(const picojson::value& args,
     picojson::object& obj = response.get<picojson::object>();
     obj["callbackId"] = picojson::value(callback_id);
     ReportSuccess(obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   auto onError = [this, callback_id](FilesystemError e) {
@@ -233,7 +233,7 @@ void FilesystemInstance::FileWrite(const picojson::value& args,
     picojson::object& obj = response.get<picojson::object>();
     obj["callbackId"] = picojson::value(callback_id);
     PrepareError(e, obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   FilesystemManager& fsm = FilesystemManager::GetInstance();
@@ -287,7 +287,7 @@ void FilesystemInstance::FileStat(const picojson::value& args,
     picojson::object& obj = response.get<picojson::object>();
     obj["callbackId"] = picojson::value(callback_id);
     ReportSuccess(data.toJSON(), obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   auto onError = [this, callback_id](FilesystemError e) {
@@ -296,7 +296,7 @@ void FilesystemInstance::FileStat(const picojson::value& args,
     picojson::object& obj = response.get<picojson::object>();
     obj["callbackId"] = picojson::value(callback_id);
     PrepareError(e, obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   FilesystemManager& fsm = FilesystemManager::GetInstance();
@@ -392,7 +392,7 @@ void FilesystemInstance::onFilesystemStateChangeSuccessCallback(const common::Vi
   obj["type"] = picojson::value(common::to_string(storage.type_));
   obj["state"] = picojson::value(common::to_string(storage.state_));
   obj["listenerId"] = picojson::value("StorageStateChangeListener");
-  PostMessage(event.serialize().c_str());
+  Instance::PostMessage(this, event.serialize().c_str());
 }
 
 void FilesystemInstance::onFilesystemStateChangeErrorCallback() {
@@ -402,7 +402,7 @@ void FilesystemInstance::onFilesystemStateChangeErrorCallback() {
   ReportError(UnknownException(std::string("Failed to registerd listener")), obj);
   obj["listenerId"] = picojson::value("StorageStateChangeListener");
   LoggerD("Posting: %s", event.serialize().c_str());
-  PostMessage(event.serialize().c_str());
+  Instance::PostMessage(this, event.serialize().c_str());
 }
 
 void FilesystemInstance::FileSystemManagerMakeDirectory(
@@ -424,7 +424,7 @@ void FilesystemInstance::FileSystemManagerMakeDirectory(
       ReportSuccess(obj);
     else
       PrepareError(e, obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   auto onAction = [location, onResult]() {
@@ -474,7 +474,7 @@ void FilesystemInstance::ReadDir(const picojson::value& args,
       statPaths.push_back(stat.toJSON());
     }
     ReportSuccess(result, obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   auto onError = [this, callback_id](FilesystemError e) {
@@ -483,7 +483,7 @@ void FilesystemInstance::ReadDir(const picojson::value& args,
     picojson::object& obj = response.get<picojson::object>();
     obj["callbackId"] = picojson::value(callback_id);
     PrepareError(e, obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   FilesystemManager& fm = FilesystemManager::GetInstance();
@@ -506,7 +506,7 @@ void FilesystemInstance::UnlinkFile(const picojson::value& args,
     picojson::object& obj = response.get<picojson::object>();
     obj["callbackId"] = picojson::value(callback_id);
     ReportSuccess(result, obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   auto onError = [this, callback_id](FilesystemError e) {
@@ -515,7 +515,7 @@ void FilesystemInstance::UnlinkFile(const picojson::value& args,
     picojson::object& obj = response.get<picojson::object>();
     obj["callbackId"] = picojson::value(callback_id);
     PrepareError(e, obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   FilesystemManager& fm = FilesystemManager::GetInstance();
@@ -538,7 +538,7 @@ void FilesystemInstance::RemoveDirectory(const picojson::value& args,
     picojson::object& obj = response.get<picojson::object>();
     obj["callbackId"] = picojson::value(callback_id);
     ReportSuccess(result, obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   auto onError = [this, callback_id](FilesystemError e) {
@@ -547,7 +547,7 @@ void FilesystemInstance::RemoveDirectory(const picojson::value& args,
     picojson::object& obj = response.get<picojson::object>();
     obj["callbackId"] = picojson::value(callback_id);
     PrepareError(e, obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   FilesystemManager& fm = FilesystemManager::GetInstance();
@@ -575,7 +575,7 @@ void FilesystemInstance::CopyTo(const picojson::value& args,
     picojson::object& obj = response.get<picojson::object>();
     obj["callbackId"] = picojson::value(callback_id);
     ReportSuccess(result, obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   auto onError = [this, callback_id](FilesystemError e) {
@@ -584,7 +584,7 @@ void FilesystemInstance::CopyTo(const picojson::value& args,
     picojson::object& obj = response.get<picojson::object>();
     obj["callbackId"] = picojson::value(callback_id);
     PrepareError(e, obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   FilesystemManager& fm = FilesystemManager::GetInstance();
index ea3ed60..8b0ddf6 100755 (executable)
@@ -110,7 +110,7 @@ void HumanActivityMonitorInstance::HumanActivityMonitorManagerGetHumanActivityDa
       ReportError(result, &response_obj);
     }
 
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   TaskQueue::GetInstance().Async(get);
@@ -139,7 +139,7 @@ void HumanActivityMonitorInstance::HumanActivityMonitorManagerStart(
     picojson::object& data_o = data->get<picojson::object>();
     data_o["listenerId"] = args.get("listenerId");
 
-    PostMessage(data->serialize().c_str());
+    Instance::PostMessage(this, data->serialize().c_str());
   };
 
   result = manager_->SetListener(args.get("type").get<std::string>(), cb);
index 07fa332..81f4cc0 100755 (executable)
@@ -380,7 +380,7 @@ void KeyManagerInstance::SaveKey(const picojson::value& args,
     LoggerD("Enter save_key_result");
     picojson::object& obj = response->get<picojson::object>();
     obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
-    this->PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
@@ -488,7 +488,7 @@ void KeyManagerInstance::GenerateKeyPair(const picojson::value& args,
     LoggerD("Enter generate_response");
     picojson::object& obj = response->get<picojson::object>();
     obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
-    this->PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
@@ -603,7 +603,7 @@ void KeyManagerInstance::SaveCertificate(const picojson::value& args,
   auto save_certificate_result = [this, callback_id](const std::shared_ptr<picojson::value>& result) {
     LoggerD("Enter save_certificate_result");
     result->get<picojson::object>()["callbackId"] = picojson::value{callback_id};
-    this->PostMessage(result->serialize().c_str());
+    Instance::PostMessage(this, result->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
@@ -681,7 +681,7 @@ void KeyManagerInstance::LoadCertificateFromFile(const picojson::value& args,
   auto load_certificate_result = [this, callback_id](const std::shared_ptr<picojson::value>& result) {
     LoggerD("Enter load_certificate_result");
     result->get<picojson::object>()["callbackId"] = picojson::value{callback_id};
-    this->PostMessage(result->serialize().c_str());
+    Instance::PostMessage(this, result->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
@@ -748,7 +748,7 @@ void KeyManagerInstance::SaveData(const picojson::value& args,
   auto save_data_result = [this, callback_id](const std::shared_ptr<picojson::value>& result) {
     LoggerD("Enter save_data_result");
     result->get<picojson::object>()["callbackId"] = picojson::value{callback_id};
-    this->PostMessage(result->serialize().c_str());
+    Instance::PostMessage(this, result->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
@@ -862,7 +862,7 @@ void KeyManagerInstance::CreateSignature(const picojson::value& args,
   auto create_certificate_result = [this, callback_id](const std::shared_ptr<picojson::value>& result) {
     LoggerD("Enter create_certificate_result");
     result->get<picojson::object>()["callbackId"] = picojson::value{callback_id};
-    this->PostMessage(result->serialize().c_str());
+    Instance::PostMessage(this, result->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
@@ -932,7 +932,7 @@ void KeyManagerInstance::VerifySignature(const picojson::value& args,
   auto verify_certificate_result = [this, callback_id](const std::shared_ptr<picojson::value>& result) {
     LoggerD("Enter verify_certificate_result");
     result->get<picojson::object>()["callbackId"] = picojson::value{callback_id};
-    this->PostMessage(result->serialize().c_str());
+    Instance::PostMessage(this, result->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
@@ -1029,7 +1029,7 @@ void KeyManagerInstance::LoadFromPKCS12File(const picojson::value& args,
   auto load_file_result = [this, callback_id](const std::shared_ptr<picojson::value>& result) {
     LoggerD("Enter load_file_result");
     result->get<picojson::object>()["callbackId"] = picojson::value{callback_id};
-    this->PostMessage(result->serialize().c_str());
+    Instance::PostMessage(this, result->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
@@ -1083,7 +1083,7 @@ void KeyManagerInstance::AllowAccessControl(const picojson::value& args,
   auto allow_response = [this, callback_id](const std::shared_ptr<picojson::value>& response) -> void {
     picojson::object& obj = response->get<picojson::object>();
     obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
-    this->PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
@@ -1118,7 +1118,7 @@ void KeyManagerInstance::DenyAccessControl(const picojson::value& args,
   auto deny_response = [this, callback_id](const std::shared_ptr<picojson::value>& response) -> void {
     picojson::object& obj = response->get<picojson::object>();
     obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
-    this->PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
index 521b662..18ed637 100755 (executable)
@@ -279,7 +279,7 @@ void MediaControllerInstance::MediaControllerServerAddChangeRequestPlaybackInfoL
     picojson::object& request_o = data->get<picojson::object>();
     request_o["listenerId"] = args.get("listenerId");
 
-    PostMessage(data->serialize().c_str());
+    Instance::PostMessage(this, data->serialize().c_str());
   };
 
   server_->SetChangeRequestPlaybackInfoListener(callback);
@@ -319,7 +319,7 @@ void MediaControllerInstance::MediaControllerServerAddCommandListener(
     picojson::object& request_o = request->get<picojson::object>();
     request_o["listenerId"] = args.get("listenerId");
 
-    PostMessage(request->serialize().c_str());
+    Instance::PostMessage(this, request->serialize().c_str());
   };
 
   server_->set_command_listener(on_command);
@@ -419,7 +419,7 @@ void MediaControllerInstance::MediaControllerClientFindServers(
       ReportError(result, &response_obj);
     }
 
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   TaskQueue::GetInstance().Async(search);
@@ -509,7 +509,7 @@ void MediaControllerInstance::MediaControllerServerInfoSendPlaybackState(
       ReportError(result, &response_obj);
     }
 
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   TaskQueue::GetInstance().Async(send);
@@ -548,7 +548,7 @@ void MediaControllerInstance::MediaControllerServerInfoSendPlaybackPosition(
       ReportError(result, &response_obj);
     }
 
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   TaskQueue::GetInstance().Async(send);
@@ -588,7 +588,7 @@ void MediaControllerInstance::MediaControllerServerInfoSendShuffleMode(
       ReportError(result, &response_obj);
     }
 
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   TaskQueue::GetInstance().Async(send);
@@ -627,7 +627,7 @@ void MediaControllerInstance::MediaControllerServerInfoSendRepeatMode(
       ReportError(result, &response_obj);
     }
 
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   TaskQueue::GetInstance().Async(send);
@@ -659,7 +659,7 @@ void MediaControllerInstance::MediaControllerServerInfoSendCommand(
 
     reply_obj["listenerId"] = args.get("listenerId");
 
-    PostMessage(reply->serialize().c_str());
+    Instance::PostMessage(this, reply->serialize().c_str());
   };
 
   PlatformResult result = client_->SendCommand(
@@ -699,7 +699,7 @@ void MediaControllerInstance::MediaControllerServerInfoAddServerStatusChangeList
     picojson::object& request_o = data->get<picojson::object>();
     request_o["listenerId"] = args.get("listenerId");
 
-    PostMessage(data->serialize().c_str());
+    Instance::PostMessage(this, data->serialize().c_str());
   };
 
   client_->SetServerStatusChangeListener(callback);
@@ -745,7 +745,7 @@ void MediaControllerInstance::MediaControllerServerInfoAddPlaybackInfoChangeList
     picojson::object& request_o = data->get<picojson::object>();
     request_o["listenerId"] = args.get("listenerId");
 
-    PostMessage(data->serialize().c_str());
+    Instance::PostMessage(this, data->serialize().c_str());
   };
 
   client_->SetPlaybackInfoListener(callback);
index 68bc0c0..ec3af1b 100755 (executable)
@@ -98,7 +98,7 @@ void MediaKeyInstance::PostEvent(const std::string& eventCallback,
     picojson::object& obj = event.get<picojson::object>();
     obj["listenerId"] = picojson::value(eventCallback);
     obj["type"] = picojson::value((k->second).c_str());
-    PostMessage(event.serialize().c_str());
+    Instance::PostMessage(this, event.serialize().c_str());
   }
   else {
     LoggerD("Unsupported key");
index abf702e..1c02e3b 100755 (executable)
@@ -105,7 +105,7 @@ static void OnReceiveLocalMessage(int local_port_id,
 
   o["message"] = picojson::value(data);
 
-  object->PostMessage(picojson::value(o).serialize().c_str());
+  common::Instance::PostMessage(object, picojson::value(o).serialize().c_str());
 }
 
 
index 80c204a..4c119e5 100755 (executable)
@@ -94,7 +94,7 @@ static gboolean callbackCompleted(const std::shared_ptr<MsgManagerCallbackData>&
 {
     LoggerD("Entered");
     std::shared_ptr<picojson::value> response = user_data->json;
-    user_data->instance_.PostMessage(response->serialize().c_str());
+    common::Instance::PostMessage(&user_data->instance_, response->serialize().c_str());
     return false;
 }
 
index fc2cd94..f1a7aa5 100755 (executable)
@@ -1300,7 +1300,7 @@ void PostQueue::resolve(PostPriority p)
         i = tasks_.erase(i);
         tasks_mutex_.unlock();
 
-        instance_.PostMessage(json.c_str());
+        Instance::PostMessage(&instance_, json.c_str());
     } else if (TaskState::NEW == i->second->state()) {
         tasks_mutex_.unlock();
 
index f1a8c37..fa334ce 100644 (file)
@@ -102,7 +102,7 @@ void NetworkBearerSelectionInstance::NetworkBearerSelectionReleaseRouteToHost(
     else
       ReportError(UnknownException("PLATFORM ERROR"), obj);
     obj["callbackId"] = picojson::value(callback_id);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   auto reply = [=](bool status)->void {
@@ -135,7 +135,7 @@ void NetworkBearerSelectionInstance::onNBSSuccess(
                                         std::to_string(listenerId));
     obj["id"] = picojson::value(static_cast<double>(listenerId));
     LoggerD("Posting: %s", event.serialize().c_str());
-    PostMessage(event.serialize().c_str());
+    Instance::PostMessage(this, event.serialize().c_str());
   }
 }
 
@@ -155,7 +155,7 @@ void NetworkBearerSelectionInstance::onNBSError(const std::string& domain_name,
                                         std::to_string(listenerId));
     obj["id"] = picojson::value(static_cast<double>(listenerId));
     LoggerD("Posting: %s", event.serialize().c_str());
-    PostMessage(event.serialize().c_str());
+    Instance::PostMessage(this, event.serialize().c_str());
   }
   listenerMap.erase(domain_name);
 }
@@ -175,7 +175,7 @@ void NetworkBearerSelectionInstance::onNBSDisconnect(
                                         std::to_string(listenerId));
     obj["id"] = picojson::value(static_cast<double>(listenerId));
     LoggerD("Posting: %s", event.serialize().c_str());
-    PostMessage(event.serialize().c_str());
+    Instance::PostMessage(this, event.serialize().c_str());
   }
   listenerMap.erase(domain_name);
 }
index 91090be..7649d61 100644 (file)
@@ -37,7 +37,7 @@ using namespace extension::nfc;
 
 void NFCInstance::RespondAsync(const char* msg) {
   LoggerD("Entered");
-  PostMessage(msg);
+  Instance::PostMessage(this, msg);
 }
 
 static bool isTagSupported(){
@@ -883,7 +883,7 @@ void NFCInstance::SendHostAPDUResponse(const picojson::value& args,
     picojson::object& response_obj = response.get<picojson::object>();
     response_obj[JSON_CALLBACK_ID] = picojson::value(callback_id);
     ReportSuccess(response_obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   auto error_cb = [this, callback_id](const PlatformResult& error) -> void {
@@ -892,7 +892,7 @@ void NFCInstance::SendHostAPDUResponse(const picojson::value& args,
     picojson::object& response_obj = response.get<picojson::object>();
     response_obj[JSON_CALLBACK_ID] = picojson::value(callback_id);
     ReportError(error, &response_obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   common::TaskQueue::GetInstance().Async(
@@ -1010,7 +1010,7 @@ void NFCInstance::GetAIDsForCategory(const picojson::value& args,
     picojson::object& response_obj = response.get<picojson::object>();
     response_obj[JSON_CALLBACK_ID] = picojson::value(callback_id);
     ReportSuccess(picojson::value(aids), response_obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   auto error_cb = [this, callback_id](const PlatformResult& error) -> void {
@@ -1019,7 +1019,7 @@ void NFCInstance::GetAIDsForCategory(const picojson::value& args,
     picojson::object& response_obj = response.get<picojson::object>();
     response_obj[JSON_CALLBACK_ID] = picojson::value(callback_id);
     ReportError(error, &response_obj);
-    PostMessage(response.serialize().c_str());
+    Instance::PostMessage(this, response.serialize().c_str());
   };
 
   common::TaskQueue::GetInstance().Async(
index cd2d634..e8d0d75 100644 (file)
@@ -85,7 +85,7 @@ static gboolean PackageAfterWork(
   userData->data_["callbackId"] =
       picojson::value(static_cast<double>(userData->callback_id_));
   picojson::value result = picojson::value(userData->data_);
-  userData->instance_->PostMessage(result.serialize().c_str());
+  common::Instance::PostMessage(userData->instance_, result.serialize().c_str());
 
   return FALSE;
 }
@@ -287,7 +287,7 @@ void PackageInstance::InvokeCallback(
   param["callbackId"] = picojson::value(
       static_cast<double>(callback_id));
   picojson::value result = picojson::value(param);
-  PostMessage(result.serialize().c_str());
+  Instance::PostMessage(this, result.serialize().c_str());
 }
 
 void PackageInstance::PackageManagerInstall(
@@ -430,7 +430,7 @@ void PackageInstance::PackageManagerGetDataSize(const picojson::value& args,
 void PackageInstance::InvokeListener(picojson::object& param) {
   LoggerD("Enter");
   picojson::value result = picojson::value(param);
-  PostMessage(result.serialize().c_str());
+  Instance::PostMessage(this, result.serialize().c_str());
 }
 
 void PackageInstance::
index b53f770..f8469f7 100755 (executable)
@@ -191,7 +191,7 @@ void PowerInstance::OnScreenStateChanged(PowerState prev_state, PowerState new_s
     }
   }
 
-  PostMessage(event.serialize().c_str());
+  Instance::PostMessage(this, event.serialize().c_str());
 }
 
 #undef CHECK_EXIST
index 393c509..c22e613 100644 (file)
@@ -166,7 +166,7 @@ void PushInstance::onPushRegister(double callbackId,
         dict["registrationId"] = picojson::value(id);
     }
     picojson::value res(dict);
-    PostMessage(res.serialize().c_str());
+    Instance::PostMessage(this, res.serialize().c_str());
 }
 
 void PushInstance::onPushNotify(const std::string& appData,
@@ -183,7 +183,7 @@ void PushInstance::onPushNotify(const std::string& appData,
     pushMessage["date"] = picojson::value(date);
     dict["pushMessage"] = picojson::value(pushMessage);
     picojson::value resultListener(dict);
-    PostMessage(resultListener.serialize().c_str());
+    Instance::PostMessage(this, resultListener.serialize().c_str());
 }
 
 void PushInstance::onDeregister(double callbackId,
@@ -195,7 +195,7 @@ void PushInstance::onDeregister(double callbackId,
         dict["error"] = result.ToJSON();
     }
     picojson::value res(dict);
-    PostMessage(res.serialize().c_str());
+    Instance::PostMessage(this, res.serialize().c_str());
 }
 
 PushInstance::~PushInstance() {
index 72cfa5d..5b5a301 100755 (executable)
@@ -35,9 +35,6 @@ using namespace std;
 namespace extension {
 namespace radio {
 
-std::vector<FMRadioManager*> FMRadioManager::managers_;
-std::mutex FMRadioManager::managers_mutex_;
-
 namespace {
 
 const int kLowestFrequency = 87500;
@@ -341,11 +338,7 @@ FMRadioManager::FMRadioManager(RadioInstance& instance)
   if (RADIO_ERROR_NONE != err) {
     LoggerE("radio_create() failed: %d", err);
     radio_instance_ = nullptr;
-  } else {
-    std::lock_guard<std::mutex> lock(managers_mutex_);
-    managers_.push_back(this);
   }
-
 }
 
 FMRadioManager::~FMRadioManager() {
@@ -360,23 +353,6 @@ FMRadioManager::~FMRadioManager() {
 
     radio_instance_ = nullptr;
   }
-  std::lock_guard<std::mutex> lock(managers_mutex_);
-  for (auto it = managers_.begin(); it != managers_.end(); it++) {
-    if (*it == this) {
-      managers_.erase(it);
-      break;
-    }
-  }
-}
-
-bool FMRadioManager::CheckInstance(const FMRadioManager* manager) {
-  LoggerD("Entered");
-  for (auto vec_manager : managers_) {
-    if (vec_manager == manager) {
-      return true;
-    }
-  }
-  return false;
 }
 
 PlatformResult FMRadioManager::Start(double frequency) {
@@ -509,10 +485,7 @@ common::PlatformResult FMRadioManager::UnsetAntennaChangeListener() {
 void FMRadioManager::PostMessage(const std::string& msg) const {
   LoggerD("Enter");
 
-  if (!CheckInstance(this)) {
-    return;
-  }
-  instance_.PostMessage(msg.c_str());
+  Instance::PostMessage(&instance_, msg.c_str());
 }
 void FMRadioManager::PostResultSuccess(double callbackId, picojson::value* event) const {
   auto& obj = event->get<picojson::object>();
index 75aad27..614f415 100755 (executable)
@@ -64,13 +64,9 @@ class FMRadioManager {
   void PostResultCallbackSuccess(double callbackId) const;
   void PostResultFailure(double callbackId, const common::PlatformResult& result) const;
 
-  static bool CheckInstance(const FMRadioManager* instance);
  private:
   RadioInstance& instance_;
   radio_h radio_instance_;
-
-  static std::mutex managers_mutex_;
-  static std::vector<FMRadioManager*> managers_;
 };
 
 } // namespace radio
index 1860fcc..2930914 100644 (file)
@@ -187,7 +187,7 @@ void SecureElementInstance::OpenSession(
 
         picojson::object& obj = response->get<picojson::object>();
         obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
-        PostMessage(response->serialize().c_str());
+        Instance::PostMessage(this, response->serialize().c_str());
     };
 
     TaskQueue::GetInstance().Queue<picojson::value>(
@@ -232,7 +232,7 @@ void SecureElementInstance::OpenBasicChannel( const picojson::value& args, picoj
         LoggerD("Getting response");
         picojson::object& obj = response->get<picojson::object>();
         obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
-        PostMessage(response->serialize().c_str());
+        Instance::PostMessage(this, response->serialize().c_str());
     };
 
     TaskQueue::GetInstance().Queue<picojson::value>
@@ -274,7 +274,7 @@ void SecureElementInstance::OpenLogicalChannel( const picojson::value& args, pic
         LoggerD("Getting response");
         picojson::object& obj = response->get<picojson::object>();
         obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
-        PostMessage(response->serialize().c_str());
+        Instance::PostMessage(this, response->serialize().c_str());
     };
 
     TaskQueue::GetInstance().Queue<picojson::value>
@@ -365,7 +365,7 @@ void SecureElementInstance::Transmit( const picojson::value& args, picojson::obj
         LoggerD("Getting response");
         picojson::object& obj = response->get<picojson::object>();
         obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
-        PostMessage(response->serialize().c_str());
+        Instance::PostMessage(this, response->serialize().c_str());
     };
 
     TaskQueue::GetInstance().Queue<picojson::value>
index 8b212f2..c86adc3 100644 (file)
@@ -110,7 +110,7 @@ void SEService::GetReaders(double callback_id) {
       const std::shared_ptr<picojson::value>& response) -> void {
     picojson::object& obj = response->get<picojson::object>();
     obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
-    instance_.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&instance_, response->serialize().c_str());
   };
 
   if (is_error_) {
@@ -185,7 +185,7 @@ void SEService::ServiceConnected() {
       obj.insert(std::make_pair("action", picojson::value("onSEReady")));
       obj.insert(std::make_pair("handle", picojson::value((double) (long) readers[i])));
 
-      instance_.PostMessage(result.serialize().c_str());
+      Instance::PostMessage(&instance_, result.serialize().c_str());
     }
   }
 }
@@ -215,7 +215,7 @@ void SEService::EventHandler(char *se_name, int event) {
         }
 
         obj.insert(std::make_pair("handle", picojson::value((double) (long) readers[i])));
-        instance_.PostMessage(result.serialize().c_str());
+        Instance::PostMessage(&instance_, result.serialize().c_str());
         return;
       }
     }
index 7932942..41472be 100644 (file)
@@ -232,7 +232,7 @@ void SensorData::SensorCallback(sensor_h sensor, sensor_event_s* event, void* us
   picojson::value result = picojson::value(picojson::object());
   picojson::object& object = result.get<picojson::object>();
   ReportSensorData(that->type(), event, &object);
-  that->instance_.PostMessage(result.serialize().c_str());
+  Instance::PostMessage(&that->instance_, result.serialize().c_str());
 }
 
 bool SensorData::DefaultEventComparator(sensor_event_s* l, sensor_event_s* r) {
@@ -603,7 +603,7 @@ void SensorService::SensorStart(const picojson::value& args, picojson::object& o
   };
   auto start_result = [this, callback_id](const std::shared_ptr<picojson::value>& result) {
     result->get<picojson::object>()["callbackId"] = picojson::value{static_cast<double>(callback_id)};
-    instance_.PostMessage(result->serialize().c_str());
+    Instance::PostMessage(&instance_, result->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
@@ -732,7 +732,7 @@ void SensorService::GetSensorData(const picojson::value& args, picojson::object&
   auto get_data_result = [this, callback_id](const std::shared_ptr<picojson::value>& result) {
     result->get<picojson::object>()["callbackId"] = picojson::value{static_cast<double>(callback_id)};
 
-    instance_.PostMessage(result->serialize().c_str());
+    Instance::PostMessage(&instance_, result->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>(
index 5501952..ac25768 100644 (file)
@@ -139,7 +139,7 @@ void SoundInstance::OnSoundModeChange(const std::string& newmode)
   ReportSuccess(result, obj);
   obj["listenerId"] = picojson::value("SoundModeChangeListener");
   LoggerD("Posting: %s", event.serialize().c_str());
-  PostMessage(event.serialize().c_str());
+  Instance::PostMessage(this, event.serialize().c_str());
 }
 
 
index 749b3e9..954a3e8 100644 (file)
@@ -219,7 +219,7 @@ void SoundManager::VolumeChangeCallback(sound_type_e type, unsigned int value) {
       "volume",
       picojson::value(ConvertToSystemVolume(max_volume, value))));
 
-  instance_.PostMessage(response.serialize().c_str());
+  Instance::PostMessage(&instance_, response.serialize().c_str());
 }
 
 PlatformResult SoundManager::GetSoundMode(std::string* sound_mode_type) {
@@ -561,7 +561,7 @@ void SoundManager::DeviceChangeCB(sound_device_h device, bool is_connected, bool
         "listenerId", picojson::value("SoundDeviceStateChangeCallback")));
 
     auto call_response = [this, response]()->void {
-      instance_.PostMessage(response.serialize().c_str());
+      Instance::PostMessage(&instance_, response.serialize().c_str());
     };
 
     TaskQueue::GetInstance().Async(call_response);
index bca7eb0..2f7f68b 100644 (file)
@@ -285,7 +285,7 @@ void SysteminfoInstance::GetPropertyValue(const picojson::value& args, picojson:
     picojson::object& obj = response->get<picojson::object>();
     obj.insert(std::make_pair("callbackId", picojson::value{static_cast<double>(callback_id)}));
     LoggerD("message: %s", response->serialize().c_str());
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>
@@ -316,7 +316,7 @@ void SysteminfoInstance::GetPropertyValueArray(const picojson::value& args, pico
     LoggerD("Getting response");
     picojson::object& obj = response->get<picojson::object>();
     obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>
@@ -556,7 +556,7 @@ void OnBatteryChangedCallback(SysteminfoInstance& instance)
   PlatformResult ret = SysteminfoUtils::GetPropertyValue(kPropertyIdBattery, true, result);
   if (ret.IsSuccess()) {
     ReportSuccess(result,response->get<picojson::object>());
-    instance.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&instance, response->serialize().c_str());
   }
 }
 
@@ -572,7 +572,7 @@ void OnCpuChangedCallback(SysteminfoInstance& instance)
   PlatformResult ret = SysteminfoUtils::GetPropertyValue(kPropertyIdCpu, true, result);
   if (ret.IsSuccess()) {
     ReportSuccess(result,response->get<picojson::object>());
-    instance.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&instance, response->serialize().c_str());
   }
 }
 
@@ -588,7 +588,7 @@ void OnStorageChangedCallback(SysteminfoInstance& instance)
   PlatformResult ret = SysteminfoUtils::GetPropertyValue(kPropertyIdStorage, true, result);
   if (ret.IsSuccess()) {
     ReportSuccess(result,response->get<picojson::object>());
-    instance.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&instance, response->serialize().c_str());
   }
 }
 
@@ -604,7 +604,7 @@ void OnDisplayChangedCallback(SysteminfoInstance& instance)
   PlatformResult ret = SysteminfoUtils::GetPropertyValue(kPropertyIdDisplay, true, result);
   if (ret.IsSuccess()) {
     ReportSuccess(result,response->get<picojson::object>());
-    instance.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&instance, response->serialize().c_str());
   }
 }
 
@@ -620,7 +620,7 @@ void OnDeviceOrientationChangedCallback(SysteminfoInstance& instance)
   PlatformResult ret = SysteminfoUtils::GetPropertyValue(kPropertyIdDeviceOrientation, true, result);
   if (ret.IsSuccess()) {
     ReportSuccess(result,response->get<picojson::object>());
-    instance.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&instance, response->serialize().c_str());
   }
 }
 
@@ -636,7 +636,7 @@ void OnLocaleChangedCallback(SysteminfoInstance& instance)
   PlatformResult ret = SysteminfoUtils::GetPropertyValue(kPropertyIdLocale, true, result);
   if (ret.IsSuccess()) {
     ReportSuccess(result,response->get<picojson::object>());
-    instance.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&instance, response->serialize().c_str());
   }
 }
 
@@ -652,7 +652,7 @@ void OnNetworkChangedCallback(SysteminfoInstance& instance)
   PlatformResult ret = SysteminfoUtils::GetPropertyValue(kPropertyIdNetwork, true, result);
   if (ret.IsSuccess()) {
     ReportSuccess(result,response->get<picojson::object>());
-    instance.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&instance, response->serialize().c_str());
   }
 }
 
@@ -668,7 +668,7 @@ void OnWifiNetworkChangedCallback(SysteminfoInstance& instance)
   PlatformResult ret = SysteminfoUtils::GetPropertyValue(kPropertyIdWifiNetwork, true, result);
   if (ret.IsSuccess()) {
     ReportSuccess(result,response->get<picojson::object>());
-    instance.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&instance, response->serialize().c_str());
   }
 }
 
@@ -684,7 +684,7 @@ void OnEthernetNetworkChangedCallback(SysteminfoInstance& instance)
   PlatformResult ret = SysteminfoUtils::GetPropertyValue(kPropertyIdEthernetNetwork, true, result);
   if (ret.IsSuccess()) {
     ReportSuccess(result,response->get<picojson::object>());
-    instance.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&instance, response->serialize().c_str());
   }
 }
 
@@ -700,7 +700,7 @@ void OnCellularNetworkChangedCallback(SysteminfoInstance& instance)
   PlatformResult ret = SysteminfoUtils::GetPropertyValue(kPropertyIdCellularNetwork, true, result);
   if (ret.IsSuccess()) {
     ReportSuccess(result,response->get<picojson::object>());
-    instance.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&instance, response->serialize().c_str());
   }
 }
 
@@ -716,7 +716,7 @@ void OnPeripheralChangedCallback(SysteminfoInstance& instance)
   PlatformResult ret = SysteminfoUtils::GetPropertyValue(kPropertyIdPeripheral, true, result);
   if (ret.IsSuccess()) {
     ReportSuccess(result,response->get<picojson::object>());
-    instance.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&instance, response->serialize().c_str());
   }
 }
 
@@ -732,7 +732,7 @@ void OnMemoryChangedCallback(SysteminfoInstance& instance)
   PlatformResult ret = SysteminfoUtils::GetPropertyValue(kPropertyIdMemory, true, result);
   if (ret.IsSuccess()) {
     ReportSuccess(result,response->get<picojson::object>());
-    instance.PostMessage(response->serialize().c_str());
+    Instance::PostMessage(&instance, response->serialize().c_str());
   }
 }
 
@@ -748,7 +748,7 @@ void OnBrigthnessChangedCallback(SysteminfoInstance &instance)
     PlatformResult ret = SysteminfoUtils::GetPropertyValue(kPropertyIdCameraFlash, true, result);
     if (ret.IsSuccess()) {
       ReportSuccess(result,response->get<picojson::object>());
-      instance.PostMessage(response->serialize().c_str());
+      Instance::PostMessage(&instance, response->serialize().c_str());
     }
 }
 
index e851387..c36904d 100755 (executable)
@@ -82,7 +82,7 @@ void SystemSettingInstance::getProperty(const picojson::value& args, picojson::o
     LoggerD("Getting response");
     picojson::object& obj = response->get<picojson::object>();
     obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>
@@ -158,7 +158,7 @@ void SystemSettingInstance::setProperty(const picojson::value& args, picojson::o
     LoggerD("Getting response");
     picojson::object& obj = response->get<picojson::object>();
     obj.insert(std::make_pair("callbackId", picojson::value(callback_id)));
-    PostMessage(response->serialize().c_str());
+    Instance::PostMessage(this, response->serialize().c_str());
   };
 
   TaskQueue::GetInstance().Queue<picojson::value>
index ddf6255..a2e427d 100644 (file)
@@ -636,7 +636,7 @@ static void PostMessage(const char* message, TimeInstance& instance) {
   JsonValue result{JsonObject{}};
   JsonObject& result_obj = result.get<JsonObject>();
   result_obj.insert(std::make_pair("listenerId", picojson::value(message)));
-  instance.PostMessage(result.serialize().c_str());
+  Instance::PostMessage(&instance, result.serialize().c_str());
 }
 
 static void OnTimeChangedCallback(keynode_t* /*node*/, void* user_data) {
index bcf1b06..61e7926 100644 (file)
@@ -189,7 +189,7 @@ void TVAudioInstance::onVolumeChangeCallback(u_int16_t volume) {
     picojson::object& obj = event.get<picojson::object>();
     obj["listenerId"] = picojson::value("VolumeChangeCallback");
     obj["volume"] = picojson::value(static_cast<double>(volume));
-    PostMessage(event.serialize().c_str());
+    Instance::PostMessage(this, event.serialize().c_str());
 }
 
 void TVAudioInstance::playSound(const picojson::value& args,
index 6649c69..203a1c9 100644 (file)
@@ -107,7 +107,7 @@ void TVChannelInstance::tuneTaskAfter(
         obj.insert(std::make_pair("callbackId", picojson::value(
             _tuneData->callbackId)));
         obj.insert(std::make_pair("error", _tuneData->pError->ToJSON()));
-        PostMessage(event.serialize().c_str());
+        Instance::PostMessage(this, event.serialize().c_str());
     }
 }
 
@@ -303,12 +303,12 @@ void TVChannelInstance::onChannelChange(double callbackId) {
         dict["windowType"] = picojson::value("MAIN");
         dict["success"] = picojson::value(true);
         picojson::value resultListener(dict);
-        PostMessage(resultListener.serialize().c_str());
+        Instance::PostMessage(this, resultListener.serialize().c_str());
         if (callbackId !=- 1) {
             dict.erase("listenerId");
             dict["callbackId"] = picojson::value(callbackId);
             picojson::value resultCallback(dict);
-            PostMessage(resultCallback.serialize().c_str());
+            Instance::PostMessage(this, resultCallback.serialize().c_str());
         }
     } catch (common::PlatformException& e) {
         LoggerW("Failed to post message: %s", e.message().c_str());
@@ -326,7 +326,7 @@ void TVChannelInstance::onEPGReceived(double callbackId) {
             TVChannelManager::getInstance()->getCurrentProgram(MAIN));
         dict["program"] = programInfoToJson(pInfo);
         picojson::value result(dict);
-        PostMessage(result.serialize().c_str());
+        Instance::PostMessage(this, result.serialize().c_str());
     } catch (common::PlatformException& e) {
         LoggerW("Failed to post message: %s", e.message().c_str());
     } catch (...) {
@@ -340,7 +340,7 @@ void TVChannelInstance::onNoSignal(double callbackId) {
         dict["callbackId"] = picojson::value(callbackId);
         dict["nosignal"] = picojson::value(true);
         picojson::value result(dict);
-        PostMessage(result.serialize().c_str());
+        Instance::PostMessage(this, result.serialize().c_str());
     } catch (common::PlatformException& e) {
         LoggerW("Failed to post message: %s", e.message().c_str());
     } catch (...) {
@@ -392,7 +392,7 @@ void TVChannelInstance::findChannelResult(
         dict["channelInfos"] = picojson::value(channels);
     }
     picojson::value result(dict);
-    PostMessage(result.serialize().c_str());
+    Instance::PostMessage(this, result.serialize().c_str());
 }
 
 void TVChannelInstance::getChannelList(const picojson::value& args,
@@ -457,7 +457,7 @@ void TVChannelInstance::getChannelListResult(
         dict["channelInfos"] = picojson::value(channels);
     }
     picojson::value result(dict);
-    PostMessage(result.serialize().c_str());
+    Instance::PostMessage(this, result.serialize().c_str());
 }
 
 void TVChannelInstance::getProgramList(
@@ -511,7 +511,7 @@ void TVChannelInstance::getProgramListResult(
         dict["programInfos"] = picojson::value(programs);
     }
     picojson::value result(dict);
-    PostMessage(result.serialize().c_str());
+    Instance::PostMessage(this, result.serialize().c_str());
 }
 
 }  // namespace tvchannel
index 3c86e74..a126cf8 100644 (file)
@@ -227,7 +227,7 @@ void TVDisplayInstance::GetSupported3DEffectModeListTaskAfter(
     LOGD("Enter");
     picojson::value out(*data);
     std::string serialized(out.serialize());
-    PostMessage(serialized.c_str());
+    Instance::PostMessage(this, serialized.c_str());
 }
 
 }  // namespace tvdisplay